mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-25 01:41:29 +00:00
Close to zone; spawn struct isn't right.
This commit is contained in:
parent
004b0e1176
commit
f6f9d275e8
@ -2322,6 +2322,26 @@ namespace Larion
|
||||
delete in;
|
||||
}
|
||||
|
||||
ENCODE(OP_SendZonepoints)
|
||||
{
|
||||
SETUP_VAR_ENCODE(ZonePoints);
|
||||
ALLOC_VAR_ENCODE(structs::ZonePoints, sizeof(structs::ZonePoints) + sizeof(structs::ZonePoint_Entry) * (emu->count + 1));
|
||||
|
||||
eq->count = emu->count;
|
||||
for (uint32 i = 0; i < emu->count; ++i)
|
||||
{
|
||||
eq->zpe[i].iterator = emu->zpe[i].iterator;
|
||||
eq->zpe[i].x = emu->zpe[i].x;
|
||||
eq->zpe[i].y = emu->zpe[i].y;
|
||||
eq->zpe[i].z = emu->zpe[i].z;
|
||||
eq->zpe[i].heading = emu->zpe[i].heading;
|
||||
eq->zpe[i].zoneid = emu->zpe[i].zoneid;
|
||||
eq->zpe[i].zoneinstance = emu->zpe[i].zoneinstance;
|
||||
}
|
||||
|
||||
FINISH_ENCODE();
|
||||
}
|
||||
|
||||
// DECODE methods
|
||||
|
||||
DECODE(OP_ZoneEntry)
|
||||
|
||||
@ -15,6 +15,7 @@ E(OP_CharInventory)
|
||||
E(OP_NewZone)
|
||||
E(OP_SpawnDoor)
|
||||
E(OP_GroundSpawn)
|
||||
E(OP_SendZonepoints)
|
||||
|
||||
//list of packets we need to decode on the way in:
|
||||
D(OP_ZoneEntry)
|
||||
|
||||
@ -297,6 +297,23 @@ namespace Larion {
|
||||
/*132*/
|
||||
};
|
||||
|
||||
struct ZonePoint_Entry {
|
||||
/*00*/ uint32 iterator;
|
||||
/*04*/ float y;
|
||||
/*08*/ float x;
|
||||
/*12*/ float z;
|
||||
/*16*/ float heading;
|
||||
/*20*/ uint16 zoneid;
|
||||
/*22*/ uint16 zoneinstance;
|
||||
/*24*/ uint32 unknown024;
|
||||
/*28*/ uint32 unknown028;
|
||||
/*32*/
|
||||
};
|
||||
|
||||
struct ZonePoints {
|
||||
/*00*/ uint32 count;
|
||||
/*04*/ struct ZonePoint_Entry zpe[0]; // Always add one extra to the end after all zonepoints
|
||||
};
|
||||
|
||||
#pragma pack()
|
||||
|
||||
|
||||
@ -32,11 +32,11 @@ OP_SendSkillCapsChecksum=0x0000
|
||||
OP_SendMaxCharacters=0x13af
|
||||
OP_SendMembership=0x2aca
|
||||
OP_SendMembershipDetails=0x2608
|
||||
OP_CharacterCreateRequest=0x0000
|
||||
OP_CharacterCreate=0x0000
|
||||
OP_DeleteCharacter=0x0000
|
||||
OP_RandomNameGenerator=0x0000
|
||||
OP_ApproveName=0x0000
|
||||
OP_CharacterCreateRequest=0x2df4
|
||||
OP_CharacterCreate=0x6a3c
|
||||
OP_DeleteCharacter=x67d7
|
||||
OP_RandomNameGenerator=0x49d9
|
||||
OP_ApproveName=0x11e5
|
||||
OP_MOTD=0x0000
|
||||
OP_SetChatServer=0x2726
|
||||
OP_SetChatServer2=0x0000
|
||||
@ -47,7 +47,7 @@ OP_FloatListThing=0x0000
|
||||
|
||||
# Reasons for Disconnect:
|
||||
OP_ZoneUnavail=0x0000
|
||||
OP_WorldClientReady=0x0000
|
||||
OP_WorldClientReady=0x7ed8
|
||||
OP_CharacterStillInZone=0x0000
|
||||
OP_WorldChecksumFailure=0x0000
|
||||
OP_WorldLoginFailed=0x0000
|
||||
@ -60,16 +60,16 @@ OP_SendBaseDataChecksum=0x0000
|
||||
|
||||
# Zone in opcodes
|
||||
OP_AckPacket=0x77c9
|
||||
OP_ZoneEntry=0x0000
|
||||
OP_ReqNewZone=0x0000
|
||||
OP_NewZone=0x0000
|
||||
OP_ZoneSpawns=0x0000
|
||||
OP_PlayerProfile=0x0000
|
||||
OP_TimeOfDay=0x0000
|
||||
OP_LevelUpdate=0x0000
|
||||
OP_Stamina=0x0000
|
||||
OP_RequestClientZoneChange=0x0000
|
||||
OP_ZoneChange=0x0000
|
||||
OP_ZoneEntry=0x784a
|
||||
OP_ReqNewZone=0x3895
|
||||
OP_NewZone=0x4341
|
||||
OP_ZoneSpawns=0x17d9
|
||||
OP_PlayerProfile=0x1c76
|
||||
OP_TimeOfDay=0x3736
|
||||
OP_LevelUpdate=0x0000 #0x0eb2
|
||||
OP_Stamina=0x0000 #0x1563
|
||||
OP_RequestClientZoneChange=0x0000 #0x0191
|
||||
OP_ZoneChange=0x0000 #0x17a3
|
||||
OP_LockoutTimerInfo=0x0000
|
||||
OP_ZoneServerReady=0x0000
|
||||
OP_ZoneInUnknown=0x0000
|
||||
@ -77,42 +77,42 @@ OP_LogoutReply=0x0000
|
||||
OP_PreLogoutReply=0x0000
|
||||
|
||||
# Required to fully log in
|
||||
OP_SpawnAppearance=0x0000
|
||||
OP_ChangeSize=0x0000
|
||||
OP_SpawnAppearance=0x4eb0
|
||||
OP_ChangeSize=0x0000 #0x2fdc
|
||||
OP_TributeUpdate=0x0000
|
||||
OP_TributeTimer=0x0000
|
||||
OP_SendTributes=0x0000
|
||||
OP_RequestGuildTributes=0x0000
|
||||
OP_TributeInfo=0x0000
|
||||
OP_Weather=0x0000
|
||||
OP_ReqClientSpawn=0x0000
|
||||
OP_SpawnDoor=0x0000
|
||||
OP_GroundSpawn=0x0000
|
||||
OP_SendZonepoints=0x0000
|
||||
OP_Weather=0x6fe6
|
||||
OP_ReqClientSpawn=0x6732
|
||||
OP_SpawnDoor=0x4273
|
||||
OP_GroundSpawn=0x49c5
|
||||
OP_SendZonepoints=0x279f
|
||||
OP_BlockedBuffs=0x0000
|
||||
OP_RemoveBlockedBuffs=0x0000
|
||||
OP_ClearBlockedBuffs=0x0000
|
||||
OP_WorldObjectsSent=0x0000
|
||||
OP_SendExpZonein=0x0000
|
||||
OP_WorldObjectsSent=0x2879
|
||||
OP_SendExpZonein=0x02b4
|
||||
OP_SendAATable=0x0000
|
||||
OP_ClearAA=0x0000
|
||||
OP_ClearLeadershipAbilities=0x0000
|
||||
OP_RespondAA=0x0000
|
||||
OP_UpdateAA=0x0000
|
||||
OP_SendAAStats=0x0000
|
||||
OP_AAExpUpdate=0x0000
|
||||
OP_ExpUpdate=0x0000
|
||||
OP_HPUpdate=0x0000
|
||||
OP_ManaChange=0x0000
|
||||
OP_AAExpUpdate=0x0000 #0x642f
|
||||
OP_ExpUpdate=0x0000 #0x611d
|
||||
OP_HPUpdate=0x0000 #0x775c
|
||||
OP_ManaChange=0x0000 #0x0606
|
||||
OP_TGB=0x0000
|
||||
OP_SpecialMesg=0x0000
|
||||
OP_SpecialMesg=0x0000 #0x7d93
|
||||
OP_GuildMemberList=0x0000
|
||||
OP_GuildMOTD=0x0000
|
||||
OP_CharInventory=0x0000
|
||||
OP_WearChange=0x0000
|
||||
OP_ClientUpdate=0x0000
|
||||
OP_ClientReady=0x0000
|
||||
OP_SetServerFilter=0x0000
|
||||
OP_CharInventory=0x21d6
|
||||
OP_WearChange=0x0000 #0x44c0
|
||||
OP_ClientUpdate=0x0000 #0x3a4b
|
||||
OP_ClientReady=0x0831
|
||||
OP_SetServerFilter=0x0000 #0x6b7f
|
||||
|
||||
# Guild Opcodes
|
||||
OP_GetGuildMOTD=0x0000
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user