Ich habe schon wieder ein recht großes Problem, bei dem ich den Grund nicht kenne.
Ich habe einem Helden die Fähigkeit gegeben, einen anderen Helden zu rufen. Ich habe die Codes alle 4 mal überprüft (und das jetzt auch mit etwas Zeitabstand), aber leider keine Ursache finden können.
Das Problem besteht darin, dass das ganze Spiel abstürzt, wenn ich auf den Button klicke, durch den ich den Helden rufen möchte. Und zwar stürzt es nicht mit einer Fehlermeldung ab, sondern der Bildschirm friert ein, der Sound läuft weiter und ich kann es nur noch über den TaskManager schließen. Es handelt sich auch nicht um einen zufälligen Fehler, ich habe den Bug 3 mal reproduzieren können.
Hier sind die Codes, die ich für diese Fähigkeit erstellt habe:
CommandButton.ini
CommandButton Command_SpecialAbilityAmandilSummon
Command = SPECIAL_POWER
SpecialPower = SpecialAbilityAmandil
TextLabel = CONTROLBAR:Amandil_Summon
ButtonImage = HSLeibwächter
Options = NEED_TARGET_POS NEED_UPGRADE ;NONPRESSABLE
NeededUpgrade = Upgrade_Level_2
RadiusCursorType = LothBruchtalElbenRadiusCursor
CursorName = Bombard
InvalidCursorName = GenericInvalid
ButtonBorderType = ACTION
DescriptLabel = CONTROLBAR:ToolTipAmandil_Summon
InPalantir = Yes
End
specialpower.ini
SpecialPower SpecialAbilityAmandil
Enum = SPECIAL_SPELL_BOOK_MEN_OF_DALE_ALLIES ; Why do you need an enum for an ini defined class? ; Answer: Because it's used by SpecialAbilityUpdate so it can do different things based on the "type" of special ability.
ReloadTime = 80000
End
Eintrag in der ini des Helden, der die Fähigkeit wirken soll:
Behavior = UnpauseSpecialPowerUpgrade ModuleTag_BoromirOsgiliathEnablerRing
SpecialPowerTemplate = SpecialAbilityAmandil
TriggeredBy = Upgrade_Level_2
End
Behavior = OCLSpecialPower ModuleTag_OCLBoromirOsgiliathSpecialPowerRing
SpecialPowerTemplate = SpecialAbilityAmandil
OCL = OCL_SpawnAmandil
CreateLocation = CREATE_AT_LOCATION
TriggerFX = FX_BoromirOsgiliathSummon
StartsPaused = No
; SetModelCondition = ModelConditionState:USER_2
; SetModelConditionTime = 8.1
; DisableDuringAnimDuration = Yes
End
objectcreationlist.ini
ObjectCreationList OCL_SpawnAmandil
CreateObject
ObjectNames = NumenorAmandil_Summoned
UseJustBuiltFlag = Yes
Count = 1
FadeIn = Yes
FadeTime = 8000
IgnoreCommandPointLimit = Yes
Disposition = ABSOLUTE_ANGLE
DispositionAngle = 90
Offset = X:0 Y:60 Z:0
End
End
Ich wäre echt dankbar, wenn jemand eine Lösung wüsste, denn so langsam nervt mich dieser eigentlich einfache Summon doch gewaltig.