添加后坐力处理

This commit is contained in:
aozhiwei 2021-03-30 19:58:59 +08:00
parent c5285136a4
commit 931008868f
2 changed files with 8 additions and 2 deletions

View File

@ -64,6 +64,13 @@ void InternalShot(Creature* c,
is_tank_skin);
}
}
if (weapon_meta->i->recoil_force() > 0.000001) {
a8::Vec2 old_move_dir = c->move_dir;
c->MustBeAddBuff(c, kRecoilBuffId);
c->move_dir = c->attack_dir * -1;
c->_UpdateMove(weapon_meta->i->recoil_force());
c->move_dir = old_move_dir;
}
}
Creature::Creature():MoveableEntity()

View File

@ -111,14 +111,13 @@ class Creature : public MoveableEntity
void AddInventory(int slot_id, int num);
void DecInventory(int slot_id, int num);
std::array<int, IS_END - 1>& GetInventoryData() { return inventory_; };
virtual void _UpdateMove(int speed) {};
private:
virtual void AddBuffPostProc(Creature* caster, Buff* buff);
virtual void OnBuffRemove(const Buff& buff);
virtual void DoSkillPreProc(int skill_id, int target_id, const a8::Vec2& target_pos);
virtual void DoSkillPostProc(bool used, int skill_id, int target_id, const a8::Vec2& target_pos);
virtual void _UpdateMove(int speed) {};
void UpdateSkill();
void ProcSkillPhase(MetaData::SkillPhase* phase);