Exemplo n.º 1
0
void nofDefender::Serialize_nofDefender(SerializedGameData* sgd) const
{
    Serialize_nofActiveSoldier(sgd);

    if(state != STATE_FIGUREWORK)
        sgd->PushObject(attacker, true);
}
Exemplo n.º 2
0
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);
    }
}
Exemplo n.º 4
0
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);
    }
}