@ -26,7 +26,7 @@ public enum Protocol {
@@ -26,7 +26,7 @@ public enum Protocol {
ACTIVATECHARTER ( 0x296C0B22 , UseCharterMsg . class , null ) , // Use Guild Charter
ACTIVATENPC ( 0xC9AAE81E , ActivateNPCMessage . class , ActivateNPCMsgHandler . class ) ,
ACTIVATEPLEDGE ( 0x5A694DC0 , SwearInMsg . class , SwearInHandler . class ) , // Swear In
ADDFRIEND ( 0xCFA1C787 , AddFriendMessage . class , null ) ,
ADDFRIEND ( 0xCFA1C787 , AddFriendMessage . class , null ) ,
ALLIANCECHANGE ( 0x0E7D0B57 , AllianceChangeMsg . class , AllianceChangeMsgHandler . class ) , // Remove From Allies/Enemies List
ALLYENEMYLIST ( 0xAEA443FD , AllyEnemyListMsg . class , AllyEnemyListMsgHandler . class ) ,
ARCCOMBATMODEATTACKING ( 0xD8B10579 , SetCombatModeMsg . class , null ) , // Attack From Outside Combat Mode
@ -79,7 +79,7 @@ public enum Protocol {
@@ -79,7 +79,7 @@ public enum Protocol {
CLAIMASSET ( 0x948C62CC , ClaimAssetMsg . class , ClaimAssetMsgHandler . class ) , // ClaimAsset
CLAIMGUILDTREE ( 0xFD1C6442 , ClaimGuildTreeMsg . class , ClaimGuildTreeMsgHandler . class ) ,
CLIENTADMINCOMMAND ( 0x624EAB5F , ClientAdminCommandMsg . class , null ) , //Admin Command
CLIENTUPDATEVAULT ( 0x66EDBECD , UpdateVaultMsg . class , null ) ,
CLIENTUPDATEVAULT ( 0x66EDBECD , UpdateVaultMsg . class , null ) ,
COMBATMODE ( 0xFE4BF353 , ToggleCombatMsg . class , null ) , //Toggle Combat mode
CONFIRMPROMOTE ( 0x153BB5F9 , ConfirmPromoteMsg . class , null ) ,
COSTTOOPENBANK ( 0x135BE5E8 , AckBankWindowOpenedMsg . class , null ) , // ACK Bank Window Opened
@ -95,8 +95,8 @@ public enum Protocol {
@@ -95,8 +95,8 @@ public enum Protocol {
EQUIP ( 0x3CB1AF8C , TransferItemFromInventoryToEquipMsg . class , null ) , // Transfer Item from Inventory to Equip
EXPERIENCE ( 0xC57802A7 , GrantExperienceMsg . class , null ) , //TODO rename once identified
FORGETOBJECTS ( 0xE307A0E1 , UnloadObjectsMsg . class , null ) , // Unload Objects
FRIENDACCEPT ( 0xCA297870 , AcceptFriendMsg . class , FriendAcceptHandler . class ) ,
FRIENDDECLINE ( 0xF08FC279 , DeclineFriendMsg . class , FriendDeclineHandler . class ) ,
FRIENDACCEPT ( 0xCA297870 , AcceptFriendMsg . class , FriendAcceptHandler . class ) ,
FRIENDDECLINE ( 0xF08FC279 , DeclineFriendMsg . class , FriendDeclineHandler . class ) ,
FURNITURE ( 0xCE7FA503 , FurnitureMsg . class , FurnitureHandler . class ) ,
GAMESERVERIPRESPONSE ( 0x6C95CF87 , GameServerIPResponseMsg . class , null ) , // Game Server IP Response
GLOBALCHANNELMESSAGE ( 0x2bf03fd2 , null , null ) ,
@ -109,7 +109,7 @@ public enum Protocol {
@@ -109,7 +109,7 @@ public enum Protocol {
GUILDMEMBERONLINE ( 0x7B79EB3A , GuildEnterWorldMsg . class , null ) , // Send Enter World Message to Guild
GUILDRANKCHANGE ( 0x0DEFB21F , ChangeRankMsg . class , ChangeRankHandler . class ) , // Change Rank
GUILDTREESTATUS ( 0x4B95FB85 , GuildTreeStatusMsg . class , null ) ,
HIRELINGSERVICE ( 0xD3D93322 , HirelingServiceMsg . class , HirelingServiceMsgHandler . class ) ,
HIRELINGSERVICE ( 0xD3D93322 , HirelingServiceMsg . class , HirelingServiceMsgHandler . class ) ,
IGNORE ( 0xBD8881EE , IgnoreMsg . class , null ) , //client sent /ignore command
INITIATETRADEHUDS ( 0x667D29D8 , OpenTradeWindowMsg . class , null ) , // Open Trade Window
INVITEGROUP ( 0x004A2012 , GroupInviteMsg . class , GroupInviteHandler . class ) , // Send/Receive/Deny Group Invite
@ -168,7 +168,7 @@ public enum Protocol {
@@ -168,7 +168,7 @@ public enum Protocol {
RECOMMENDNATION ( 0x6D4579E9 , RecommendNationMsg . class , RecommendNationMsgHandler . class ) , // Recommend as Ally/Enemy, error
RECYCLEPOWER ( 0x24033B67 , RecyclePowerMsg . class , null ) , //Unlock power for reUse
REMOVECHAR ( 0x5D3F9739 , DeleteCharacterMsg . class , null ) , // Delete Character
REMOVEFRIEND ( 0xE0D5DB42 , RemoveFriendMessage . class , RemoveFriendHandler . class ) ,
REMOVEFRIEND ( 0xE0D5DB42 , RemoveFriendMessage . class , RemoveFriendHandler . class ) ,
REPAIRBUILDING ( 0xAF8C2560 , RepairBuildingMsg . class , RepairBuildingMsgHandler . class ) ,
REPAIROBJECT ( 0x782219CE , RepairMsg . class , null ) , //Repair Window Req/Ack, RepairObject item Req/Ack
REQUESTCONTENTS ( 0xA786B0A2 , LootWindowRequestMsg . class , null ) , // MoveObjectToContainer Window Request
@ -179,7 +179,7 @@ public enum Protocol {
@@ -179,7 +179,7 @@ public enum Protocol {
REQUESTTOTRADE ( 0x4D84259B , TradeRequestMsg . class , null ) , // Trade Request
REQUESTTRADECANCEL ( 0xCB0C5735 , RejectTradeRequestMsg . class , null ) , // Reject RequestToTrade
REQUESTTRADEOK ( 0xFFD29841 , AcceptTradeRequestMsg . class , null ) , // Accept Trade Request
RESETAFTERDEATH ( 0xFDCBB98F , RespawnMsg . class , null ) , //Respawn Request/Response
RESETAFTERDEATH ( 0xFDCBB98F , RespawnMsg . class , null ) , //Respawn Request/Response
ROTATEMSG ( 0x57F2088E , RotateObjectMsg . class , null ) ,
SAFEMODE ( 0x9CF3922A , SafeModeMsg . class , null ) , //Tell client they're in safe mode
SCALEOBJECT ( 0xE2B392D9 , null , null ) , // Adjust scale of object
@ -210,7 +210,7 @@ public enum Protocol {
@@ -210,7 +210,7 @@ public enum Protocol {
TAXCITY ( 0xCD41EAA6 , TaxCityMsg . class , TaxCityMsgHandler . class ) ,
TAXRESOURCES ( 0x4AD458AF , TaxResourcesMsg . class , TaxResourcesMsgHandler . class ) ,
TELEPORT ( 0x23E726EA , TeleportToPointMsg . class , null ) , // Teleport to point
TERRITORYCHANGE ( 0x6B388C8C , TerritoryChangeMessage . class , null ) , //Hey rich, look what I found? :)
TERRITORYCHANGE ( 0x6B388C8C , TerritoryChangeMessage . class , null ) , //Hey rich, look what I found? :)
TOGGLESITSTAND ( 0x624F3C0F , ToggleSitStandMsg . class , null ) , //Toggle Sit/Stand
TRADEADDGOLD ( 0x654ACB45 , AddGoldToTradeWindowMsg . class , null ) , // Add Gold to Trade Window
TRADEADDOBJECT ( 0x55D363E9 , AddItemToTradeWindowMsg . class , null ) , // Add an Item to the Trade Window
@ -227,7 +227,7 @@ public enum Protocol {
@@ -227,7 +227,7 @@ public enum Protocol {
TRANSFERITEMFROMVAULTTOINVENTORY ( 0x0119A64D , TransferItemFromVaultToInventoryMsg . class , null ) , // Transfer Item from Vault to Inventory
TRANSFERITEMTOBANK ( 0xD48C46FA , TransferItemFromInventoryToBankMsg . class , null ) , // Transfer Item from Inventory to Bank
UNEQUIP ( 0xC6BFB907 , TransferItemFromEquipToInventoryMsg . class , null ) , // Transfer Item from Equip to Inventory
UNKNOWN ( 0x238C9259 , UnknownMsg . class , null ) ,
UNKNOWN ( 0x238C9259 , UnknownMsg . class , null ) ,
UPDATECHARORMOB ( 0xB6D78961 , null , null ) ,
UPDATECLIENTALLIANCES ( 0xF3FEB5D4 , null , GuildUnknownHandler . class ) , //AlliancesMsg
UPDATECLIENTINVENTORIES ( 0xE66F533D , UpdateInventoryMsg . class , null ) , //Update player inventory
@ -247,14 +247,14 @@ public enum Protocol {
@@ -247,14 +247,14 @@ public enum Protocol {
WEIGHTINVENTORY ( 0xF1B6A85C , LootWindowResponseMsg . class , null ) , // MoveObjectToContainer Window Response
WHOREQUEST ( 0xF431CCE9 , WhoRequestMsg . class , null ) , // Request /who
WHORESPONSE ( 0xD7C36568 , WhoResponseMsg . class , null ) , // Response /who
REQUESTBALLLIST ( 0xE366FF64 , RequestBallListMessage . class , RequestBallListHandler . class ) ,
SENDBALLENTRY ( 0xAC2B5EDC , SendBallEntryMessage . class , SendBallEntryHandler . class ) ,
UNKNOWN1 ( - 263523523 , Unknown1Msg . class , null ) ,
DROPGOLD ( 1461654160 , DropGoldMsg . class , null ) ;
REQUESTBALLLIST ( 0xE366FF64 , RequestBallListMessage . class , RequestBallListHandler . class ) ,
SENDBALLENTRY ( 0xAC2B5EDC , SendBallEntryMessage . class , SendBallEntryHandler . class ) ,
UNKNOWN1 ( - 263523523 , Unknown1Msg . class , null ) ,
DROPGOLD ( 1461654160 , DropGoldMsg . class , null ) ;
public int opcode ;
private Class message ;
private Class handlerClass ;
private final Class message ;
private final Class handlerClass ;
public Constructor constructor ;
public AbstractClientMsgHandler handler ;
@ -286,7 +286,7 @@ public enum Protocol {
@@ -286,7 +286,7 @@ public enum Protocol {
}
}
private static HashMap < Integer , Protocol > _protocolMsgByOpcode = new HashMap < > ( ) ;
private static final HashMap < Integer , Protocol > _protocolMsgByOpcode = new HashMap < > ( ) ;
public static Protocol getByOpcode ( int opcode ) {
@ -302,7 +302,7 @@ public enum Protocol {
@@ -302,7 +302,7 @@ public enum Protocol {
for ( Protocol protocol : Protocol . values ( ) ) {
if ( _protocolMsgByOpcode . containsKey ( protocol . opcode ) ) {
if ( _protocolMsgByOpcode . containsKey ( protocol . opcode ) ) {
Logger . error ( "Duplicate opcodes for " + protocol . name ( ) + " and " + _protocolMsgByOpcode . get ( protocol . opcode ) . name ( ) ) ;
}
_protocolMsgByOpcode . put ( protocol . opcode , protocol ) ;
@ -310,21 +310,21 @@ public enum Protocol {
@@ -310,21 +310,21 @@ public enum Protocol {
}
public static int FindNextValidOpcode ( ByteBufferReader reader ) {
public static int FindNextValidOpcode ( ByteBufferReader reader ) {
int startPos = reader . position ( ) ;
int bytesLeft = reader . remaining ( ) ;
if ( bytesLeft < 4 )
return startPos ;
int nextPos = startPos ;
for ( int i = 1 ; i < bytesLeft ; i + + ) {
for ( int i = 1 ; i < bytesLeft ; i + + ) {
reader . position ( nextPos ) ;
if ( reader . remaining ( ) < 4 )
return reader . position ( ) ;
int newOpcode = reader . getInt ( ) ;
Protocol foundProtocol = Protocol . getByOpcode ( newOpcode ) ;
if ( foundProtocol . equals ( Protocol . NONE ) ) {
if ( foundProtocol . equals ( Protocol . NONE ) ) {
nextPos + = 1 ;
continue ;
}
@ -334,5 +334,5 @@ public static int FindNextValidOpcode(ByteBufferReader reader){
@@ -334,5 +334,5 @@ public static int FindNextValidOpcode(ByteBufferReader reader){
}
return startPos ;
}
}
}