12#ifndef TT_INCLUDE__SOLDIERGAMEOBJDEF_H
13#define TT_INCLUDE__SOLDIERGAMEOBJDEF_H
16#include "SmartGameObjDef.h"
17#include "DialogueClass.h"
18#include "engine_common.h"
19#include "engine_vector.h"
20#include "engine_threading.h"
21#include "engine_string.h"
22class SoldierGameObjDef :
public SmartGameObjDef
25 SoldierGameObjDef(
void );
26 virtual uint32 Get_Class_ID(
void )
const;
27 virtual PersistClass * Create(
void )
const ;
28 virtual bool Save( ChunkSaveClass &csave );
29 virtual bool Load( ChunkLoadClass &cload );
30 virtual const PersistFactoryClass & Get_Factory(
void )
const;
31 DialogueClass * Get_Dialog_List(
void ) {
return DialogList; }
33 virtual void Dump (FileClass &file);
34 virtual void DumpPhys (FileClass &file);
36 DECLARE_EDITABLE( SoldierGameObjDef, SmartGameObjDef );
37 float Get_Skeleton_Height()
const {
return SkeletonHeight;};
38 float Get_Skeleton_Width()
const {
return SkeletonWidth;};
39 bool Is_Spy()
const {
return IsSpy;}
40 bool Can_Refill()
const {
return CanRefill; }
41 bool Is_Unsquishable()
const {
return IsUnsquishable; }
47 bool UseInnateBehavior;
48 float InnateAggressiveness;
49 float InnateTakeCoverProbability;
50 bool InnateIsStationary;
51 DialogueClass DialogList[DIALOG_MAX];
52 StringClass FirstPersonHands;
53 int HumanAnimOverrideDefID;
54 int HumanLoiterCollectionDefID;
55 int DeathSoundPresetID;
56 bool CanStealVehicles;
57 bool CanDriveVehicles;
62 friend class SoldierGameObj;
63 friend class SoldierObserverClass;
64 friend class PresetDump;
66 bool GetInnateBehavior(){
return UseInnateBehavior;}
67 float GetInnateAggressiveness(){
return InnateAggressiveness;}
68 float GetInnateTakeCoverProbability(){
return InnateTakeCoverProbability;}
69 bool GetInnateIsStationary(){
return InnateIsStationary;}