*** Merged Code from Multiplayer Branch Revision 2960 ***

- Virtual File System (VFS) by birdflu. This is needed for Multiplayer and is also used for Single Player. Very neat system :-)
- Multiplayer Version 1.1 + some additional features and bugfixes
* INFO: If you compile a new EXE and want to test, be sure to also use the latest SVN GameDir files in your JA2 install directory *




git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@2961 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Wanne
2009-06-04 21:01:45 +00:00
parent 17f44f63e8
commit 47db604b50
301 changed files with 76701 additions and 1843 deletions
+1005 -258
View File
File diff suppressed because it is too large Load Diff
+26
View File
@@ -12,6 +12,11 @@ extern bool is_server;
extern bool is_networked;
extern bool is_host; // OJW - added 20081129
// OJW - 20040922
extern bool recieved_settings;
extern bool recieved_transfer_settings;
extern INT16 serverSyncClientsDirectory;
extern int PLAYER_TEAM_TIMER_SEC_PER_TICKS;
//extern char CLIENT_NUM[30];
@@ -39,6 +44,14 @@ extern int RANDOM_MERCS;
//OJW - 20090317
extern bool is_game_started;
//OJW - 20090403
extern int OVERRIDE_MAX_AI;
//OJW - 20090405
extern STRING512 gCurrentTransferFilename;
extern INT32 gCurrentTransferBytes;
extern INT32 gTotalTransferBytes;
extern UINT16 crate_usMapPos;
//extern int INTERRUPTS;
@@ -98,6 +111,8 @@ void send_interrupt(SOLDIERTYPE *pSoldier);
void OpenChatMsgBox(void);
void reapplySETTINGS();
BOOLEAN CheckConditionsForBattle( GROUP *pGroup ); // this comes from strategic movement.cpp
extern char client_names[4][30];
@@ -108,10 +123,13 @@ extern char client_names[4][30];
extern int client_ready[4];
extern int client_teams[4];
extern int client_edges[4];
extern int client_downloading[4];
extern int client_progress[4];
extern char SERVER_NAME[30];
//OJW - 20081224
#define MAX_CONNECT_RETRIES 5
extern bool auto_retry;
extern int giNumTries;
@@ -146,3 +164,11 @@ typedef struct
extern player_stats gMPPlayerStats[5];
extern void game_over( void );
// OJW - 20090422
extern BOOLEAN fClientReceivedAllFiles;
// OJW - 20090507
// Add basic version checking, will only work from now on
// note: this cannot be longer than char[30]
#define MPVERSION "1.13MP-v1.1"
+22 -1
View File
@@ -6,6 +6,10 @@ extern char CLIENT_NAME[30];
extern char SERVER_NAME[30];
extern bool Sawarded;
//extern char *fileToSend;
extern unsigned int setID;
//extern char *fileToSendCopy;
typedef struct
{
@@ -13,6 +17,7 @@ typedef struct
char client_name[30];
int team;
int cl_edge;
char client_version[30];
}client_info;
typedef struct
@@ -61,9 +66,18 @@ typedef struct
int RANDOM_SPAWN;
int RANDOM_MERCS;
int random_mercs[7];
char server_version[30];
} settings_struct;
// WANNE: FILE TRANSFER
typedef struct
{
STRING512 fileTransferDirectory;
//char fileTransferDirectory[600]; // The file transfer directory path from the server
int syncClientsDirectory; // Does the server want to sync files to the clients
char serverName[30]; // The name of the server. This is used on the client side as a folder inside the client transfer directory
long totalTransferBytes;
} filetransfersettings_struct;
// added 080101 by OJW
typedef struct
@@ -85,6 +99,13 @@ typedef struct
UINT8 newteam;
} teamchange_struct;
typedef struct
{
UINT8 client_num;
UINT8 progress;
UINT8 downloading;
} progress_struct;
//typedef struct
//{
// int clnum;
+602 -194
View File
File diff suppressed because it is too large Load Diff
+8 -8
View File
@@ -108,7 +108,7 @@ bool ovh_ready;
void test_func2 (void)//now bound to "0"
{
ScreenMsg( FONT_LTGREEN, MSG_CHAT, L"test_func2 - function testing ground:" );
ScreenMsg( FONT_LTGREEN, MSG_MPSYSTEM, L"test_func2 - function testing ground:" );
SOLDIERTYPE * pSoldier=MercPtrs[ 0 ];
@@ -174,19 +174,19 @@ pSoldier->EVENT_InternalSetSoldierPosition( sCellX, sCellY ,FALSE, FALSE, FALSE
//UIHandleLUIEndLock( NULL );
//if( (gTacticalStatus.uiFlags & TURNBASED) && (gTacticalStatus.uiFlags & INCOMBAT) )
// ScreenMsg( FONT_LTGREEN, MSG_CHAT, L"combat turn based" );
// ScreenMsg( FONT_LTGREEN, MSG_MPSYSTEM, L"combat turn based" );
//else
// ScreenMsg( FONT_LTGREEN, MSG_CHAT, L"not" );
// ScreenMsg( FONT_LTGREEN, MSG_MPSYSTEM, L"not" );
//SOLDIERTYPE * pSoldier=MercPtrs[ 0 ];
//
// if ( ( gAnimControl[ pSoldier->usAnimState ].uiFlags &( ANIM_FIREREADY | ANIM_FIRE ) ) )
// {
// ScreenMsg( FONT_LTGREEN, MSG_CHAT, L"Ready" );
// ScreenMsg( FONT_LTGREEN, MSG_MPSYSTEM, L"Ready" );
// }
// else
// ScreenMsg( FONT_LTGREEN, MSG_CHAT, L"Not" );
// ScreenMsg( FONT_LTGREEN, MSG_MPSYSTEM, L"Not" );
////fInterfacePanelDirty = DIRTYLEVEL2;
////guiPendingOverrideEvent = LU_ENDUILOCK;
@@ -343,7 +343,7 @@ pSoldier->EVENT_InternalSetSoldierPosition( sCellX, sCellY ,FALSE, FALSE, FALSE
sprintf(szDefault, "%s","hello");
ScreenMsg( FONT_LTGREEN, MSG_CHAT, L"%S has connected.",szDefault );*/
ScreenMsg( FONT_LTGREEN, MSG_MPSYSTEM, L"%S has connected.",szDefault );*/
//manual overide
//manual_overide();
@@ -363,11 +363,11 @@ pSoldier->EVENT_InternalSetSoldierPosition( sCellX, sCellY ,FALSE, FALSE, FALSE
// iBullet = CreateBullet( 0, 0, 0,11 );
// if (iBullet == -1)
// {
// ScreenMsg( FONT_YELLOW, MSG_CHAT, L"Failed to create bullet");
// ScreenMsg( FONT_YELLOW, MSG_MPSYSTEM, L"Failed to create bullet");
// }
// pBullet = GetBulletPtr( iBullet );
// //ScreenMsg( FONT_YELLOW, MSG_CHAT, L"Created Bullet");
// //ScreenMsg( FONT_YELLOW, MSG_MPSYSTEM, L"Created Bullet");
// pBullet->fCheckForRoof=0;
// pBullet->qIncrX=-917769;