mirror of
https://github.com/SapphireServer/Sapphire.git
synced 2025-05-05 02:07:46 +00:00
Avoid copying modifiers to applyStatusEffect
This commit is contained in:
parent
b4dd70b98e
commit
241ac491ef
7 changed files with 13 additions and 13 deletions
|
@ -624,7 +624,7 @@ void Action::Action::handleStatusEffects()
|
||||||
{
|
{
|
||||||
for( auto& status : m_lutEntry.statuses.caster )
|
for( auto& status : m_lutEntry.statuses.caster )
|
||||||
{
|
{
|
||||||
pActionBuilder->applyStatusEffectSelf( status.id, status.duration, 0, status.modifiers, status.flag, true );
|
pActionBuilder->applyStatusEffectSelf( status.id, status.duration, 0, std::move( status.modifiers ), status.flag, true );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -635,7 +635,7 @@ void Action::Action::handleStatusEffects()
|
||||||
{
|
{
|
||||||
for( auto& status : m_lutEntry.statuses.target )
|
for( auto& status : m_lutEntry.statuses.target )
|
||||||
{
|
{
|
||||||
pActionBuilder->applyStatusEffect( actor, status.id, status.duration, 0, status.modifiers, status.flag, true );
|
pActionBuilder->applyStatusEffect( actor, status.id, status.duration, 0, std::move( status.modifiers ), status.flag, true );
|
||||||
}
|
}
|
||||||
|
|
||||||
if( actor->getStatusEffectMap().size() > 0 )
|
if( actor->getStatusEffectMap().size() > 0 )
|
||||||
|
|
|
@ -78,7 +78,7 @@ void ActionResult::applyStatusEffect( uint32_t id, int32_t duration, Entity::Cha
|
||||||
}
|
}
|
||||||
|
|
||||||
void ActionResult::applyStatusEffect( uint32_t id, int32_t duration, Entity::Chara& source, uint8_t param,
|
void ActionResult::applyStatusEffect( uint32_t id, int32_t duration, Entity::Chara& source, uint8_t param,
|
||||||
std::vector< StatusModifier > modifiers, uint32_t flag, bool shouldOverride )
|
const std::vector< StatusModifier >& modifiers, uint32_t flag, bool shouldOverride )
|
||||||
{
|
{
|
||||||
m_result.Value = static_cast< int16_t >( id );
|
m_result.Value = static_cast< int16_t >( id );
|
||||||
m_result.Arg2 = param;
|
m_result.Arg2 = param;
|
||||||
|
@ -101,7 +101,7 @@ void ActionResult::applyStatusEffectSelf( uint32_t id, int32_t duration, uint8_t
|
||||||
m_pStatus->setParam( param );
|
m_pStatus->setParam( param );
|
||||||
}
|
}
|
||||||
|
|
||||||
void ActionResult::applyStatusEffectSelf( uint32_t id, int32_t duration, uint8_t param, std::vector< World::Action::StatusModifier > modifiers,
|
void ActionResult::applyStatusEffectSelf( uint32_t id, int32_t duration, uint8_t param, const std::vector< World::Action::StatusModifier >& modifiers,
|
||||||
uint32_t flag, bool shouldOverride )
|
uint32_t flag, bool shouldOverride )
|
||||||
{
|
{
|
||||||
m_result.Value = static_cast< int16_t >( id );
|
m_result.Value = static_cast< int16_t >( id );
|
||||||
|
|
|
@ -22,9 +22,9 @@ namespace Sapphire::World::Action
|
||||||
void comboSucceed();
|
void comboSucceed();
|
||||||
void applyStatusEffect( uint32_t id, int32_t duration, Entity::Chara& source, uint8_t param, bool shouldOverride );
|
void applyStatusEffect( uint32_t id, int32_t duration, Entity::Chara& source, uint8_t param, bool shouldOverride );
|
||||||
void applyStatusEffect( uint32_t id, int32_t duration, Entity::Chara& source, uint8_t param,
|
void applyStatusEffect( uint32_t id, int32_t duration, Entity::Chara& source, uint8_t param,
|
||||||
std::vector< World::Action::StatusModifier > modifiers, uint32_t flag, bool shouldOverride );
|
const std::vector< World::Action::StatusModifier >& modifiers, uint32_t flag, bool shouldOverride );
|
||||||
void applyStatusEffectSelf( uint32_t id, int32_t duration, uint8_t param, bool shouldOverride );
|
void applyStatusEffectSelf( uint32_t id, int32_t duration, uint8_t param, bool shouldOverride );
|
||||||
void applyStatusEffectSelf( uint32_t id, int32_t duration, uint8_t param, std::vector< World::Action::StatusModifier > modifiers,
|
void applyStatusEffectSelf( uint32_t id, int32_t duration, uint8_t param, const std::vector< World::Action::StatusModifier >& modifiers,
|
||||||
uint32_t flag, bool shouldOverride );
|
uint32_t flag, bool shouldOverride );
|
||||||
void mount( uint16_t mountId );
|
void mount( uint16_t mountId );
|
||||||
|
|
||||||
|
|
|
@ -94,7 +94,7 @@ void ActionResultBuilder::applyStatusEffect( Entity::CharaPtr& target, uint16_t
|
||||||
}
|
}
|
||||||
|
|
||||||
void ActionResultBuilder::applyStatusEffect( Entity::CharaPtr& target, uint16_t statusId, uint32_t duration, uint8_t param,
|
void ActionResultBuilder::applyStatusEffect( Entity::CharaPtr& target, uint16_t statusId, uint32_t duration, uint8_t param,
|
||||||
std::vector< World::Action::StatusModifier > modifiers, uint32_t flag, bool shouldOverride )
|
const std::vector< World::Action::StatusModifier >& modifiers, uint32_t flag, bool shouldOverride )
|
||||||
{
|
{
|
||||||
ActionResultPtr nextResult = make_ActionResult( target );
|
ActionResultPtr nextResult = make_ActionResult( target );
|
||||||
nextResult->applyStatusEffect( statusId, duration, *m_sourceChara, param, modifiers, flag, shouldOverride );
|
nextResult->applyStatusEffect( statusId, duration, *m_sourceChara, param, modifiers, flag, shouldOverride );
|
||||||
|
@ -108,7 +108,7 @@ void ActionResultBuilder::applyStatusEffectSelf( uint16_t statusId, uint32_t dur
|
||||||
addResultToActor( m_sourceChara, nextResult );
|
addResultToActor( m_sourceChara, nextResult );
|
||||||
}
|
}
|
||||||
|
|
||||||
void ActionResultBuilder::applyStatusEffectSelf( uint16_t statusId, uint32_t duration, uint8_t param, std::vector< World::Action::StatusModifier > modifiers,
|
void ActionResultBuilder::applyStatusEffectSelf( uint16_t statusId, uint32_t duration, uint8_t param, const std::vector< World::Action::StatusModifier >& modifiers,
|
||||||
uint32_t flag, bool shouldOverride )
|
uint32_t flag, bool shouldOverride )
|
||||||
{
|
{
|
||||||
ActionResultPtr nextResult = make_ActionResult( m_sourceChara );
|
ActionResultPtr nextResult = make_ActionResult( m_sourceChara );
|
||||||
|
|
|
@ -28,9 +28,9 @@ namespace Sapphire::World::Action
|
||||||
|
|
||||||
void applyStatusEffect( Entity::CharaPtr& target, uint16_t statusId, uint32_t duration, uint8_t param, bool shouldOverride = false );
|
void applyStatusEffect( Entity::CharaPtr& target, uint16_t statusId, uint32_t duration, uint8_t param, bool shouldOverride = false );
|
||||||
void applyStatusEffect( Entity::CharaPtr& target, uint16_t statusId, uint32_t duration, uint8_t param,
|
void applyStatusEffect( Entity::CharaPtr& target, uint16_t statusId, uint32_t duration, uint8_t param,
|
||||||
std::vector< World::Action::StatusModifier > modifiers, uint32_t flag = 0, bool shouldOverride = false );
|
const std::vector< World::Action::StatusModifier >& modifiers, uint32_t flag = 0, bool shouldOverride = false );
|
||||||
void applyStatusEffectSelf( uint16_t statusId, uint32_t duration, uint8_t param, bool shouldOverride = false );
|
void applyStatusEffectSelf( uint16_t statusId, uint32_t duration, uint8_t param, bool shouldOverride = false );
|
||||||
void applyStatusEffectSelf( uint16_t statusId, uint32_t duration, uint8_t param, std::vector< World::Action::StatusModifier > modifiers,
|
void applyStatusEffectSelf( uint16_t statusId, uint32_t duration, uint8_t param, const std::vector< World::Action::StatusModifier >& modifiers,
|
||||||
uint32_t flag = 0, bool shouldOverride = false );
|
uint32_t flag = 0, bool shouldOverride = false );
|
||||||
|
|
||||||
void mount( Entity::CharaPtr& target, uint16_t mountId );
|
void mount( Entity::CharaPtr& target, uint16_t mountId );
|
||||||
|
|
|
@ -22,11 +22,11 @@ using namespace Sapphire::Network::Packets;
|
||||||
//using namespace Sapphire::Network::Packets::WorldPackets::Server;
|
//using namespace Sapphire::Network::Packets::WorldPackets::Server;
|
||||||
|
|
||||||
Sapphire::StatusEffect::StatusEffect::StatusEffect( uint32_t id, Entity::CharaPtr sourceActor, Entity::CharaPtr targetActor,
|
Sapphire::StatusEffect::StatusEffect::StatusEffect( uint32_t id, Entity::CharaPtr sourceActor, Entity::CharaPtr targetActor,
|
||||||
uint32_t duration,std::vector< World::Action::StatusModifier >& modifiers,
|
uint32_t duration, const std::vector< World::Action::StatusModifier >& modifiers,
|
||||||
uint32_t flag, uint32_t tickRate ) :
|
uint32_t flag, uint32_t tickRate ) :
|
||||||
StatusEffect( id, sourceActor, targetActor, duration, tickRate )
|
StatusEffect( id, sourceActor, targetActor, duration, tickRate )
|
||||||
{
|
{
|
||||||
m_statusModifiers = std::move( modifiers );
|
m_statusModifiers = modifiers;
|
||||||
m_flag = flag;
|
m_flag = flag;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@ class StatusEffect
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
StatusEffect( uint32_t id, Entity::CharaPtr sourceActor, Entity::CharaPtr targetActor,
|
StatusEffect( uint32_t id, Entity::CharaPtr sourceActor, Entity::CharaPtr targetActor,
|
||||||
uint32_t duration, std::vector< World::Action::StatusModifier >& modifiers, uint32_t flag, uint32_t tickRate );
|
uint32_t duration, const std::vector< World::Action::StatusModifier >& modifiers, uint32_t flag, uint32_t tickRate );
|
||||||
|
|
||||||
StatusEffect( uint32_t id, Entity::CharaPtr sourceActor, Entity::CharaPtr targetActor,
|
StatusEffect( uint32_t id, Entity::CharaPtr sourceActor, Entity::CharaPtr targetActor,
|
||||||
uint32_t duration, uint32_t tickRate );
|
uint32_t duration, uint32_t tickRate );
|
||||||
|
|
Loading…
Add table
Reference in a new issue