2023-10-22 01:43:00 +08:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#ifdef WIN32
|
|
|
|
#define WIN32_LEAN_AND_MEAN
|
2023-10-22 17:08:53 +08:00
|
|
|
#define SLEEP(x) { Sleep(x); }
|
2023-10-22 01:43:00 +08:00
|
|
|
|
|
|
|
#include <windows.h>
|
2023-10-22 17:08:53 +08:00
|
|
|
#include <mmsystem.h>
|
2024-06-02 22:44:56 +08:00
|
|
|
#include <malloc.h>
|
2023-10-22 01:43:00 +08:00
|
|
|
#else
|
2023-10-22 17:08:53 +08:00
|
|
|
#define SLEEP(x) { usleep(x * 1000); }
|
|
|
|
|
|
|
|
#include <unistd.h>
|
2023-10-22 01:43:00 +08:00
|
|
|
#endif
|
|
|
|
|
2024-01-05 23:34:53 +08:00
|
|
|
#define MAX_PLAYER_NAME 24
|
2024-01-15 23:51:39 +08:00
|
|
|
#define MAX_PLAYERS 1000
|
2024-01-15 23:52:08 +08:00
|
|
|
#define MAX_VEHICLES 2000
|
2023-10-22 01:43:00 +08:00
|
|
|
#define MAX_SETTINGS_STRING 256
|
|
|
|
|
2024-01-29 19:36:08 +08:00
|
|
|
#define ARRAY_SIZE(a) ( sizeof((a)) / sizeof(*(a)) )
|
|
|
|
#define SAFE_DELETE(p) { if (p) { delete (p); (p) = NULL; } }
|
|
|
|
#define SAFE_RELEASE(p) { if (p) { (p)->Release(); (p) = NULL; } }
|
|
|
|
|
2023-10-22 01:43:00 +08:00
|
|
|
typedef struct _GAME_SETTINGS {
|
|
|
|
CHAR szConnectPass[MAX_SETTINGS_STRING+1];
|
|
|
|
CHAR szConnectHost[MAX_SETTINGS_STRING+1];
|
|
|
|
CHAR szConnectPort[MAX_SETTINGS_STRING+1];
|
|
|
|
CHAR szNickName[MAX_SETTINGS_STRING+1];
|
|
|
|
CHAR szModeName[MAX_SETTINGS_STRING+1];
|
|
|
|
} GAME_SETTINGS;
|
|
|
|
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <stdlib.h>
|
|
|
|
|
2024-01-30 21:52:00 +08:00
|
|
|
#include <map>
|
|
|
|
#include <string>
|
|
|
|
|
2024-01-14 22:51:51 +08:00
|
|
|
#include "../raknet/RakClientInterface.h"
|
|
|
|
#include "../raknet/RakNetworkFactory.h"
|
|
|
|
#include "../raknet/PacketEnumerations.h"
|
|
|
|
#include "../raknet/SAMPRPC.h"
|
2024-01-15 23:51:39 +08:00
|
|
|
|
|
|
|
typedef unsigned short PLAYERID;
|
2024-01-15 23:52:08 +08:00
|
|
|
typedef unsigned short VEHICLEID;
|
|
|
|
|
2024-01-30 21:49:10 +08:00
|
|
|
#include "../server/amx/amx.h"
|
|
|
|
|
2023-11-18 00:00:52 +08:00
|
|
|
#include "scrtimers.h"
|
2024-01-19 23:19:26 +08:00
|
|
|
#include "gamemodes.h"
|
2023-11-18 00:00:52 +08:00
|
|
|
|
2024-01-14 22:51:51 +08:00
|
|
|
#include "net/netrpc.h"
|
2023-11-18 00:00:52 +08:00
|
|
|
#include "net/playerpool.h"
|
|
|
|
#include "net/vehiclepool.h"
|
2023-10-22 17:08:53 +08:00
|
|
|
#include "net/netgame.h"
|
2024-01-14 22:53:06 +08:00
|
|
|
#include "net/scriptrpc.h"
|
2023-10-22 17:08:53 +08:00
|
|
|
|
|
|
|
void logprintf(char* format, ...);
|
2023-12-18 23:26:11 +08:00
|
|
|
|
|
|
|
#ifdef LINUX
|
|
|
|
void SignalHandler(int sig);
|
|
|
|
long GetTickCount();
|
|
|
|
char* strlwr(char* str);
|
|
|
|
#endif
|
2024-06-02 22:36:16 +08:00
|
|
|
|
|
|
|
#pragma pack(1)
|
|
|
|
typedef struct _PLAYER_SPAWN_INFO
|
|
|
|
{
|
2024-06-06 23:09:13 +08:00
|
|
|
char _gap0[6];
|
|
|
|
|
|
|
|
VECTOR vecPos;
|
|
|
|
float fRotation;
|
|
|
|
|
|
|
|
char _gap16[24];
|
2024-06-02 22:36:16 +08:00
|
|
|
|
|
|
|
} PLAYER_SPAWN_INFO;
|
|
|
|
|
2024-06-06 23:09:13 +08:00
|
|
|
#pragma pack(1)
|
|
|
|
typedef struct _ONFOOT_SYNC_DATA
|
|
|
|
{
|
|
|
|
WORD lrAnalog;
|
|
|
|
WORD udAnalog;
|
|
|
|
WORD wKeys;
|
|
|
|
VECTOR vecPos;
|
|
|
|
QUATERNION quatRotation;
|
|
|
|
BYTE byteHealth;
|
|
|
|
BYTE byteArmour;
|
|
|
|
BYTE byteCurrentWeapon : 6;
|
|
|
|
BYTE byteSpecialKey : 2;
|
|
|
|
BYTE byteSpecialAction;
|
|
|
|
|
|
|
|
char _gap26[30];
|
|
|
|
|
|
|
|
} ONFOOT_SYNC_DATA;
|
|
|
|
|