haxis/Source/UnrealProject/External/Events.hpp

171 lines
4.4 KiB
C++

#pragma once
#pragma pack(push, 1)
enum class EventCode : uint8_t
{
PlayerSpawn = 0,
PlayerUpdate,
PlayerDie,
PlayerCast,
PlayerHealth,
PlayerMana,
PlayerMaxHealth,
PlayerMaxMana,
PlayerDealDamage,
PlayerLevel,
SessionEnd,
MetaEvents = 64,
MapData,
MapImage,
PlayerName,
PlayerTeam,
AbilityName,
};
struct PlayerSpawn
{
PlayerSpawn() = default;
PlayerSpawn(uint32_t time, uint8_t player, float playerX, float playerY) : event(EventCode::PlayerSpawn), time(time), player(player), playerX(playerX), playerY(playerY) {}
EventCode event;
uint32_t time;
uint8_t player;
float playerX;
float playerY;
};
struct PlayerUpdate
{
PlayerUpdate() = default;
PlayerUpdate(uint32_t time, uint8_t player, float playerX, float playerY) : event(EventCode::PlayerUpdate), time(time), player(player), playerX(playerX), playerY(playerY) {}
EventCode event;
uint32_t time;
uint8_t player;
float playerX;
float playerY;
};
struct PlayerDie
{
PlayerDie() = default;
PlayerDie(uint32_t time, uint8_t player, uint8_t source) : event(EventCode::PlayerDie), time(time), player(player), source(source) {}
EventCode event;
uint32_t time;
uint8_t player;
uint8_t source;
};
struct PlayerCast
{
PlayerCast() = default;
PlayerCast(uint32_t time, uint8_t player, uint32_t ability) : event(EventCode::PlayerCast), time(time), player(player), ability(ability) {}
EventCode event;
uint32_t time;
uint8_t player;
uint32_t ability;
};
struct PlayerHealth
{
PlayerHealth() = default;
PlayerHealth(uint32_t time, uint8_t player, int32_t health) : event(EventCode::PlayerHealth), time(time), player(player), health(health) {}
EventCode event;
uint32_t time;
uint8_t player;
int32_t health;
};
struct PlayerMana
{
PlayerMana() = default;
PlayerMana(uint32_t time, uint8_t player, int32_t mana) : event(EventCode::PlayerMana), time(time), player(player), mana(mana) {}
EventCode event;
uint32_t time;
uint8_t player;
int32_t mana;
};
struct PlayerMaxHealth
{
PlayerMaxHealth() = default;
PlayerMaxHealth(uint32_t time, uint8_t player, int32_t maxHealth) : event(EventCode::PlayerMaxHealth), time(time), player(player), maxHealth(maxHealth) {}
EventCode event;
uint32_t time;
uint8_t player;
int32_t maxHealth;
};
struct PlayerMaxMana
{
PlayerMaxMana() = default;
PlayerMaxMana(uint32_t time, uint8_t player, int32_t maxMana) : event(EventCode::PlayerMaxMana), time(time), player(player), maxMana(maxMana) {}
EventCode event;
uint32_t time;
uint8_t player;
int32_t maxMana;
};
struct PlayerDealDamage
{
PlayerDealDamage() = default;
PlayerDealDamage(uint32_t time, uint8_t player, uint32_t ability, int32_t damage) : event(EventCode::PlayerDealDamage), time(time), player(player), ability(ability), damage(damage) {}
EventCode event;
uint32_t time;
uint8_t player;
uint32_t ability;
int32_t damage;
};
struct PlayerLevel
{
PlayerLevel() = default;
PlayerLevel(uint32_t time, uint8_t player, uint8_t level) : event(EventCode::PlayerLevel), time(time), player(player), level(level) {}
EventCode event;
uint32_t time;
uint8_t player;
uint8_t level;
};
struct SessionEnd
{
SessionEnd() = default;
SessionEnd(uint32_t time) : event(EventCode::SessionEnd), time(time) {}
EventCode event;
uint32_t time;
};
struct MapData
{
MapData() = default;
MapData(float minX, float maxX, float minY, float maxY) : event(EventCode::MapData), minX(minX), maxX(maxX), minY(minY), maxY(maxY) {}
EventCode event;
float minX;
float maxX;
float minY;
float maxY;
};
struct MapImage
{
MapImage() = default;
MapImage(uint32_t width, uint32_t height) : event(EventCode::MapImage), width(width), height(height) {}
EventCode event;
uint32_t width;
uint32_t height;
};
struct PlayerName
{
PlayerName() = default;
PlayerName(uint8_t player, uint16_t length) : event(EventCode::PlayerName), player(player), length(length) {}
EventCode event;
uint8_t player;
uint16_t length;
};
struct PlayerTeam
{
PlayerTeam() = default;
PlayerTeam(uint8_t player, uint8_t team) : event(EventCode::PlayerTeam), player(player), team(team) {}
EventCode event;
uint8_t player;
uint8_t team;
};
struct AbilityName
{
AbilityName() = default;
AbilityName(uint32_t ability, uint16_t length) : event(EventCode::AbilityName), ability(ability), length(length) {}
EventCode event;
uint32_t ability;
uint16_t length;
};
#pragma pack(pop)