Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
ziqian zhang
Grasscutter
Commits
ae2d1fe4
Commit
ae2d1fe4
authored
Jul 21, 2022
by
github-actions
Committed by
Melledy
Jul 21, 2022
Browse files
Fix whitespace [skip actions]
parent
510d564b
Changes
166
Hide whitespace changes
Inline
Side-by-side
src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerEnterDungeonReq.java
View file @
ae2d1fe4
...
...
@@ -8,13 +8,13 @@ import emu.grasscutter.server.game.GameSession;
@Opcodes
(
PacketOpcodes
.
PlayerEnterDungeonReq
)
public
class
HandlerPlayerEnterDungeonReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
// Auto template
PlayerEnterDungeonReq
req
=
PlayerEnterDungeonReq
.
parseFrom
(
payload
);
session
.
getServer
().
getDungeonSystem
().
enterDungeon
(
session
.
getPlayer
(),
req
.
getPointId
(),
req
.
getDungeonId
());
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
// Auto template
PlayerEnterDungeonReq
req
=
PlayerEnterDungeonReq
.
parseFrom
(
payload
);
session
.
getServer
().
getDungeonSystem
().
enterDungeon
(
session
.
getPlayer
(),
req
.
getPointId
(),
req
.
getDungeonId
());
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerGetForceQuitBanInfoReq.java
View file @
ae2d1fe4
...
...
@@ -9,17 +9,17 @@ import emu.grasscutter.server.packet.send.PacketPlayerGetForceQuitBanInfoRsp;
@Opcodes
(
PacketOpcodes
.
PlayerGetForceQuitBanInfoReq
)
public
class
HandlerPlayerGetForceQuitBanInfoReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
if
(
session
.
getServer
().
getMultiplayerSystem
().
leaveCoop
(
session
.
getPlayer
()))
{
// Success
session
.
send
(
new
PacketPlayerGetForceQuitBanInfoRsp
(
RetcodeOuterClass
.
Retcode
.
RET_SUCC_VALUE
));
}
else
{
// Fail
session
.
send
(
new
PacketPlayerGetForceQuitBanInfoRsp
(
RetcodeOuterClass
.
Retcode
.
RET_SVR_ERROR_VALUE
));
}
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
if
(
session
.
getServer
().
getMultiplayerSystem
().
leaveCoop
(
session
.
getPlayer
()))
{
// Success
session
.
send
(
new
PacketPlayerGetForceQuitBanInfoRsp
(
RetcodeOuterClass
.
Retcode
.
RET_SUCC_VALUE
));
}
else
{
// Fail
session
.
send
(
new
PacketPlayerGetForceQuitBanInfoRsp
(
RetcodeOuterClass
.
Retcode
.
RET_SVR_ERROR_VALUE
));
}
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerLoginReq.java
View file @
ae2d1fe4
...
...
@@ -18,39 +18,39 @@ import emu.grasscutter.server.packet.send.PacketTakeAchievementRewardReq;
@Opcodes
(
PacketOpcodes
.
PlayerLoginReq
)
// Sends initial data packets
public
class
HandlerPlayerLoginReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
// Check
if
(
session
.
getAccount
()
==
null
)
{
session
.
close
();
return
;
}
// Parse request
PlayerLoginReq
req
=
PlayerLoginReq
.
parseFrom
(
payload
);
// Authenticate session
if
(!
req
.
getToken
().
equals
(
session
.
getAccount
().
getToken
()))
{
session
.
close
();
return
;
}
// Load character from db
Player
player
=
session
.
getPlayer
();
// Show opening cutscene if player has no avatars
if
(
player
.
getAvatars
().
getAvatarCount
()
==
0
)
{
// Pick character
session
.
setState
(
SessionState
.
PICKING_CHARACTER
);
session
.
send
(
new
BasePacket
(
PacketOpcodes
.
DoSetPlayerBornDataNotify
));
}
else
{
// Login done
session
.
getPlayer
().
onLogin
();
}
// Final packet to tell client logging in is done
session
.
send
(
new
PacketPlayerLoginRsp
(
session
));
session
.
send
(
new
PacketTakeAchievementRewardReq
(
session
));
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
// Check
if
(
session
.
getAccount
()
==
null
)
{
session
.
close
();
return
;
}
// Parse request
PlayerLoginReq
req
=
PlayerLoginReq
.
parseFrom
(
payload
);
// Authenticate session
if
(!
req
.
getToken
().
equals
(
session
.
getAccount
().
getToken
()))
{
session
.
close
();
return
;
}
// Load character from db
Player
player
=
session
.
getPlayer
();
// Show opening cutscene if player has no avatars
if
(
player
.
getAvatars
().
getAvatarCount
()
==
0
)
{
// Pick character
session
.
setState
(
SessionState
.
PICKING_CHARACTER
);
session
.
send
(
new
BasePacket
(
PacketOpcodes
.
DoSetPlayerBornDataNotify
));
}
else
{
// Login done
session
.
getPlayer
().
onLogin
();
}
// Final packet to tell client logging in is done
session
.
send
(
new
PacketPlayerLoginRsp
(
session
));
session
.
send
(
new
PacketTakeAchievementRewardReq
(
session
));
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerQuitDungeonReq.java
View file @
ae2d1fe4
...
...
@@ -7,10 +7,10 @@ import emu.grasscutter.server.game.GameSession;
@Opcodes
(
PacketOpcodes
.
PlayerQuitDungeonReq
)
public
class
HandlerPlayerQuitDungeonReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
session
.
getPlayer
().
getServer
().
getDungeonSystem
().
exitDungeon
(
session
.
getPlayer
());
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
session
.
getPlayer
().
getServer
().
getDungeonSystem
().
exitDungeon
(
session
.
getPlayer
());
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerPullPrivateChatReq.java
View file @
ae2d1fe4
...
...
@@ -9,14 +9,14 @@ import emu.grasscutter.server.packet.send.PacketPullPrivateChatRsp;
@Opcodes
(
PacketOpcodes
.
PullPrivateChatReq
)
public
class
HandlerPullPrivateChatReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
PullPrivateChatReq
req
=
PullPrivateChatReq
.
parseFrom
(
payload
);
session
.
getServer
().
getChatManager
().
handlePullPrivateChatReq
(
session
.
getPlayer
(),
req
.
getTargetUid
());
// session.send(new PacketPullPrivateChatRsp(req.getTargetUid()));
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
PullPrivateChatReq
req
=
PullPrivateChatReq
.
parseFrom
(
payload
);
session
.
getServer
().
getChatManager
().
handlePullPrivateChatReq
(
session
.
getPlayer
(),
req
.
getTargetUid
());
// session.send(new PacketPullPrivateChatRsp(req.getTargetUid()));
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerPullRecentChatReq.java
View file @
ae2d1fe4
...
...
@@ -8,8 +8,8 @@ import emu.grasscutter.server.packet.send.PacketPullRecentChatRsp;
@Opcodes
(
PacketOpcodes
.
PullRecentChatReq
)
public
class
HandlerPullRecentChatReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
session
.
getServer
().
getChatManager
().
handlePullRecentChatReq
(
session
.
getPlayer
());
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
session
.
getServer
().
getChatManager
().
handlePullRecentChatReq
(
session
.
getPlayer
());
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerQueryPathReq.java
View file @
ae2d1fe4
...
...
@@ -11,17 +11,17 @@ import emu.grasscutter.server.packet.send.PacketQueryPathRsp;
@Opcodes
(
PacketOpcodes
.
QueryPathReq
)
public
class
HandlerQueryPathReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
var
req
=
QueryPathReq
.
parseFrom
(
payload
);
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
var
req
=
QueryPathReq
.
parseFrom
(
payload
);
/**
* It is not the actual work
*/
if
(
req
.
getDestinationPosList
().
size
()
>
0
)
{
session
.
send
(
new
PacketQueryPathRsp
(
req
));
session
.
send
(
new
PacketQueryPathRsp
(
req
));
}
}
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerReliquaryDecomposeReq.java
View file @
ae2d1fe4
...
...
@@ -8,9 +8,9 @@ import emu.grasscutter.server.game.GameSession;
@Opcodes
(
PacketOpcodes
.
ReliquaryDecomposeReq
)
public
class
HandlerReliquaryDecomposeReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
ReliquaryDecomposeReq
req
=
ReliquaryDecomposeReq
.
parseFrom
(
payload
);
session
.
getServer
().
getCombineSystem
().
decomposeReliquaries
(
session
.
getPlayer
(),
req
.
getConfigId
(),
req
.
getTargetCount
(),
req
.
getGuidListList
());
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
ReliquaryDecomposeReq
req
=
ReliquaryDecomposeReq
.
parseFrom
(
payload
);
session
.
getServer
().
getCombineSystem
().
decomposeReliquaries
(
session
.
getPlayer
(),
req
.
getConfigId
(),
req
.
getTargetCount
(),
req
.
getGuidListList
());
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerReliquaryUpgradeReq.java
View file @
ae2d1fe4
...
...
@@ -8,12 +8,12 @@ import emu.grasscutter.server.game.GameSession;
@Opcodes
(
PacketOpcodes
.
ReliquaryUpgradeReq
)
public
class
HandlerReliquaryUpgradeReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
ReliquaryUpgradeReq
req
=
ReliquaryUpgradeReq
.
parseFrom
(
payload
);
session
.
getServer
().
getInventorySystem
().
upgradeRelic
(
session
.
getPlayer
(),
req
.
getTargetReliquaryGuid
(),
req
.
getFoodReliquaryGuidListList
(),
req
.
getItemParamListList
());
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
ReliquaryUpgradeReq
req
=
ReliquaryUpgradeReq
.
parseFrom
(
payload
);
session
.
getServer
().
getInventorySystem
().
upgradeRelic
(
session
.
getPlayer
(),
req
.
getTargetReliquaryGuid
(),
req
.
getFoodReliquaryGuidListList
(),
req
.
getItemParamListList
());
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerSceneKickPlayerReq.java
View file @
ae2d1fe4
...
...
@@ -9,18 +9,18 @@ import emu.grasscutter.server.packet.send.PacketSceneKickPlayerRsp;
@Opcodes
(
PacketOpcodes
.
SceneKickPlayerReq
)
public
class
HandlerSceneKickPlayerReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
SceneKickPlayerReq
req
=
SceneKickPlayerReq
.
parseFrom
(
payload
);
if
(
session
.
getServer
().
getMultiplayerSystem
().
kickPlayer
(
session
.
getPlayer
(),
req
.
getTargetUid
()))
{
// Success
session
.
send
(
new
PacketSceneKickPlayerRsp
(
req
.
getTargetUid
()));
}
else
{
// Fail
session
.
send
(
new
PacketSceneKickPlayerRsp
());
}
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
SceneKickPlayerReq
req
=
SceneKickPlayerReq
.
parseFrom
(
payload
);
if
(
session
.
getServer
().
getMultiplayerSystem
().
kickPlayer
(
session
.
getPlayer
(),
req
.
getTargetUid
()))
{
// Success
session
.
send
(
new
PacketSceneKickPlayerRsp
(
req
.
getTargetUid
()));
}
else
{
// Fail
session
.
send
(
new
PacketSceneKickPlayerRsp
());
}
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerSetEquipLockStateReq.java
View file @
ae2d1fe4
...
...
@@ -8,12 +8,12 @@ import emu.grasscutter.server.game.GameSession;
@Opcodes
(
PacketOpcodes
.
SetEquipLockStateReq
)
public
class
HandlerSetEquipLockStateReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
SetEquipLockStateReq
req
=
SetEquipLockStateReq
.
parseFrom
(
payload
);
session
.
getServer
().
getInventorySystem
().
lockEquip
(
session
.
getPlayer
(),
req
.
getTargetEquipGuid
(),
req
.
getIsLocked
());
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
SetEquipLockStateReq
req
=
SetEquipLockStateReq
.
parseFrom
(
payload
);
session
.
getServer
().
getInventorySystem
().
lockEquip
(
session
.
getPlayer
(),
req
.
getTargetEquipGuid
(),
req
.
getIsLocked
());
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerSetOpenStateReq.java
View file @
ae2d1fe4
...
...
@@ -23,4 +23,4 @@ public class HandlerSetOpenStateReq extends PacketHandler {
session
.
send
(
new
PacketSetOpenStateRsp
(
openState
,
value
));
}
}
\ No newline at end of file
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerSetPlayerBornDataReq.java
View file @
ae2d1fe4
...
...
@@ -23,62 +23,62 @@ import java.util.Arrays;
@Opcodes
(
PacketOpcodes
.
SetPlayerBornDataReq
)
public
class
HandlerSetPlayerBornDataReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
SetPlayerBornDataReq
req
=
SetPlayerBornDataReq
.
parseFrom
(
payload
);
// Sanity checks
int
avatarId
=
req
.
getAvatarId
();
int
startingSkillDepot
;
if
(
avatarId
==
GameConstants
.
MAIN_CHARACTER_MALE
)
{
startingSkillDepot
=
504
;
}
else
if
(
avatarId
==
GameConstants
.
MAIN_CHARACTER_FEMALE
)
{
startingSkillDepot
=
704
;
}
else
{
return
;
}
// Make sure resources folder is set
if
(!
GameData
.
getAvatarDataMap
().
containsKey
(
avatarId
))
{
Grasscutter
.
getLogger
().
error
(
"No avatar data found! Please check your ExcelBinOutput folder."
);
session
.
close
();
return
;
}
// Get player object
Player
player
=
session
.
getPlayer
();
player
.
setNickname
(
req
.
getNickName
());
// Create avatar
if
(
player
.
getAvatars
().
getAvatarCount
()
==
0
)
{
Avatar
mainCharacter
=
new
Avatar
(
avatarId
);
mainCharacter
.
setSkillDepotData
(
GameData
.
getAvatarSkillDepotDataMap
().
get
(
startingSkillDepot
));
// Manually handle adding to team
player
.
addAvatar
(
mainCharacter
,
false
);
player
.
setMainCharacterId
(
avatarId
);
player
.
setHeadImage
(
avatarId
);
player
.
getTeamManager
().
getCurrentSinglePlayerTeamInfo
().
getAvatars
().
add
(
mainCharacter
.
getAvatarId
());
player
.
save
();
// TODO save player team in different object
}
else
{
return
;
}
// Login done
session
.
getPlayer
().
onLogin
();
// Born resp packet
session
.
send
(
new
BasePacket
(
PacketOpcodes
.
SetPlayerBornDataRsp
));
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
SetPlayerBornDataReq
req
=
SetPlayerBornDataReq
.
parseFrom
(
payload
);
// Default mail
var
welcomeMail
=
GAME_INFO
.
joinOptions
.
welcomeMail
;
MailBuilder
mailBuilder
=
new
MailBuilder
(
player
.
getUid
(),
new
Mail
());
mailBuilder
.
mail
.
mailContent
.
title
=
welcomeMail
.
title
;
mailBuilder
.
mail
.
mailContent
.
sender
=
welcomeMail
.
sender
;
// Please credit Grasscutter if changing something here. We don't condone commercial use of the project.
mailBuilder
.
mail
.
mailContent
.
content
=
welcomeMail
.
content
+
"\n<type=\"browser\" text=\"GitHub\" href=\"https://github.com/Melledy/Grasscutter\"/>"
;
mailBuilder
.
mail
.
itemList
.
addAll
(
Arrays
.
asList
(
welcomeMail
.
items
));
mailBuilder
.
mail
.
importance
=
1
;
player
.
sendMail
(
mailBuilder
.
mail
);
}
// Sanity checks
int
avatarId
=
req
.
getAvatarId
();
int
startingSkillDepot
;
if
(
avatarId
==
GameConstants
.
MAIN_CHARACTER_MALE
)
{
startingSkillDepot
=
504
;
}
else
if
(
avatarId
==
GameConstants
.
MAIN_CHARACTER_FEMALE
)
{
startingSkillDepot
=
704
;
}
else
{
return
;
}
// Make sure resources folder is set
if
(!
GameData
.
getAvatarDataMap
().
containsKey
(
avatarId
))
{
Grasscutter
.
getLogger
().
error
(
"No avatar data found! Please check your ExcelBinOutput folder."
);
session
.
close
();
return
;
}
// Get player object
Player
player
=
session
.
getPlayer
();
player
.
setNickname
(
req
.
getNickName
());
// Create avatar
if
(
player
.
getAvatars
().
getAvatarCount
()
==
0
)
{
Avatar
mainCharacter
=
new
Avatar
(
avatarId
);
mainCharacter
.
setSkillDepotData
(
GameData
.
getAvatarSkillDepotDataMap
().
get
(
startingSkillDepot
));
// Manually handle adding to team
player
.
addAvatar
(
mainCharacter
,
false
);
player
.
setMainCharacterId
(
avatarId
);
player
.
setHeadImage
(
avatarId
);
player
.
getTeamManager
().
getCurrentSinglePlayerTeamInfo
().
getAvatars
().
add
(
mainCharacter
.
getAvatarId
());
player
.
save
();
// TODO save player team in different object
}
else
{
return
;
}
// Login done
session
.
getPlayer
().
onLogin
();
// Born resp packet
session
.
send
(
new
BasePacket
(
PacketOpcodes
.
SetPlayerBornDataRsp
));
// Default mail
var
welcomeMail
=
GAME_INFO
.
joinOptions
.
welcomeMail
;
MailBuilder
mailBuilder
=
new
MailBuilder
(
player
.
getUid
(),
new
Mail
());
mailBuilder
.
mail
.
mailContent
.
title
=
welcomeMail
.
title
;
mailBuilder
.
mail
.
mailContent
.
sender
=
welcomeMail
.
sender
;
// Please credit Grasscutter if changing something here. We don't condone commercial use of the project.
mailBuilder
.
mail
.
mailContent
.
content
=
welcomeMail
.
content
+
"\n<type=\"browser\" text=\"GitHub\" href=\"https://github.com/Melledy/Grasscutter\"/>"
;
mailBuilder
.
mail
.
itemList
.
addAll
(
Arrays
.
asList
(
welcomeMail
.
items
));
mailBuilder
.
mail
.
importance
=
1
;
player
.
sendMail
(
mailBuilder
.
mail
);
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerTowerAllDataReq.java
View file @
ae2d1fe4
...
...
@@ -8,13 +8,13 @@ import emu.grasscutter.server.packet.send.PacketTowerAllDataRsp;
@Opcodes
(
PacketOpcodes
.
TowerAllDataReq
)
public
class
HandlerTowerAllDataReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
session
.
send
(
new
PacketTowerAllDataRsp
(
session
.
getServer
().
getTowerSystem
(),
session
.
getPlayer
().
getTowerManager
()
));
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
session
.
send
(
new
PacketTowerAllDataRsp
(
session
.
getServer
().
getTowerSystem
(),
session
.
getPlayer
().
getTowerManager
()
));
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerUnionCmdNotify.java
View file @
ae2d1fe4
...
...
@@ -13,28 +13,28 @@ import emu.grasscutter.Grasscutter.ServerDebugMode;
@Opcodes
(
PacketOpcodes
.
UnionCmdNotify
)
public
class
HandlerUnionCmdNotify
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
UnionCmdNotify
req
=
UnionCmdNotify
.
parseFrom
(
payload
);
for
(
UnionCmd
cmd
:
req
.
getCmdListList
())
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
UnionCmdNotify
req
=
UnionCmdNotify
.
parseFrom
(
payload
);
for
(
UnionCmd
cmd
:
req
.
getCmdListList
())
{
int
cmdOpcode
=
cmd
.
getMessageId
();
byte
[]
cmdPayload
=
cmd
.
getBody
().
toByteArray
();
if
(
GAME_INFO
.
logPackets
==
ServerDebugMode
.
WHITELIST
&&
SERVER
.
debugWhitelist
.
contains
(
cmd
.
getMessageId
()))
{
if
(
GAME_INFO
.
logPackets
==
ServerDebugMode
.
WHITELIST
&&
SERVER
.
debugWhitelist
.
contains
(
cmd
.
getMessageId
()))
{
session
.
logPacket
(
"RECV in Union"
,
cmdOpcode
,
cmdPayload
);
}
else
if
(
GAME_INFO
.
logPackets
==
ServerDebugMode
.
BLACKLIST
&&
!
SERVER
.
debugBlacklist
.
contains
(
cmd
.
getMessageId
()))
{
session
.
logPacket
(
"RECV in Union"
,
cmdOpcode
,
cmdPayload
);
}
//debugLevel ALL ignores UnionCmdNotify, so we will also ignore the contained opcodes
session
.
getServer
().
getPacketHandler
().
handle
(
session
,
cmd
.
getMessageId
(),
EMPTY_BYTE_ARRAY
,
cmd
.
getBody
().
toByteArray
());
}
}
// Update
session
.
getPlayer
().
getCombatInvokeHandler
().
update
(
session
.
getPlayer
());
session
.
getPlayer
().
getAbilityInvokeHandler
().
update
(
session
.
getPlayer
());
// Update
session
.
getPlayer
().
getCombatInvokeHandler
().
update
(
session
.
getPlayer
());
session
.
getPlayer
().
getAbilityInvokeHandler
().
update
(
session
.
getPlayer
());
// Handle attack results last
while
(!
session
.
getPlayer
().
getAttackResults
().
isEmpty
())
{
session
.
getPlayer
().
getScene
().
handleAttack
(
session
.
getPlayer
().
getAttackResults
().
poll
());
}
}
while
(!
session
.
getPlayer
().
getAttackResults
().
isEmpty
())
{
session
.
getPlayer
().
getScene
().
handleAttack
(
session
.
getPlayer
().
getAttackResults
().
poll
());
}
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerUnlockAvatarTalentReq.java
View file @
ae2d1fe4
...
...
@@ -8,13 +8,13 @@ import emu.grasscutter.server.game.GameSession;
@Opcodes
(
PacketOpcodes
.
UnlockAvatarTalentReq
)
public
class
HandlerUnlockAvatarTalentReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
UnlockAvatarTalentReq
req
=
UnlockAvatarTalentReq
.
parseFrom
(
payload
);
// Unlock avatar const
session
.
getServer
().
getInventorySystem
().
unlockAvatarConstellation
(
session
.
getPlayer
(),
req
.
getAvatarGuid
());
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
UnlockAvatarTalentReq
req
=
UnlockAvatarTalentReq
.
parseFrom
(
payload
);
// Unlock avatar const
session
.
getServer
().
getInventorySystem
().
unlockAvatarConstellation
(
session
.
getPlayer
(),
req
.
getAvatarGuid
());
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerUseItemReq.java
View file @
ae2d1fe4
...
...
@@ -10,17 +10,17 @@ import emu.grasscutter.server.packet.send.PacketUseItemRsp;
@Opcodes
(
PacketOpcodes
.
UseItemReq
)
public
class
HandlerUseItemReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
UseItemReq
req
=
UseItemReq
.
parseFrom
(
payload
);
GameItem
useItem
=
session
.
getServer
().
getInventorySystem
().
useItem
(
session
.
getPlayer
(),
req
.
getTargetGuid
(),
req
.
getGuid
(),
req
.
getCount
(),
req
.
getOptionIdx
());
if
(
useItem
!=
null
)
{
session
.
send
(
new
PacketUseItemRsp
(
req
.
getTargetGuid
(),
useItem
));
}
else
{
session
.
send
(
new
PacketUseItemRsp
());
}
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
UseItemReq
req
=
UseItemReq
.
parseFrom
(
payload
);
GameItem
useItem
=
session
.
getServer
().
getInventorySystem
().
useItem
(
session
.
getPlayer
(),
req
.
getTargetGuid
(),
req
.
getGuid
(),
req
.
getCount
(),
req
.
getOptionIdx
());
if
(
useItem
!=
null
)
{
session
.
send
(
new
PacketUseItemRsp
(
req
.
getTargetGuid
(),
useItem
));
}
else
{
session
.
send
(
new
PacketUseItemRsp
());
}
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerWeaponAwakenReq.java
View file @
ae2d1fe4
...
...
@@ -8,13 +8,13 @@ import emu.grasscutter.server.game.GameSession;
@Opcodes
(
PacketOpcodes
.
WeaponAwakenReq
)
public
class
HandlerWeaponAwakenReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
WeaponAwakenReq
req
=
WeaponAwakenReq
.
parseFrom
(
payload
);
// Weapon refinement
session
.
getServer
().
getInventorySystem
().
refineWeapon
(
session
.
getPlayer
(),
req
.
getTargetWeaponGuid
(),
req
.
getItemGuid
());
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
WeaponAwakenReq
req
=
WeaponAwakenReq
.
parseFrom
(
payload
);
// Weapon refinement
session
.
getServer
().
getInventorySystem
().
refineWeapon
(
session
.
getPlayer
(),
req
.
getTargetWeaponGuid
(),
req
.
getItemGuid
());
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerWeaponPromoteReq.java
View file @
ae2d1fe4
...
...
@@ -8,13 +8,13 @@ import emu.grasscutter.server.game.GameSession;
@Opcodes
(
PacketOpcodes
.
WeaponPromoteReq
)
public
class
HandlerWeaponPromoteReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
WeaponPromoteReq
req
=
WeaponPromoteReq
.
parseFrom
(
payload
);
// Ascend weapon
session
.
getServer
().
getInventorySystem
().
promoteWeapon
(
session
.
getPlayer
(),
req
.
getTargetWeaponGuid
());
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
WeaponPromoteReq
req
=
WeaponPromoteReq
.
parseFrom
(
payload
);
// Ascend weapon
session
.
getServer
().
getInventorySystem
().
promoteWeapon
(
session
.
getPlayer
(),
req
.
getTargetWeaponGuid
());
}
}
src/main/java/emu/grasscutter/server/packet/recv/HandlerWeaponUpgradeReq.java
View file @
ae2d1fe4
...
...
@@ -8,18 +8,18 @@ import emu.grasscutter.server.game.GameSession;
@Opcodes
(
PacketOpcodes
.
WeaponUpgradeReq
)
public
class
HandlerWeaponUpgradeReq
extends
PacketHandler
{
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
WeaponUpgradeReq
req
=
WeaponUpgradeReq
.
parseFrom
(
payload
);
// Level up weapon
session
.
getServer
().
getInventorySystem
().
upgradeWeapon
(
session
.
getPlayer
(),
req
.
getTargetWeaponGuid
(),
req
.
getFoodWeaponGuidListList
(),
req
.
getItemParamListList
()
);
}
@Override
public
void
handle
(
GameSession
session
,
byte
[]
header
,
byte
[]
payload
)
throws
Exception
{
WeaponUpgradeReq
req
=
WeaponUpgradeReq
.
parseFrom
(
payload
);
// Level up weapon
session
.
getServer
().
getInventorySystem
().
upgradeWeapon
(
session
.
getPlayer
(),
req
.
getTargetWeaponGuid
(),
req
.
getFoodWeaponGuidListList
(),
req
.
getItemParamListList
()
);
}
}
Prev
1
…
3
4
5
6
7
8
9
Next
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment