Modderecke > Coding

Tar-Palantirs Coding-Fragen Thread

<< < (2/5) > >>

Tar-Palantir:
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

--- Code: ---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

--- Ende Code ---
specialpower.ini

--- Code: ---
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

--- Ende Code ---

Eintrag in der ini des Helden, der die Fähigkeit wirken soll:

--- Code: ---    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

--- Ende Code ---
objectcreationlist.ini

--- Code: ---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

--- Ende Code ---

Ich wäre echt dankbar, wenn jemand eine Lösung wüsste, denn so langsam nervt mich dieser eigentlich einfache Summon doch gewaltig.

Ealendril der Dunkle:
Der Fehler liegt nicht in der Fähigkeit, sondern in dem gerufenen Object NumenorAmandil_Summoned. Die Fehlermeldung ist typisch in dieser Hinsicht.

Tar-Palantir:
Aber ich habe dieses Object mit dem Worldbuilder setzen können und damit ganz normal spielen können, alles hat mit dem gestimmt, auch die Fähigkeiten gehen alle. Weißt du wo dort der Fehler liegen könnte?

Ealendril der Dunkle:
Anhand deiner eingeschränkten Codes, kann es nur an dem Object liegen.

FG15:
Ich glaube nicht, dass es am Object liegt, wenn der Fehler schon passiert, bevor man den Cursor platziert hat.

Was mir an den Codes auffällt ist, dass du im CommandButton einen RadiusCursor benutzt, aber in der SpecialPower keinen
    RadiusCursorRadius
festlegst.

Probier es mal damit.

MfG FG15

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln