1
This commit is contained in:
parent
74b425e91f
commit
bf6033f55b
@ -298,6 +298,8 @@ bool Human::IsCollisionInMapService()
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
@ -638,6 +640,8 @@ bool Human::HasNoDownedTeammate()
|
||||
|
||||
void Human::DoSkill()
|
||||
{
|
||||
if (skill_meta && GetSkillLeftTime() <= 0) {
|
||||
}
|
||||
}
|
||||
|
||||
void Human::FindLocation()
|
||||
@ -666,6 +670,8 @@ void Human::FindLocation()
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -798,20 +804,11 @@ void Human::FillMFActivePlayerData(cs::MFActivePlayerData* player_data)
|
||||
player_data->set_max_energy_shield(max_energy_shield);
|
||||
}
|
||||
#endif
|
||||
#if 1
|
||||
if (skill_meta) {
|
||||
if (last_use_skill_frameno_ == 0) {
|
||||
player_data->set_skill_left_time(0);
|
||||
player_data->set_skill_cd_time(skill_meta->i->skill_cd() * 1000);
|
||||
} else {
|
||||
int passed_time = (room->frame_no - last_use_skill_frameno_) * FRAME_RATE_MS;
|
||||
int skill_left_time = std::max(0, skill_meta->i->skill_cd() * 1000 - passed_time);
|
||||
player_data->set_skill_left_time(skill_left_time);
|
||||
player_data->set_skill_cd_time(skill_meta->i->skill_cd() * 1000);
|
||||
player_data->set_skill_left_time(GetSkillLeftTime());
|
||||
player_data->set_skill_cd_time(GetSkillCd());
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void Human::FillMFGasData(cs::MFGasData* gas_data)
|
||||
{
|
||||
@ -1223,6 +1220,8 @@ void Human::UpdateAction()
|
||||
hum->SyncAroundPlayers();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
ResetAction();
|
||||
}
|
||||
@ -1289,6 +1288,25 @@ int Human::SkinLv()
|
||||
return skin.skin_lv;
|
||||
}
|
||||
|
||||
int Human::GetSkillLeftTime()
|
||||
{
|
||||
if (skill_meta) {
|
||||
if (last_use_skill_frameno_ == 0) {
|
||||
return 0;
|
||||
} else {
|
||||
int passed_time = (room->frame_no - last_use_skill_frameno_) * FRAME_RATE_MS;
|
||||
int skill_left_time = std::max(0, skill_meta->i->skill_cd() * 1000 - passed_time);
|
||||
return skill_left_time;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
int Human::GetSkillCd()
|
||||
{
|
||||
return skill_meta ? skill_meta->i->skill_cd() * 1000 : 0;
|
||||
}
|
||||
|
||||
void Human::_UpdateMove(int speed)
|
||||
{
|
||||
for (int i = 0; i < speed; ++i) {
|
||||
|
@ -190,6 +190,8 @@ class Human : public Entity
|
||||
const Skin& GetSkin();
|
||||
int SkinId();
|
||||
int SkinLv();
|
||||
int GetSkillLeftTime();
|
||||
int GetSkillCd();
|
||||
|
||||
protected:
|
||||
void _UpdateMove(int speed);
|
||||
|
Loading…
x
Reference in New Issue
Block a user