54 lines
2.3 KiB
C++
54 lines
2.3 KiB
C++
#pragma once
|
|
|
|
#include "weakptr.h"
|
|
|
|
class Bullet;
|
|
class Human;
|
|
class Buff;
|
|
class Effect;
|
|
class Room;
|
|
class Creature;
|
|
struct FrameEvent
|
|
{
|
|
public:
|
|
Room* room = nullptr;
|
|
|
|
void AddAirDrop(int appear_time, int box_id, const glm::vec3& box_pos);
|
|
void AddAirRaid(int appear_time, const glm::vec3& raid_pos, float raid_rad, int continue_time);
|
|
void AddEmote(CreatureWeakPtr& sender, int emote_id);
|
|
void AddShot(CreatureWeakPtr& sender);
|
|
void AddBullet(int bullet_uniid,
|
|
CreatureWeakPtr& sender,
|
|
const mt::Equip* weapon_meta,
|
|
int weapon_lv,
|
|
const glm::vec3& born_pos,
|
|
const glm::vec3& dir,
|
|
float fly_distance,
|
|
int trace_target_id,
|
|
int hand,
|
|
std::shared_ptr<std::set<int>> reporter_list);
|
|
void RemoveBullet(glm::vec3 pos, int bullet_uniid);
|
|
void AddExplosion(Bullet* bullet, int item_id, Position bomb_pos);
|
|
void AddSmoke(Bullet* bullet, int item_id, glm::vec3 pos, float time_addition);
|
|
void AddPlaySkill(CreatureWeakPtr& sender, int skill_id);
|
|
void AddExplosionEx(CreatureWeakPtr& sender, int item_id, Position bomb_pos, int effect, int bullet_uniid);
|
|
void AddBulletNumChg(CreatureWeakPtr& sender);
|
|
void AddHpChg(CreatureWeakPtr& sender);
|
|
void AddWeaponAmmoChg(CreatureWeakPtr& sender);
|
|
void AddBuff(CreatureWeakPtr& sender, Buff* buff);
|
|
void RemoveBuff(CreatureWeakPtr& sender, Buff* buff);
|
|
void AddEffect(CreatureWeakPtr& sender, Effect* effect);
|
|
void RemoveEffect(CreatureWeakPtr& sender, Effect* effect);
|
|
void AddSkillCdChg(CreatureWeakPtr sender, int skill_id, int left_time);
|
|
void AddSkillCurrTimesChg(CreatureWeakPtr sender, int skill_id, int curr_times);
|
|
void AddItemChg(CreatureWeakPtr& sender, int item_id, int item_num);
|
|
void AddDead(CreatureWeakPtr& sender, int revive_time);
|
|
void AddRevive(CreatureWeakPtr& sender);
|
|
void AddCarChg(CreatureWeakPtr& sender);
|
|
void AddPropChg(CreatureWeakPtr& sender, int type, int subtype, float value, bool only_self = false);
|
|
void AddPropChgEx(CreatureWeakPtr& sender, int type, int subtype,
|
|
float value, float value2, float value3, bool only_self = false);
|
|
|
|
void Clear();
|
|
};
|