Jump to content


Photo

Skins <- need help (Solved)


  • Please log in to reply
7 replies to this topic

#1 Zarmoz

Zarmoz
  • Members
  • 51 posts
  • Location:Bodø, Norway
  •  Mapper & Coder

Posted 22 December 2009 - 10:06 PM

How would I put my edited euhaldir skin on him? I know something about Replace texture (?) euhaldir 0 euhaldirm (my edit) Or something. And do I need the assetbuilder for this? (Im using the -mod command)

Edited by Zarmoz, 23 December 2009 - 07:42 PM.

Posted Image

#2 Guest_Guest_Zarmoz_*_*

Guest_Guest_Zarmoz_*_*
  • Guests

Posted 23 December 2009 - 12:07 PM

*Bump*

#3 Zarmoz

Zarmoz
  • Members
  • 51 posts
  • Location:Bodø, Norway
  •  Mapper & Coder

Posted 23 December 2009 - 03:35 PM

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

#4 Ridder Geel

Ridder Geel

    Master Yelloh

  • T3A Staff
  • 10,852 posts
  • Location:The Netherlands (AKA: Holland)
  • Projects:RC Mod + SEE + RTS Engine
  •  The Dangerous T3A Team Chamber Member
  • Division:BFME
  • Job:T3A Staff

Posted 23 December 2009 - 06:13 PM

Yes you need to make an asset.dat :p
And the code u need to use is:
Draw = W3DScriptedModelDraw ModuleTag_DRAW
	OkToChangeModelColor = Yes
	StaticModelLODMode = yes; Will append M or L to the skin name depending on GameLOD

	ExtraPublicBone = arrow
	ExtraPublicBone = PASSENGERBONE
		
	 DependencySharedModelFlags = TURN_LEFT_HIGH_SPEED TURN_RIGHT_HIGH_SPEED MOVING ACCELERATE DECELERATE TURN_LEFT TURN_RIGHT ATTACKING BACKING_UP

		RandomTexture = gufaramir_rc.tga 0 gufaramir.tga
		RandomTexture = gufrmirshield_rc.tga 0 gufrmirshield.tga

;;====================== MODELS ================================================================
		DefaultModelConditionState
			Model			   = GUFaramir_RC;;GUFaramir_SKN
			WeaponLaunchBone	= PRIMARY arrow
		End

; --------- On Horseback ------------
		ModelConditionState		= MOUNTED
			Model			   = GUFrmrHrs_SKN
			WeaponLaunchBone	= PRIMARY PASSENGERBONE
		End

;;================== ANIMATIONS =================================================================
	.............

This piece does the trick:
RandomTexture = gufaramir_rc.tga 0 gufaramir.tga
Ridder Geel

#5 Zarmoz

Zarmoz
  • Members
  • 51 posts
  • Location:Bodø, Norway
  •  Mapper & Coder

Posted 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??§?!
Posted Image

#6 TroDuS

TroDuS

    Modding Legend

  • Members
  • 443 posts
  • Location:Rivendell
  •  ambitious Modder (:

Posted 23 December 2009 - 07:04 PM

You probably want to do this one: http://www.the3rdage...tem-328?addview

#7 Zarmoz

Zarmoz
  • Members
  • 51 posts
  • Location:Bodø, Norway
  •  Mapper & Coder

Posted 23 December 2009 - 07:25 PM

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

#8 Zarmoz

Zarmoz
  • Members
  • 51 posts
  • Location:Bodø, Norway
  •  Mapper & Coder

Posted 23 December 2009 - 07:40 PM

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




2 user(s) are reading this topic

0 members, 2 guests, 0 anonymous users