Sync tabledata submodule + fix transportation bugs

This commit is contained in:
Gent 2020-09-21 23:54:07 -04:00
parent adf017b07c
commit 153b3a9ef5
3 changed files with 8 additions and 4 deletions

View File

@ -217,6 +217,10 @@ void PlayerManager::enterPlayer(CNSocket* sock, CNPacketData* data) {
response.PCLoadData2CL.iBatteryW = plr.batteryW; response.PCLoadData2CL.iBatteryW = plr.batteryW;
response.PCLoadData2CL.iBuddyWarpTime = 60; //sets 60s warp cooldown on login response.PCLoadData2CL.iBuddyWarpTime = 60; //sets 60s warp cooldown on login
response.PCLoadData2CL.iWarpLocationFlag = plr.iWarpLocationFlag;
response.PCLoadData2CL.aWyvernLocationFlag[0] = plr.aSkywayLocationFlag[0];
response.PCLoadData2CL.aWyvernLocationFlag[1] = plr.aSkywayLocationFlag[1];
response.PCLoadData2CL.iActiveNanoSlotNum = -1; response.PCLoadData2CL.iActiveNanoSlotNum = -1;
response.PCLoadData2CL.iFatigue = 50; response.PCLoadData2CL.iFatigue = 50;
response.PCLoadData2CL.PCStyle = plr.PCStyle; response.PCLoadData2CL.PCStyle = plr.PCStyle;

View File

@ -40,7 +40,7 @@ void TransportManager::transportRegisterLocationHandler(CNSocket* sock, CNPacket
} }
// update registration bitfield using bitmask // update registration bitfield using bitmask
uint32_t newScamperFlag = plr->iWarpLocationFlag | (plr->accountLevel <= 40 ? UINT32_MAX : (1UL << (transport->iLocationID - 1))); uint32_t newScamperFlag = plr->iWarpLocationFlag | (plr->accountLevel <= 40 ? INT32_MAX : (1UL << (transport->iLocationID - 1)));
if (newScamperFlag != plr->iWarpLocationFlag) { if (newScamperFlag != plr->iWarpLocationFlag) {
plr->iWarpLocationFlag = newScamperFlag; plr->iWarpLocationFlag = newScamperFlag;
newReg = true; newReg = true;
@ -62,8 +62,8 @@ void TransportManager::transportRegisterLocationHandler(CNSocket* sock, CNPacket
* assuming the two bitfields are just stuck together to make a longer one, do a similar operation * assuming the two bitfields are just stuck together to make a longer one, do a similar operation
*/ */
if (plr->accountLevel <= 40) { if (plr->accountLevel <= 40) {
plr->aSkywayLocationFlag[0] = UINT64_MAX; plr->aSkywayLocationFlag[0] = INT64_MAX;
plr->aSkywayLocationFlag[1] = UINT64_MAX; plr->aSkywayLocationFlag[1] = INT64_MAX;
newReg = true; newReg = true;
} else { } else {
int index = transport->iLocationID > 64 ? 1 : 0; int index = transport->iLocationID > 64 ? 1 : 0;

2
tdata

@ -1 +1 @@
Subproject commit f9c5f6a245c36add9fd8663badeca96e19a5d7ed Subproject commit dc47c07f115ac279a1301670783cc27b08246fb3