• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

Help & Request Thread

Status
Not open for further replies.

~Azura

Alright, purple is good.
512
Posts
18
Years
    • Seen Jun 21, 2012
    @Shiny Umbreon: here it goes, any changes you want, just ask for.

    Code:
    # 18:37 4/22/2007
    #================================================================
    #GAME_SYSTEM
    #================================================================
    class Game_System
      attr_accessor :save_slot
      alias azura_gamesystem_initialize initialize
      def initialize
        azura_gamesystem_initialize
        @save_slot = nil
      end
    end
    #================================================================
    #END CLASS
    #================================================================
    
    #================================================================
    #WINDOW_SAVEFILE
    #================================================================
    class Window_SaveFile
      def initialize(file_index, filename)
        super(0, 64 + file_index % 4 * 104, 640, 104)
        self.contents = Bitmap.new(width - 32, height - 32)
        @file_index = file_index
        @filename = "Save#{@file_index + 1}.rxdata"
        @time_stamp = Time.at(0)
        @file_exist = FileTest.exist?(@filename)
        if @file_exist
          file = File.open(@filename, "r")
          @time_stamp = file.mtime
          @characters = Marshal.load(file)
          @frame_count = Marshal.load(file)
          @game_system = Marshal.load(file)
          @game_switches = Marshal.load(file)
          @game_variables = Marshal.load(file)
          @total_sec = @frame_count / Graphics.frame_rate
          file.close
        end
        refresh
        @selected = false
        if @file_index != $game_system.save_slot and $game_system.save_slot != nil
          self.opacity = 120
        end
      end
    end
    #================================================================
    #END CLASS
    #================================================================
    
    #================================================================
    #SCENE_SAVE
    #================================================================
    class Scene_Save
      #==============================================================
      #UPDATE
      #==============================================================
      def update
        # Update windows
        @help_window.update
        for i in @savefile_windows
          i.update
        end
        # If C button was pressed
        if Input.trigger?(Input::C)
          if $game_system.save_slot == nil or @file_index == $game_system.save_slot
            # Call method: on_decision (defined by the subclasses)
            $game_system.save_slot = @file_index
            on_decision(make_filename(@file_index))
            $game_temp.last_file_index = @file_index
            return
          else
            # Play buzzer SE
            $game_system.se_play($data_system.buzzer_se)
            return
          end
        end
        # If B button was pressed
        if Input.trigger?(Input::B)
          # Call method: on_cancel (defined by the subclasses)
          on_cancel
          return
        end
        # If the down directional button was pressed
        if Input.repeat?(Input::DOWN)
          # If the down directional button pressed down is not a repeat,
          # or cursor position is more in front than 3
          if Input.trigger?(Input::DOWN) or @file_index < 3
            # Play cursor SE
            $game_system.se_play($data_system.cursor_se)
            # Move cursor down
            @savefile_windows[@file_index].selected = false
            @file_index = (@file_index + 1) % 4
            @savefile_windows[@file_index].selected = true
            return
          end
        end
        # If the up directional button was pressed
        if Input.repeat?(Input::UP)
          # If the up directional button pressed down is not a repeat、
          # or cursor position is more in back than 0
          if Input.trigger?(Input::UP) or @file_index > 0
            # Play cursor SE
            $game_system.se_play($data_system.cursor_se)
            # Move cursor up
            @savefile_windows[@file_index].selected = false
            @file_index = (@file_index + 3) % 4
            @savefile_windows[@file_index].selected = true
            return
          end
        end
      end
    end
    #================================================================
    #END CLASS
    #================================================================

    I think it does what you asked for, if not, just tell me, ok? Place it above main and it should be ready to go.

    ~Azura.
     

    Shiny Umbreon

    光るブラッキー
    3,657
    Posts
    19
    Years
  • @Shiny Umbreon: here it goes, any changes you want, just ask for.

    Code:
    # 18:37 4/22/2007
    #================================================================
    #GAME_SYSTEM
    #================================================================
    class Game_System
      attr_accessor :save_slot
      alias azura_gamesystem_initialize initialize
      def initialize
        azura_gamesystem_initialize
        @save_slot = nil
      end
    end
    #================================================================
    #END CLASS
    #================================================================
    
    #================================================================
    #WINDOW_SAVEFILE
    #================================================================
    class Window_SaveFile
      def initialize(file_index, filename)
        super(0, 64 + file_index % 4 * 104, 640, 104)
        self.contents = Bitmap.new(width - 32, height - 32)
        @file_index = file_index
        @filename = "Save#{@file_index + 1}.rxdata"
        @time_stamp = Time.at(0)
        @file_exist = FileTest.exist?(@filename)
        if @file_exist
          file = File.open(@filename, "r")
          @time_stamp = file.mtime
          @characters = Marshal.load(file)
          @frame_count = Marshal.load(file)
          @game_system = Marshal.load(file)
          @game_switches = Marshal.load(file)
          @game_variables = Marshal.load(file)
          @total_sec = @frame_count / Graphics.frame_rate
          file.close
        end
        refresh
        @selected = false
        if @file_index != $game_system.save_slot and $game_system.save_slot != nil
          self.opacity = 120
        end
      end
    end
    #================================================================
    #END CLASS
    #================================================================
    
    #================================================================
    #SCENE_SAVE
    #================================================================
    class Scene_Save
      #==============================================================
      #UPDATE
      #==============================================================
      def update
        # Update windows
        @help_window.update
        for i in @savefile_windows
          i.update
        end
        # If C button was pressed
        if Input.trigger?(Input::C)
          if $game_system.save_slot == nil or @file_index == $game_system.save_slot
            # Call method: on_decision (defined by the subclasses)
            $game_system.save_slot = @file_index
            on_decision(make_filename(@file_index))
            $game_temp.last_file_index = @file_index
            return
          else
            # Play buzzer SE
            $game_system.se_play($data_system.buzzer_se)
            return
          end
        end
        # If B button was pressed
        if Input.trigger?(Input::B)
          # Call method: on_cancel (defined by the subclasses)
          on_cancel
          return
        end
        # If the down directional button was pressed
        if Input.repeat?(Input::DOWN)
          # If the down directional button pressed down is not a repeat,
          # or cursor position is more in front than 3
          if Input.trigger?(Input::DOWN) or @file_index < 3
            # Play cursor SE
            $game_system.se_play($data_system.cursor_se)
            # Move cursor down
            @savefile_windows[@file_index].selected = false
            @file_index = (@file_index + 1) % 4
            @savefile_windows[@file_index].selected = true
            return
          end
        end
        # If the up directional button was pressed
        if Input.repeat?(Input::UP)
          # If the up directional button pressed down is not a repeat、
          # or cursor position is more in back than 0
          if Input.trigger?(Input::UP) or @file_index > 0
            # Play cursor SE
            $game_system.se_play($data_system.cursor_se)
            # Move cursor up
            @savefile_windows[@file_index].selected = false
            @file_index = (@file_index + 3) % 4
            @savefile_windows[@file_index].selected = true
            return
          end
        end
      end
    end
    #================================================================
    #END CLASS
    #================================================================

    I think it does what you asked for, if not, just tell me, ok? Place it above main and it should be ready to go.

    ~Azura.

    Thanks again Azura. The main idea is okay, and it works fine, but there are some problems:
    1) There is no "File #" Text or information about the saved game (Heroes, Date Saved) as there was. It would be difficult to recognize saved games.
    2) When you go back to the title and load files, the ones that were restricted in the last game are still dark.

    I suppose you can fix those things.
     

    ~Azura

    Alright, purple is good.
    512
    Posts
    18
    Years
    • Seen Jun 21, 2012
    Hmm, sorry but that doesn't happen to me at all...

    Help & Request Thread
    Help & Request Thread

    Maybe some of your scripts are causing incompatibility. If that's the case, I won't be able to help you. Try the script in a fresh project, put it right above main.

    Another thing that may be causing this issue is the non-legal version you may be using.

    ~Azura.
     

    Shiny Umbreon

    光るブラッキー
    3,657
    Posts
    19
    Years
  • Hmm, sorry but that doesn't happen to me at all...

    Help & Request Thread
    Help & Request Thread

    Maybe some of your scripts are causing incompatibility. If that's the case, I won't be able to help you. Try the script in a fresh project, put it right above main.

    Another thing that may be causing this issue is the non-legal version you may be using.

    ~Azura.

    The dark thing problem when Loading is okay in a new project. I might be able to fix it. The only script I'm using right now is the one you made for the intro. (I just added the Load Data thing on top and the BGM at the beginning of the intro.) Maybe if you reset the opacity of all files during the Scene_Intro script? I can't do that. I only know very basic script editing :(

    I opened a project and saved and it was fine, then put your script and it's the same thing again. It's something like this:
     
    Last edited:

    ~Azura

    Alright, purple is good.
    512
    Posts
    18
    Years
    • Seen Jun 21, 2012
    Weird, it works for me. I won't be able to do anything if I can't really see the error.

    Are you using a legal version? Does it work on a fresh project (no saved games, etc)?
     

    Shiny Umbreon

    光るブラッキー
    3,657
    Posts
    19
    Years
  • Yeah, I meant to say the font.

    In Main, line 10, it says: $defaultfonttype = "Tahoma". Just change Tahoma to another font.

    He is not using a legal version. Look at the text at the top of his screen and compare it to yours.

    So, I'll see what I can do about that.


    A hard request: In the saved files, above the characters, there is some space. Is it possible to put 8 pictures above them. For each one, there will be a variable. If the variable is 0, it will be Picture 0 (Empty). If it's 1, Picture 1, and so on until Picture 4. It will help to determine the game's progress.
     
    Last edited:

    ~Azura

    Alright, purple is good.
    512
    Posts
    18
    Years
    • Seen Jun 21, 2012
    Yes, it can be done. However, I won't be able to help you if the scripts don't work on illegal versions.
     

    Shiny Umbreon

    光るブラッキー
    3,657
    Posts
    19
    Years
  • Yes, it can be done. However, I won't be able to help you if the scripts don't work on illegal versions.

    It's OK. I already said I'll try to get the solution soon. At least for now, I can try the script in the trial version.

    It would be something like this:

    Help & Request Thread

    The green and pink squares are supposed to be the eight pictures in their real size. They are each 27x26, for reference.
     
    Last edited:

    ~Azura

    Alright, purple is good.
    512
    Posts
    18
    Years
    • Seen Jun 21, 2012
    First of all, you'd need the systems for Pokégear and such done. Do you have them?
     
    Status
    Not open for further replies.
    Back
    Top