Ergebnis 1 bis 9 von 9

Thema: RPG Maker XP Im Kampf soll die Auswahl "Verteidigung" etwas ändern

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    @Soul96: Dann werde ich es beizeiten bei ihm anfragen. Danke für den Hinweis.

    @sorata08: Die benannte Passage habe ich ersetzt und hier hat sich wohl ein Fehler eingeschlichen. Beim Verteidigen wird das Programm mit einer Fehlermeldung beendet. Diese bezieht sich auf die erste Zeile vom umgewandelten Part auf die actor_id das diese nicht richtig definiert sei. Ich kann bei Bedarf die Fehlermeldung hier rein stellen, ansonsten würde ich die vorgeschlagene Person einfach anfragen.

  2. #2
    Die Unterscheidung von actor_id und enemy_id gibt es afair erst ab dem RMVX, im XP wird sowohl für Helden- als auch Gegnercharaktere id benutzt.


    Die Zeile müsste also etwa so aussehen können:
    Code:
    if recover_sp > 0 and @active_battler.is_a?(Game_Actor) and 
    (($game_variables[12] == 1 and @active_battler.id == 1) or
    ($game_variables[13] == 1 and @active_battler.id == 2))

    Oder alternativ wenn du einen passiven Skill verwendest:
    Code:
    if recover_sp > 0 and @active_battler.is_a?(Game_Actor) and 
    @active_battler.skill_learn?(17)
    Wirkt stattdessen bei allen Helden die den passenden Skill (hier beispielsweise den mit ID 17) erlernt haben.

    Geändert von ETeCe (12.07.2012 um 02:41 Uhr)

  3. #3
    Ah stimmt, irgendwie verpeilt...
    "actor_id" kommt aber durchaus als lokale Variable in den Methoden von Game_Actor und anderen Skripten vor, aber da hatte ich wohl zuviel von den Klassen erwartet... ^^;

    MfG Sorata

  4. #4
    Wenn man eure beiden Angaben mit einander kombiniert, funktioniert es so wie gewünscht. Sowohl die Version mit den Variablen als auch die über den Skill.

    Das ganze sieht jetzt so aus:

    Code:
    #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
    #_/ ?Défense Regénération - KGC_GuardRecover? Translated by Ojiro
    #_/----------------------------------------------------------------------------
    #_/ Regénération des HP/SP d'un personnage qui se défend.
    #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
    
    class Scene_Battle
    # HP Regen %
    RECOVER_HP_RATE = 0
    # SP Regen %
    RECOVER_SP_RATE = 5
    end
    
    #???????????????????????????????????????
    
    #==================================================================
    # ¦ Scene_Battle (4)
    #------------------------------------------------------------------------------
    # C'est la scène qui procède l'image de combat
    #==================================================================
    
    class Scene_Battle
    #--------------------------------------------------------------------------
    # ? Compilation des résultats d'actions basiques
    #--------------------------------------------------------------------------
    alias make_basic_action_result_KGC_GuardRecover make_basic_action_result
    def make_basic_action_result
    # Exécute le processus d'origine
    make_basic_action_result_KGC_GuardRecover
    
    # Quand une autre action est effectué que défense
    return if @active_battler.current_action.basic != 1
    # Procédé de calcul de la regénération
    recover_hp = @active_battler.maxhp * RECOVER_HP_RATE / 100
    recover_sp = @active_battler.maxsp * RECOVER_SP_RATE / 100
    if recover_hp > 0
    @active_battler.damage = -recover_hp
    @active_battler.hp += recover_hp
    end
    if recover_sp > 0 and @active_battler.is_a?(Game_Actor) and (($game_variables[40] == 1 and @active_battler.id == 1) or ($game_variables[115] == 1 and @active_battler.id == 2) or ($game_variables[140] == 1 and @active_battler.id == 3))
    @active_battler.damage = "#{$data_system.words.sp}+ #{recover_sp}"
    @active_battler.sp += recover_sp
    end
    # Indique la valeur de regénération
    @target_battlers.push(@active_battler)
    end
    end
    Danke an euch beide dafür.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •