aboutsummaryrefslogtreecommitdiff
path: root/src/creature.hh
diff options
context:
space:
mode:
authorfusion32 <marcopuzziello@gmail.com>2025-05-20 16:41:03 -0300
committerfusion32 <marcopuzziello@gmail.com>2025-05-20 16:41:03 -0300
commit42be37f4ad99fc8580415fed89939e305d56193e (patch)
tree41303aace3c214f925a43fec6a857f313196e38d /src/creature.hh
parent7fe30185df21617cf44100f89db462cd4501050e (diff)
downloadgame-42be37f4ad99fc8580415fed89939e305d56193e.tar.gz
game-42be37f4ad99fc8580415fed89939e305d56193e.zip
implement `main.cc`, `shm.cc`, and `time.cc` + overall tweeks
Diffstat (limited to 'src/creature.hh')
-rw-r--r--src/creature.hh61
1 files changed, 61 insertions, 0 deletions
diff --git a/src/creature.hh b/src/creature.hh
index 8f0917a..2b19836 100644
--- a/src/creature.hh
+++ b/src/creature.hh
@@ -2,6 +2,8 @@
#define TIBIA_CREATURE_HH_ 1
#include "main.hh"
+#include "connection.hh"
+#include "containers.hh"
#include "skill.hh"
struct TCreature;
@@ -13,6 +15,12 @@ struct TCombatEntry{
};
struct TCombat{
+ // REGULAR FUNCTIONS
+ // =========================================================================
+ // TODO
+
+ // DATA
+ // =========================================================================
TCreature *Master;
uint32 EarliestAttackTime;
uint32 EarliestDefendTime;
@@ -36,6 +44,59 @@ struct TCombat{
int LearningPoints;
};
+struct TToDoEntry {
+ ToDoType Code;
+ union{
+ struct{
+ uint32 Time;
+ } Wait;
+
+ struct{
+ int x;
+ int y;
+ int z;
+ } Go;
+
+ struct{
+ int Direction;
+ } Rotate;
+
+ struct{
+ uint32 Obj;
+ int x;
+ int y;
+ int z;
+ int Count;
+ } Move;
+
+ struct{
+ uint32 Obj;
+ uint32 Partner;
+ } Trade;
+
+ struct{
+ uint32 Obj1;
+ uint32 Obj2;
+ int Dummy;
+ } Use;
+
+ struct{
+ uint32 Obj;
+ } Turn;
+
+ struct{
+ uint32 Text; // POINTER? Probably a reference from `AddDynamicString`?
+ int Mode;
+ uint32 Addressee;
+ bool CheckSpamming;
+ } Talk;
+
+ struct{
+ int NewState;
+ } ChangeState;
+ };
+};
+
struct TOutfit{
int OutfitID;
union{