-
Notifications
You must be signed in to change notification settings - Fork 0
/
GameObject.h
88 lines (78 loc) · 2.23 KB
/
GameObject.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#pragma once
#include "Helper.h"
#include <Buffer.h>
#include <QGraphicsTextItem>
#include <QJsonArray>
#include <QList>
#include <QMap>
class GameObject
: public QGraphicsTextItem,
Buffer
{
Q_OBJECT
public:
quint32 m_Id;
quint32 m_Hash;
QString m_MetadataId;
QString m_typeName;
QString m_name;
static QJsonArray m_ComponentArray;
//
quint32 m_hp;
public:
GameObject(quint32 Id,
quint32 Hash,
QByteArray ComponentsData,
QJsonObject componentArray)
: m_Id(Id), m_Hash(Hash)
{
qDebug() << ComponentsData.toHex(' ');
this->readData<quint8>();
readHead();
quint8 v17 = readData<quint8>();
for (quint8 i = 0; i < v17; i++)
{
readData<quint16>();
}
for (auto i = componentArray.begin(); i != componentArray.end(); i++)
{
m_typeName = i.key();
for (auto v : i.value().toArray())
{
this->metaObject()->invokeMethod(
this, v.toString().toLatin1().data(), Qt::DirectConnection);
}
}
this->setPlainText(QString::number(m_Id));
this->setDefaultTextColor(Qt::green);
}
~GameObject() {}
//解析数据段虚函数
Q_INVOKABLE void readHead();
Q_INVOKABLE void Positioned();
Q_INVOKABLE void Stats();
Q_INVOKABLE void Pathfinding(){};
Q_INVOKABLE void WorldItem(){};
Q_INVOKABLE void Buffs();
Q_INVOKABLE void Life();
Q_INVOKABLE void Animated();
Q_INVOKABLE void Player();
Q_INVOKABLE void AreaTransition();
Q_INVOKABLE void PlayerClass(){/*空*/};
Q_INVOKABLE void Inventories();
Q_INVOKABLE void Actor();
Q_INVOKABLE void LimitedLifespan(){/*空*/};
Q_INVOKABLE void Render(){/*空*/};
Q_INVOKABLE void ObjectMagicProperties();
Q_INVOKABLE void BaseEvents(){};
//
bool fs_componentPlayerUnknown(unsigned char *buffer, int len, unsigned __int64 a2);
void fs_ActorA0();
void fs_ActiveSkills();
void fs_ActiveSkills1(quint8 size);
void fs_ActiveSkills3();
void fs_ActiveSkills_0();
void fs_GrantedEffectsPerLevel();
void fs_AlternateQualityTypes();
void fs_Data_Mods();
};