Jump to content


Zarmoz

Member Since 15 Mar 2008
Offline Last Active Sep 19 2010 11:55 AM

Posts I've Made

In Topic: SRPS 1: Cursed Town [95% ready][BFME2]

24 December 2009 - 01:44 PM

Wow, you are really good :good:

In Topic: Skins <- need help (Solved)

23 December 2009 - 07:40 PM

Worked great, throwing in a picture; http://i47.tinypic.com/2up9xmx.jpg

In Topic: Skins <- need help (Solved)

23 December 2009 - 07:25 PM

Ok, thanks. But what's Haldir's skin?

In Topic: Skins <- need help (Solved)

23 December 2009 - 06:47 PM

;------------------------------------------------------------------------------

;

;	Haldir.ini

;

;------------------------------------------------------------------------------

Object ElvenHaldir



; *** ART Parameters ***

	SelectPortrait		= HPHaldir

	ButtonImage		= HIHaldir

	

	DescriptionStrategic = CONTROLBAR:LW_ToolTip_Haldir



	Draw = W3DScriptedModelDraw ModuleTag_DRAW

		

		StaticModelLODMode					= yes

		OkToChangeModelColor = Yes

		

		RandomTexture = euhaldirhitx.tga 0 euhaldir.dds

		RandomTexture = euhaldirhitx.tga 0 euhaldir_c.dds

		

	; Sword version

		DefaultModelConditionState

			Model							= EUHaldir_SKN

			Skeleton						= EUHaldir_SKL

			WeaponLaunchBone				= PRIMARY ARROW

		End



	; Bow version

		ModelConditionState					= WEAPONSET_TOGGLE_1

			Model							= EUHaldir_SKN

			Skeleton						= EUHaldir_SKL

		End





		AnimationState						= PASSENGER WEAPONSET_TOGGLE_1

			StateName						= STATE_Grabbed

			Animation						= Bow

				AnimationName				= EUHaldir_FLYA

				AnimationMode				= LOOP

			End

		End

		AnimationState						= PASSENGER

			StateName						= STATE_Grabbed

			Animation						= Sword

				AnimationName				= EUHaldir_FLYB

				AnimationMode				= LOOP

			End

		End





		AnimationState						= FREEFALL WEAPONSET_TOGGLE_1

			StateName						= STATE_Falling

			Animation						= Bow

				AnimationName				= EUHaldir_FLYA

				AnimationMode				= LOOP

				AnimationBlendTime			= 10

				AnimationSpeedFactorRange	= 0.5	0.5

			End

		End

		AnimationState						= FREEFALL

			StateName						= STATE_Falling

			Animation						= Sword

				AnimationName				= EUHaldir_FLYB

				AnimationMode				= LOOP

				AnimationBlendTime			= 10

				AnimationSpeedFactorRange	= 0.24 0.24

			End

		End





		AnimationState						= STUNNED_FLAILING WEAPONSET_TOGGLE_1

			StateName						= STATE_Fly

			Animation

				AnimationName				= EUHaldir_FLYA

				AnimationMode				= LOOP

				AnimationSpeedFactorRange	= 0.4 0.6

			End

			Flags							= MAINTAIN_FRAME_ACROSS_STATES2

		End

		AnimationState						= STUNNED_FLAILING

			StateName						= STATE_Fly

			Animation						= Sword

				AnimationName				= EUHaldir_FLYB

				AnimationMode				= LOOP

				AnimationSpeedFactorRange	= 0.4 0.6

			End

			Flags							= MAINTAIN_FRAME_ACROSS_STATES2

			BeginScript

				PrevState = CurDrawablePrevAnimationState()

				PrevAnim = CurDrawablePrevAnimation()

				if PrevState == "Ready_Bow" or PrevState == "Moving_Bow" or PrevState == "Bored_Bow"

				then

					CurDrawableShowSubObject("arrow")

					CurDrawableShowSubObject("arrownock")

					return "WantSword"

				elseif PrevState == "STATE_Fly"

				then

					if PrevAnim == "Bow" or PrevAnim == "WantSword"

					then

						CurDrawableShowSubObject("arrow")

						CurDrawableShowSubObject("arrownock")

						return "WantSword"

					end

				end

				CurDrawableHideSubObject("ArrowNock")

				CurDrawableHideSubObject("arrow")

				return "Sword"

			EndScript

		End





		AnimationState						= DYING DEATH_1 SPLATTED WEAPONSET_TOGGLE_1

			StateName						= STATE_Dead

			Animation						= Bow

				AnimationName				= EUHaldir_LNDA

				AnimationMode				= ONCE

			End

		End

		AnimationState						= DYING DEATH_1 SPLATTED

			StateName						= STATE_Dead

			Animation						= Sword

				AnimationName				= EUHaldir_LNDB

				AnimationMode				= ONCE

			End

		End





		AnimationState						= DYING DEATH_1 WEAPONSET_TOGGLE_1

			Animation						= Bow1

				AnimationName				= EUHaldir_DIEBV5

				AnimationMode				= ONCE

			End

			Animation						= Bow2

				AnimationName				= EUHaldir_DIEBV5

				AnimationMode				= ONCE

			End

			Animation						= WantBow

				AnimationName				= EUHaldir_LNDA

				AnimationMode				= ONCE

			End

			BeginScript

				PrevState = CurDrawablePrevAnimationState()

				PrevAnim = CurDrawablePrevAnimation()

				if PrevState == "STATE_Fly"

				then

					CurDrawableHideSubObject("ArrowNock")

					CurDrawableHideSubObject("arrow")

					return "WantBow"

				end

				if GetClientRandomNumberReal(0,2) < 1

				then

					CurDrawableShowSubObject("arrow")

					CurDrawableShowSubObject("arrownock")

					return "Bow1"

				else

					CurDrawableShowSubObject("arrow")

					CurDrawableShowSubObject("arrownock")

					return "Bow2"

				end

			EndScript

		End

		AnimationState						= DYING DEATH_1

			Animation						= Sword1

				AnimationName				= EUHaldir_DIESv5

				AnimationMode				= ONCE

			End

			Animation						= Sword2

				AnimationName				= EUHaldir_DIESV5

				AnimationMode				= ONCE

			End

			Animation						= WantSword

				AnimationName				= EUHaldir_LNDB

				AnimationMode				= ONCE

			End

			BeginScript

				PrevState = CurDrawablePrevAnimationState()

				PrevAnim = CurDrawablePrevAnimation()

				if PrevState == "STATE_Fly"

				then

					CurDrawableShowSubObject("arrow")

					CurDrawableShowSubObject("arrownock")

					return "WantSword"

				end

				CurDrawableHideSubObject("ArrowNock")

				CurDrawableHideSubObject("arrow")

				if GetClientRandomNumberReal(0,2) < 1

				then

					return "Sword1"

				else

					return "Sword2"

				end

			EndScript

		End





		AnimationState						= DYING DEATH_2 WEAPONSET_TOGGLE_1

			Animation						= FadeOut

				AnimationName				= EUHaldir_DIEBV5

				AnimationMode				= ONCE

			End

		End

		AnimationState						= DYING DEATH_2

			Animation						= FadeOut

				AnimationName				= EUHaldir_DIESV5

				AnimationMode				= LOOP

			End

		End





		AnimationState						= STUNNED_STANDING_UP WEAPONSET_TOGGLE_1

			StateName						= STATE_GetUp

			Animation						= Bow

				AnimationName				= EUHaldir_GTPB

				AnimationMode				= ONCE

				AnimationSpeedFactorRange	= 1.42 1.42

			End

			Animation						= WantBow

				AnimationName				= EUHaldir_GTPSX1

				AnimationMode				= ONCE

			End

			Flags						= MAINTAIN_FRAME_ACROSS_STATES4

			BeginScript

				PrevState = CurDrawablePrevAnimationState()

				PrevAnim = CurDrawablePrevAnimation()

				if PrevState == "STATE_GetUp" or PrevState == "STATE_Land"

				then	

					if PrevAnim == "WantBow" or PrevAnim == "Sword"

					then

						CurDrawableHideSubObject("ArrowNock")

						CurDrawableHideSubObject("arrow")

						return "WantBow"

					end

				else

					CurDrawableShowSubObject("arrow")

					CurDrawableShowSubObject("arrownock")

					return "Bow"

				end

			EndScript

		End

		AnimationState						= STUNNED_STANDING_UP

			StateName						= STATE_GetUp

			Animation						= Sword

				AnimationName				= EUHaldir_GTPSX1

				AnimationMode				= ONCE

				AnimationSpeedFactorRange	= 1.2	1.2

			End

			Animation						= WantSword

				AnimationName				= EUHaldir_GTPB

				AnimationMode				= ONCE

			End

			Flags							= MAINTAIN_FRAME_ACROSS_STATES4

			BeginScript

				PrevState = CurDrawablePrevAnimationState()

				PrevAnim = CurDrawablePrevAnimation()

				if PrevState == "STATE_GetUp" or PrevState == "STATE_Land"

				then

					if PrevAnim == "Bow" or PrevAnim == "WantSword"

					then	

						CurDrawableShowSubObject("arrow")

						CurDrawableShowSubObject("arrownock")

						return "WantSword"

					end

				end

				CurDrawableHideSubObject("ArrowNock")

				CurDrawableHideSubObject("arrow")

				return "Sword"

			EndScript

		End





		AnimationState						= STUNNED WEAPONSET_TOGGLE_1

			StateName						= STATE_Land

			Animation						= Bow

				AnimationName				= EUHaldir_LNDA

				AnimationMode				= ONCE

			End

			Animation						= WantBow

				AnimationName				= EUHaldir_LNDB

				AnimationMode				= ONCE

			End

			Flags							= MAINTAIN_FRAME_ACROSS_STATES3

			BeginScript

				PrevState = CurDrawablePrevAnimationState()

				PrevAnim = CurDrawablePrevAnimation()

				if PrevState == "STATE_Fly"

				then

					if PrevAnim == "WantBow" or PrevAnim == "Sword"

					then

						CurDrawableHideSubObject("ArrowNock")

						CurDrawableHideSubObject("arrow")

						return "WantBow"

					end

				end

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("arrownock")

				return "Bow"

			EndScript

		End

		AnimationState						= STUNNED

			StateName						= STATE_Land

			Animation						= Sword

				AnimationName				= EUHaldir_LNDB

				AnimationMode				= ONCE

			End

			Animation						= WantSword

				AnimationName				= EUHaldir_LNDA

				AnimationMode				= ONCE

			End

			BeginScript

				PrevState = CurDrawablePrevAnimationState()

				PrevAnim = CurDrawablePrevAnimation()

				if PrevState == "STATE_Fly"

				then

					if PrevAnim == "WantSword" or PrevAnim == "Bow"

					then

						CurDrawableShowSubObject("arrow")

						CurDrawableShowSubObject("arrownock")

						return "WantSword"

					end

				end

				Flags						= MAINTAIN_FRAME_ACROSS_STATES3

				CurDrawableHideSubObject("ArrowNock")

				CurDrawableHideSubObject("arrow")

				return "Sword"

			EndScript

		End



		AnimationState						= PARALYZED

			Animation

				AnimationName				= EUHaldir_IDLF

				AnimationMode				= LOOP

			End

		End





		AnimationState						= FIRING_OR_PREATTACK_A WEAPONSET_TOGGLE_1

			StateName						= Attacking_Bow

			Animation

				AnimationName				= EUHaldir_ATA2

				AnimationMode				= ONCE

				UseWeaponTiming				= Yes

				AnimationBlendTime			= 20

			End

			BeginScript

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("ArrowNock")

			EndScript

		End

		AnimationState						= FIRING_OR_PREATTACK_A

			StateName						= Ready_Sword

			

			Animation						= AttackWithSwordA

				AnimationName				= EUHaldir_ATKSV2

				AnimationMode				= ONCE

				UseWeaponTiming				= Yes

			End

			Animation						= AttackWithSwordB

				AnimationName				= EUHaldir_ATKSV2

				AnimationMode				= ONCE

				UseWeaponTiming				= Yes

			End

			Animation						= AttackWithSwordD

				AnimationName				= EUHaldir_ATKSV4

				AnimationMode				= ONCE

				UseWeaponTiming				= Yes

			End

			BeginScript

				CurDrawableHideSubObject("ArrowNock")

				CurDrawableHideSubObject("arrow")

			EndScript

		End



		AnimationState						= SPECIAL_WEAPON_ONE

			Animation

				AnimationName				= EUHaldir_SPCA

				AnimationMode				= ONCE

			End

			FrameForPristineBonePositions	= 60

			BeginScript

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("arrownock")

			EndScript

		End





		AnimationState						= MOVING WEAPONSET_TOGGLE_1

			StateName						= Moving_Bow

			Animation

				AnimationName				= EUHaldir_RUNB

				AnimationMode				= LOOP

			End

			Flags = RANDOMSTART

			BeginScript

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("arrownock")

				Prev = CurDrawablePrevAnimationState()

				if Prev == "Moving_Sword" then CurDrawableSetTransitionAnimState("TRANS_SwordToBow_Moving") end

			EndScript

		End

		AnimationState						= MOVING

			StateName						= Moving_Sword

			Animation

				AnimationName				= EUHaldir_RUNS

				AnimationMode				= LOOP

			End

			Flags = RANDOMSTART

			BeginScript

				CurDrawableHideSubObject("arrow")

				CurDrawableHideSubObject("arrownock")

				Prev = CurDrawablePrevAnimationState()

				if Prev == "Moving_Bow" then CurDrawableSetTransitionAnimState("TRANS_BowToSword_Moving") end

			EndScript

		End





		AnimationState						= PREATTACK_A WEAPONSET_TOGGLE_1

			Animation						= ReadyToDrawn

				AnimationName				= EUHaldir_ATA1

				AnimationMode				= ONCE

				AnimationBlendTime			= 0

				UseWeaponTiming				= Yes

			End

			BeginScript

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("ArrowNock")

			EndScript

		End



		AnimationState						= FIRING_OR_RELOADING_A WEAPONSET_TOGGLE_1

			StateName						= STATE_Firing

			Animation

				AnimationName				= EUHaldir_ATA2

				AnimationMode				= ONCE

				AnimationBlendTime			= 30

				UseWeaponTiming				= Yes

				AnimationSpeedFactorRange	= 1.5 1.5

			End

			Flags							= START_FRAME_FIRST

			BeginScript

				CurDrawableHideSubObject("arrow")

				CurDrawableHideSubObject("ArrowNock")

			EndScript

		End





		AnimationState						= MOVING BACKING_UP WEAPONSET_TOGGLE_1

			StateName						= STATE_BackingUp

			Animation						= Bow

				AnimationName				= EUHaldir_BAKB

				AnimationMode				= LOOP

			End

			Animation						= WantBow

				AnimationName				= EUHaldir_BAKS

				AnimationMode				= LOOP

			End

			Flags							= MAINTAIN_FRAME_ACROSS_STATES4

			BeginScript

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("arrownock")

				PrevAnim	= CurDrawablePrevAnimation()

				PrevState	= CurDrawablePrevAnimationState()

				if PrevState == "STATE_BackingUp"

				then

					if PrevAnim == "WantBow" or PrevAnim == "Sword"

					then

						return "WantBow"

					end

				end

				return "Bow"

			EndScript

		End

		AnimationState						= MOVING BACKING_UP

			StateName						= STATE_BackingUp

			Animation						= Sword

				AnimationName				= EUHaldir_BAKS

				AnimationMode				= LOOP

			End

			Animation						= WantSword

				AnimationName				= EUHaldir_BAKS

				AnimationMode				= LOOP

			End

			Flags							= MAINTAIN_FRAME_ACROSS_STATES4

			BeginScript

				CurDrawableHideSubObject("ARROW")

				CurDrawableHideSubObject("ARROWNOCK")

				PrevAnim	= CurDrawablePrevAnimation()

				PrevState	= CurDrawablePrevAnimationState()

				if PrevState == "STATE_BackingUp"

				then

					if PrevAnim == "Bow" or PrevAnim == "WantSword"

					then

						return "WantSword"

					end

				end

				return "Sword"

			EndScript

		End





		AnimationState						= CONTINUOUS_FIRE_MEAN

			Animation						= HangFrameWhileCoasting

				AnimationName				= EUHaldir_ATA2

				AnimationMode				= MANUAL

				AnimationBlendTime			= 20

			End

			Flags							= START_FRAME_LAST

			BeginScript

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("ARROWNOCK")

				if CurDrawablePrevAnimationState() == "STATE_Firing" then CurDrawableAllowToContinue() end

			EndScript

		;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

		;;;;

		;;;;	VERY IMPORTANT ARCHER INFORMATION

		;;;;	THIS WILL STOP THE JITTERS, AND BEST

		;;;;	YET, IT'S A COMPLETE HACK! Just look above.

		;;;;	We say that if we get into this state

		;;;;	from firing, just continue to fire. DONE.

		;;;;

		;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

		End

		AnimationState						= CONTINUOUS_FIRE_SLOW

			StateName						= Ready_Bow

			Animation						= PutAwayArrow

				AnimationName				= EUHaldir_ATA3

				AnimationMode				= ONCE

			End

			BeginScript

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("ARROWNOCK")

			EndScript

		End





		AnimationState						= ATTACKING WEAPONSET_TOGGLE_1

			StateName						= Ready_Bow

			Animation						= IDLB

				AnimationName				= EUHaldir_IDLB

				AnimationMode				= LOOP

			End

			BeginScript

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("arrownock")

				PrevAnim = CurDrawablePrevAnimation()

				Prev = CurDrawablePrevAnimationState()

				if Prev == "Bored_Bow" then CurDrawableSetTransitionAnimState("TRANS_BR_Bow") end

				if Prev == "Selected_Bow" then CurDrawableSetTransitionAnimState("TRANS_SelectedToReady_Bow") end

				if Prev == "Selected_Sword" or Prev == "Moving_Sword" or Prev == "Ready_Sword" or Prev == "Bored_Sword" or PrevAnim == "WantBow"

				then 

					CurDrawableSetTransitionAnimState("TRANS_SwordToBow_Ready")

				end

			EndScript

		End

		AnimationState						= ATTACKING

			StateName						= Ready_Sword

			Animation						= Alert_1

				AnimationName				= EUHaldir_IDLST1

				AnimationMode				= LOOP

			End

			BeginScript

				PrevAnim = CurDrawablePrevAnimation()

				Prev = CurDrawablePrevAnimationState()

				CurDrawableHideSubObject("ArrowNock")

				CurDrawableHideSubObject("arrow")

				if Prev == "Bored_Sword" then CurDrawableSetTransitionAnimState("TRANS_BR_Sword") end

				if Prev == "Selected_Bow" or Prev == "Moving_Bow" or Prev == "Ready_Bow" or Prev == "Bored_Bow" or PrevAnim == "WantSword"

				then 

					CurDrawableSetTransitionAnimState("TRANS_BowToSword_Ready")

				end

			EndScript

		End





		AnimationState						= ENGAGED WEAPONSET_TOGGLE_1

			StateName						= Ready_Bow

			Animation						= IDLB

				AnimationName				= EUHaldir_IDLB

				AnimationMode				= LOOP

			End

			BeginScript

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("arrownock")

				PrevAnim = CurDrawablePrevAnimation()

				Prev = CurDrawablePrevAnimationState()

				if Prev == "Bored_Bow"		then CurDrawableSetTransitionAnimState("TRANS_BR_Bow")				end

				if Prev == "Selected_Bow"	then CurDrawableSetTransitionAnimState("TRANS_SelectedToReady_Bow")				end

				if Prev == "Selected_Sword" or Prev == "Moving_Sword" or Prev == "Ready_Sword" or Prev == "Bored_Sword" or PrevAnim == "WantBow"

				then 

					CurDrawableSetTransitionAnimState("TRANS_SwordToBow_Ready")	

				end

			EndScript

		End

		AnimationState						= ENGAGED

			StateName						= Ready_Sword

			Animation						= Alert_1

				AnimationName				= EUHaldir_IDLST1

				AnimationMode				= LOOP

			End

			BeginScript

				PrevAnim = CurDrawablePrevAnimation()

				Prev = CurDrawablePrevAnimationState()

				CurDrawableHideSubObject("ArrowNock")

				CurDrawableHideSubObject("arrow")

				if Prev == "Bored_Sword"		then CurDrawableSetTransitionAnimState("TRANS_BR_Sword")			end

				if Prev == "Selected_Bow" or Prev == "Moving_Bow" or Prev == "Ready_Bow" or Prev == "Bored_Bow" or PrevAnim == "WantSword"

				then 

					CurDrawableSetTransitionAnimState("TRANS_BowToSword_Ready")	

				end

			EndScript

		End





		AnimationState						= EMOTION_ALERT WEAPONSET_TOGGLE_1

			StateName						= Ready_Bow

			Animation						= IDLB

				AnimationName				= EUHaldir_IDLB

				AnimationMode				= LOOP

			End

			BeginScript

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("arrownock")

				PrevAnim = CurDrawablePrevAnimation()

				Prev = CurDrawablePrevAnimationState()

				if Prev == "Bored_Bow"		then CurDrawableSetTransitionAnimState("TRANS_BR_Bow") end

				if Prev == "Selected_Bow"	then CurDrawableSetTransitionAnimState("TRANS_SelectedToReady_Bow") end

				if Prev == "Selected_Sword" or Prev == "Moving_Sword" or Prev == "Ready_Sword" or Prev == "Bored_Sword" or PrevAnim == "WantBow"

				then 

					CurDrawableSetTransitionAnimState("TRANS_SwordToBow_Ready")	

				end				

			EndScript

		End 

		AnimationState						= EMOTION_ALERT

			StateName						= Ready_Sword

			Animation						= Alert_1

				AnimationName				= EUHaldir_IDLST1

				AnimationMode				= LOOP

			End

			BeginScript

				PrevAnim = CurDrawablePrevAnimation()

				Prev = CurDrawablePrevAnimationState()

				CurDrawableHideSubObject("ArrowNock")

				CurDrawableHideSubObject("arrow")

				if Prev == "Bored_Sword" then CurDrawableSetTransitionAnimState("TRANS_BR_Sword") end

				if Prev == "Selected_Bow" or Prev == "Moving_Bow" or Prev == "Ready_Bow" or Prev == "Bored_Bow" or PrevAnim == "WantSword"

				then 

					CurDrawableSetTransitionAnimState("TRANS_BowToSword_Ready")	

				end

			EndScript

		End





		AnimationState						= EMOTION_CELEBRATING WEAPONSET_TOGGLE_1

			StateName						= STATE_Emotion_Bow

			Animation						= Bow

				AnimationName				= EUHaldir_CHRB

				AnimationMode				= ONCE

			End

			Animation						= Bow2

				AnimationName				= EUHaldir_CHRB

				AnimationMode				= ONCE

			End

			Flags							= MAINTAIN_FRAME_ACROSS_STATES RESTART_ANIM_WHEN_COMPLETE

			BeginScript

				PrevState = CurDrawablePrevAnimationState()

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("arrownock")

				if PrevState == "STATE_Emotion_Sword"

				then

					CurDrawableAllowToContinue()

					if( CurDrawablePrevAnimFraction() > .89 )

					then

						CurDrawableSetTransitionAnimState("TRANS_SwordToBow_Ready")

					end

				elseif PrevState == "STATE_Emotion_Bow"

				then

					CurDrawableAllowToContinue()

				elseif PrevState == "Selected_Bow"

				then

					CurDrawableSetTransitionAnimState("TRANS_SelectedToReady_Bow")

				end

			EndScript

		End

		AnimationState						= EMOTION_CELEBRATING

			StateName						= STATE_Emotion_Sword

			Animation						= Sword

				AnimationName				= EUHaldir_CHRS

				AnimationMode				= ONCE

			End

			Animation						= Sword2

				AnimationName				= EUHaldir_CHRS

				AnimationMode				= ONCE

			End

			Flags							= MAINTAIN_FRAME_ACROSS_STATES RESTART_ANIM_WHEN_COMPLETE

			BeginScript

				PrevState = CurDrawablePrevAnimationState()

				CurDrawableHideSubObject("arrow")

				CurDrawableHideSubObject("arrownock")

				

				if PrevState == "STATE_Emotion_Bow"

				then

					CurDrawableAllowToContinue()

					if( CurDrawablePrevAnimFraction() > .89 )

					then

						CurDrawableSetTransitionAnimState("TRANS_BowToSword_Ready")

					end

				elseif PrevState == "STATE_Emotion_Sword"

				then

					CurDrawableAllowToContinue()

				elseif PrevState == "Bored_Sword"

				then

					CurDrawableSetTransitionAnimState("TRANS_BR_Sword")

				end

			EndScript

		End

		





		AnimationState						= EMOTION_TAUNTING WEAPONSET_TOGGLE_1

			StateName						= STATE_Emotion_Bow

			Animation						= Bow1

				AnimationName				= EUHaldir_TNTA

				AnimationMode				= ONCE

			End

			Animation						= Bow2

				AnimationName				= EUHaldir_TNTA

				AnimationMode				= ONCE

			End

			Flags							= RESTART_ANIM_WHEN_COMPLETE

			BeginScript

				PrevState = CurDrawablePrevAnimationState()

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("arrownock")

				

				if PrevState == "STATE_Emotion_Sword"

				then

					CurDrawableAllowToContinue()

					if( CurDrawablePrevAnimFraction() > .89 )

					then

						CurDrawableSetTransitionAnimState("TRANS_SwordToBow_Ready")

					end

				elseif PrevState == "STATE_Emotion_Bow"

				then

					CurDrawableAllowToContinue()

				elseif PrevState == "Selected_Bow"

				then

					CurDrawableSetTransitionAnimState("TRANS_SelectedToReady_Bow")

				elseif PrevState == "Bored_Bow"

				then

					CurDrawableSetTransitionAnimState("TRANS_BR_Bow")

				end

			EndScript

		End

		AnimationState						= EMOTION_TAUNTING

			StateName						= STATE_Emotion_Sword

			Animation						= Sword

				AnimationName				= EUHaldir_TNTB

				AnimationMode				= ONCE

			End

			Animation						= Sword2

				AnimationName				= EUHaldir_TNTB

				AnimationMode				= ONCE

			End

			Flags							= RESTART_ANIM_WHEN_COMPLETE

			BeginScript

				PrevState = CurDrawablePrevAnimationState()

				CurDrawableHideSubObject("arrow")

				CurDrawableHideSubObject("arrownock")

				if PrevState == "STATE_Emotion_Bow"

				then

					CurDrawableAllowToContinue()

					if( CurDrawablePrevAnimFraction() > .89 )

					then

						CurDrawableSetTransitionAnimState("TRANS_BowToSword_Ready")

					end

				elseif PrevState == "STATE_Emotion_Sword"

					then

						CurDrawableAllowToContinue()

				elseif PrevState == "Bored_Sword"

				then

					CurDrawableSetTransitionAnimState("TRANS_BR_Sword")

				end

			EndScript

		End





		AnimationState						= EMOTION_POINTING WEAPONSET_TOGGLE_1

			StateName						= STATE_Emotion_Bow

			Animation						= Bow

				AnimationName				= EUHaldir_PNTA

				AnimationMode				= ONCE

			End

			Animation						= Bow2

				AnimationName				= EUHaldir_PNTA

				AnimationMode				= ONCE

			End

			Flags							= MAINTAIN_FRAME_ACROSS_STATES RESTART_ANIM_WHEN_COMPLETE

			BeginScript

				PrevState = CurDrawablePrevAnimationState()

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("arrownock")

				

				if PrevState == "STATE_Emotion_Sword"

				then

					CurDrawableAllowToContinue()

					if( CurDrawablePrevAnimFraction() > .89 )

					then

						CurDrawableSetTransitionAnimState("TRANS_SwordToBow_Ready")

					end

				elseif PrevState == "STATE_Emotion_Bow"

				then

					CurDrawableAllowToContinue()

				elseif PrevState == "Selected_Bow"

				then

					CurDrawableSetTransitionAnimState("TRANS_SelectedToReady_Bow")

				elseif PrevState == "Bored_Bow"

				then

					CurDrawableSetTransitionAnimState("TRANS_BR_Bow")

				end

			EndScript

		End

		AnimationState						= EMOTION_POINTING

			StateName						= STATE_Emotion_Sword

			Animation						= Sword

				AnimationName				= EUHaldir_PNTB

				AnimationMode				= ONCE

			End

			Animation						= Sword2

				AnimationName				= EUHaldir_PNTB

				AnimationMode				= ONCE

			End

			Flags							= MAINTAIN_FRAME_ACROSS_STATES RESTART_ANIM_WHEN_COMPLETE

			BeginScript

				PrevState = CurDrawablePrevAnimationState()

				CurDrawableHideSubObject("arrow")

				CurDrawableHideSubObject("arrownock")

				

				if PrevState == "STATE_Emotion_Bow"

				then

					CurDrawableAllowToContinue()

					if( CurDrawablePrevAnimFraction() > .89 )

					then

						CurDrawableSetTransitionAnimState("TRANS_BowToSword_Ready")

					end

				elseif PrevState == "STATE_Emotion_Sword"

				then

					CurDrawableAllowToContinue()

				elseif PrevState == "Bored_Sword"

				then

					CurDrawableSetTransitionAnimState("TRANS_BR_Sword")

				end

			EndScript

		End





		AnimationState 						= HIT_REACTION HIT_LEVEL_1 WEAPONSET_TOGGLE_1

			StateName						= Bored_Bow

			Animation

				AnimationName				= EUHaldir_HITA

				AnimationMode 				= ONCE

				AnimationSpeedFactorRange	= .9 .9

			End

		End

		AnimationState						= HIT_REACTION HIT_LEVEL_1

			StateName						= Bored_Sword

			Animation

				AnimationName				= EUHaldir_HITE

				AnimationMode				= ONCE

			End

		End



		AnimationState						= RAISING_FLAG WEAPONSET_TOGGLE_1

			StateName						= STATE_Emotion_Bow

			Animation						= Bow

				AnimationName				= EUHaldir_CHRB

				AnimationMode				= ONCE

			End

			Animation						= Bow2

				AnimationName				= EUHaldir_CHRB

				AnimationMode				= ONCE

			End

			Flags							= RESTART_ANIM_WHEN_COMPLETE

		End



		AnimationState						= SELECTED WEAPONSET_TOGGLE_1

			StateName						= Selected_Bow

			Animation						= ATNE

				AnimationName				= EUHaldir_ATNE

				AnimationMode				= LOOP

			End

			BeginScript

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("arrownock")

				PrevAnim = CurDrawablePrevAnimation()

				Prev = CurDrawablePrevAnimationState()

				if Prev == "STATE_Emotion_Bow" or Prev == "STATE_Emotion_Sword" then CurDrawableAllowToContinue() end

				if Prev == "Bored_Bow" then CurDrawableSetTransitionAnimState("TRANS_BoredToSelected_Bow") end

				if Prev == "Ready_Bow" then CurDrawableSetTransitionAnimState("TRANS_RS_Bow") end

				if Prev == "Selected_Sword" or Prev == "Moving_Sword" or Prev == "Ready_Sword" or Prev == "Bored_Sword" or PrevAnim == "WantBow"

				then 

					CurDrawableSetTransitionAnimState("TRANS_SwordToBow_Selected")	

				end

			EndScript

		End



		AnimationState						= RAISING_FLAG

			StateName						= STATE_Emotion_Sword

			Animation						= Sword

				AnimationName				= EUHaldir_CHRS

				AnimationMode				= ONCE

			End

			Animation						= Sword2

				AnimationName				= EUHaldir_CHRS

				AnimationMode				= ONCE

			End

			Flags							= RESTART_ANIM_WHEN_COMPLETE

		End

		

		AnimationState						= SELECTED

			StateName						= Selected_Sword

			Animation						= ATNA

				AnimationName				= EUHaldir_ATNS

				AnimationMode				= LOOP

			End

			BeginScript

				CurDrawableHideSubObject("ARROW")

				CurDrawableHideSubObject("ARROWNOCK")

				PrevAnim = CurDrawablePrevAnimation()

				Prev = CurDrawablePrevAnimationState()

				if Prev == "STATE_Emotion_Bow" or Prev == "STATE_Emotion_Sword" then CurDrawableAllowToContinue() end

				if Prev == "Bored_Sword" then CurDrawableSetTransitionAnimState("TRANS_BoredToSelected_Sword") end

				if Prev == "Ready_Sword" then CurDrawableSetTransitionAnimState("TRANS_ReadyToSelected_Sword") end

				if Prev == "Selected_Bow" or Prev == "Moving_Bow" or Prev == "Ready_Bow" or Prev == "Bored_Bow" or PrevAnim == "WantSword" or PrevAnim == "EUHaldir_STHB"

				then

					CurDrawableSetTransitionAnimState("TRANS_BowToSword_Selected")

				end

			EndScript

		End





		IdleAnimationState

			StateName						= Bored_Sword

			Animation						= Idle_Sword1

				AnimationName				= EUHaldir_IDLF

				AnimationMode				= ONCE

			End

			Animation						= Idle_Sword2

				AnimationName				= EUHaldir_IDLF

				AnimationMode				= ONCE

			End

			Animation						= Idle_Sword3

				AnimationName				= EUHaldir_IDLF

				AnimationMode				= ONCE

			End

			Animation						= IdleNoFidget

				AnimationName				= EUHaldir_IDLF

				AnimationMode				= ONCE

				AnimationPriority			= 20

			End

			Animation						= IdleNoFidget2

				AnimationName				= EUHaldir_IDLF

				AnimationMode				= ONCE

				AnimationPriority			= 0

			End

			Flags							= RESTART_ANIM_WHEN_COMPLETE

			BeginScript

				CurDrawableHideSubObject("ARROW")

				CurDrawableHideSubObject("ARROWNOCK")

				PrevAnim = CurDrawablePrevAnimation()

				Prev = CurDrawablePrevAnimationState()

				if Prev == "TRANS_SelectedToBored_Sword" or Prev == "TRANS_RB_Sword" then return "IdleNoFidget" end

				if Prev == "Selected_Sword" then CurDrawableSetTransitionAnimState("TRANS_SelectedToBored_Sword") end

				if Prev == "Ready_Sword" then CurDrawableSetTransitionAnimState("TRANS_RB_Sword") end

				if Prev == "Selected_Bow" or Prev == "Moving_Bow" or Prev == "Ready_Bow" or Prev == "Bored_Bow" or PrevAnim == "WantSword"

				then 

					CurDrawableSetTransitionAnimState("TRANS_BowToSword_Selected")

				end

			EndScript

		End





		AnimationState						= WEAPONSET_TOGGLE_1

			StateName						= Bored_Bow

			Animation						= IdleBowB

				AnimationName				= EUHaldir_IDLE

				AnimationMode				= ONCE

			End

			Animation						= IdleBowD

				AnimationName				= EUHaldir_IDLE

				AnimationMode				= ONCE

			End

			Animation						= IdleNoFidget

				AnimationName				= EUHaldir_IDLE

				AnimationMode				= ONCE

				AnimationPriority			= 20

			End

			Animation						= IdleNoFidget2

				AnimationName				= EUHaldir_IDLE

				AnimationMode				= ONCE

				AnimationPriority			= 10

			End

			Flags							= RESTART_ANIM_WHEN_COMPLETE

			BeginScript	

				CurDrawableShowSubObject("arrow")

				CurDrawableShowSubObject("arrownock")

				PrevAnim = CurDrawablePrevAnimation()

				Prev = CurDrawablePrevAnimationState()

				if Prev == "TRANS_SelectedToBored_Bow" or Prev == "TRANS_RB_Bow" then return "IdleNoFidget" end

				if Prev == "Selected_Bow" then CurDrawableSetTransitionAnimState("TRANS_SelectedToBored_Bow") end

				if Prev == "Ready_Bow" then CurDrawableSetTransitionAnimState("TRANS_RB_Bow") end

				if Prev == "Selected_Sword" or Prev == "Moving_Sword" or Prev == "Ready_Sword" or Prev == "Bored_Sword" or PrevAnim == "WantBow"

				then 

					CurDrawableSetTransitionAnimState("TRANS_SwordToBow_Selected")

				end

			EndScript

		End





	; Transitions



		TransitionState						= TRANS_BoredToSelected_Bow

			Animation

				AnimationName				= EUHaldir_ATNB

				AnimationMode				= ONCE

				AnimationBlendTime			= 10

			End

		End





		TransitionState						= TRANS_SelectedToReady_Bow

			Animation						= ATNE

				AnimationName				= EUHaldir_IDLB

				AnimationMode				= ONCE

				AnimationBlendTime			= 10

			End

		End





		TransitionState						= TRANS_SelectedToBored_Bow

			Animation

				AnimationName				= EUHaldir_ATNB

				AnimationMode				= ONCE_BACKWARDS

			End

			Flags							= START_FRAME_LAST

		End





		TransitionState						= TRANS_RS_Bow

			Animation						= ATNF

				AnimationName				= EUHaldir_IDLB

				AnimationMode				= ONCE_BACKWARDS

				AnimationBlendTime			= 10

			End

			Flags							= START_FRAME_LAST

		End





		TransitionState						= TRANS_BR_Bow

			Animation						= IDLB

				AnimationName				= EUHaldir_IDLST1

				AnimationMode				= ONCE

				AnimationBlendTime			= 20

			End

		End





		TransitionState						= TRANS_RB_Bow

			Animation						= IDLD

				AnimationName				= EUHaldir_IDLB

				AnimationMode				= ONCE

				AnimationBlendTime			= 20

			End

		End





		TransitionState					= TRANS_BoredToSelected_Sword

			Animation					= ATNA

				AnimationName			= EUHaldir_ATNA

				AnimationMode			= ONCE

			End

		End





		TransitionState					= TRANS_SR_Sword

			Animation					= ATNC

				AnimationName			= EUHaldir_STHA

				AnimationMode			= ONCE

			End

		End





		TransitionState					= TRANS_SelectedToBored_Sword

			Animation					= ATNA

				AnimationName			= EUHaldir_ATNA

				AnimationMode			= ONCE_BACKWARDS

			End

			Flags						= START_FRAME_LAST

		End





		TransitionState					= TRANS_ReadyToSelected_Sword

			Animation					= ATNC

				AnimationName			= EUHaldir_IDLST1

				AnimationMode			= ONCE_BACKWARDS

				AnimationBlendTime		= 20

			End

			Flags						= START_FRAME_LAST

		End





		TransitionState					= TRANS_BR_Sword

			Animation					= ATNS

				AnimationName			= EUHaldir_STHA

				AnimationMode			= ONCE

				AnimationBlendTime		= 20

			End

		End





		TransitionState					= TRANS_RB_Sword

			Animation					= IDLG

				AnimationName			= EUHaldir_STHA

				AnimationMode			= ONCE

				AnimationBlendTime		= 20

			End

		End

		





		TransitionState					= TRANS_SwordToBow_Moving

			Animation					= DrawBow

				AnimationName			= EUHaldir_STHC

				AnimationMode			= ONCE

			End

		End





		TransitionState					= TRANS_BowToSword_Moving

			Animation					= DrawSword

				AnimationName			= EUHaldir_STHD

				AnimationMode			= ONCE

			End

		End





		TransitionState					= TRANS_BowToSword_Ready

			Animation					= DrawSwords

				AnimationName			= EUHaldir_STHA

				AnimationMode			= ONCE

			End

		End





		TransitionState					= TRANS_SwordToBow_Ready

			Animation					= DrawBow

				AnimationName			= EUHaldir_STHB

				AnimationMode			= ONCE

			End

		End





		TransitionState					= TRANS_BowToSword_Selected

			Animation					= DrawSwords

				AnimationName			= EUHaldir_STHA

				AnimationMode			= ONCE

			End

		End





		TransitionState					= TRANS_SwordToBow_Selected

			Animation					= DrawBow

				AnimationName			= EUHaldir_STHB

				AnimationMode			= ONCE

			End

		End

	End

	

	#include "..\..\..\includes\StunDrawModuleSmall.inc"



; ***DESIGN parameters ***

	Side						= Elves

	EditorSorting				= UNIT

	ThreatLevel					= HALDIR_THREAT_LEVEL

	ThingClass					= CHARACTER_UNIT

	BuildCost					= HALDIR_BUILDCOST

	BuildTime					= HALDIR_BUILDTIME

	ShockwaveResistance = SHOCKWAVE_RESISTANCE_STRONG

	TransportSlotCount			= TRANSPORTSLOTCOUNT_HERO

	VisionRange					= VISION_HERO_RANGED

	ShroudClearingRange			= SHROUD_CLEAR_RANGED_HERO

	

	MaxVisionBonusPercent = 300%

	VisionBonusTestRadius = 200

	VisionBonusPercentPerFoot = 1.0%

	

	BountyValue					= ELVEN_HALDIR_BOUNTY_VALUE

	RecruitText 					= CONTROLBAR:HaldirRecruit

	ReviveText					= CONTROLBAR:HaldirRevive

	Hotkey		= CONTROLBAR:ElvenHaldirHotkey

	DisplayName					= OBJECT:ElvenHaldir

	CrushableLevel				= 2 ;What am I?:		0 = for infantry, 1 = for trees, 2 = general vehicles

	CommandSet					= ElvenHaldirCommandSet

	CommandPoints				= 50

;//DisplayMeleeDamage			= HALDIR_SWORD_DAMAGE

;//DisplayRangedDamage			= HALDIR_BOW_DAMAGE

	HeroSortOrder				= 40



	WeaponSet

		Conditions				= WEAPONSET_TOGGLE_1 CONTAINED

		Weapon					= PRIMARY HaldirBow

		AutoChooseSources		= PRIMARY FROM_PLAYER FROM_SCRIPT FROM_AI

	End

	WeaponSet

		Conditions				= CONTAINED

		Weapon					= PRIMARY HaldirBow

		AutoChooseSources		= PRIMARY FROM_PLAYER FROM_SCRIPT FROM_AI

	End

	WeaponSet

		Conditions				= WEAPONSET_TOGGLE_1

		Weapon					= PRIMARY HaldirBow

		AutoChooseSources		= PRIMARY FROM_PLAYER FROM_SCRIPT FROM_AI

	End



	WeaponSet

		Conditions				= None

		Weapon					= PRIMARY HaldirSword

		AutoChooseSources		= PRIMARY FROM_PLAYER FROM_SCRIPT FROM_AI

	End

	

	ArmorSet

		Conditions				= None

		Armor					= HeroLightArmor

		DamageFX				= NormalDamageFX

	End



; *** AUTO RESOLVE DATA *** 

	AutoResolveUnitType = AutoResolveUnit_Hero

	AutoResolveCombatChain = AutoResolve_HeroCombatChain



	AutoResolveBody = AutoResolve_HaldirBody



	AutoResolveArmor

		Armor = AutoResolve_HaldirArmor

	End



	AutoResolveWeapon

		Weapon = AutoResolve_HaldirWeapon

	End



	AutoResolveLeadership = AutoResolve_HaldirBonus





; *** AUDIO Parameters ***

 

	VoiceAttack 							= HaldirVoiceAttack

	VoiceAttackAir							= HaldirVoiceAttack

	VoiceAttackCharge 						= HaldirVoiceAttackCharge

	VoiceAttackMachine 						= HaldirVoiceAttack

	VoiceAttackStructure 					= HaldirVoiceAttackBuilding

	VoiceFear								= HaldirVoiceHelpMe

	VoiceGuard								= HaldirVoiceMove

	VoiceMove 								= HaldirVoiceMove

	VoiceMoveToCamp 						= HaldirVoiceMoveCamp

	VoiceMoveWhileAttacking 				= HaldirVoiceDisengage

	VoicePriority							= 62

	VoiceRetreatToCastle 					= HaldirVoiceRetreat

	VoiceSelect 							= HaldirVoiceSelectMS

	VoiceSelectBattle						  = HaldirVoiceSelectBattle



	SoundImpact								= ImpactHorse



	UnitSpecificSounds

		VoiceEnterUnitElvenTransportShip	= HaldirVoiceMoveShip

		VoiceGarrison						= HaldirVoiceMoveGarrison

		VoiceInitiateCaptureBuilding		= HaldirVoiceCaptureBuilding		; From SpecialPower SpecialAbilityCaptureBuilding

	End



	CrowdResponseKey = ElfHero



	#include "..\..\..\includes\StandardUnitEvaEvents.inc"

	EvaEventDieOwner						= HaldirDie



	Behavior = LargeGroupAudioUpdate ModuleTag_LGAU

		Key	= Humanoid_Male Elf Elf_Male Unit Infantry Hero

	End



	ClientBehavior = AnimationSoundClientBehavior ModuleTag_AnimAudioBehavior

		MaxUpdateRangeCap					= 800

		AnimationSound						= Sound:ArrowDrawBow					Animation:EUHaldir_SKL.EUHaldir_ATA1	Frames:6

		AnimationSound						= Sound:ArrowDrawBow					Animation:EUHaldir_SKL.EUHaldir_ATA2	Frames:18



		AnimationSound						= Sound:SwordShingClean1				Animation:EUHaldir_SKL.EUHaldir_STHA 	Frames:24

		AnimationSound						= Sound:SwordIntoScabbard1				Animation:EUHaldir_SKL.EUHaldir_STHB 	Frames:9

		AnimationSound						= Sound:WeaponSwitchBow					Animation:EUHaldir_SKL.EUHaldir_STHB 	Frames:15



		AnimationSound						= Sound:SwordShingClean1 				Animation:EUHaldir_SKL.EUHaldir_STHC 	Frames:20

		AnimationSound						= Sound:SwordIntoScabbard1				Animation:EUHaldir_SKL.EUHaldir_STHD 	Frames:5

		AnimationSound						= Sound:WeaponSwitchBow 				Animation:EUHaldir_SKL.EUHaldir_STHD 	Frames:8



		AnimationSound						= Sound:SwordShingClean1 				Animation:EUHaldir_SKL.EUHaldir_RUNC 	Frames:14

		AnimationSound						= Sound:SwordIntoScabbard1				Animation:EUHaldir_SKL.EUHaldir_RUNT 	Frames:4

		AnimationSound						= Sound:WeaponSwitchBow 				Animation:EUHaldir_SKL.EUHaldir_RUNT 	Frames:16



		AnimationSound						= Sound:BodyFallSoldier					Animation:EUHaldir_SKL.EUHaldir_LNDA	Frames:9

		AnimationSound						= Sound:BodyFallSoldier					Animation:EUHaldir_SKL.EUHaldir_LNDB	Frames:1



		AnimationSound						= Sound:BodyFallGenericNoArmor			Animation:EUHaldir_SKL.EUHaldir_DIEB 	Frames:82

		AnimationSound						= Sound:BodyFallSoldier					Animation:EUHaldir_SKL.EUHaldir_DIEBV5 	Frames:25

		AnimationSound						= Sound:BodyFallSoldier					Animation:EUHaldir_SKL.EUHaldir_DIESV4 	Frames:26

		AnimationSound						= Sound:BodyFallGenericNoArmor			Animation:EUHaldir_SKL.EUHaldir_DIESV5	Frames:100

	End



;------------------------------------------



	#include "..\..\..\includes\DefaultInvisibilityUpdate.inc"



	Behavior = HitReactionBehavior HitReactionBehaviorModuleTag

		HitReactionLifeTimer1				= 1500

		HitReactionThreshold1				= 400

		FastHitsResetReaction				= Yes

	End



; ------- GOLDEN ARROW --------------------------------------------------------------------------------

	Behavior = UnpauseSpecialPowerUpgrade ModuleTag_HaldirGoldenArrowUnpause

		SpecialPowerTemplate				= SpecialAbilityHaldirGoldenArrow

		TriggeredBy							= Upgrade_HaldirGoldenArrow

	End

	Behavior = SpecialPowerModule ModuleTag_HaldirGoldenArrowSpecialPower

		SpecialPowerTemplate				= SpecialAbilityHaldirGoldenArrow

		StartsPaused						= Yes

		UpdateModuleStartsAttack			= Yes

		InitiateSound						= HaldirVoiceGoldenArrow

	End

	Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_HaldirGoldenArrowWeaponFireUpdate

		SpecialPowerTemplate				= SpecialAbilityHaldirGoldenArrow

		WhichSpecialWeapon					= 1

		UnpackTime							= 600

		PreparationTime						= 1

		PackTime							= 2000

		StartAbilityRange					= HALDIR_BOW_RANGE

		MustFinishAbility					= Yes

		SpecialWeapon						= HaldirGoldenArrow

	End

	Behavior = AutoAbilityBehavior ModuleTag_GoldenArrowAutoAbility

		SpecialAbility						= SpecialAbilityHaldirGoldenArrow

		MaxScanRange						= HALDIR_BOW_RANGE

		Query								= 1 ANY ENEMIES +HERO +MONSTER -STRUCTURE

		Query								= 1 ANY ENEMIES +INFANTRY +CAVALRY -STRUCTURE

	End

	

; *** ENGINEERING Parameters ***



	RadarPriority							= UNIT

	KindOf									= HERO PRELOAD SELECTABLE CAN_CAST_REFLECTIONS INFANTRY PATH_THROUGH_EACH_OTHER SCORE THROWN_OBJECT ARMY_SUMMARY ATTACK_NEEDS_LINE_OF_SIGHT HEAVY_MELEE_HITTER

	CamouflageDetectionMultiplier			= CAMOUFLAGE_DETECTION_DISTANCE_MEDIUM

	PathfindDiameter						= 40.0





	Body = RespawnBody ModuleTag_RespawnBody

		CheerRadius							= EMOTION_CHEER_RADIUS

		MaxHealth							= HALDIR_HEALTH

		PermanentlyKilledByFilter			= NONE

		DodgePercent						= HERO_DODGE_PERCENT

	End

	

	Behavior = RespawnUpdate ModuleTag_RespawnUpdate

		DeathAnim							= DYING

		DeathFX								= FX_HaldirDieToRespawn

		DeathAnimationTime					= 3000

		InitialSpawnFX						= FX_HaldirInitialSpawn

		RespawnAnim							= LEVELED

		RespawnFX							= FX_HaldirRespawn

		RespawnAnimationTime				= 2000

		AutoRespawnAtObjectFilter			= NONE +CASTLE_KEEP

		ButtonImage							= HIHaldir_res



	;RespawnEntries determine the ruleset for how a character can be revived. Some units may automatically respawn, others

	;may require a specific revive action performed on him. You can specify different values for each level... or use Level:Any

		RespawnRules						= AutoSpawn:No Cost:1500 Time:60000 Health:100%

	End



	Behavior = EmotionTrackerUpdate	Module_EmotionTracker

		TauntAndPointDistance				= 200

		TauntAndPointUpdateDelay			= 10000

		PointAt								= ANY +HERO

		AddEmotion			=	Doom_Base

		//	AddEmotion			=   BraceForBeingCrushed_Base

		//	AddEmotion			=	FearIdle_Base

		//	AddEmotion			=	FearBusy_Base

		AddEmotion			=	Point_Base

		AddEmotion			=	Taunt_Base

 		AddEmotion			=	CheerIdle_Base

		AddEmotion			=	CheerBusy_Base

		//	AddEmotion			=	HeroCheerIdle_Base

		//	AddEmotion			=	HeroCheerBusy_Base

		AddEmotion			=	Alert_Base

		AddEmotion			=	CheerForAboutToCrush_Base

	End



	Behavior = AutoHealBehavior ModuleTag_LegolasHealing

		StartsActive						= Yes

		HealingAmount						= HERO_HEAL_AMOUNT

		HealingDelay						= 1000

		StartHealingDelay					= HERO_HEAL_DELAY

		HealOnlyIfNotInCombat				= Yes

	End



	Behavior = AutoHealBehavior ModuleTag_ElvenGiftHealing

		StartsActive				= No

		TriggeredBy					= Upgrade_ElvenGift

		HealingAmount				= ELVEN_GIFT_REGEN_AMOUNT

		HealingDelay				= ELVEN_GIFT_REGEN_DELAY

		StartHealingDelay = HERO_HEAL_DELAY

		HealOnlyIfNotInCombat = Yes

	End

	Behavior = AttributeModifierUpgrade ModuleTag_ElvenGiftBonus

		TriggeredBy = Upgrade_ElvenGift

		AttributeModifier = SpellBookElvenGifts

	End

	

	Behavior = StancesBehavior ModuleTag_StancesBehavior

		StanceTemplate						= Hero

	End



	#include "..\..\..\includes\CaptureBuilding.inc"



	Behavior = AIUpdateInterface ModuleTag_03

		AutoAcquireEnemiesWhenIdle			= Yes ATTACK_BUILDINGS

		MoodAttackCheckRate					= 500

		CanAttackWhileContained				= Yes

		AILuaEventsList						= LegolasFunctions

	End





	Behavior = AutoAbilityBehavior ModuleTag_HaldirAutoAbility

	End



	LocomotorSet

		Locomotor							= HumanLocomotor

		Condition							= SET_NORMAL 

		Speed								= NORMAL_ELVEN_FAST_MEMBER_SPEED

	End



	LocomotorSet

		Locomotor							= HumanWanderLocomotor

		Condition							= SET_WANDER

		Speed								= NORMAL_GOOD_FAST_MEMBER_SPEED

	End



	LocomotorSet

		Locomotor							= HumanPanicLocomotor

		Condition							= SET_PANIC

		Speed								= NORMAL_ELVEN_FAST_MEMBER_SPEED

	End



	LocomotorSet

		Locomotor							= HumanScaredLocomotor

		Condition							= SET_SCARED

		Speed								= NORMAL_ELVEN_FAST_MEMBER_SPEED

	End



	Behavior = PhysicsBehavior ModuleTag_04

		GravityMult							= 1.0

		ShockStandingTime					= 2000

	End

	

	Behavior = SlowDeathBehavior ModuleTag_05

		DeathTypes							= ALL -FADED

		SinkDelay							= 3000

		SinkRate							= 0.5

		DestructionDelay					= 15000

		Sound								= INITIAL HaldirVoiceDie

		DeathFlags							= DEATH_1

	End



	Behavior = SlowDeathBehavior ModuleTag_FadeDeath

		DeathTypes							= NONE +FADED

		FadeDelay							= 0

		FadeTime							= 5000

		DestructionDelay					= 5000

		DeathFlags							= DEATH_2

		FX									= INITIAL FX_UnSummonElvenAllies

	End



	Behavior = SquishCollide ModuleTag_06

	End



	Behavior = BezierProjectileBehavior ModuleTag_08

		FirstHeight							= 25

		SecondHeight						= 25

		FirstPercentIndent					= 30%

		SecondPercentIndent					= 70%

		TumbleRandomly						= Yes

		CrushStyle							= Yes

		DieOnImpact							= Yes

		BounceCount							= 1

		BounceDistance						= 41

		BounceFirstHeight					= 25

		BounceSecondHeight					= 25

		BounceFirstPercentIndent			= 20%

		BounceSecondPercentIndent			= 80%

		GroundHitFX							= FX_ThrownRockGroundHit

		GroundBounceFX						= FX_ThrownRockBounceHit

	End





	Behavior = AttributeModifierAuraUpdate ModuleTag_Leadership

		StartsActive						= No

		BonusName							= GenericHeroLeadership

		TriggeredBy							= Upgrade_HaldirLeadership

		RefreshDelay						= 2000

		Range								= 200

		AntiCategory						= BUFF

		ObjectFilter						= GENERIC_BUFF_RECIPIENT_OBJECT_FILTER

	End



	Behavior = UnpauseSpecialPowerUpgrade ModuleTag_HaldirLeadership

		SpecialPowerTemplate				= SpecialAbilityFakeLeadership

		TriggeredBy							= Upgrade_HaldirLeadership

	End



	Behavior = SpecialPowerModule ModuleTag_HaldirLeadershipUpdate

		SpecialPowerTemplate				= SpecialAbilityFakeLeadership

		UpdateModuleStartsAttack			= No

		StartsPaused						= Yes

	End

	

;///////////////////

; AISpecialPowers

;///////////////////

	

	Behavior = AISpecialPowerUpdate GondorFighterHordeStanceBattle

		CommandButtonName = Command_SetStanceBattle

		SpecialPowerAIType = AI_SPECIAL_POWER_STANCEBATTLE

	End



	Behavior = AISpecialPowerUpdate GondorFighterHordeStanceAggressive

		CommandButtonName = Command_SetStanceAggressive

		SpecialPowerAIType = AI_SPECIAL_POWER_STANCEAGGRESSIVE

	End



	Behavior = AISpecialPowerUpdate GondorFighterHordeHoldGround

		CommandButtonName = Command_SetStanceHoldGround

		SpecialPowerAIType = AI_SPECIAL_POWER_STANCEHOLDGROUND

	End





	Behavior = AISpecialPowerUpdate GoldenArrowAI

		CommandButtonName = Command_HaldirGoldenArrow

		SpecialPowerAIType = AI_SPECIAL_POWER_ENEMY_TYPE_KILLER

		SpecialPowerRadius = 250

	End



	Geometry			= CYLINDER

	GeometryMajorRadius = 8.0	

	GeometryHeight		= 19.2

	GeometryIsSmall		= Yes

	Shadow				= SHADOW_DECAL

	ShadowSizeX			= 19;

	ShadowSizeY			= 19;

	ShadowTexture		= ShadowI;

End
What's wrong??ยง?!

In Topic: Skins <- need help (Solved)

23 December 2009 - 03:35 PM

Anyone? It's a simple question, so I don't understand why no one is answering....