[XP] Drago Save Layout

Started by LiTTleDRAgo, March 14, 2017, 03:32:52 pm

Previous topic - Next topic

LiTTleDRAgo

March 14, 2017, 03:32:52 pm Last Edit: October 08, 2017, 07:24:54 pm by LiTTleDRAgo
Drago Save Layout
Authors: LiTTleDRAgo
Version: 1.05
Type: Custom Save System
Key Term: Title / Save / Load / GameOver Add-on



Introduction

Custom Save Layout with unlimited saves and file management


Features


  • Unlimited saves.

  • File deletion.

  • Animated.




Screenshots

Spoiler: ShowHide




Click to Enlarge



Script

Here



Compatibility

Require Drago - Core Engine v1.55


Credits and Thanks


  • LiTTleDRAgo




Author's Notes

~

LiTTleDRAgo

Update to v1.05

* Fixed screenshot bug in XPA.
* Add save note

Spoiler: ShowHide

Kise

October 09, 2017, 06:30:54 am #2 Last Edit: October 09, 2017, 10:03:28 am by Kise
That was fast! well done. :) It seems like 'go back buttons' still are not working in choice windows. Do you plan on adding that mechanic?

Btw. do you think, that method of getting user input would be more responsive if done like here? - http://forum.chaos-project.com/index.php?topic=6731.0

LiTTleDRAgo

Quote from: Kise on October 09, 2017, 06:30:54 am
That was fast! well done. :) It seems like 'go back buttons' still are not working in choice windows. Do you plan on adding that mechanic?


Ok, cancel button is added.
I just forgot about it.

Quote from: Kise on October 09, 2017, 06:30:54 am
Btw. do you think, that method of getting user input would be more responsive if done like here? - http://forum.chaos-project.com/index.php?topic=6731.0


I didn't have time to design another UI, adjusting to custom input script, etc.
Why creating anew if there are already existing one?

Kise

October 09, 2017, 10:41:19 am #4 Last Edit: October 09, 2017, 10:43:21 am by Kise
Quote from: LiTTleDRAgo on October 09, 2017, 10:27:46 am
Ok, cancel button is added.
I just forgot about it.

Small changes make big difference :)

Quote from: LiTTleDRAgo on October 09, 2017, 10:27:46 am
I didn't have time to design another UI, adjusting to custom input script, etc.
Why creating anew if there are already existing one?


Putting aside visual consistency, it seems faster and doesn't play windows sound when saving name, but that's just a sugestion. :)

One question, where can I increase the font size of save's names? I can't find it in code.

LiTTleDRAgo

Quote from: Kise on October 09, 2017, 10:41:19 am
Putting aside visual consistency, it seems faster and doesn't play windows sound when saving name, but that's just a sugestion. :)


There are no windows sound though, all of the effects are from rpgmaker sound.
At least, in my side is no windows sound at all.

Quote from: Kise on October 09, 2017, 10:41:19 am
One question, where can I increase the font size of save's names? I can't find it in code.


Must be hardcoded, try changing it around here:


  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh(create = false)
    clear_window
    @width  = 0
    @height = 0
    @drawed = []
    create && (@index = 0)
    commands.each_with_index do |c,i|
      @window_commands[i] = s = Window_Help.new
      #<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<   Add here
      s.draw_text_ex(4,0,c[:name])
      @width = @width.clamp(s.text_size(c[:name]).width+32, Graphics.width)
      @height = s.contents.height
    end

Kise

Quote from: LiTTleDRAgo on October 09, 2017, 12:28:38 pm
There are no windows sound though, all of the effects are from rpgmaker sound.
At least, in my side is no windows sound at all.


I know there're no Windows sound in code. But still, for some reason confirmation of the save's name plays same sound as changing the volume in windows. I have no clue why.

Quote from: LiTTleDRAgo on October 09, 2017, 12:28:38 pm
Must be hardcoded, try changing it around here:


  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh(create = false)
    clear_window
    @width  = 0
    @height = 0
    @drawed = []
    create && (@index = 0)
    commands.each_with_index do |c,i|
      @window_commands[i] = s = Window_Help.new
      #<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<   Add here
      s.draw_text_ex(4,0,c[:name])
      @width = @width.clamp(s.text_size(c[:name]).width+32, Graphics.width)
      @height = s.contents.height
    end


I tried 's.contents.font.size = 22' but it didn't change anything.

LiTTleDRAgo

Quote from: Kise on October 09, 2017, 02:50:27 pm
I tried 's.contents.font.size = 22' but it didn't change anything.


Oh, sorry. It seems because of this:


  #--------------------------------------------------------------------------
  # * Create Command
  #--------------------------------------------------------------------------
  def create_command(size)
    command = []
    size.times do |i|
      if (exist = FileTest.exist?(filename = make_filename(i)))
        content = read_content(filename)
        text = content[:game_system].instance_variable_get(:@notesavedata)
      else
        text = "---------------No Data---------------"
      end
      savedata = {} 
      savedata[:name]      = "\\}File #{i+1}: #{text}" # <<<<<<
      savedata[:condition] = exist if self.is_a?(Scene_Load)
      command.push(savedata)
    end
    command
  end


In other words it's the same as show text code (vxace)

\} = reduce font size.
\{ = increase font size.

You can also use

\c[1] = changing color.

However, this will not work and will turn out weird:

\n[1], \v[1], ... (everything that reads game data).
\b, \i (bold and italic also not work.

Note that with the double quote string, you must add one \ to each special characters.
(ex: \\c\[1\])