mirror of
https://github.com/1dot13/source.git
synced 2026-09-09 14:46:05 +02:00
Original Source for 1.13 Mod High Resolution version from 12/06/05
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@21 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
#ifndef __SOLDIER_INIT_LIST_H
|
||||
#define __SOLDIER_INIT_LIST_H
|
||||
|
||||
#include "Soldier Create.h"
|
||||
#include "FileMan.h"
|
||||
|
||||
typedef struct SOLDIERINITNODE
|
||||
{
|
||||
UINT8 ubNodeID;
|
||||
UINT8 ubSoldierID;
|
||||
BASIC_SOLDIERCREATE_STRUCT *pBasicPlacement;
|
||||
SOLDIERCREATE_STRUCT *pDetailedPlacement;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
struct SOLDIERINITNODE *prev;
|
||||
struct SOLDIERINITNODE *next;
|
||||
}SOLDIERINITNODE;
|
||||
|
||||
extern SOLDIERINITNODE *gSoldierInitHead;
|
||||
extern SOLDIERINITNODE *gSoldierInitTail;
|
||||
|
||||
//These serialization functions are assuming the passing of a valid file
|
||||
//pointer to the beginning of the save/load area, at the correct part of the
|
||||
//map file.
|
||||
BOOLEAN LoadSoldiersFromMap( INT8 **hBuffer );
|
||||
BOOLEAN SaveSoldiersToMap( HWFILE fp );
|
||||
|
||||
//For the purpose of keeping track of which soldier belongs to which placement within the game,
|
||||
//the only way we can do this properly is to save the soldier ID from the list and reconnect the
|
||||
//soldier pointer whenever we load the game.
|
||||
BOOLEAN SaveSoldierInitListLinks( HWFILE hfile );
|
||||
BOOLEAN LoadSoldierInitListLinks( HWFILE hfile );
|
||||
BOOLEAN NewWayOfLoadingEnemySoldierInitListLinks( HWFILE hfile );
|
||||
BOOLEAN NewWayOfLoadingCivilianInitListLinks( HWFILE hfile );
|
||||
BOOLEAN LookAtButDontProcessEnemySoldierInitListLinks( HWFILE hfile );
|
||||
|
||||
void InitSoldierInitList();
|
||||
void KillSoldierInitList();
|
||||
SOLDIERINITNODE* AddBasicPlacementToSoldierInitList( BASIC_SOLDIERCREATE_STRUCT *pBasicPlacement );
|
||||
void RemoveSoldierNodeFromInitList( SOLDIERINITNODE *pNode );
|
||||
SOLDIERINITNODE* FindSoldierInitNodeWithID( UINT16 usID );
|
||||
|
||||
UINT8 AddSoldierInitListTeamToWorld( INT8 bTeam, UINT8 ubMaxNum );
|
||||
void AddSoldierInitListEnemyDefenceSoldiers( UINT8 ubTotalAdmin, UINT8 ubTotalTroops, UINT8 ubTotalElite );
|
||||
void AddSoldierInitListCreatures( BOOLEAN fQueen, UINT8 ubNumLarvae, UINT8 ubNumInfants,
|
||||
UINT8 ubNumYoungMales, UINT8 ubNumYoungFemales, UINT8 ubNumAdultMales,
|
||||
UINT8 ubNumAdultFemales );
|
||||
void AddSoldierInitListMilitia( UINT8 ubNumGreen, UINT8 ubNumReg, UINT8 ubNumElites );
|
||||
|
||||
void AddSoldierInitListBloodcats();
|
||||
|
||||
void UseEditorOriginalList();
|
||||
void UseEditorAlternateList();
|
||||
void AddPlacementToWorldByProfileID( UINT8 ubProfile );
|
||||
|
||||
void EvaluateDeathEffectsToSoldierInitList( SOLDIERTYPE *pSoldier );
|
||||
void RemoveDetailedPlacementInfo( UINT8 ubNodeID );
|
||||
|
||||
void AddProfilesUsingProfileInsertionData();
|
||||
void AddProfilesNotUsingProfileInsertionData();
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user