Colobot
Public Member Functions | List of all members
CShieldedObject Class Referenceabstract

Interface for objects that can be destroyed, but only after the shield goes down to 0. More...

#include <src/object/interface/shielded_object.h>

Inheritance diagram for CShieldedObject:
Inheritance graph
[legend]

Public Member Functions

 CShieldedObject (ObjectInterfaceTypes &types)
 
virtual void SetShield (float level)=0
 Set shield level. More...
 
virtual float GetShield ()=0
 Get shield level. More...
 
virtual void SetMagnifyDamage (float factor)=0
 Set damage multiplier for the object (bigger = more damage, weaker shield) More...
 
virtual float GetMagnifyDamage ()=0
 Return damage multiplier for the object (bigger = more damage, weaker shield) More...
 
virtual bool IsRepairable ()=0
 Returns true if this object can be repaired in RepairStation. More...
 
- Public Member Functions inherited from CDestroyableObject
 CDestroyableObject (ObjectInterfaceTypes &types)
 
virtual void DestroyObject (DestructionType type, CObject *killer=nullptr)=0
 Destroy the object immediately. Use this only if you are 100% sure this is what you want, because object with magnifyDamage=0 should be able to bypass all damage. It's recommended to use CDamageableObject::DamageObject() instead. More...
 
virtual float GetLightningHitProbability ()=0
 Returns the distance modifier for CLightning, used to modify hit probability. Value in range [0..1], where 0 is never and 1 is normal probability. More...
 
virtual void SetDying (DeathType deathType)=0
 Set the status that means the object is currently dying. More...
 
virtual DeathType GetDying ()=0
 Return object death type. More...
 
virtual bool IsDying ()=0
 Is object currently dying? More...
 
- Public Member Functions inherited from CDamageableObject
 CDamageableObject (ObjectInterfaceTypes &types)
 
virtual bool DamageObject (DamageType type, float force=std::numeric_limits< float >::infinity(), CObject *killer=nullptr)=0
 Damage the object, with the given force. Returns true if the object has been fully destroyed (assuming the object is destroyable, of course). If force == infinity, destroy immediately (this is the default value) More...
 
virtual void SetDamaging (bool damaging)=0
 Set the status that means the object is currently taking damage. More...
 
virtual bool IsDamaging ()=0
 Is object currently taking damage? More...
 

Detailed Description

Interface for objects that can be destroyed, but only after the shield goes down to 0.

Member Function Documentation

◆ SetShield()

virtual void CShieldedObject::SetShield ( float  level)
pure virtual

Set shield level.

Implemented in COldObject.

◆ GetShield()

virtual float CShieldedObject::GetShield ( )
pure virtual

Get shield level.

Implemented in COldObject.

◆ SetMagnifyDamage()

virtual void CShieldedObject::SetMagnifyDamage ( float  factor)
pure virtual

Set damage multiplier for the object (bigger = more damage, weaker shield)

Implemented in COldObject.

◆ GetMagnifyDamage()

virtual float CShieldedObject::GetMagnifyDamage ( )
pure virtual

Return damage multiplier for the object (bigger = more damage, weaker shield)

Implemented in COldObject.

◆ IsRepairable()

virtual bool CShieldedObject::IsRepairable ( )
pure virtual

Returns true if this object can be repaired in RepairStation.

Implemented in COldObject.


The documentation for this class was generated from the following file: