From 42be37f4ad99fc8580415fed89939e305d56193e Mon Sep 17 00:00:00 2001 From: fusion32 Date: Tue, 20 May 2025 16:41:03 -0300 Subject: implement `main.cc`, `shm.cc`, and `time.cc` + overall tweeks --- src/connection.hh | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 src/connection.hh (limited to 'src/connection.hh') diff --git a/src/connection.hh b/src/connection.hh new file mode 100644 index 0000000..724ac91 --- /dev/null +++ b/src/connection.hh @@ -0,0 +1,56 @@ +#ifndef TIBIA_CONNECTION_HH_ +#define TIBIA_CONNECTION_HH_ 1 + +#include "main.hh" +#include "enums.hh" + +struct TConnection; + +struct TKnownCreature { + KNOWNCREATURESTATE State; + uint32 CreatureID; + TKnownCreature *Next; + TConnection *Connection; +}; + +struct TConnection { + uint8 InData[2048]; + int InDataSize; + bool SigIOPending; + bool WaitingForACK; + uint8 OutData[16384]; + uint8 field5_0x4806; + uint8 field6_0x4807; + int NextToSend; + int NextToCommit; + int NextToWrite; + bool Overflow; + bool WillingToSend; + uint8 field12_0x4816; + uint8 field13_0x4817; + TConnection *NextSendingConnection; + uint32 RandomSeed; + CONNECTIONSTATE State; + pid_t PID; + int Socket; + char IPAddress[16]; + // TXTEASymmetricKey SymmetricKey; // TODO + bool ConnectionIsOk; + bool ClosingIsDelayed; + uint8 field23_0x4852; + uint8 field24_0x4853; + uint32 TimeStamp; + uint32 TimeStampAction; + int TerminalType; + int TerminalVersion; + int TerminalOffsetX; + int TerminalOffsetY; + int TerminalWidth; + int TerminalHeight; + uint32 CharacterID; + char Name[31]; + uint8 field35_0x4897; + TKnownCreature KnownCreatureTable[150]; +}; + +#endif // TIBIA_CONNECTION_HH_ -- cgit v1.2.3