mirror of
https://github.com/1dot13/source.git
synced 2026-07-22 13:40:22 +02:00
.editorconfig already enforces it but it's getting changed piecemeal in every commit. just get it done with. the script: ``` find . -type f -not -path "./.git/*" -not -path "./.vs/*" | while read -r file; do isFile=$(file -0 "$file" | cut -d $'\0' -f2) case "$isFile" in (*text*) echo "$file is text" if [[ $(tail -c 1 "$file" | wc -l) -ne 1 ]]; then echo "" >> "$file" fi ;; (*) echo "file isn't text" ;; esac done ```
73 lines
3.3 KiB
C
73 lines
3.3 KiB
C
#ifndef __SOLDIER_INIT_LIST_H
|
|
#define __SOLDIER_INIT_LIST_H
|
|
|
|
#include "Soldier Create.h"
|
|
#include "FileMan.h"
|
|
|
|
typedef struct SOLDIERINITNODE
|
|
{
|
|
UINT16 ubNodeID;
|
|
UINT16 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, FLOAT dMajorMapVersion, UINT8 ubMinorMapVersion );
|
|
BOOLEAN SaveSoldiersToMap(HWFILE fp, FLOAT dMajorMapVersion, UINT8 ubMinorMapVersion);//dnl ch33 150909
|
|
|
|
//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 );
|
|
|
|
UINT16 AddSoldierInitListTeamToWorld( INT8 bTeam, UINT16 ubMaxNum );
|
|
void AddSoldierInitListEnemyDefenceSoldiers( UINT16 ubTotalAdmin, UINT16 ubTotalTroops, UINT16 ubTotalElite, UINT16 ubTotalRobots, UINT16 ubTotalTanks, UINT16 ubTotalJeeps );
|
|
void AddSoldierInitListCreatures( BOOLEAN fQueen, UINT16 ubNumLarvae, UINT16 ubNumInfants,
|
|
UINT16 ubNumYoungMales, UINT16 ubNumYoungFemales, UINT16 ubNumAdultMales,
|
|
UINT16 ubNumAdultFemales );
|
|
void AddSoldierInitListOtherCreatures( UINT16 usNum );
|
|
void AddSoldierInitListMilitia( UINT16 ubNumGreen, UINT16 ubNumReg, UINT16 ubNumElites );
|
|
void AddSoldierInitListMilitiaOnEdge( UINT8 ubStrategicInsertionCode, UINT16 ubNumGreen, UINT16 ubNumReg, UINT16 ubNumElites );
|
|
|
|
void AddSoldierInitListBloodcats();
|
|
|
|
void UseEditorOriginalList();
|
|
void UseEditorAlternateList();
|
|
void AddPlacementToWorldByProfileID( UINT8 ubProfile );
|
|
|
|
void EvaluateDeathEffectsToSoldierInitList( SOLDIERTYPE *pSoldier );
|
|
void RemoveDetailedPlacementInfo( UINT16 ubNodeID );
|
|
|
|
void AddProfilesUsingProfileInsertionData();
|
|
void AddProfilesNotUsingProfileInsertionData();
|
|
|
|
// Flugente: decide wether to spawn enemy assassins in this sector (not kingpin's hitmen, they are handled elsewhere)
|
|
void SectorAddAssassins( INT16 sMapX, INT16 sMapY, INT16 sMapZ );
|
|
|
|
// Flugente: decide wether to create prisoners of war in a sector. Not to be confused with player POWs
|
|
void SectorAddPrisonersofWar( INT16 sMapX, INT16 sMapY, INT16 sMapZ );
|
|
|
|
// Flugente: decide wether to add a downed pilot if a helicopter was shot down here
|
|
void SectorAddDownedPilot( INT16 sMapX, INT16 sMapY, INT16 sMapZ );
|
|
|
|
#endif
|