1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-05-27 11:57:45 +00:00
This commit is contained in:
collett 2020-01-09 21:10:49 +09:00
parent a5884fd604
commit 384404bb33
5 changed files with 6 additions and 9 deletions

View file

@ -496,7 +496,7 @@ void Action::Action::buildEffects()
{
auto dmg = calcDamage( isCorrectCombo() ? m_lutEntry.damageComboPotency : m_lutEntry.damagePotency );
dmg.first = Math::CalcStats::applyDamageReceiveMultiplier( *actor, dmg.first, m_actionData->attackType );
m_effectBuilder->damage( actor, actor, dmg.first, m_actionData->attackType, dmg.second );
m_effectBuilder->damage( actor, actor, dmg.first, dmg.second );
if( dmg.first > 0 )
actor->onActionHostile( m_pSource );

View file

@ -63,10 +63,10 @@ void EffectBuilder::restoreMP( Entity::CharaPtr& target, Entity::CharaPtr& resto
moveToResultList( target, nextResult );
}
void EffectBuilder::damage( Entity::CharaPtr& effectTarget, Entity::CharaPtr& damagingTarget, uint32_t amount, int8_t attackType, Common::ActionHitSeverityType severity, Common::ActionEffectResultFlag flag )
void EffectBuilder::damage( Entity::CharaPtr& effectTarget, Entity::CharaPtr& damagingTarget, uint32_t amount, Common::ActionHitSeverityType severity, Common::ActionEffectResultFlag flag )
{
EffectResultPtr nextResult = make_EffectResult( damagingTarget, nullptr, getResultDelayMs() );
nextResult->damage( amount, attackType, severity, flag );
nextResult->damage( amount, severity, flag );
moveToResultList( effectTarget, nextResult );
}

View file

@ -18,7 +18,7 @@ namespace Sapphire::World::Action
void restoreMP( Entity::CharaPtr& effectTarget, Entity::CharaPtr& restoringTarget, uint32_t amount,
Common::ActionEffectResultFlag flag = Common::ActionEffectResultFlag::None);
void damage( Entity::CharaPtr& effectTarget, Entity::CharaPtr& damagingTarget, uint32_t amount, int8_t attackType,
void damage( Entity::CharaPtr& effectTarget, Entity::CharaPtr& damagingTarget, uint32_t amount,
Common::ActionHitSeverityType severity = Common::ActionHitSeverityType::NormalDamage,
Common::ActionEffectResultFlag flag = Common::ActionEffectResultFlag::None);

View file

@ -18,7 +18,6 @@ EffectResult::EffectResult( Entity::CharaPtr target, Entity::CharaPtr source, ui
m_param0( 0 ),
m_param1( 0 ),
m_param2( 0 ),
m_attackType( -1 ),
m_flag( Common::ActionEffectResultFlag::None )
{
@ -44,12 +43,11 @@ uint64_t EffectResult::getDelay()
return m_delayMs;
}
void EffectResult::damage( uint32_t amount, int8_t attackType, Common::ActionHitSeverityType severity, Common::ActionEffectResultFlag flag )
void EffectResult::damage( uint32_t amount, Common::ActionHitSeverityType severity, Common::ActionEffectResultFlag flag )
{
m_param0 = static_cast< uint8_t >( severity );
m_value = amount;
m_flag = flag;
m_attackType = attackType;
m_type = Common::ActionEffectType::Damage;
}

View file

@ -15,7 +15,7 @@ namespace Sapphire::World::Action
public:
explicit EffectResult( Entity::CharaPtr target, Entity::CharaPtr source, uint64_t delayMs );
void damage( uint32_t amount, int8_t attackType, Common::ActionHitSeverityType severity, Common::ActionEffectResultFlag flag = Common::ActionEffectResultFlag::None );
void damage( uint32_t amount, Common::ActionHitSeverityType severity, Common::ActionEffectResultFlag flag = Common::ActionEffectResultFlag::None );
void heal( uint32_t amount, Common::ActionHitSeverityType severity, Common::ActionEffectResultFlag flag = Common::ActionEffectResultFlag::None );
void restoreMP( uint32_t amount, Common::ActionEffectResultFlag flag = Common::ActionEffectResultFlag::None );
void startCombo( uint16_t actionId );
@ -47,7 +47,6 @@ namespace Sapphire::World::Action
uint32_t m_value;
uint32_t m_value2;
int8_t m_attackType;
Common::ActionEffectResultFlag m_flag;
};
}