RuneI
Class DarkViking

source: c:\runehov\RuneI\Classes\DarkViking.uc
Core.Object
   |
   +--Engine.Actor
      |
      +--Engine.Pawn
         |
         +--RuneI.ScriptPawn
            |
            +--RuneI.Viking
               |
               +--RuneI.DarkViking
Direct Known Subclasses:DarkVikingSnow

class DarkViking
extends RuneI.Viking

//============================================================================= // DarkViking. //=============================================================================

Function Summary
 void ApplyGoreCap(int BodyPart)
     
//============================================================
//
// ApplyGoreCap
//
//============================================================
 int BodyPartForPolyGroup(int polygroup)
     
//============================================================
//
// BodyPartForPolyGroup
//
//============================================================
 void CreatureStatue()
     
//================================================
//
// Statue
//
//================================================
 Texture PainSkin(int BodyPart)
     
//============================================================
//
// PainSkin
//
// returns the pain skin for a given polygroup
//============================================================



Source Code


00001	//=============================================================================
00002	// DarkViking.
00003	//=============================================================================
00004	class DarkViking expands Viking;
00005	
00006	//============================================================
00007	//
00008	// PainSkin
00009	//
00010	// returns the pain skin for a given polygroup
00011	//============================================================
00012	
00013	function Texture PainSkin(int BodyPart)
00014	{
00015		switch(BodyPart)
00016		{
00017			case BODYPART_TORSO:
00018				SkelGroupSkins[2] = Texture'players.ragnardv_bodypain';
00019				break;
00020			case BODYPART_HEAD:
00021				SkelGroupSkins[3] = Texture'players.ragnardv_headpain';
00022				break;
00023			case BODYPART_LARM1:
00024				SkelGroupSkins[10] = Texture'players.ragnardv_armlegpain';
00025				SkelGroupSkins[12] = Texture'players.ragnardv_armlegpain';
00026				break;
00027			case BODYPART_RARM1:
00028				SkelGroupSkins[7] = Texture'players.ragnardv_armlegpain';
00029				SkelGroupSkins[11] = Texture'players.ragnardv_armlegpain';
00030				break;
00031			case BODYPART_LLEG1:
00032				SkelGroupSkins[1] = Texture'players.ragnardv_armlegpain';
00033				break;
00034			case BODYPART_RLEG1:
00035				SkelGroupSkins[4] = Texture'players.ragnardv_armlegpain';
00036				break;
00037		}
00038		return None;
00039	}
00040	
00041	//============================================================
00042	//
00043	// BodyPartForPolyGroup
00044	//
00045	//============================================================
00046	
00047	function int BodyPartForPolyGroup(int polygroup)
00048	{
00049		switch(polygroup)
00050		{
00051			case 3: case 5:						return BODYPART_HEAD;
00052			case 12:							return BODYPART_LARM1;
00053			case 11:							return BODYPART_RARM1;
00054			case 1:								return BODYPART_LLEG1;
00055			case 4:								return BODYPART_RLEG1;
00056			case 2: case 6: case 7: case 8: 
00057				case 9:	case 10: 				return BODYPART_TORSO;
00058		}
00059		return BODYPART_BODY;
00060	}
00061	
00062	//============================================================
00063	//
00064	// ApplyGoreCap
00065	//
00066	//============================================================
00067	
00068	function ApplyGoreCap(int BodyPart)
00069	{
00070		switch(BodyPart)
00071		{
00072			case BODYPART_LARM1:
00073				SkelGroupSkins[9] = Texture'runefx.gore_bone';
00074				SkelGroupFlags[9] = SkelGroupFlags[9] & ~POLYFLAG_INVISIBLE;
00075				break;
00076			case BODYPART_RARM1:
00077				SkelGroupSkins[8] = Texture'runefx.gore_bone';
00078				SkelGroupFlags[8] = SkelGroupFlags[8] & ~POLYFLAG_INVISIBLE;
00079				break;
00080			case BODYPART_HEAD:
00081				SkelGroupSkins[6] = Texture'runefx.gore_bone';
00082				SkelGroupFlags[6] = SkelGroupFlags[6] & ~POLYFLAG_INVISIBLE;
00083				break;
00084		}
00085	}
00086	
00087	//================================================
00088	//
00089	// SeveredLimbClass
00090	//
00091	//================================================
00092	function class<Actor> SeveredLimbClass(int BodyPart)
00093	{
00094		switch(BodyPart)
00095		{
00096			case BODYPART_LARM1:
00097				return class'DarkVikingLArm';
00098			case BODYPART_RARM1:
00099				return class'DarkVikingRArm';
00100			case BODYPART_HEAD:
00101				return class'DarkVikingHead';
00102				break;
00103		}
00104	
00105		return None;
00106	}
00107	
00108	
00109	//================================================
00110	//
00111	// Statue
00112	//
00113	//================================================
00114	State() Statue
00115	{
00116	ignores HearNoise, EnemyAcquired, Bump;
00117	
00118		function CreatureStatue()
00119		{
00120			//armleg
00121			SkelGroupSkins[1] = texture'statues.dv_rockarmleg';
00122			SkelGroupSkins[4] = texture'statues.dv_rockarmleg';
00123			SkelGroupSkins[11] = texture'statues.dv_rockarmleg';
00124			SkelGroupSkins[12] = texture'statues.dv_rockarmleg';
00125	
00126			//body
00127			SkelGroupSkins[2] = texture'statues.dv_rockbody';
00128			SkelGroupSkins[6] = texture'statues.dv_rockbody';
00129			SkelGroupSkins[7] = texture'statues.dv_rockbody';		//?? (arm?)
00130			SkelGroupSkins[8] = texture'statues.dv_rockbody';
00131			SkelGroupSkins[9] = texture'statues.dv_rockbody';
00132			SkelGroupSkins[10] = texture'statues.dv_rockbody';		//?? (arm?)
00133	
00134			//head
00135			SkelGroupSkins[3] = texture'statues.dv_rockhead';
00136			SkelGroupSkins[5] = texture'statues.dv_rockhead';
00137		}
00138	}
00139	
00140	defaultproperties
00141	{
00142	     StartStowWeapon=None
00143	     FightOrDefend=0.000000
00144	     LatOrVertDodge=0.500000
00145	     LungeRange=0.000000
00146	     AcquireSound=Sound'CreaturesSnd.Vikings.dark2see01'
00147	     AmbientWaitSounds(0)=Sound'CreaturesSnd.Vikings.dark2ambient01'
00148	     AmbientWaitSounds(1)=Sound'CreaturesSnd.Vikings.vike1breath01'
00149	     AmbientWaitSounds(2)=Sound'CreaturesSnd.Vikings.vike1breath02'
00150	     AmbientFightSounds(0)=Sound'CreaturesSnd.Vikings.vike1attack01'
00151	     AmbientFightSounds(1)=Sound'CreaturesSnd.Vikings.vike1attack02'
00152	     AmbientFightSounds(2)=Sound'CreaturesSnd.Vikings.vike1attack03'
00153	     AmbientWaitSoundDelay=11.000000
00154	     AmbientFightSoundDelay=8.000000
00155	     StartWeapon=Class'RuneI.VikingAxe'
00156	     StartShield=Class'RuneI.VikingShield'
00157	     CombatRange=200.000000
00158	     MaxStepHeight=25.000000
00159	     HitSound1=Sound'CreaturesSnd.Vikings.vike1hit01'
00160	     HitSound2=Sound'CreaturesSnd.Vikings.vike1hit02'
00161	     HitSound3=Sound'CreaturesSnd.Vikings.vike1hit03'
00162	     Die=Sound'CreaturesSnd.Vikings.guarddeath01'
00163	     Die2=Sound'CreaturesSnd.Vikings.guarddeath02'
00164	     Die3=Sound'CreaturesSnd.Vikings.guarddeath03'
00165	     SkelMesh=1
00166	}

End Source Code