aboutsummaryrefslogtreecommitdiff
path: root/dat.h
diff options
context:
space:
mode:
authorrodri <rgl@antares-labs.eu>2022-06-11 22:37:59 +0000
committerrodri <rgl@antares-labs.eu>2022-06-11 22:37:59 +0000
commitc69fa66f609925a98acf8dc7f645b9b50ce3a8ba (patch)
tree0246842728a85938e2ff074a160f11cabba3c049 /dat.h
parent0a15926abc589c372acf404765862bb22febd64d (diff)
downloadmusw-c69fa66f609925a98acf8dc7f645b9b50ce3a8ba.tar.gz
musw-c69fa66f609925a98acf8dc7f645b9b50ce3a8ba.tar.bz2
musw-c69fa66f609925a98acf8dc7f645b9b50ce3a8ba.zip
implemented a custom PDU/frame structure on top of UDP for game networking.
Diffstat (limited to 'dat.h')
-rw-r--r--dat.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/dat.h b/dat.h
index 40171cf..b4f7147 100644
--- a/dat.h
+++ b/dat.h
@@ -23,6 +23,10 @@ enum {
SCRHB = SCRH+2*Borderwidth
};
+enum {
+ Framesize = 4+4+4+2,
+};
+
typedef struct VModel VModel;
typedef struct Sprite Sprite;
typedef struct Particle Particle;
@@ -31,9 +35,11 @@ typedef struct Ship Ship;
typedef struct Star Star;
typedef struct Universe Universe;
typedef struct Derivative Derivative;
+
+typedef struct Frame Frame;
typedef struct Conn Conn;
-typedef struct Player Player;
typedef struct PInput PInput;
+typedef struct Player Player;
typedef struct Lobby Lobby;
typedef struct Party Party;
@@ -111,6 +117,16 @@ struct Derivative
Point2 dv; /* a */
};
+struct Frame
+{
+ Udphdr *udp;
+ uint seq;
+ uint ack;
+ uint id;
+ ushort len;
+ uchar data[];
+};
+
struct Conn
{
char dir[40];