12#ifndef TT_INCLUDE_OFFENSEOBJECTCLASS_H
13#define TT_INCLUDE_OFFENSEOBJECTCLASS_H
15class OffenseObjectClass {
17#define DEFAULT_DAMAGE 1.0f
18 OffenseObjectClass(
float damage = DEFAULT_DAMAGE,
unsigned int warhead = 0, ArmedGameObj *owner = NULL ) : Damage( damage ), Warhead( warhead ), ForceServerDamage( false ), EnableClientDamage( false ) { Set_Owner( owner ); }
19 OffenseObjectClass(
const OffenseObjectClass & base );
20 ~OffenseObjectClass() { Set_Owner( NULL ); };
21 bool Save( ChunkSaveClass & csave );
22 bool Load( ChunkLoadClass & cload );
23 void Set_Damage(
float damage ) { Damage = damage; }
24 float Get_Damage(
void )
const {
return Damage; }
25 void Set_Warhead(
unsigned int warhead ) { Warhead = warhead; }
26 unsigned int Get_Warhead(
void )
const {
return Warhead; }
27 void Set_Owner( ArmedGameObj *owner ) { Owner = (ScriptableGameObj *)owner; }
28 ArmedGameObj *Get_Owner(
void )
const {
return (ArmedGameObj *)Owner.Get_Ptr(); }
29 bool ForceServerDamage;
30 bool EnableClientDamage;
34 ReferencerClass Owner;