36 lines
737 B
C++
36 lines
737 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 weapon_lv = 0;
|
|
int ammo = 0;
|
|
const mt::Equip* meta = nullptr;
|
|
const mt::Equip* bullet_meta = nullptr;
|
|
const mt::Skill* skill_meta = nullptr;
|
|
const std::vector<std::tuple<float, float, float, int, int, int>>* bullet_born_offset_ptr = nullptr;
|
|
int buff_id = 0;
|
|
|
|
void Clear();
|
|
void ToPB(Creature* c, cs::MFWeapon* pb_obj);
|
|
void Recalc();
|
|
int GetClipVolume(Creature* c);
|
|
int GetFireRate(Creature* c);
|
|
int GetReloadTime(Creature* c);
|
|
int GetWeaponBattleLv(Creature* c);
|
|
|
|
private:
|
|
|
|
friend class PBUtils;
|
|
};
|