1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-05-25 19:17:45 +00:00

Fix status effect list packet.

This commit is contained in:
collett 2020-01-16 19:44:28 +09:00
parent 71d486e806
commit bb350ba250
5 changed files with 5 additions and 13 deletions

View file

@ -412,7 +412,7 @@ namespace Sapphire::Common
struct StatusEffect
{
uint16_t effect_id;
uint16_t unknown1;
uint16_t param;
float duration;
uint32_t sourceActorId;
};

View file

@ -659,6 +659,7 @@ void Sapphire::Entity::Chara::sendStatusEffectUpdate()
( currentTimeMs - statusEffect->getStartTimeMs() ) ) / 1000;
statusEffectList->data().effect[ slot ].duration = timeLeft;
statusEffectList->data().effect[ slot ].effect_id = statusEffect->getId();
statusEffectList->data().effect[ slot ].param = statusEffect->getParam();
statusEffectList->data().effect[ slot ].sourceActorId = statusEffect->getSrcActorId();
slot++;
}

View file

@ -744,16 +744,7 @@ void Sapphire::Entity::Player::gainLevel()
m_hp = getMaxHp();
m_mp = getMaxMp();
auto effectListPacket = makeZonePacket< FFXIVIpcStatusEffectList >( getId() );
effectListPacket->data().classId = static_cast< uint8_t > ( getClass() );
effectListPacket->data().level1 = getLevel();
effectListPacket->data().level = getLevel();
effectListPacket->data().current_hp = getMaxHp();
effectListPacket->data().current_mp = getMaxMp();
effectListPacket->data().currentTp = 1000;
effectListPacket->data().max_hp = getMaxHp();
effectListPacket->data().max_mp = getMaxMp();
sendToInRangeSet( effectListPacket, true );
sendStatusEffectUpdate();
sendToInRangeSet( makeActorControl( getId(), LevelUpEffect, static_cast< uint8_t >( getClass() ),
getLevel(), getLevel() - 1 ), true );

View file

@ -96,7 +96,7 @@ namespace Sapphire::Network::Packets::Server
( currentTimeMs -
effect.second->getStartTimeMs() ) ) / 1000;
m_data.effect[ effect.first ].sourceActorId = effect.second->getSrcActorId();
m_data.effect[ effect.first ].unknown1 = effect.second->getParam();
m_data.effect[ effect.first ].param = effect.second->getParam();
}
};

View file

@ -142,7 +142,7 @@ namespace Sapphire::Network::Packets::Server
( currentTimeMs -
effect.second->getStartTimeMs() ) ) / 1000;
m_data.effect[ effect.first ].sourceActorId = effect.second->getSrcActorId();
m_data.effect[ effect.first ].unknown1 = effect.second->getParam();
m_data.effect[ effect.first ].param = effect.second->getParam();
}
};