mirror of
https://github.com/whoahq/whoa.git
synced 2026-02-01 00:02:45 +03:00
feat(object): add CGObject_C::SetTypeID
This commit is contained in:
parent
7101bc55b6
commit
551fd7f4b1
@ -5,7 +5,11 @@
|
||||
#include <cstdint>
|
||||
|
||||
struct CGObjectData {
|
||||
// TODO
|
||||
uint64_t m_guid;
|
||||
OBJECT_TYPE m_type;
|
||||
int32_t m_entryID;
|
||||
float m_scale;
|
||||
uint32_t pad;
|
||||
};
|
||||
|
||||
class CGObject {
|
||||
|
||||
42
src/object/client/CGObject_C.cpp
Normal file
42
src/object/client/CGObject_C.cpp
Normal file
@ -0,0 +1,42 @@
|
||||
#include "object/client/CGObject_C.hpp"
|
||||
|
||||
void CGObject_C::SetTypeID(OBJECT_TYPE_ID typeID) {
|
||||
this->m_typeID = typeID;
|
||||
|
||||
switch (typeID) {
|
||||
case ID_OBJECT:
|
||||
this->m_obj->m_type = TYPE_OBJECT;
|
||||
break;
|
||||
|
||||
case ID_ITEM:
|
||||
this->m_obj->m_type = static_cast<OBJECT_TYPE>(TYPE_OBJECT | TYPE_ITEM);
|
||||
break;
|
||||
|
||||
case ID_CONTAINER:
|
||||
this->m_obj->m_type = static_cast<OBJECT_TYPE>(TYPE_OBJECT | TYPE_ITEM | TYPE_CONTAINER);
|
||||
break;
|
||||
|
||||
case ID_UNIT:
|
||||
this->m_obj->m_type = static_cast<OBJECT_TYPE>(TYPE_OBJECT | TYPE_UNIT);
|
||||
break;
|
||||
|
||||
case ID_PLAYER:
|
||||
this->m_obj->m_type = static_cast<OBJECT_TYPE>(TYPE_OBJECT | TYPE_UNIT | TYPE_PLAYER);
|
||||
break;
|
||||
|
||||
case ID_GAMEOBJECT:
|
||||
this->m_obj->m_type = static_cast<OBJECT_TYPE>(TYPE_OBJECT | TYPE_GAMEOBJECT);
|
||||
break;
|
||||
|
||||
case ID_DYNAMICOBJECT:
|
||||
this->m_obj->m_type = static_cast<OBJECT_TYPE>(TYPE_OBJECT | TYPE_DYNAMICOBJECT);
|
||||
break;
|
||||
|
||||
case ID_CORPSE:
|
||||
this->m_obj->m_type = static_cast<OBJECT_TYPE>(TYPE_OBJECT | TYPE_CORPSE);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -2,12 +2,14 @@
|
||||
#define OBJECT_CLIENT_CG_OBJECT_C_HPP
|
||||
|
||||
#include "object/client/CGObject.hpp"
|
||||
#include "object/Types.hpp"
|
||||
#include "util/CHashKeyGUID.hpp"
|
||||
#include <storm/Hash.hpp>
|
||||
|
||||
class CGObject_C : public CGObject, public TSHashObject<CGObject_C, CHashKeyGUID> {
|
||||
public:
|
||||
// TODO
|
||||
// Public member functions
|
||||
void SetTypeID(OBJECT_TYPE_ID typeID);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
Loading…
Reference in New Issue
Block a user