mirror of
https://github.com/Jous99/F4MP.git
synced 2026-01-12 14:00:53 +01:00
106 lines
1.7 KiB
C++
106 lines
1.7 KiB
C++
#include "Entity.h"
|
|
#include "Player.h"
|
|
#include "NPC.h"
|
|
|
|
f4mp::Entity* f4mp::Entity::Get(librg_entity* entity)
|
|
{
|
|
if (entity == nullptr)
|
|
{
|
|
return nullptr;
|
|
}
|
|
|
|
return (Entity*)entity->user_data;
|
|
}
|
|
|
|
f4mp::Entity* f4mp::Entity::Get(librg_event* event)
|
|
{
|
|
return Get(event->entity);
|
|
}
|
|
|
|
f4mp::Entity* f4mp::Entity::Get(librg_peer* peer)
|
|
{
|
|
return (Entity*)peer->data;
|
|
}
|
|
|
|
f4mp::Entity* f4mp::Entity::Create(librg_entity* entity)
|
|
{
|
|
Entity* instance = nullptr;
|
|
|
|
switch (entity->type)
|
|
{
|
|
case EntityType::Player:
|
|
instance = new Player();
|
|
break;
|
|
|
|
case EntityType::NPC:
|
|
instance = new NPC();
|
|
break;
|
|
}
|
|
|
|
return Create(entity, instance);
|
|
}
|
|
|
|
f4mp::Entity* f4mp::Entity::Create(librg_event* event)
|
|
{
|
|
return Create(event->entity);
|
|
}
|
|
|
|
f4mp::Entity::Entity() : entityID((u32)-1)
|
|
{
|
|
|
|
}
|
|
|
|
f4mp::Entity::~Entity()
|
|
{
|
|
|
|
}
|
|
|
|
void f4mp::Entity::OnConnectRequest(librg_event* event)
|
|
{
|
|
}
|
|
|
|
void f4mp::Entity::OnConnectAccept(librg_event* event)
|
|
{
|
|
}
|
|
|
|
void f4mp::Entity::OnConnectRefuse(librg_event* event)
|
|
{
|
|
}
|
|
|
|
void f4mp::Entity::OnDisonnect(librg_event* event)
|
|
{
|
|
delete this;
|
|
event->entity->user_data = nullptr;
|
|
}
|
|
|
|
void f4mp::Entity::OnEntityCreate(librg_event* event)
|
|
{
|
|
}
|
|
|
|
void f4mp::Entity::OnEntityUpdate(librg_event* event)
|
|
{
|
|
librg_data_wf32(event->data, angles[0]);
|
|
librg_data_wf32(event->data, angles[1]);
|
|
librg_data_wf32(event->data, angles[2]);
|
|
}
|
|
|
|
void f4mp::Entity::OnEntityRemove(librg_event* event)
|
|
{
|
|
}
|
|
|
|
void f4mp::Entity::OnClientUpdate(librg_event* event)
|
|
{
|
|
angles[0] = librg_data_rf32(event->data);
|
|
angles[1] = librg_data_rf32(event->data);
|
|
angles[2] = librg_data_rf32(event->data);
|
|
}
|
|
|
|
u32 f4mp::Entity::GetEntityID() const
|
|
{
|
|
return entityID;
|
|
}
|
|
|
|
void f4mp::Entity::SetEntityID(u32 id)
|
|
{
|
|
entityID = id;
|
|
}
|