1
This commit is contained in:
parent
d36c300161
commit
a089b5e6c7
@ -147,7 +147,7 @@ void Car::GetOn(Human* passenger)
|
|||||||
passengers_.insert(passenger);
|
passengers_.insert(passenger);
|
||||||
if (!driver_) {
|
if (!driver_) {
|
||||||
driver_ = passenger;
|
driver_ = passenger;
|
||||||
driver_->SetAttackDir(a8::Vec2::UP);
|
driver_->SetAttackDir(a8::Vec2::RIGHT);
|
||||||
SetAttackDir(driver_->GetAttackDir());
|
SetAttackDir(driver_->GetAttackDir());
|
||||||
}
|
}
|
||||||
passenger->SetCar(this);
|
passenger->SetCar(this);
|
||||||
@ -393,3 +393,8 @@ bool Car::IsPassenger(Human* hum)
|
|||||||
{
|
{
|
||||||
return passengers_.find(hum) != passengers_.end();
|
return passengers_.find(hum) != passengers_.end();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Car::SetAttackDir(const a8::Vec2& attack_dir)
|
||||||
|
{
|
||||||
|
Creature::SetAttackDir(attack_dir);
|
||||||
|
}
|
||||||
|
@ -38,13 +38,13 @@ class Car : public Creature
|
|||||||
virtual float GetSpeed() override;
|
virtual float GetSpeed() override;
|
||||||
virtual void DecHP(float dec_hp, int killer_id, const std::string& killer_name, int weapon_id) override;
|
virtual void DecHP(float dec_hp, int killer_id, const std::string& killer_name, int weapon_id) override;
|
||||||
virtual void SendDebugMsg(const std::string& debug_msg) override;
|
virtual void SendDebugMsg(const std::string& debug_msg) override;
|
||||||
|
virtual void SetAttackDir(const a8::Vec2& attack_dir) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
int AllocSeat();
|
int AllocSeat();
|
||||||
void BeKill(int killer_id, const std::string& killer_name, int weapon_id);
|
void BeKill(int killer_id, const std::string& killer_name, int weapon_id);
|
||||||
void Explosion(int team_id);
|
void Explosion(int team_id);
|
||||||
bool IsPassenger(Human* hum);
|
bool IsPassenger(Human* hum);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
long long born_frameno_ = 0;
|
long long born_frameno_ = 0;
|
||||||
bool later_removed_ = false;
|
bool later_removed_ = false;
|
||||||
|
@ -108,15 +108,6 @@ void Player::InternalUpdate(int delta_time)
|
|||||||
if (jump) {
|
if (jump) {
|
||||||
UpdateJump();
|
UpdateJump();
|
||||||
}
|
}
|
||||||
if (get_down) {
|
|
||||||
UpdateGetDown();
|
|
||||||
}
|
|
||||||
if (get_on) {
|
|
||||||
UpdateGetOn();
|
|
||||||
}
|
|
||||||
if (switch_seat) {
|
|
||||||
UpdateSwitchSeat();
|
|
||||||
}
|
|
||||||
if (shot_start || shot_hold) {
|
if (shot_start || shot_hold) {
|
||||||
UpdateShot();
|
UpdateShot();
|
||||||
}
|
}
|
||||||
@ -130,6 +121,15 @@ void Player::InternalUpdate(int delta_time)
|
|||||||
if (playing_skill) {
|
if (playing_skill) {
|
||||||
UpdateSkill();
|
UpdateSkill();
|
||||||
}
|
}
|
||||||
|
if (get_down) {
|
||||||
|
UpdateGetDown();
|
||||||
|
}
|
||||||
|
if (get_on) {
|
||||||
|
UpdateGetOn();
|
||||||
|
}
|
||||||
|
if (switch_seat) {
|
||||||
|
UpdateSwitchSeat();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1049,7 +1049,8 @@ void Player::_CMMove(f8::MsgHdr& hdr, const cs::CMMove& msg)
|
|||||||
std::abs(msg.attack_dir().y()) > 0.00001f
|
std::abs(msg.attack_dir().y()) > 0.00001f
|
||||||
)
|
)
|
||||||
){
|
){
|
||||||
if (!HasBuffEffect(kBET_Vertigo)) {
|
if (!HasBuffEffect(kBET_Vertigo) &&
|
||||||
|
!(GetCar() && GetCar()->HasBuffEffect(kBET_Vertigo))) {
|
||||||
a8::Vec2 attack_dir;
|
a8::Vec2 attack_dir;
|
||||||
TypeConvert::FromPb(attack_dir, &msg.attack_dir());
|
TypeConvert::FromPb(attack_dir, &msg.attack_dir());
|
||||||
attack_dir.Normalize();
|
attack_dir.Normalize();
|
||||||
@ -1057,6 +1058,8 @@ void Player::_CMMove(f8::MsgHdr& hdr, const cs::CMMove& msg)
|
|||||||
if (GetCar() && GetCar()->IsDriver(this)) {
|
if (GetCar() && GetCar()->IsDriver(this)) {
|
||||||
GetCar()->SetAttackDir(GetAttackDir());
|
GetCar()->SetAttackDir(GetAttackDir());
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
int i = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user