Ergebnis 1 bis 12 von 12

Thema: Soul´s Problemsammel-Thread...

  1. #1

    Soul´s Problemsammel-Thread...

    So, damit ich nicht 100 Threads aufmachen muss, hier mal ein Großer^^

    Also, ich werde hier meine Probleme zum XP oder zu Ruby posten und hoffe auf Hilfe

    Also fangen wir gleich an^^

    Ich habe gerade ein Problem. Wie kann ich die MPs nach rechts verschieben?
    Die Geld, Zeit und Fortschritts-Anzeige war nciht schwer, aber die Mps kann ich irgendwie nicht verschieben.
    Geht das überhaupt?

    Hier noch ein Bild mit dem Problem was ich habe:

  2. #2
    Kannst du ein "MP" vielleicht näher definieren?

  3. #3
    MP = Menüpunkt
    MPs = Menüpunkte

    Ich möchte die MP anzeige nach Rechts verschieben, krieg es aber nicht hin :/

  4. #4
    Ich gehe davon aus, dass du das normale Menü des RPG-Maker XP verwendest.
    In dem Fall solltest du in der "Scene_Menu" in der Funktion "main" irgendwo die Erstellung eines Command-Fensters sehen.
    Dieses Fenster sollte in der Variable "@command_window" gespeichert sein.
    Alles was du tun must ist die X-Koordinate dieses Fensters zu verändern, zum Beispiel wie folgt:
    Code:
    @command_window.x = 640 - @command_window.width

  5. #5
    Gibts nciht, zumindestens find ich den da nicht :/

    Code:
    #==============================================================================
    # ** Scene_Menu
    #------------------------------------------------------------------------------
    #  This class performs menu screen processing.
    #==============================================================================
    
    class Scene_Menu
      #--------------------------------------------------------------------------
      # * Object Initialization
      #     menu_index : command cursor's initial position
      #--------------------------------------------------------------------------
      def initialize(menu_index = 0)
        @menu_index = menu_index
      end
      #--------------------------------------------------------------------------
      # * Main Processing
      #--------------------------------------------------------------------------
      def main
        # Make command window
        s1 = $data_system.words.item
        s2 = $data_system.words.skill
        s3 = $data_system.words.equip
        s4 = "Status"
        s5 = "Speichern"
        s6 = "Beenden"
        @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])
        @command_window.index = @menu_index
        # If number of party members is 0
        if $game_party.actors.size == 0
          # Disable items, skills, equipment, and status
          @command_window.disable_item(0)
          @command_window.disable_item(1)
          @command_window.disable_item(2)
          @command_window.disable_item(3)
        end
        # If save is forbidden
        if $game_system.save_disabled
          # Disable save
          @command_window.disable_item(4)
        end
        # Make play time window
        @playtime_window = Window_PlayTime.new
        @playtime_window.x = 480
        @playtime_window.y = 224
        # Make steps window
        @steps_window = Window_Steps.new
        @steps_window.x = 480
        @steps_window.y = 320
        # Make gold window
        @gold_window = Window_Gold.new
        @gold_window.x = 480
        @gold_window.y = 416
        # Make status window
        @status_window = Window_MenuStatus.new
        @status_window.x = 0
        @status_window.y = 0
        # Execute transition
        Graphics.transition
        # Main loop
        loop do
          # Update game screen
          Graphics.update
          # Update input information
          Input.update
          # Frame update
          update
          # Abort loop if screen is changed
          if $scene != self
            break
          end
        end
        # Prepare for transition
        Graphics.freeze
        # Dispose of windows
        @command_window.dispose
        @playtime_window.dispose
        @steps_window.dispose
        @gold_window.dispose
        @status_window.dispose
      end
      #--------------------------------------------------------------------------
      # * Frame Update
      #--------------------------------------------------------------------------
      def update
        # Update windows
        @command_window.update
        @playtime_window.update
        @steps_window.update
        @gold_window.update
        @status_window.update
        # If command window is active: call update_command
        if @command_window.active
          update_command
          return
        end
        # If status window is active: call update_status
        if @status_window.active
          update_status
          return
        end
      end
      #--------------------------------------------------------------------------
      # * Frame Update (when command window is active)
      #--------------------------------------------------------------------------
      def update_command
        # If B button was pressed
        if Input.trigger?(Input::B)
          # Play cancel SE
          $game_system.se_play($data_system.cancel_se)
          # Switch to map screen
          $scene = Scene_Map.new
          return
        end
        # If C button was pressed
        if Input.trigger?(Input::C)
          # If command other than save or end game, and party members = 0
          if $game_party.actors.size == 0 and @command_window.index < 4
            # Play buzzer SE
            $game_system.se_play($data_system.buzzer_se)
            return
          end
          # Branch by command window cursor position
          case @command_window.index
          when 0  # item
            # Play decision SE
            $game_system.se_play($data_system.decision_se)
            # Switch to item screen
            $scene = Scene_Item.new
          when 1  # skill
            # Play decision SE
            $game_system.se_play($data_system.decision_se)
            # Make status window active
            @command_window.active = false
            @status_window.active = true
            @status_window.index = 0
          when 2  # equipment
            # Play decision SE
            $game_system.se_play($data_system.decision_se)
            # Make status window active
            @command_window.active = false
            @status_window.active = true
            @status_window.index = 0
          when 3  # status
            # Play decision SE
            $game_system.se_play($data_system.decision_se)
            # Make status window active
            @command_window.active = false
            @status_window.active = true
            @status_window.index = 0
          when 4  # save
            # If saving is forbidden
            if $game_system.save_disabled
              # Play buzzer SE
              $game_system.se_play($data_system.buzzer_se)
              return
            end
            # Play decision SE
            $game_system.se_play($data_system.decision_se)
            # Switch to save screen
            $scene = Scene_Save.new
          when 5  # end game
            # Play decision SE
            $game_system.se_play($data_system.decision_se)
            # Switch to end game screen
            $scene = Scene_End.new
          end
          return
        end
      end
      #--------------------------------------------------------------------------
      # * Frame Update (when status window is active)
      #--------------------------------------------------------------------------
      def update_status
        # If B button was pressed
        if Input.trigger?(Input::B)
          # Play cancel SE
          $game_system.se_play($data_system.cancel_se)
          # Make command window active
          @command_window.active = true
          @status_window.active = false
          @status_window.index = -1
          return
        end
        # If C button was pressed
        if Input.trigger?(Input::C)
          # Branch by command window cursor position
          case @command_window.index
          when 1  # skill
            # If this actor's action limit is 2 or more
            if $game_party.actors[@status_window.index].restriction >= 2
              # Play buzzer SE
              $game_system.se_play($data_system.buzzer_se)
              return
            end
            # Play decision SE
            $game_system.se_play($data_system.decision_se)
            # Switch to skill screen
            $scene = Scene_Skill.new(@status_window.index)
          when 2  # equipment
            # Play decision SE
            $game_system.se_play($data_system.decision_se)
            # Switch to equipment screen
            $scene = Scene_Equip.new(@status_window.index)
          when 3  # status
            # Play decision SE
            $game_system.se_play($data_system.decision_se)
            # Switch to status screen
            $scene = Scene_Status.new(@status_window.index)
          end
          return
        end
      end
    end

  6. #6
    Ich sehe es schon.
    Direkt in der achten Zeile der Main-Funktion.

  7. #7
    Das macht aber nur den Cursor lang ziehen :/
    Das hatte ich ja auch schon probiert :/

  8. #8
    Es sollte den Cursor überhaupt nicht beeinflussen wenn du die X-Koordinate setzt.
    Darf ich den von dir veränderten Code einmal sehen bei welchem lediglich der Cursor verändert wird?

    Ich habe es gerade selbst getestet und es funktioniert einwandfrei.

    Geändert von Cornix (05.07.2012 um 19:32 Uhr)

  9. #9
    Die 8Zeile von main ist doch das:
    Code:
    @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])
    Und wenn ich das erhöhe, wird nur der Cursor in die Länger gezogen.
    Oder meintest du jetzt was anderes? Sry, bin relativ neu im Gebeit Ruby :/

  10. #10
    Eigentlich solltest du in der zehnten Zeile, also nachdem das Fenster in der achten Zeile erstellt worden ist, lediglich folgenden Code einfügen welchen ich oben bereits beschrieben habe:
    Code:
    @command_window.x = 640 - @command_window.width

  11. #11
    Achso, deshalb hab ich das nicht gefunden xD

    Ja, okay danke

  12. #12
    So, nun hab ich ein Problem bei dem ich hilfe gebrauchen kann :/

    Also ich möchte LEs durch Pictures bzw. einem Pixture anzeigen lassen. Dazu hab ich mir das Skriopt welches ich im 2k3 benutzt habe kopiert und XP kompatibel gemacht. Nun noch das Skript von KD geholt, welches es erlaubt Bidler zu fixieren.

    So weit so gut. Nur hab ich jetzt ein Problem. Wenn ich ohne den Skript-Befehl "picture_move_with_map(Picture ID)" das event mit dem Skript starte, ist das Pic an der richtigen Stelle, aber bewegt sich halt mit dem Char mit :/
    Mach ich den Skript-Befehl "picture_move_with_map(Picture ID)" in das Event einbauen, ist das Pic nicht mehr an der Richtigen stelle :/

    Hier mal 4 Bilder und das Skript von KD natürlich auch^^) die verdeutlichen sollen, was ich meine:









    EDIT:
    Hat sich erledigt

    Geändert von MrSerji (09.07.2012 um 03:17 Uhr)

Berechtigungen

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