## Engine
Class DamageType

source: C:\XIII\Engine\Classes\DamageType.uc

    Core.Object
       |
       +--Engine.Actor
          |
          +--Engine.DamageType

Direct Known Subclasses:Crushed, Gibbed, Suicided, Fell, XIIIDamageType

class DamageType
extends Engine.Actor

    //=============================================================================
    // DamageType, the base class of all damagetypes.
    // this and its subclasses are never spawned, just used as information holders
    //=============================================================================

Variables
`class` | `BloodShotEmitterClass` effect to spawn when low gore
`string` | `DamageWeaponName` weapon that caused this damage
`string` | `DeathString` string to describe death by this type of damage
`float` | `GibModifier` this type a damages kill stunned people (thus gameover if must not be killed when shot as corpses lying).
`class` | `HeadBloodTrailEmitterClass` effect to spawn when low gore
`class` | `LowDetailEffect` effect to spawn when low gore
`class` | `LowGoreDamageEffect` effect to spawn when low gore
`FemaleSuicide,` | `MaleSuicide` string to describe death by this type of damage
`class` | `PawnDamageEffect` effect to spawn when pawns are damaged by this damagetype
`int` | `SoundType` this type a damages kill stunned people (thus gameover if must not be killed when shot as corpses lying).
`bool` | `bAllowHeadShotSFXTrigger` to use all armor / damage all location
`bool` | `bArmorStops` does regular armor provide protection against this damage
`bool` | `bBloodSplash` Make blood splashes on walls
`bool` | `bCanKillStunnedCorspes` this type a damages kill stunned people (thus gameover if must not be killed when shot as corpses lying).
`bool` | `bDieInSilencePlease` HAHA have we the only game where a silenced weapon have silent impacts ?? ;;))
`bool` | `bGlobalDamages` to use all armor / damage all location
`bool` | `bSpawnBloodFX` do this damage type involves spawning blood sfx
`bool` | `bSpawnDeathOnomatop` do this damage type involves spawning an onomatop ?

Function Summary
`string` | `DeathMessage(PlayerReplicationInfo Killer, PlayerReplicationInfo Victim)`
    //_____________________________________________________________________________
`string` | `SuicideMessage(PlayerReplicationInfo Victim)`
    //_____________________________________________________________________________

Source Code

    00001	//=============================================================================
    00002	// DamageType, the base class of all damagetypes.
    00003	// this and its subclasses are never spawned, just used as information holders
    00004	//=============================================================================
    00005	class DamageType extends Actor
    00006	    config
    00007	    native
    00008	    abstract;
    00009
    00010	// Description of a type of damage.
    00011	var() localized string DeathString;         // string to describe death by this type of damage
    00012	var() localized string FemaleSuicide, MaleSuicide;
    00013	//var() float ViewFlash;                    // View flash to play.
    00014	//var() vector ViewFog;                     // View fog to play.
    00015	//var() class<effects> DamageEffect;        // Special effect.
    00016	var() string DamageWeaponName;              // weapon that caused this damage
    00017
    00018	var() bool bArmorStops;                     // does regular armor provide protection against this damage
    00019	var() bool bSpawnDeathOnomatop;               // do this damage type involves spawning an onomatop ?
    00020	var() bool bDieInSilencePlease;               // HAHA have we the only game where a silenced weapon have silent impacts ?? ;;))
    00021	var() bool bSpawnBloodFX;                     // do this damage type involves spawning blood sfx
    00022	var() bool bGlobalDamages;                    // to use all armor / damage all location
    00023	var() bool bAllowHeadShotSFXTrigger;
    00024	var() bool bBloodSplash;                      // Make blood splashes on walls
    00025	var() bool bCanKillStunnedCorspes;          // this type a damages kill stunned people (thus gameover if must not be killed when shot as corpses lying).
    00026
    00027	//var() bool bInstantHit;                   // done by trace hit weapon
    00028	//var() bool bFastInstantHit;               // done by fast repeating trace hit weapon
    00029	var() float GibModifier;
    00030	var() int SoundType;
    00031	  /* Sound Type :
    00032	        case class'DTH2HBlade' :
    00033	        case class'DTBite' :
    00034	        case class'DTBladeCut' : PlaySound(hHitSound, 1, Damage, int(bIsDead) ); break;
    00035	        case class'DTDrowned' : PlaySound(hHitSound, 2, Damage, int(bIsDead) ); break;
    00036	        case class'DTGrenaded' :
    00037	        case class'DTRocketed' : PlaySound(hHitSound, 3, Damage, int(bIsDead) ); break;
    00038	        case class'DTSniped' :
    00039	        case class'DTGunnedSilenced' :
    00040	        case class'DTGunned' : PlaySound(hHitSound, 4, Damage, int(bIsDead) ); break;
    00041	        case class'DTPierced' : PlaySound(hHitSound, 6, Damage, int(bIsDead) ); break;
    00042	        case class'DTShotGunned' : PlaySound(hHitSound, 7, Damage, int(bIsDead) ); break;
    00043	        case class'DTCouDCross':
    00044	        case class'DTFisted' : PlaySound(hHitSound, 8, Damage, int(bIsDead) ); break;
    00045	        case class'DTHeadShot' : PlaySound(hHitSound, 10, Damage, int(bIsDead) ); break;
    00046	        case class'DTElectroChoc' : PlaySound(hHitSound, 11, Damage, int(bIsDead) ); break;
    00047	        case class'DTFell' : PlaySound(hHitSound, 12, Damage, int(bIsDead) ); break;
    00048	  */
    00049
    00050	// these effects should be none if should use the pawn's blood effects
    00051	/*
    00052	var() class<Effects>		PawnDamageEffect;	// effect to spawn when pawns are damaged by this damagetype
    00053	var() class<Effects>		LowGoreDamageEffect; // effect to spawn when low gore
    00054	var() class<Effects>		LowDetailEffect;
    00055	*/
    00056
    00057	//var() float	FlashScale;		//for flashing victim's screen
    00058	//var() vectorFlashFog;
    00059
    00060	var config class<Emitter> HeadBloodTrailEmitterClass;
    00061	var config class<ImpactEmitter> BloodShotEmitterClass;
    00062
    00063	//_____________________________________________________________________________
    00064	static function string DeathMessage(PlayerReplicationInfo Killer, PlayerReplicationInfo Victim)
    00065	{
    00066	    return Default.DeathString;
    00067	}
    00068
    00069	//_____________________________________________________________________________
    00070	static function string SuicideMessage(PlayerReplicationInfo Victim)
    00071	{
    00072	    if ( Victim.bIsFemale )
    00073	      return Default.FemaleSuicide;
    00074	    else
    00075	      return Default.MaleSuicide;
    00076	}
    00077
    00078	/*
    00079	static function class<Effects> GetPawnDamageEffect( vector HitLocation, float Damage, vector Momentum, Pawn Victim, bool bLowDetail )
    00080	{
    00081		if ( class'GameInfo'.Default.GoreLevel > 0 )
    00082		{
    00083			if ( Default.LowGoreDamageEffect != None )
    00084				return Default.LowGoreDamageEffect;
    00085			else
    00086				return Victim.LowGoreBlood;
    00087		}
    00088		else if ( bLowDetail )
    00089		{
    00090
    00091			if ( Default.LowDetailEffect != None )
    00092				return Default.LowDetailEffect;
    00093			else
    00094				return Victim.LowDetailBlood;
    00095		}
    00096		else
    00097		{
    00098			if ( Default.PawnDamageEffect != None )
    00099				return Default.PawnDamageEffect;
    00100			else
    00101				return Victim.BloodEffect;
    00102		}
    00103	}
    00104	*/
    00105
    00106	//	 bArmorStops=true
    00107	//	 FlashScale=-0.019
    00108	//	 FlashFog=(X=26.500000,Y=4.500000,Z=4.500000)
    00109
    00110	defaultproperties
    00111	{
    00112	     DeathString="%o was killed by %k."
    00113	     FemaleSuicide="%o killed herself."
    00114	     MaleSuicide="%o killed himself."
    00115	     GibModifier=1.000000
    00116	     bInteractive=False
    00117	}

End Source Code