Ergebnis 1 bis 5 von 5

Thema: [RMXP] Skriptänderung für das Kampfsystem gesucht/Skript für Farben in Itembeschr.

  1. #1

    [RMXP] Skriptänderung für das Kampfsystem gesucht/Skript für Farben in Itembeschr.

    Hallo, ich würde gerne das standart Kampfsystem des RPG Makers XP modifizieren: Am Anfang des Kampfes sollen die Befehle "Attack" und "Defend" nicht verfügbar sein, sodass man nur zwischen "Skill" und "Item" wählen kann. Leider habe ich keine Ahnung von Ruby, daher würde ich gerne wissen, ob diese Modifikationen durch Skriptänderungen möglich sind (und wenn ja, wie).

    Zusätzlich suche ich nach einer Skripterweiterung, mit der ich einzelne Worte in der Itembeschreibung einfärben kann. Durch einges herumsuchen habe ich eines gefunden, jedoch kann dies nur den gesamten TeXt einfärben. Kennt da jemand vielleicht eines?

    Soweit meine Fragen,
    Lg, Lagbeard

  2. #2
    Meinst du mit "Am Anfang des Kampfes" den Anfang einer Runde oder tatsächlich den Anfang des kompletten Kampfes - also, dass die Befehle in der ersten Runde nicht verfügbar sein sollen, in späteren aber schon?

  3. #3
    Sie sollen generell nicht verfügbar sein. Ich finde die Differenzierung zwischen Angriff/Verteidigen/Skill nicht flüssig. Ich würde es daher begrüßen, wenn ich nur Skills ermögliche und diesen dann die Funktionen zuweise, die ich haben möchte. Ich möchte sie daher auch nicht ausschalten oder eingrauen - Sie sollen verschwinden.

  4. #4
    Okay, das ist dann leichter machbar.

    Im Scriptslot Scene_Battle1 wird ziemlich am Anfag der Methode main das Fenster erstellt.
    Code:
    s1 = $data_system.words.attack
    s2 = $data_system.words.skill
    s3 = $data_system.words.guard
    s4 = $data_system.words.item
    @actor_command_window = Window_Command.new(160, [s1, s2, s3, s4])
    @actor_command_window.y = 160
    @actor_command_window.back_opacity = 160
    @actor_command_window.active = false
    @actor_command_window.visible = false
    Hier müsstest du die entsprechenden Elemente für "Attack" und "Defend" entfernen => @actor_command_window = Window_Command.new(160, [s2, s4])

    Dann geht es weiter mit den Aktionen, die für die entsprechenden Befehle ausgeführt werden. Das passiert in der Methode update_phase3_basic_command in Scene_Battle3
    Code:
    # Branch by actor command window cursor position
    case @actor_command_window.index
    when 0  # attack
      # Play decision SE
      $game_system.se_play($data_system.decision_se)
      # Set action
      @active_battler.current_action.kind = 0
      @active_battler.current_action.basic = 0
      # Start enemy selection
      start_enemy_select
    when 1  # skill
      # Play decision SE
      $game_system.se_play($data_system.decision_se)
      # Set action
      @active_battler.current_action.kind = 1
      # Start skill selection
      start_skill_select
    when 2  # guard
      # Play decision SE
      $game_system.se_play($data_system.decision_se)
      # Set action
      @active_battler.current_action.kind = 0
      @active_battler.current_action.basic = 1
      # Go to command input for next actor
      phase3_next_actor
    when 3  # item
      # Play decision SE
      $game_system.se_play($data_system.decision_se)
      # Set action
      @active_battler.current_action.kind = 2
      # Start item selection
      start_item_select
    end
    Der XP verwendet hierfür die ID, die der Befehl innerhalb des Auswahlfensters hat (beginnend bei 0). Da wir nur noch "Skill" und "Item" haben, sind das jetzt die Einträge mit den IDs 0 und 1. Wir müssen das case-Statement also entsprechend umbauen:
    Code:
    # Branch by actor command window cursor position
    case @actor_command_window.index
    when 0  # skill
      # Play decision SE
      $game_system.se_play($data_system.decision_se)
      # Set action
      @active_battler.current_action.kind = 1
      # Start skill selection
      start_skill_select
    when 1  # item
      # Play decision SE
      $game_system.se_play($data_system.decision_se)
      # Set action
      @active_battler.current_action.kind = 2
      # Start item selection
      start_item_select
    end

  5. #5
    Hui, alles klar, Danke

Stichworte

Berechtigungen

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