void nofDefender::Serialize_nofDefender(SerializedGameData* sgd) const { Serialize_nofActiveSoldier(sgd); if(state != STATE_FIGUREWORK) sgd->PushObject(attacker, true); }
void nofAttacker::Serialize_nofAttacker(SerializedGameData& sgd) const { Serialize_nofActiveSoldier(sgd); if(state != STATE_WALKINGHOME && state != STATE_FIGUREWORK) { sgd.PushObject(attacked_goal, false); sgd.PushBool(mayBeHunted); sgd.PushContainer(canPlayerSendAggDefender); sgd.PushObject(huntingDefender, true); sgd.PushUnsignedShort(radius); if(state == STATE_ATTACKING_WAITINGFORDEFENDER) sgd.PushEvent(blocking_event); sgd.PushMapPoint(harborPos); sgd.PushMapPoint(shipPos); sgd.PushUnsignedInt(ship_obj_id); } else { RTTR_Assert(!attacked_goal); RTTR_Assert(!huntingDefender); RTTR_Assert(!blocking_event); } }
void nofAggressiveDefender::Serialize_nofAggressiveDefender(SerializedGameData& sgd) const { Serialize_nofActiveSoldier(sgd); if(state != STATE_WALKINGHOME && state != STATE_FIGUREWORK) { sgd.PushObject(attacker, true); sgd.PushObject(attacked_goal, false); } }
void nofAttacker::Serialize_nofAttacker(SerializedGameData* sgd) const { Serialize_nofActiveSoldier(sgd); if(state != STATE_WALKINGHOME && state != STATE_FIGUREWORK) { sgd->PushObject(attacked_goal, false); sgd->PushBool(should_haunted); sgd->PushUnsignedShort(radius); if(state == STATE_ATTACKING_WAITINGFORDEFENDER) sgd->PushObject(blocking_event, true); sgd->PushMapPoint(harborPos); sgd->PushMapPoint(shipPos); sgd->PushUnsignedInt(ship_obj_id); } }