This commit is contained in:
aozhiwei 2021-09-06 11:23:16 +08:00
parent 1ca8e01b22
commit 4d3f3c43ee
3 changed files with 29 additions and 22 deletions

View File

@ -65,13 +65,14 @@ void Android::GiveEquip()
{ {
MetaData::Equip* weapon_meta = MetaMgr::Instance()->GetEquip(robot_meta->i->weapon_id()); MetaData::Equip* weapon_meta = MetaMgr::Instance()->GetEquip(robot_meta->i->weapon_id());
if (weapon_meta) { if (weapon_meta) {
weapons[GUN_SLOT1].weapon_idx = GUN_SLOT1; Weapon& weapon = weapons[GUN_SLOT1];
weapons[GUN_SLOT1].weapon_id = weapon_meta->i->id(); weapon.weapon_idx = GUN_SLOT1;
weapons[GUN_SLOT1].weapon_lv = robot_meta->i->weapon_lv(); weapon.weapon_id = weapon_meta->i->id();
weapons[GUN_SLOT1].ammo = 0; weapon.weapon_lv = robot_meta->i->weapon_lv();
weapons[GUN_SLOT1].meta = weapon_meta; weapon.ammo = 0;
weapons[GUN_SLOT1].Recalc(); weapon.meta = weapon_meta;
SetCurrWeapon(&weapons[GUN_SLOT1]); weapon.Recalc();
SetCurrWeapon(&weapon);
} }
sex = robot_meta->i->sex(); sex = robot_meta->i->sex();
if (sex == 0) { if (sex == 0) {

View File

@ -35,13 +35,14 @@ void Car::Initialize()
RecalcSelfCollider(); RecalcSelfCollider();
MetaData::Equip* weapon_meta = MetaMgr::Instance()->GetEquip(hero_meta_->i->default_weapon()); MetaData::Equip* weapon_meta = MetaMgr::Instance()->GetEquip(hero_meta_->i->default_weapon());
if (weapon_meta) { if (weapon_meta) {
weapons[GUN_SLOT1].weapon_idx = GUN_SLOT1; Weapon& weapon = weapons[GUN_SLOT1];
weapons[GUN_SLOT1].weapon_id = weapon_meta->i->id(); weapon.weapon_idx = GUN_SLOT1;
weapons[GUN_SLOT1].weapon_lv = 1; weapon.weapon_id = weapon_meta->i->id();
weapons[GUN_SLOT1].meta = weapon_meta; weapon.weapon_lv = 1;
weapons[GUN_SLOT1].Recalc(); weapon.meta = weapon_meta;
weapons[GUN_SLOT1].ammo = weapons[GUN_SLOT1].GetClipVolume(); weapon.Recalc();
SetCurrWeapon(&weapons[GUN_SLOT1]); weapon.ammo = weapon.GetClipVolume();
SetCurrWeapon(&weapon);
} }
born_frameno_ = room->GetFrameNo(); born_frameno_ = room->GetFrameNo();
SetDef(hero_meta_->i->def()); SetDef(hero_meta_->i->def());
@ -80,7 +81,11 @@ void Car::FillMFObjectFull(Room* room, Human* hum, cs::MFObjectFull* full_data)
p->set_max_health(GetMaxHP()); p->set_max_health(GetMaxHP());
p->set_oil(cur_oil_); p->set_oil(cur_oil_);
p->set_max_oil(meta->i->max_oil()); p->set_max_oil(meta->i->max_oil());
p->set_bullet_num(weapons[GUN_SLOT1].ammo); if (GetCurrWeapon()) {
p->set_bullet_num(GetCurrWeapon()->ammo);
} else {
p->set_bullet_num(0);
}
p->set_seat_num(meta->int_param2); p->set_seat_num(meta->int_param2);
FillBuffList(hum, p->mutable_buff_list()); FillBuffList(hum, p->mutable_buff_list());
} }

View File

@ -36,13 +36,14 @@ void Hero::Initialize()
SetMaxHP(GetHP()); SetMaxHP(GetHP());
MetaData::Equip* weapon_meta = MetaMgr::Instance()->GetEquip(meta->i->default_weapon()); MetaData::Equip* weapon_meta = MetaMgr::Instance()->GetEquip(meta->i->default_weapon());
if (weapon_meta) { if (weapon_meta) {
weapons[GUN_SLOT1].weapon_idx = GUN_SLOT1; Weapon& weapon = weapons[GUN_SLOT1];
weapons[GUN_SLOT1].weapon_id = weapon_meta->i->id(); weapon.weapon_idx = GUN_SLOT1;
weapons[GUN_SLOT1].weapon_lv = 1; weapon.weapon_id = weapon_meta->i->id();
weapons[GUN_SLOT1].ammo = 10000; weapon.weapon_lv = 1;
weapons[GUN_SLOT1].meta = weapon_meta; weapon.ammo = 10000;
weapons[GUN_SLOT1].Recalc(); weapon.meta = weapon_meta;
SetCurrWeapon(&weapons[GUN_SLOT1]); weapon.Recalc();
SetCurrWeapon(&weapon);
} }
SetInfiniteBulletMode(); SetInfiniteBulletMode();
InitAI(); InitAI();