1
This commit is contained in:
parent
52ec88ff22
commit
cbc551ef39
@ -277,9 +277,7 @@ float Car::GetRadius()
|
||||
|
||||
float Car::GetSpeed()
|
||||
{
|
||||
float speed = hero_meta_->move_speed();
|
||||
speed *= 1 + GetAbility()->GetAttrRate(kHAT_Speed);
|
||||
return speed;
|
||||
return Creature::GetSpeed();
|
||||
}
|
||||
|
||||
void Car::OnBulletHit(IBullet* bullet)
|
||||
|
@ -3056,3 +3056,8 @@ bool Creature::IsNearGas()
|
||||
float distance = GetPos().Distance2D2(p);
|
||||
return distance + GetRadius() * 2 + 20 > room->GetGasData().rad_new;
|
||||
}
|
||||
|
||||
float Creature::GetSpeed()
|
||||
{
|
||||
|
||||
}
|
||||
|
@ -135,6 +135,7 @@ class Creature : public MoveableEntity
|
||||
virtual const mt::Hero* GetHeroMeta() { return nullptr; };
|
||||
virtual void FillMFObjectImage(Room* room, Human* hum, cs::MFCharacterImage* image_data) {};
|
||||
virtual void SetPos(Position pos) override;
|
||||
virtual float GetSpeed();
|
||||
std::shared_ptr<Movement> GetMovement() { return movement_; };
|
||||
bool HasBuffEffect(int buff_effect_id);
|
||||
Buff* GetBuffByEffectId(int effect_id);
|
||||
|
@ -185,8 +185,7 @@ void Hero::OnBulletHit(IBullet* bullet)
|
||||
|
||||
float Hero::GetSpeed()
|
||||
{
|
||||
float speed = meta->move_speed();
|
||||
return speed;
|
||||
return Creature::GetSpeed();
|
||||
}
|
||||
|
||||
void Hero::UpdateMove()
|
||||
|
@ -105,6 +105,8 @@ void Human::Initialize()
|
||||
|
||||
float Human::GetSpeed()
|
||||
{
|
||||
return Creature::GetSpeed();
|
||||
#if 0
|
||||
{
|
||||
Buff* buff = GetBuffByEffectId(kBET_HoldShield);
|
||||
if (buff) {
|
||||
@ -174,11 +176,7 @@ float Human::GetSpeed()
|
||||
speed *= mt::Param::s().water_move_coefficient;
|
||||
}
|
||||
return std::max(speed, 1.0f);
|
||||
}
|
||||
|
||||
float Human::GetSpeed4()
|
||||
{
|
||||
return meta->move_speed4();
|
||||
#endif
|
||||
}
|
||||
|
||||
bool Human::IsDead(Room * room)
|
||||
|
@ -142,7 +142,6 @@ class Human : public Creature
|
||||
virtual ~Human() override;
|
||||
virtual void Initialize() override;
|
||||
virtual float GetSpeed() override;
|
||||
virtual float GetSpeed4();
|
||||
virtual void FillMFObjectPart(Room* room, Human* hum, cs::MFObjectPart* part_data) override;
|
||||
void FillMFObjectLess(Room* room, Human* hum, cs::MFPlayerFull* full_data);
|
||||
virtual void FillMFObjectFull(Room* room, Human* hum, cs::MFObjectFull* full_data) override;
|
||||
|
@ -16,7 +16,6 @@ class MoveableEntity : public RoomEntity
|
||||
void TraverseAllLayerEntityList(std::function<void (Entity*, bool&)> func);
|
||||
void TraverseAllLayerHumanList(std::function<void (Human*, bool&)> func);
|
||||
|
||||
virtual float GetSpeed() { return 1.0f;};
|
||||
virtual void RefreshView();
|
||||
virtual void OnGridListChange(std::set<GridCell*>& old_grids,
|
||||
std::set<GridCell*>& inc_grids,
|
||||
|
@ -87,15 +87,26 @@ namespace mt
|
||||
}
|
||||
}
|
||||
{
|
||||
if (move_speed() >= 20) {
|
||||
move_speed_ /= 20.0f;
|
||||
jump_speed_ /= 20.0f;
|
||||
move_speed3_ /= 20.0f;
|
||||
shot_speed_ /= 20.0f;
|
||||
aiming_speed_ /= 20.0f;
|
||||
move_speed4_ /= 20.0f;
|
||||
reload_speed_ /= 20.0f;
|
||||
useitem_speed_ /= 20.0f;
|
||||
if (jump_speed() < 0.0001f) {
|
||||
jump_speed_ = 1.0f;
|
||||
}
|
||||
if (fall_speed() < 0.0001f) {
|
||||
fall_speed_ = 1.0f;
|
||||
}
|
||||
if (aim_speed() < 0.0001f) {
|
||||
aim_speed_ = 1.0f;
|
||||
}
|
||||
if (shoot_speed() < 0.0001f) {
|
||||
shoot_speed_ = 1.0f;
|
||||
}
|
||||
if (reload_speed() < 0.0001f) {
|
||||
reload_speed_ = 1.0f;
|
||||
}
|
||||
if (medicine_speed() < 0.0001f) {
|
||||
medicine_speed_ = 1.0f;
|
||||
}
|
||||
if (swim_speed() < 0.0001f) {
|
||||
swim_speed_ = 1.0f;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -12,14 +12,14 @@ namespace mtb
|
||||
a8::reflect::Class* GetClass() const;
|
||||
int id() const { return id_; };
|
||||
float radius() const { return radius_; };
|
||||
int move_speed() const { return move_speed_; };
|
||||
int jump_speed() const { return jump_speed_; };
|
||||
int move_speed3() const { return move_speed3_; };
|
||||
int shot_speed() const { return shot_speed_; };
|
||||
int aiming_speed() const { return aiming_speed_; };
|
||||
int move_speed4() const { return move_speed4_; };
|
||||
int reload_speed() const { return reload_speed_; };
|
||||
int useitem_speed() const { return useitem_speed_; };
|
||||
float move_speed() const { return move_speed_; };
|
||||
float jump_speed() const { return jump_speed_; };
|
||||
float fall_speed() const { return fall_speed_; };
|
||||
float aim_speed() const { return aim_speed_; };
|
||||
float shoot_speed() const { return shoot_speed_; };
|
||||
float reload_speed() const { return reload_speed_; };
|
||||
float medicine_speed() const { return medicine_speed_; };
|
||||
float swim_speed() const { return swim_speed_; };
|
||||
const std::string volume() const { return volume_; };
|
||||
int level() const { return level_; };
|
||||
int race() const { return race_; };
|
||||
@ -56,12 +56,12 @@ namespace mtb
|
||||
bool has_radius() const { return __flags__.test(1);};
|
||||
bool has_move_speed() const { return __flags__.test(2);};
|
||||
bool has_jump_speed() const { return __flags__.test(3);};
|
||||
bool has_move_speed3() const { return __flags__.test(4);};
|
||||
bool has_shot_speed() const { return __flags__.test(5);};
|
||||
bool has_aiming_speed() const { return __flags__.test(6);};
|
||||
bool has_move_speed4() const { return __flags__.test(7);};
|
||||
bool has_reload_speed() const { return __flags__.test(8);};
|
||||
bool has_useitem_speed() const { return __flags__.test(9);};
|
||||
bool has_fall_speed() const { return __flags__.test(4);};
|
||||
bool has_aim_speed() const { return __flags__.test(5);};
|
||||
bool has_shoot_speed() const { return __flags__.test(6);};
|
||||
bool has_reload_speed() const { return __flags__.test(7);};
|
||||
bool has_medicine_speed() const { return __flags__.test(8);};
|
||||
bool has_swim_speed() const { return __flags__.test(9);};
|
||||
bool has_volume() const { return __flags__.test(10);};
|
||||
bool has_level() const { return __flags__.test(11);};
|
||||
bool has_race() const { return __flags__.test(12);};
|
||||
@ -98,14 +98,14 @@ namespace mtb
|
||||
|
||||
int id_ = 0;
|
||||
float radius_ = 0.0f;
|
||||
int move_speed_ = 0;
|
||||
int jump_speed_ = 0;
|
||||
int move_speed3_ = 0;
|
||||
int shot_speed_ = 0;
|
||||
int aiming_speed_ = 0;
|
||||
int move_speed4_ = 0;
|
||||
int reload_speed_ = 0;
|
||||
int useitem_speed_ = 0;
|
||||
float move_speed_ = 0.0f;
|
||||
float jump_speed_ = 0.0f;
|
||||
float fall_speed_ = 0.0f;
|
||||
float aim_speed_ = 0.0f;
|
||||
float shoot_speed_ = 0.0f;
|
||||
float reload_speed_ = 0.0f;
|
||||
float medicine_speed_ = 0.0f;
|
||||
float swim_speed_ = 0.0f;
|
||||
std::string volume_;
|
||||
int level_ = 0;
|
||||
int race_ = 0;
|
||||
|
@ -300,14 +300,14 @@ namespace mtb
|
||||
meta_class = new a8::reflect::Class("Hero", 41, 0);
|
||||
meta_class->SetSimpleField(0, "id", a8::reflect::ET_INT32, my_offsetof2(Hero, id_));
|
||||
meta_class->SetSimpleField(1, "radius", a8::reflect::ET_FLOAT, my_offsetof2(Hero, radius_));
|
||||
meta_class->SetSimpleField(2, "move_speed", a8::reflect::ET_INT32, my_offsetof2(Hero, move_speed_));
|
||||
meta_class->SetSimpleField(3, "jump_speed", a8::reflect::ET_INT32, my_offsetof2(Hero, jump_speed_));
|
||||
meta_class->SetSimpleField(4, "move_speed3", a8::reflect::ET_INT32, my_offsetof2(Hero, move_speed3_));
|
||||
meta_class->SetSimpleField(5, "shot_speed", a8::reflect::ET_INT32, my_offsetof2(Hero, shot_speed_));
|
||||
meta_class->SetSimpleField(6, "aiming_speed", a8::reflect::ET_INT32, my_offsetof2(Hero, aiming_speed_));
|
||||
meta_class->SetSimpleField(7, "move_speed4", a8::reflect::ET_INT32, my_offsetof2(Hero, move_speed4_));
|
||||
meta_class->SetSimpleField(8, "reload_speed", a8::reflect::ET_INT32, my_offsetof2(Hero, reload_speed_));
|
||||
meta_class->SetSimpleField(9, "useitem_speed", a8::reflect::ET_INT32, my_offsetof2(Hero, useitem_speed_));
|
||||
meta_class->SetSimpleField(2, "move_speed", a8::reflect::ET_FLOAT, my_offsetof2(Hero, move_speed_));
|
||||
meta_class->SetSimpleField(3, "jump_speed", a8::reflect::ET_FLOAT, my_offsetof2(Hero, jump_speed_));
|
||||
meta_class->SetSimpleField(4, "fall_speed", a8::reflect::ET_FLOAT, my_offsetof2(Hero, fall_speed_));
|
||||
meta_class->SetSimpleField(5, "aim_speed", a8::reflect::ET_FLOAT, my_offsetof2(Hero, aim_speed_));
|
||||
meta_class->SetSimpleField(6, "shoot_speed", a8::reflect::ET_FLOAT, my_offsetof2(Hero, shoot_speed_));
|
||||
meta_class->SetSimpleField(7, "reload_speed", a8::reflect::ET_FLOAT, my_offsetof2(Hero, reload_speed_));
|
||||
meta_class->SetSimpleField(8, "medicine_speed", a8::reflect::ET_FLOAT, my_offsetof2(Hero, medicine_speed_));
|
||||
meta_class->SetSimpleField(9, "swim_speed", a8::reflect::ET_FLOAT, my_offsetof2(Hero, swim_speed_));
|
||||
meta_class->SetSimpleField(10, "volume", a8::reflect::ET_STRING, my_offsetof2(Hero, volume_));
|
||||
meta_class->SetSimpleField(11, "level", a8::reflect::ET_INT32, my_offsetof2(Hero, level_));
|
||||
meta_class->SetSimpleField(12, "race", a8::reflect::ET_INT32, my_offsetof2(Hero, race_));
|
||||
|
@ -217,14 +217,16 @@ message Hero
|
||||
{
|
||||
optional int32 id = 1; //唯一id
|
||||
optional float radius = 2; //半径
|
||||
optional int32 move_speed = 4; //移动速度
|
||||
optional int32 jump_speed = 5; //跳伞速度
|
||||
optional int32 move_speed3 = 6;
|
||||
optional int32 shot_speed = 7;
|
||||
optional int32 aiming_speed = 8;
|
||||
optional int32 move_speed4 = 10; //移动速度4
|
||||
optional int32 reload_speed = 9;
|
||||
optional int32 useitem_speed = 49;
|
||||
|
||||
optional float move_speed = 4; //移动速度
|
||||
optional float jump_speed = 5; //跳伞速度
|
||||
optional float fall_speed = 6;
|
||||
optional float aim_speed = 8;
|
||||
optional float shoot_speed = 7;
|
||||
optional float reload_speed = 9;
|
||||
optional float medicine_speed = 10; //移动速度4
|
||||
optional float swim_speed = 49;
|
||||
|
||||
optional string volume = 12; //初始库存
|
||||
optional int32 level = 13;
|
||||
optional int32 race = 14;
|
||||
|
Loading…
x
Reference in New Issue
Block a user