34 lines
607 B
C++
34 lines
607 B
C++
#pragma once
|
|
|
|
namespace cs
|
|
{
|
|
class MFWeapon;
|
|
class MFSkin;
|
|
}
|
|
|
|
namespace MetaData
|
|
{
|
|
struct Equip;
|
|
struct EquipUpgrade;
|
|
}
|
|
|
|
struct Weapon
|
|
{
|
|
int weapon_idx = 0;
|
|
int weapon_id = 0;
|
|
int weapon_lv = 0;
|
|
int ammo = 0;
|
|
MetaData::Equip* meta = nullptr;
|
|
MetaData::Equip* bullet_meta = nullptr;
|
|
|
|
void Clear();
|
|
void ToPB(cs::MFWeapon* pb_obj);
|
|
void Recalc();
|
|
int GetClipVolume();
|
|
float GetAttrValue(HumanAttrType_e attr_type);
|
|
MetaData::EquipUpgrade* GetUpgradeMeta() { return upgrade_meta;}
|
|
|
|
private:
|
|
MetaData::EquipUpgrade* upgrade_meta = nullptr;
|
|
};
|