1
This commit is contained in:
parent
4515648841
commit
eb67759b5f
@ -729,3 +729,8 @@ int BattleDataContext::GetReloadTime(Creature* c, Weapon* weapon)
|
|||||||
auto p = GetWeaponByUniId(weapon->weapon_uniid);
|
auto p = GetWeaponByUniId(weapon->weapon_uniid);
|
||||||
return p ? p->GetReloadTime() : weapon->meta->i->reload_time();
|
return p ? p->GetReloadTime() : weapon->meta->i->reload_time();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
float BattleDataContext::GetExtRecoverHp()
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
@ -70,6 +70,7 @@ struct BattleDataContext
|
|||||||
int GetFireRate(Creature* c, Weapon* weapon);
|
int GetFireRate(Creature* c, Weapon* weapon);
|
||||||
int GetReloadTime(Creature* c, Weapon* weapon);
|
int GetReloadTime(Creature* c, Weapon* weapon);
|
||||||
float GetHeroTotalAtk();
|
float GetHeroTotalAtk();
|
||||||
|
float GetExtRecoverHp();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void Clear();
|
void Clear();
|
||||||
|
@ -1000,39 +1000,27 @@ void Buff::ProcMachineGun()
|
|||||||
caster_.Get()->need_sync_active_player = true;
|
caster_.Get()->need_sync_active_player = true;
|
||||||
caster_.Get()->UpdateCharImage(__FILE__, __LINE__, __func__);
|
caster_.Get()->UpdateCharImage(__FILE__, __LINE__, __func__);
|
||||||
}
|
}
|
||||||
if (skill_meta) {
|
if (skill_meta && skill_meta->number_meta) {
|
||||||
switch (skill_meta->GetMagicId()) {
|
switch (skill_meta->GetMagicId()) {
|
||||||
case MAGIC_HLYZ:
|
case MAGIC_HLYZ:
|
||||||
{
|
{
|
||||||
if (meta->i->buff_id() == 208011) {
|
owner->room->xtimer.ModifyTimer
|
||||||
owner->room->xtimer.ModifyTimer
|
(remover_timer,
|
||||||
(remover_timer,
|
skill_meta->number_meta->int_time / FRAME_RATE_MS);
|
||||||
skill_meta->number_meta->int_time / FRAME_RATE_MS);
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case MAGIC_HJHX:
|
case MAGIC_HJHX:
|
||||||
{
|
{
|
||||||
if (meta->i->buff_id() == 202012) {
|
owner->room->xtimer.ModifyTimer
|
||||||
owner->room->xtimer.ModifyTimer
|
(remover_timer,
|
||||||
(remover_timer,
|
skill_meta->number_meta->int_time / FRAME_RATE_MS);
|
||||||
skill_meta->number_meta->int_time / FRAME_RATE_MS);
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case MAGIC_FG:
|
case MAGIC_FG:
|
||||||
{
|
{
|
||||||
if (meta->i->buff_id() == 204011) {
|
owner->room->xtimer.ModifyTimer
|
||||||
owner->room->xtimer.ModifyTimer
|
(remover_timer,
|
||||||
(remover_timer,
|
skill_meta->number_meta->int_time / FRAME_RATE_MS);
|
||||||
skill_meta->number_meta->int_time / FRAME_RATE_MS);
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
@ -1392,7 +1392,7 @@ void Creature::ProcSkillPhase(MetaData::SkillPhase* phase)
|
|||||||
a8::XPrintf("old_pos:%f,%f", {GetPos().x, GetPos().y});
|
a8::XPrintf("old_pos:%f,%f", {GetPos().x, GetPos().y});
|
||||||
#endif
|
#endif
|
||||||
#if 1
|
#if 1
|
||||||
_UpdateMove(CurrentSkill()->meta->number_meta->int_range);
|
_UpdateMove(SkillHelper::GetSjydhxForthDistance(CurrentSkill()->meta));
|
||||||
#else
|
#else
|
||||||
_UpdateMove(phase->param1.GetInt());
|
_UpdateMove(phase->param1.GetInt());
|
||||||
#endif
|
#endif
|
||||||
@ -1407,7 +1407,7 @@ void Creature::ProcSkillPhase(MetaData::SkillPhase* phase)
|
|||||||
(
|
(
|
||||||
SMT_BLINK,
|
SMT_BLINK,
|
||||||
#if 1
|
#if 1
|
||||||
CurrentSkill()->meta->number_meta->float_time * 1000,
|
SkillHelper::GetSjydhxForthDistance(CurrentSkill()->meta) * 1000,
|
||||||
#else
|
#else
|
||||||
phase->param2.GetInt() * 1000,
|
phase->param2.GetInt() * 1000,
|
||||||
#endif
|
#endif
|
||||||
|
@ -157,11 +157,6 @@ void SkillHelper::GetMagicIdAndBaseSkillId(int skill_id, int& magic_id, int& bas
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int SkillHelper::GetAxxfDmg(const MetaData::Skill* skill_meta)
|
|
||||||
{
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
int SkillHelper::GetCmxdDmg(const MetaData::Skill* skill_meta)
|
int SkillHelper::GetCmxdDmg(const MetaData::Skill* skill_meta)
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
@ -229,7 +224,21 @@ void SkillHelper::ProcBulletHitBuff(Bullet* bullet, Creature* c, int buff_uniid)
|
|||||||
|
|
||||||
float SkillHelper::GetSjydhxRecoverHp(Creature* c, const MetaData::Skill* skill_meta)
|
float SkillHelper::GetSjydhxRecoverHp(Creature* c, const MetaData::Skill* skill_meta)
|
||||||
{
|
{
|
||||||
return 0;
|
float hp =
|
||||||
|
(skill_meta->number_meta->float_ratio +
|
||||||
|
skill_meta->number_meta->float_ratio * c->GetBattleContext()->GetHeroTotalAtk()) *
|
||||||
|
(1 + c->GetBattleContext()->GetExtRecoverHp());
|
||||||
|
return hp;
|
||||||
|
}
|
||||||
|
|
||||||
|
float SkillHelper::GetSjydhxForthDistance(const MetaData::Skill* skill_meta)
|
||||||
|
{
|
||||||
|
return skill_meta && skill_meta->number_meta ? skill_meta->number_meta->int_range : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
float SkillHelper::GetSjydhxBackTime(const MetaData::Skill* skill_meta)
|
||||||
|
{
|
||||||
|
return skill_meta && skill_meta->number_meta ? skill_meta->number_meta->float_time : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int SkillHelper::GetYmczBuffTime(const MetaData::Skill* skill_meta)
|
int SkillHelper::GetYmczBuffTime(const MetaData::Skill* skill_meta)
|
||||||
|
@ -15,10 +15,10 @@ class SkillHelper
|
|||||||
|
|
||||||
static void GetMagicIdAndBaseSkillId(int skill_id, int& magic_id, int& base_skill_id);
|
static void GetMagicIdAndBaseSkillId(int skill_id, int& magic_id, int& base_skill_id);
|
||||||
|
|
||||||
//爱心香风
|
|
||||||
static int GetAxxfDmg(const MetaData::Skill* skill_meta);
|
|
||||||
//瞬间移动回血
|
//瞬间移动回血
|
||||||
static float GetSjydhxRecoverHp(Creature* c, const MetaData::Skill* skill_meta);
|
static float GetSjydhxRecoverHp(Creature* c, const MetaData::Skill* skill_meta);
|
||||||
|
static float GetSjydhxForthDistance(const MetaData::Skill* skill_meta);
|
||||||
|
static float GetSjydhxBackTime(const MetaData::Skill* skill_meta);
|
||||||
//此面向敌
|
//此面向敌
|
||||||
static int GetCmxdDmg(const MetaData::Skill* skill_meta);
|
static int GetCmxdDmg(const MetaData::Skill* skill_meta);
|
||||||
static int GetCmxdDistance(const MetaData::Skill* skill_meta);
|
static int GetCmxdDistance(const MetaData::Skill* skill_meta);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user