HS_BOOL8 CHSHandlerUniverse::Initialize()
{
    // Register handlers.
    REGISTER_PACKET_HANDLER(PT_GET_UNIVERSE_LIST,
                            &CHSHandlerUniverse::HandleGetUniverseList, true);
    REGISTER_PACKET_HANDLER(PT_DELETE_UNIVERSE,
                            &CHSHandlerUniverse::HandleDeleteUniverse, false);

    return true;
}
HS_BOOL8 CHSHandlerClass::Initialize()
{
    // Register handlers.
    REGISTER_PACKET_HANDLER(PT_GET_CLASS_LIST,
                            &CHSHandlerClass::HandleGetClassList, true);
    REGISTER_PACKET_HANDLER(PT_GET_CLASS_DATA,
                            &CHSHandlerClass::HandleGetClassData, true);
    REGISTER_PACKET_HANDLER(PT_SET_CLASS_DATA,
                            &CHSHandlerClass::HandleSetClassData, true);
    REGISTER_PACKET_HANDLER(PT_CREATE_CLASS,
                            &CHSHandlerClass::HandleCreateClass, true);
    REGISTER_PACKET_HANDLER(PT_DELETE_CLASS,
                            &CHSHandlerClass::HandleDeleteClass, true);

    return true;
}
Exemple #3
0
static PacketHandlerState barrackHandlerCommanderDestroy (Worker *self, Session *session, uint8_t *packet, size_t packetSize, zmsg_t *reply);
/** Change the commander position in the barrack */
static PacketHandlerState barrackHandlerCommanderMove    (Worker *self, Session *session, uint8_t *packet, size_t packetSize, zmsg_t *reply);
/** Request for the player to enter in game */
static PacketHandlerState barrackHandlerStartGame        (Worker *self, Session *session, uint8_t *packet, size_t packetSize, zmsg_t *reply);
/** Request for the player to logout */
static PacketHandlerState barrackHandlerLogout           (Worker *self, Session *session, uint8_t *packet, size_t packetSize, zmsg_t *reply);

/**
 * @brief barrackHandlers is a global table containing all the barrack handlers.
 */
const PacketHandler barrackHandlers[PACKET_TYPE_COUNT] = {
    #define REGISTER_PACKET_HANDLER(packetName, handler) \
       [packetName] = {handler, STRINGIFY(packetName)}

    REGISTER_PACKET_HANDLER(CB_LOGIN,              barrackHandlerLogin),
    REGISTER_PACKET_HANDLER(CB_LOGIN_BY_PASSPORT,  barrackHandlerLoginByPassport),
    REGISTER_PACKET_HANDLER(CB_START_BARRACK,      barrackHandlerStartBarrack),
    REGISTER_PACKET_HANDLER(CB_CURRENT_BARRACK,    barrackHandlerCurrentBarrack),
    REGISTER_PACKET_HANDLER(CB_BARRACKNAME_CHANGE, barrackHandlerBarrackNameChange),
    REGISTER_PACKET_HANDLER(CB_COMMANDER_CREATE,   barrackHandlerCommanderCreate),
    REGISTER_PACKET_HANDLER(CB_COMMANDER_DESTROY,  barrackHandlerCommanderDestroy),
    REGISTER_PACKET_HANDLER(CB_COMMANDER_MOVE,     barrackHandlerCommanderMove),
    // REGISTER_PACKET_HANDLER(CB_JUMP,            barrackHandlerJump),
    REGISTER_PACKET_HANDLER(CB_START_GAME,         barrackHandlerStartGame),
    REGISTER_PACKET_HANDLER(CB_LOGOUT,             barrackHandlerLogout),

    #undef REGISTER_PACKET_HANDLER
};

static PacketHandlerState barrackHandlerLogin(
HS_BOOL8 CHSHandlerLogin::Initialize()
{
    // Register handlers.
    REGISTER_PACKET_HANDLER(PT_LOGIN, &CHSHandlerLogin::HandleLogin, false);
    return true;
}
Exemple #5
0
static PacketHandlerState zoneHandlerChat           (Worker *self, Session *session, uint8_t *packet, size_t packetSize, zmsg_t *replyMsg);
/** On commander chat log */
static PacketHandlerState zoneHandlerChatLog        (Worker *self, Session *session, uint8_t *packet, size_t packetSize, zmsg_t *replyMsg);
/** On commander head rotation */
static PacketHandlerState zoneHandlerHeadRotate     (Worker *self, Session *session, uint8_t *packet, size_t packetSize, zmsg_t *replyMsg);
/** On commander rotation */
static PacketHandlerState zoneHandlerRotate         (Worker *self, Session *session, uint8_t *packet, size_t packetSize, zmsg_t *replyMsg);

/**
 * @brief zoneHandlers is a global table containing all the zone handlers.
 */
const PacketHandler zoneHandlers[PACKET_TYPE_COUNT] = {
    #define REGISTER_PACKET_HANDLER(packetName, handler) \
       [packetName] = {handler, STRINGIFY(packetName)}

    REGISTER_PACKET_HANDLER(CZ_CONNECT, zoneHandlerConnect),
    REGISTER_PACKET_HANDLER(CZ_GAME_READY, zoneHandlerGameReady),
    REGISTER_PACKET_HANDLER(CZ_JUMP, zoneHandlerJump),
    REGISTER_PACKET_HANDLER(CZ_ON_AIR, zoneHandlerOnAir),
    REGISTER_PACKET_HANDLER(CZ_ON_GROUND, zoneHandlerOnGround),
    REGISTER_PACKET_HANDLER(CZ_KEYBOARD_MOVE, zoneHandlerKeyboardMove),
    REGISTER_PACKET_HANDLER(CZ_MOVE_STOP, zoneHandlerMoveStop),
    REGISTER_PACKET_HANDLER(CZ_MOVEMENT_INFO, zoneHandlerMovementInfo),
    REGISTER_PACKET_HANDLER(CZ_CAMPINFO, zoneHandlerCampInfo),
    REGISTER_PACKET_HANDLER(CZ_QUICKSLOT_LIST, zoneHandlerCzQuickSlotList),
    REGISTER_PACKET_HANDLER(CZ_CHANGE_CONFIG, zoneHandlerChangeConfig),
    REGISTER_PACKET_HANDLER(CZ_LOGOUT, zoneHandlerLogout),
    REGISTER_PACKET_HANDLER(CZ_ITEM_USE, zoneHandlerItemUse),
    REGISTER_PACKET_HANDLER(CZ_I_NEED_PARTY, zoneHandlerINeedParty),
    REGISTER_PACKET_HANDLER(CZ_SKILL_GROUND, zoneHandlerSkillGround),
    REGISTER_PACKET_HANDLER(CZ_REST_SIT, zoneHandlerRestSit),
Exemple #6
0

// ------ Static declaration -------
/** On log in */
static PacketHandlerState socialHandlerLogin        (Worker *self, Session *session, uint8_t *packet, size_t packetSize, zmsg_t *reply);


// ------ Structure declaration -------
/**
 * @brief socialHandlers is a global table containing all the social handlers.
 */
const PacketHandler socialHandlers [PACKET_TYPE_COUNT] = {
    #define REGISTER_PACKET_HANDLER(packetName, handler) \
        [packetName] = {handler, STRINGIFY(packetName)}

    REGISTER_PACKET_HANDLER(CS_LOGIN, socialHandlerLogin),

    #undef REGISTER_PACKET_HANDLER
};

static PacketHandlerState socialHandlerLogin(
    Worker *self,
    Session *session,
    uint8_t *packet,
    size_t packetSize,
    zmsg_t *reply)
{
    #pragma pack(push, 1)
    struct {
        char accountName[ACCOUNT_SESSION_ACCOUNT_NAME_MAXSIZE];
        char md5[17];