设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2648|回复: 2
打印 上一主题 下一主题

[已经解决] 关于读档界面的存档名称的修改

[复制链接]

Lv1.梦旅人

梦石
0
星屑
70
在线时间
345 小时
注册时间
2011-10-13
帖子
414
跳转到指定楼层
1
发表于 2015-12-1 17:47:52 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 zx903193387 于 2015-12-1 17:51 编辑

就是原本读档界面的存档名称不是叫存档1和存档2么,我想让它叫做“自动存档”和“手动存档”,一共就两个档。存档的数量已经修改好了,但是名字没法解决。

Lv4.逐梦者 (版主)

漾夕☽星化残月☾

梦石
0
星屑
8596
在线时间
3857 小时
注册时间
2015-5-12
帖子
2077

剧作品鉴家

3
发表于 2015-12-2 12:08:46 | 只看该作者
本帖最后由 御曹司 于 2015-12-2 14:03 编辑

呜喵5大大那个方法只能用于默认模式。
如果有其它脚本的话容易产生各种各样奇妙的问题。
其实这个直接改脚本就可以。
非常非常容易改、我这种小白都行
用if句式即可。


位置的话  搜索 name =
找到和存档相关的。
下面是我改造的Declare War的脚本。
饭粒
改造的地方是四行加了“改造处”的地方
如果还想修改存档二、存档三的话、套用相同的句式就行


RUBY 代码复制
  1. =begin #-----------------------------------------------------------------------
  2.  
  3. ●セーブレイアウト【RGSS3 by Declare War】
  4.  
  5. セーブ画面のレイアウトを変更する
  6. (VXのネオメモさんのセーブレイアウトカスタム版 風)
  7.  
  8. 【利用規約】
  9. 著作権明記と利用報告は不要、加工自由、転載と配布は禁止
  10.  
  11. =end #-------------------------------------------------------------------------
  12. module Declare_War
  13.   module Save_Layout
  14.     # 画像の設定(使わないなら""のまま、使うならGraphics/Pictureに入れる)
  15.     Cursor_Picture = ""         # カーソル画像
  16.     Back_Picture   = ""         # 背景画像
  17.  
  18.     # 右のウィンドウの不透明度(0で枠だけ)
  19.     Back_Opacity = 128
  20.  
  21.     # 色の設定
  22.     Cursor = Color.new(196, 224, 255, 196) # カーソル(画像無しのとき使う)
  23.     Base   = Color.new(0, 0, 0)            # ベース色
  24.     Back   = Color.new(0, 0, 128, 64)      # コマンド背景色
  25.     Text   = Color.new(0, 208, 0)          # テキスト文字(マップ名とか)
  26.     Time   = Color.new(255, 255, 255)      # 時間文字色
  27.     Help   = Color.new(0 ,0, 0, 80)        # ヘルプの背景色
  28.   end
  29. end
  30.  
  31. class << DataManager
  32.   #--------------------------------------------------------------------------
  33.   # ● セーブヘッダの作成(alias)
  34.   #--------------------------------------------------------------------------
  35.   alias custom_save_layout_make_save_header make_save_header
  36.   def make_save_header
  37.     header = custom_save_layout_make_save_header
  38.     header[:leader] = $game_party.leader
  39.     header[:map_name] = $game_map.display_name
  40.     header
  41.   end
  42. end
  43.  
  44. class Sprite_Save_Cursol < Sprite
  45.   #--------------------------------------------------------------------------
  46.   # ● インクルード
  47.   #--------------------------------------------------------------------------
  48.   include Declare_War::Save_Layout
  49.   #--------------------------------------------------------------------------
  50.   # ● オブジェクト初期化
  51.   #--------------------------------------------------------------------------
  52.   def initialize
  53.     super(nil)
  54.     self.x = 12
  55.     self.z = 90
  56.     create_cursol
  57.     @count = 0
  58.   end
  59.   #--------------------------------------------------------------------------
  60.   # ● カーソルを作成
  61.   #--------------------------------------------------------------------------
  62.   def create_cursol
  63.     if !Cursor_Picture.empty?
  64.       return self.bitmap = Cache.picture(Cursor_Picture)
  65.     end
  66.     self.bitmap = Bitmap.new(304, 26)
  67.     color = Cursor.dup
  68.     color.alpha = 128
  69.     bitmap.fill_rect(1, 1, 275, 24, color)
  70.     bitmap.fill_rect(0, 1, 1, 24, Cursor)
  71.     bitmap.fill_rect(1, 25, 302, 1, Cursor)
  72.     bitmap.fill_rect(288, 24, 12, 1, Cursor)
  73.     bitmap.fill_rect(287, 23, 10, 1, Cursor)
  74.     bitmap.fill_rect(287, 22,  7, 1, Cursor)
  75.     bitmap.fill_rect(286, 21,  5, 1, Cursor)
  76.     bitmap.fill_rect(286, 20,  2, 1, Cursor)
  77.   end
  78.   #--------------------------------------------------------------------------
  79.   # ● フレーム更新
  80.   #--------------------------------------------------------------------------
  81.   def update
  82.     super
  83.     update_count
  84.   end
  85.   #--------------------------------------------------------------------------
  86.   # ● 点滅の更新
  87.   #--------------------------------------------------------------------------
  88.   def update_count
  89.     if @count < 160
  90.       self.opacity = 255 - @count
  91.       @count += 4
  92.     else
  93.       self.opacity = @count - 64
  94.       @count += 4
  95.     end
  96.     @count = 0 if @count >= 320
  97.   end
  98. end
  99.  
  100. class Window_SaveFile < Window_Base
  101.   #--------------------------------------------------------------------------
  102.   # ● インクルード
  103.   #--------------------------------------------------------------------------
  104.   include Declare_War::Save_Layout
  105.   #--------------------------------------------------------------------------
  106.   # ● 公開インスタンス変数
  107.   #--------------------------------------------------------------------------
  108.   attr_reader :header
  109.   #--------------------------------------------------------------------------
  110.   # ● オブジェクト初期化(overwrite)
  111.   #--------------------------------------------------------------------------
  112.   def initialize(height, index)
  113.     super(0, calc_y(index), 300, window_height)
  114.     self.opacity = 0
  115.     @file_index = index
  116.     refresh
  117.     @selected = false
  118.   end
  119.   #--------------------------------------------------------------------------
  120.   # ● ウィンドウの縦幅
  121.   #--------------------------------------------------------------------------
  122.   def window_height
  123.     26 + standard_padding * 2
  124.   end
  125.   #--------------------------------------------------------------------------
  126.   # ● 計算したY座標を取得
  127.   #--------------------------------------------------------------------------
  128.   def calc_y(index)
  129.     -standard_padding + index * window_height - index * standard_padding * 2
  130.   end
  131.   #--------------------------------------------------------------------------
  132.   # ● ヘッダーをロード
  133.   #--------------------------------------------------------------------------
  134.   def load_header
  135.     @header = DataManager.load_header(@file_index)
  136.   end
  137.   #--------------------------------------------------------------------------
  138.   # ● リフレッシュ
  139.   #--------------------------------------------------------------------------
  140.   def refresh
  141.     contents.clear
  142.     draw_back_graphic
  143.     load_header
  144.     contents.font.size = 20
  145.     draw_file_info
  146.     draw_playtime(72, 0, contents.width - 76, 2)
  147.     draw_mapname(72, 0, 160, 0)
  148.   end
  149.   #--------------------------------------------------------------------------
  150.   # ● 背景の描画
  151.   #--------------------------------------------------------------------------
  152.   def draw_back_graphic
  153.     contents.fill_rect(0,  0, contents.width, 1, Base)
  154.     contents.fill_rect(0, 23, contents.width, 1, Base)
  155.     contents.fill_rect(66, 1, 1, 22, Base)
  156.     color = Base.dup
  157.     color.alpha = 0
  158.     contents.gradient_fill_rect(0, 1, 64, 22, color, Base)
  159.     contents.fill_rect(67, 1, contents.width - 67, 22, Back)
  160.   end
  161.   #--------------------------------------------------------------------------
  162.   # ● ファイル情報の描画
  163.   #--------------------------------------------------------------------------
  164.   def draw_file_info
  165.     change_color(normal_color)
  166.     if @file_index == 0 #  改造处
  167.     name = "自动存档"  # 改造处
  168.     else #  改造处
  169.     name = "File" + " #{@file_index}"
  170.     end #改造处
  171.     draw_text(4, 0, 200, line_height, name)
  172.     @name_width = text_size(name).width
  173.   end
  174.   #--------------------------------------------------------------------------
  175.   # ● プレイ時間の描画(overwrite)
  176.   #--------------------------------------------------------------------------
  177.   def draw_playtime(x, y, width, align)
  178.     return if !@header
  179.     change_color(Time)
  180.     draw_text(x, y, width, line_height, @header[:playtime_s], align)
  181.   end
  182.   #--------------------------------------------------------------------------
  183.   # ● マップ名の描画
  184.   #--------------------------------------------------------------------------
  185.   def draw_mapname(x, y, width, align)
  186.     return if !@header || !@header[:map_name]
  187.     change_color(Text)
  188.     draw_text(x, y, width, line_height, @header[:map_name], align)
  189.   end
  190.   #--------------------------------------------------------------------------
  191.   # ● カーソルの更新(overwrite)
  192.   #--------------------------------------------------------------------------
  193.   def update_cursor
  194.   end
  195. end
  196.  
  197. class Window_Save_Leader < Window_Base
  198.   #--------------------------------------------------------------------------
  199.   # ● インクルード
  200.   #--------------------------------------------------------------------------
  201.   include Declare_War::Save_Layout
  202.   #--------------------------------------------------------------------------
  203.   # ● オブジェクト初期化
  204.   #--------------------------------------------------------------------------
  205.   def initialize(actor)
  206.     super(316, 56, 212, 344)
  207.     self.back_opacity = Back_Opacity
  208.     refresh(actor)
  209.   end
  210.   #--------------------------------------------------------------------------
  211.   # ● リフレッシュ
  212.   #--------------------------------------------------------------------------
  213.   def refresh(actor)
  214.     contents.clear
  215.     draw_leader_info(actor)
  216.   end
  217.   #--------------------------------------------------------------------------
  218.   # ● リーダーの情報を描画
  219.   #--------------------------------------------------------------------------
  220.   def draw_leader_info(actor)
  221.     return if !actor
  222.     draw_actor_battler(actor)
  223.     draw_actor_face(actor, center_x(96), 4)
  224.     draw_actor_simple_status(actor, 0, 98)
  225.     draw_param(actor, 174)
  226.   end
  227.   #--------------------------------------------------------------------------
  228.   # ● 中心を取得
  229.   #--------------------------------------------------------------------------
  230.   def center_x(num)
  231.     (contents.width - num) / 2
  232.   end
  233.   #--------------------------------------------------------------------------
  234.   # ● アクターのバトラーグラフィックの描画
  235.   #--------------------------------------------------------------------------
  236.   def draw_actor_battler(actor)
  237.     draw_battler(actor.battler_name, actor.battler_hue)
  238.   end
  239.   #--------------------------------------------------------------------------
  240.   # ● バトラーグラフィックの描画
  241.   #--------------------------------------------------------------------------
  242.   def draw_battler(battler_name, battler_hue)
  243.     bmp = Cache.battler(battler_name, battler_hue)
  244.     rect   = Rect.new(0, 0, bmp.width, bmp.height)
  245.     x = (contents.width - bmp.width) / 2
  246.     y = contents.height - bmp.height
  247.     contents.blt(x, y, bmp, rect)
  248.   end
  249.   #--------------------------------------------------------------------------
  250.   # ● シンプルなステータスの描画
  251.   #--------------------------------------------------------------------------
  252.   def draw_actor_simple_status(actor, x, y)
  253.     draw_actor_name(actor, x, y)
  254.     draw_actor_level(actor, x+120, y)
  255.     draw_actor_hp(actor, x, y + line_height * 1)
  256.     draw_actor_mp(actor, x, y + line_height * 2)
  257.   end
  258.   #--------------------------------------------------------------------------
  259.   # ● パラメータの描画
  260.   #--------------------------------------------------------------------------
  261.   def draw_param(actor, base_y)
  262.     space = 16
  263.     str_width = contents.width - space
  264.     (2..7).each do |i|
  265.       y = base_y + (i - 2) * line_height
  266.       change_color(system_color)
  267.       draw_text(space / 2, y, str_width, 24, $data_system.terms.params[i])
  268.       change_color(normal_color)
  269.       draw_text(space / 2, y, str_width, 24, actor.param(i).to_s, 2)
  270.     end
  271.   end
  272. end
  273.  
  274. class Window_LineHelp < Window_Base
  275.   #--------------------------------------------------------------------------
  276.   # ● 定数
  277.   #--------------------------------------------------------------------------
  278.   BACK_COLOR = Declare_War::Save_Layout::Help
  279.   #--------------------------------------------------------------------------
  280.   # ● オブジェクト初期化
  281.   #--------------------------------------------------------------------------
  282.   def initialize
  283.     super(-16, 0, 576, 24 + 24)
  284.     self.opacity = 0
  285.   end
  286.   #--------------------------------------------------------------------------
  287.   # ● テキスト設定
  288.   #--------------------------------------------------------------------------
  289.   def set_text(text)
  290.     if text != @text
  291.       contents.clear
  292.       refresh(text)
  293.     end
  294.   end
  295.   #--------------------------------------------------------------------------
  296.   # ● リフレッシュ
  297.   #--------------------------------------------------------------------------
  298.   def refresh(text)
  299.     contents.fill_rect(0, 12, contents.width, 12, BACK_COLOR)
  300.     change_color(normal_color)
  301.     contents.draw_text(20, 0, width - 72, 24, text)
  302.     @text = text
  303.   end
  304. end
  305.  
  306. class Scene_File
  307.   #--------------------------------------------------------------------------
  308.   # ● 定数
  309.   #--------------------------------------------------------------------------
  310.   Back_Picture = Declare_War::Save_Layout::Back_Picture
  311.   #--------------------------------------------------------------------------
  312.   # ● 画面内に表示するセーブファイル数を取得(overwrite)
  313.   #--------------------------------------------------------------------------
  314.   def visible_max
  315.     12
  316.   end
  317.   #--------------------------------------------------------------------------
  318.   # ● ヘルプウィンドウの作成(overwrite)
  319.   #--------------------------------------------------------------------------
  320.   def create_help_window
  321.     @help_window = Window_LineHelp.new
  322.     @help_window.set_text(help_window_text)
  323.   end
  324.   #--------------------------------------------------------------------------
  325.   # ● データウィンドウの作成
  326.   #--------------------------------------------------------------------------
  327.   def create_data_window
  328.     actor = @savefile_windows[index].header[:leader] rescue nil
  329.     @data_window = Window_Save_Leader.new(actor)
  330.   end
  331.   #--------------------------------------------------------------------------
  332.   # ● セーブファイルビューポートの作成(overwrite)
  333.   #--------------------------------------------------------------------------
  334.   def create_savefile_viewport
  335.     @savefile_viewport = Viewport.new
  336.     @savefile_viewport.rect.y = 56
  337.     @savefile_viewport.rect.height = 312
  338.   end
  339.   #--------------------------------------------------------------------------
  340.   # ● 背景の作成(alias)
  341.   #--------------------------------------------------------------------------
  342.   alias custom_save_layout_create_background create_background
  343.   def create_background
  344.     if !Back_Picture.empty?
  345.       @background_sprite = Cache.picture(Back_Picture)
  346.     else
  347.       custom_save_layout_create_background
  348.     end
  349.   end
  350.   #--------------------------------------------------------------------------
  351.   # ● 開始処理(alias)
  352.   #--------------------------------------------------------------------------
  353.   alias custom_save_layout_start start
  354.   def start
  355.     custom_save_layout_start
  356.     create_data_window
  357.     create_cursol
  358.   end
  359.   #--------------------------------------------------------------------------
  360.   # ● カーソルの作成
  361.   #--------------------------------------------------------------------------
  362.   def create_cursol
  363.     @cursol   = Sprite_Save_Cursol.new
  364.     set_cursol_y
  365.   end
  366.   #--------------------------------------------------------------------------
  367.   # ● カーソルの高さ調節
  368.   #--------------------------------------------------------------------------
  369.   def set_cursol_y
  370.     @cursol.y = 55 + (@index - top_index) * 26
  371.   end
  372.   #--------------------------------------------------------------------------
  373.   # ● 終了処理(alias)
  374.   #--------------------------------------------------------------------------
  375.   alias custom_save_layout_terminate terminate
  376.   def terminate
  377.     custom_save_layout_terminate
  378.     @cursol.dispose
  379.   end
  380.   #--------------------------------------------------------------------------
  381.   # ● フレーム更新(alias)
  382.   #--------------------------------------------------------------------------
  383.   alias custom_save_layout_update update
  384.   def update
  385.     custom_save_layout_update
  386.     set_cursol_y
  387.     @cursol.update
  388.   end
  389.   #--------------------------------------------------------------------------
  390.   # ● カーソルの更新(alias)
  391.   #--------------------------------------------------------------------------
  392.   alias custom_save_layout_update_cursor update_cursor
  393.   def update_cursor
  394.     last_index = @index
  395.     custom_save_layout_update_cursor
  396.     data_window_refresh if last_index != @index
  397.   end
  398.   #--------------------------------------------------------------------------
  399.   # ● データウィンドウのリフレッシュ
  400.   #--------------------------------------------------------------------------
  401.   def data_window_refresh
  402.     actor = @savefile_windows[index].header[:leader] rescue nil
  403.     @data_window.refresh(actor)
  404.   end
  405. end

我是真小白~下面是大触们...
@taroxd  @RaidenInfinity @喵呜喵5

点评

原来你真用用了存档脚本啊... 我的担心是对的。。。(喵大大那个方法不能使用与改造过的)  发表于 2015-12-2 13:53
不过你的脚本给了我提示,我已经土法炼钢地把这几行改名字的脚本给插到脸图存档的脚本里面了  发表于 2015-12-2 13:43
这个脚本有个巨大的问题:无法完全显示存档的地图名,只显示两到三个字  发表于 2015-12-2 13:29

评分

参与人数 2星屑 +1 梦石 +1 收起 理由
taroxd + 1 认可答案
RaidenInfinity + 1 渣渣路过

查看全部评分

回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21631
在线时间
9415 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

2
发表于 2015-12-2 09:24:24 | 只看该作者

点评

好吧是被后面的脸图存档脚本复写了……  发表于 2015-12-2 13:42
不知道为什么完全没有效果……我也装了你的脚本的前置脚本,还把它放到最前面了,但是跟没用一样  发表于 2015-12-2 13:23
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-17 06:46

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表