Modding Union
Modderecke => Coding => Thema gestartet von: elladan05 am 22. Apr 2009, 18:09
-
hallo,
immer wenn ich einen neuen modell condition state anlegen möchte erscheint dieser fehler
(http://img3.imagebanana.com/img/47n5x3i8/thumb/ERROR.jpg) (http://img3.imagebanana.com/view/47n5x3i8/ERROR.jpg)
ModelConditionState = USER_2
Model = NONE
End
ModelConditionState = USER_3
Model = MUWchKng_SKN
End
-
Also laut fehlermessage hast du den Conditionstat an der Falschen stelle angelegt, ein Condition State muss immer in dem "Draw" module liegen, außerdem darfst du den DefaultConditionState nicht löschen, solltest du das getan haben
Greez ;-)
-
aber er liegt im "Draw = W3DScriptedModuleTag_01"
-
Hast du den DefaultModelConditionSta te auch noch drinne?
Poste doch bitte deine INI, dann ist das ganze leichter zu fixen...
-
also hiwe sind die art parameter der ini :
;------------------------------------------------------------------------------
; aka Witch King, WitchKingMordor, MordorFellBeast
Object MordorWitchKing ;BALANCE WitchKing
; *** ART Parameters ***
; SelectPortrait for Heros is portrait behind skill buttons. HP = HeroPortrait.
SelectPortrait = UP_WK
; ButtonImage for Heros is button image on Hero Select UI to select hero. HI = HeroIcon or HeroImage.
ButtonImage = HIWitchKing
DescriptionStrategic = CONTROLBAR:LW_ToolTip_WitchKing
Draw = W3DScriptedModelDraw ModuleTag_01
OkToChangeModelColor = Yes
GlowEnabled = Yes
;GlowEmissive = No
;ModelConditionState = USER_2
; Model = NONE
; End
;
; ModelConditionState = USER_3
; Model = MUWchKng_SKN
; End
DefaultModelConditionState
Model = MUWchKng_SKN
Skeleton = MUWchKng_SKL
End
IdleAnimationState
StateName = Idle
Animation
AnimationName = MUWchKng_IDLC
AnimationPriority = 1
AnimationBlendTime = 15
AnimationMode = ONCE
End
Animation
AnimationName = MUWchKng_IDLD
AnimationPriority = 1
AnimationBlendTime = 15
AnimationMode = ONCE
End
Animation
AnimationName = MUWchKng_IDLE
AnimationPriority = 1
AnimationBlendTime = 15
AnimationMode = ONCE
End
Flags = RESTART_ANIM_WHEN_COMPLETE
BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "STATE_Selected" then CurDrawableSetTransitionAnimState("TRANS_Selected_to_Idle") end
EndScript
End
AnimationState = DYING BURNINGDEATH
Animation = DIEA
AnimationName = MUWchKng_DIEB
AnimationMode = ONCE
AnimationBlendTime = 10
End
End
AnimationState = DYING
Animation = DIEA
AnimationName = MUWchKng_DIEB
AnimationMode = ONCE
End
End
AnimationState = BURNINGDEATH
Animation = DIEA
AnimationName = MUWchKng_MFDA
AnimationMode = LOOP
Distance = 60
End
End
AnimationState = FREEFALL
Animation
AnimationName = MUWchKng_FLYA
AnimationMode = LOOP
End
Flags = RANDOMSTART
End
AnimationState = STUNNED_FLAILING
Animation
AnimationName = MUWchKng_FLYA
AnimationMode = LOOP
AnimationSpeedFactorRange = 0.4 0.6
End
Flags = RANDOMSTART
End
AnimationState = STUNNED_STANDING_UP
Animation
AnimationName = MUWchKng_GTPB
AnimationMode = ONCE
End
End
AnimationState = STUNNED
Animation = LNDA
AnimationName = MUWchKng_LNDB
AnimationMode = ONCE
End
End
AnimationState = FIRING_OR_PREATTACK_A
;Animation = ATA1 // removing sword anims now that he does a big meta impact attack
; AnimationName = MUWchKng_ATKA
; AnimationMode = ONCE
; UseWeaponTiming = Yes
;End
;Animation = ATB1
; AnimationName = MUWchKng_ATKB
; AnimationMode = ONCE
; UseWeaponTiming = Yes
;End
Animation = ATA1
AnimationName = MUWchKng_ATKC
AnimationMode = ONCE
UseWeaponTiming = Yes
End
Animation = ATB1
AnimationName = MUWchKng_ATKD
AnimationMode = ONCE
UseWeaponTiming = Yes
End
End
AnimationState = MOVING FIRING_OR_PREATTACK_A
Animation = RUNB
AnimationName = MUWchKng_ATRA
AnimationMode = LOOP
End
Flags = RESTART_ANIM_WHEN_COMPLETE
End
; AnimationState = BETWEEN_FIRING_SHOTS_A
; Animation = ALERT_1
; AnimationName = MUWchKng_IDLC
; AnimationMode = LOOP
; AnimationPriority = 10
; End
; End
AnimationState = MOVING
Animation = RUNB
AnimationName = MUWchKng_RUNB
AnimationMode = LOOP
End
Flags = RANDOMSTART
End
AnimationState = LEVELED
Animation = Hit_Level_1_a
AnimationName = MUWchKng_LVLA
AnimationMode = ONCE
End
End
; --------- Click and Hit Reactions ------------
AnimationState = HIT_REACTION HIT_LEVEL_1
Animation = Hit_Level_1_a
AnimationName = MUWchKng_HITA
AnimationMode = ONCE
End
End
AnimationState = EMOTION_ALERT
Animation = ALERT_1
AnimationName = MUWchKng_IDLC
AnimationMode = ONCE
End
Flags = RESTART_ANIM_WHEN_COMPLETE ; acts like an idle animation & keeps running the animations.
End
AnimationState = RAISING_FLAG
Animation
AnimationName = MUWchKng_CHRA
AnimationMode = LOOP
End
End
AnimationState = SELECTED
Animation
AnimationName = MUWchKng_ATNB
AnimationMode = LOOP
End
BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "STATE_Idle" then CurDrawableSetTransitionAnimState("TRANS_Idle_to_Selected") end
EndScript
End
TransitionState = TRANS_IdleToSelected
Animation = ATNA
AnimationName = MUWchKng_ATNA
AnimationMode = ONCE
End
End
TransitionState = TRANS_SelectedToIdle
Animation = ATNA
AnimationName = MUWchKng_ATNC
AnimationMode = ONCE
End
Flags = START_FRAME_LAST
End
; TransitionState = TRANS_SelectedToMace
; Animation = ATNA
; AnimationName = MUWchKng_STHA
; AnimationMode = ONCE
; AnimationSpeedFactorRange = 0.7 1.3
; End
; BeginScript
; CurDrawableShowSubObject("MACE")
; EndScript
; End
; TransitionState = TRANS_MaceToSelected
; Animation = ATNA
; AnimationName = MUWchKng_STHB
; AnimationMode = ONCE
; AnimationSpeedFactorRange = 0.7 1.3
; End
; BeginScript
; CurDrawableShowSubObject("MACE")
; EndScript
; End
; AnimationState = WAR_CHANT
; Animation = Chant
; AnimationName = MUWchKng_CHRA
; AnimationMode = LOOP
; End
; BeginScript
; CurDrawableHideSubObject("MACE")
; EndScript
; End
End
-
der default muss der erste sein, die anderen drunter ;)
-
Hmm stimmt, das game sucht von oben nach unten, da es einen Default erwartet finded aber zuerst den User2 und denkt es gäbe keinen Default...
So mal generell von mir als hinweis:
Du solltest deinen Code IMMER logisch einsortieren, das ist nicht immer notwendig, aber oftmals verursacht es leider fehler wenn man es nicht tut, außerdem ist es unübersichtlicher
WEnn du in einem Team arbeitest wäre es außerdem sinnvoll die Abstände vom Rand so zu machen wie sie gehören, und einen Kommentar mit ; oder // unter die Conditionstat/den Code zu schreiben, es ist einfacher für andere sich dann in deinem Code zurecht zu finden, und für dich falls du in mal in 2 Monaten nicht mehr auf anhieb zuordnen kannst...
-
ok vielen dank es funktioniert ;)