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

Project1

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

[已经解决] 对话回顾,对话中存档

 关闭 [复制链接]

Lv2.观梦者

(?????)

梦石
0
星屑
736
在线时间
1327 小时
注册时间
2011-7-18
帖子
3184

贵宾

跳转到指定楼层
1
发表于 2011-9-9 03:58:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 各种压力的猫君 于 2011-9-11 18:27 编辑

①对话中按键(不需要全键盘,系统默认有的就可以了),当前画面冻结并模糊(就是平时弹出菜单的效果,但是要求把当前的对话窗口也冻进去)弹出新窗口(附加SE)显示最近的对话(对话与对话之间空两行左右,窗口支持 ↑ ↓ 和 Page Up/Down 滚动),按取消键关闭窗口之后恢复画面(窗口不能重新打开)

②对话中按键(同上),画面要求同上,弹出存档窗口,恢复要求同上。
另外请把存档时显示的对话内容写入到一个全局变量里 -w-,这样方便我写到读档界面上。
读取存档时要求直接从存档时的那句对话开始。

使用了对话框加强脚本(猛击我看原脚本 自己改了 - - 另外我在原脚本50L的问题可以的话也请帮我解决一下 =V=),因此请尽量说明具体改法,如果是范例的话请尽量把修改的部分标示清晰。

完美实现可加卡 =W=

注:kissye的范例(猛击我看原帖)看过了 = = 脚本写得太混乱根本读取不能啊

【已解决存档,回顾未解决 - - 】

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
42869
在线时间
7625 小时
注册时间
2009-7-6
帖子
13506

开拓者贵宾

2
发表于 2011-9-9 07:34:37 | 只看该作者
loop,不解释
proc2string继续不解释

点评

太深奥了读不懂 =A= bb  发表于 2011-9-10 02:54

评分

参与人数 1星屑 +12 收起 理由
各种压力的猫君 + 12 \小黄鸡最高/

查看全部评分

RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
554 小时
注册时间
2007-6-25
帖子
1188
3
发表于 2011-9-11 09:06:28 | 只看该作者
回复

使用道具 举报

Lv2.观梦者

(?????)

梦石
0
星屑
736
在线时间
1327 小时
注册时间
2011-7-18
帖子
3184

贵宾

4
 楼主| 发表于 2011-9-11 16:13:05 | 只看该作者
本帖最后由 各种压力的猫君 于 2011-9-11 18:25 编辑
SOU 发表于 2011-9-11 09:06
http://rpg.blue/thread-200886-2-1.html
\小黄鸡最高/


不知道是不是我用法的错误……我也在input_pause添加了呼出菜单,但是只有没有存档的时候有效。如果已经有存档的时候呼出菜单并选择存档菜单,RGSS2 PLAYER就会停止工作……

难道是我自己改的存档菜单的问题么 = =

貌似看RP的 = = 有时候会停止工作有时候不会……嘛暂且算是解决了吧
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
554 小时
注册时间
2007-6-25
帖子
1188
5
发表于 2011-9-11 17:11:13 | 只看该作者
抱歉,我是脚本盲,因为太长所以不怎么搞得明白m(_ _)m
  1. def input_pause
  2.        if  Input.trigger?(Input::Y)
  3.      $scene = Scene_Menu2.new
  4.      end
  5.     if Input.trigger?(Input::B) or Input.trigger?(Input::C)
  6.       self.pause = false
  7.       if @text != nil and not @text.empty?
  8.         new_page if @line_count >= MAX_LINE
  9.       else
  10.         terminate_message
  11.       end
  12.     end
  13.   end
复制代码
这是我的input_pause方法,直接覆盖window_messages了
  1. #==============================================================================
  2. # ■ Scene_Menu
  3. #------------------------------------------------------------------------------
  4. #  メニュー画面の処理を行うクラスです。
  5. #==============================================================================

  6. class Scene_Menu2 < Scene_Base
  7.   #--------------------------------------------------------------------------
  8.   # ● オブジェクト初期化
  9.   #     menu_index : コマンドのカーソル初期位置
  10.   #--------------------------------------------------------------------------
  11.   def initialize(menu_index = 0)
  12.     @menu_index = menu_index
  13.   end
  14.   #--------------------------------------------------------------------------
  15.   # ● 開始処理
  16.   #--------------------------------------------------------------------------
  17.   def start
  18.     super
  19.   create_menu_background
  20.     create_command_window
  21.   end
  22.   #--------------------------------------------------------------------------
  23.   # ● 終了処理
  24.   #--------------------------------------------------------------------------
  25.   def terminate
  26.     super
  27.     dispose_menu_background
  28.     @command_window.dispose

  29.   end
  30.   #--------------------------------------------------------------------------
  31.   # ● フレーム更新
  32.   #--------------------------------------------------------------------------
  33.   def update
  34.     super
  35.     update_menu_background
  36.     @command_window.update

  37.     if @command_window.active
  38.       update_command_selection
  39.     end
  40.   end
  41.   #--------------------------------------------------------------------------
  42.   # ● コマンドウィンドウの作成
  43.   #--------------------------------------------------------------------------
  44.   def create_command_window
  45.     s1 = "储存进度"
  46.     s2 = "读取进度"
  47.     s3 = Vocab::game_end
  48.     @command_window = Window_Command.new(160, [s1, s2, s3])
  49.      @command_window.x = 300
  50.       @command_window.y = 200
  51.     @command_window.index = @menu_index
  52.     if $game_system.save_disabled             # セーブ禁止の場合
  53.       @command_window.draw_item(4, false)     # セーブを無効化
  54.     end
  55.   end
  56.   #--------------------------------------------------------------------------
  57.   # ● コマンド選択の更新
  58.   #--------------------------------------------------------------------------
  59.   def update_command_selection
  60.     if Input.trigger?(Input::B)
  61.       Sound.play_cancel
  62.       $scene = Scene_Map.new  
  63.     elsif Input.trigger?(Input::C)
  64.       if $game_party.members.size == 0 and @command_window.index < 4
  65.         Sound.play_buzzer
  66.         return
  67.       elsif $game_system.save_disabled and @command_window.index == 4
  68.         Sound.play_buzzer
  69.         return
  70.       end
  71.       Sound.play_decision
  72.       case @command_window.index

  73.       when 0     # アイテム
  74.         $scene = Scene_File2.new(true, false, false)
  75.       when 1 # スキル、装備、ステータス
  76.         $scene = Scene_File2.new(false, true, false)
  77.       when 2      # ゲーム終了
  78.         $scene = Scene_End2.new
  79.       end
  80.     end
  81.   end
  82.   #--------------------------------------------------------------------------
  83.   # ● アクター選択の開始
  84.   #--------------------------------------------------------------------------
  85.   def start_actor_selection
  86.     @command_window.active = false
  87.     @status_window.active = true
  88.     if $game_party.last_actor_index < @status_window.item_max
  89.       @status_window.index = $game_party.last_actor_index
  90.     else
  91.       @status_window.index = 0
  92.     end
  93.   end
  94.   #--------------------------------------------------------------------------
  95.   # ● アクター選択の終了
  96.   #--------------------------------------------------------------------------
  97.   def end_actor_selection
  98.     @command_window.active = true
  99.     @status_window.active = false
  100.     @status_window.index = -1
  101.   end
  102. end
复制代码
这是之前的方法中调用的menu2,因为不懂所以没怎么改,只是修改了窗口大小、坐标和调用的东西(抱歉我不知道怎么称呼那些$scene =)
至于file2,我只修改了关闭窗口时的返回菜单,没有别的改动了。

m(_ _)m非常抱歉我不懂脚本,如果能够提供帮助就再好不过了
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-10 03:26

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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