32 lines
634 B
C++
32 lines
634 B
C++
#pragma once
|
|
|
|
namespace cs
|
|
{
|
|
class MFWeapon;
|
|
}
|
|
|
|
class Creature;
|
|
class Weapon
|
|
{
|
|
public:
|
|
|
|
long long weapon_uniid = 0;
|
|
int weapon_idx = 0;
|
|
int weapon_id = 0;
|
|
int ammo = 0;
|
|
const mt::Equip* meta = nullptr;
|
|
const mt::Equip* bullet_meta = nullptr;
|
|
const mt::Skill* skill_meta = nullptr;
|
|
std::vector<const mt::GraspBuff*> grasp_buff_list;
|
|
|
|
void Clear();
|
|
void ToPB(Creature* c, cs::MFWeapon* pb_obj);
|
|
void Recalc();
|
|
int GetClipVolume(Creature* c);
|
|
int GetFireRate(Creature* c);
|
|
int GetReloadTime(Creature* c);
|
|
void CalcGraspBuffList(Creature* c);
|
|
|
|
friend class PBUtils;
|
|
};
|