赞 | 1 |
VIP | 220 |
好人卡 | 25 |
积分 | 7 |
经验 | 51477 |
最后登录 | 2013-1-12 |
在线时间 | 943 小时 |
Lv2.观梦者 花开堪折直须折
- 梦石
- 0
- 星屑
- 681
- 在线时间
- 943 小时
- 注册时间
- 2010-7-17
- 帖子
- 4963
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 冰舞蝶恋 于 2010-10-11 21:02 编辑
不敢原创发布,因为自己只是稍微改了下坐标,主要靠小幽大的纠正脚本……XD若有雷同,说明见鬼(去死……)……该脚本唯一好处就是,增加或减少选项时可以像普通菜单那样更改,就不必像图片菜单、图标菜单那样再去加一大堆东西,还算比较美观吧= .=……反正吾是看晕了……没有针对他人哈,莫动怒。
唔,脚本先发了:- #==============================================================================
- =begin
- 【VX囧版菜单】
- 主脚本:小幽的马甲
- 其他:冰舞蝶恋
- 详见提问区此帖:http://rpg.blue/forum.php?mod=viewthread&tid=158048&page=1&extra=#pid1543583
- 中间好空的说……角色状态好挤的说……(小柯之意)而且还令人忍无可忍地去掉了职业描绘……
- 努力挑自己的毛病ing……
- 所以,请PIA飞脚本白痴冰舞蝶恋的囧版菜单……
- 如有冒犯各位大大,请联系QQ877684540
- 对该脚本有不满意之处,请联系本人修改坐标……
- =end
- #==============================================================================
- class Scene_Menu < Scene_Base
- #--------------------------------------------------------------------------
- # ● 初始化对像
- # menu_index : 命令窗口光标初始位置
- #--------------------------------------------------------------------------
- def initialize(menu_index = 0)
- @menu_index = menu_index
- end
- #--------------------------------------------------------------------------
- # ● 开始处理
- #--------------------------------------------------------------------------
- def start
- super
- create_menu_background
- @status_window = Window_MenuStatus.new(0, 248)
- @gold_window = Window_Gold.new(385, 0)
- create_command_window
- end
- #--------------------------------------------------------------------------
- # ● 结束处理
- #--------------------------------------------------------------------------
- def terminate
- super
- dispose_menu_background
- @command_window.dispose
- @gold_window.dispose
- @status_window.dispose
- end
- #--------------------------------------------------------------------------
- # ● 更新画面
- #--------------------------------------------------------------------------
- def update
- super
- update_menu_background
- @command_window.update
- @gold_window.update
- @status_window.update
- if @command_window.active
- update_command_selection
- elsif @status_window.active
- update_actor_selection
- end
- end
- #--------------------------------------------------------------------------
- # ● 生成命令窗口
- #--------------------------------------------------------------------------
- def create_command_window
- s1 = "物品"
- s2 = "法术"
- s3 = "装备"
- s4 = "状态"
- s5 = "存储"
- s6 = "退出"
- @command_window = Window_Command.new(80, [s1, s2, s3, s4, s5, s6])
- @command_window.index = @menu_index
- if $game_party.members.size == 0 # 如果队伍为空
- @command_window.draw_item(0, false) # 无效化物品选项
- @command_window.draw_item(1, false) # 无效化技能选项
- @command_window.draw_item(2, false) # 无效化装备选项
- @command_window.draw_item(3, false) # 无效化状态选项
- end
- if $game_system.save_disabled # 如果禁止存档
- @command_window.draw_item(4, false) # 无效化存档选项
- end
- end
- #--------------------------------------------------------------------------
- # ● 更新命令窗口
- #--------------------------------------------------------------------------
- def update_command_selection
- if Input.trigger?(Input::B)
- Sound.play_cancel
- $scene = Scene_Map.new
- elsif Input.trigger?(Input::C)
- if $game_party.members.size == 0 and @command_window.index < 4
- Sound.play_buzzer
- return
- elsif $game_system.save_disabled and @command_window.index == 4
- Sound.play_buzzer
- return
- end
- Sound.play_decision
- case @command_window.index
- when 0 # 物品
- $scene = Scene_Item.new
- when 1,2,3 # 技能、装备、状态
- start_actor_selection
- when 4 # 存档
- $scene = Scene_File.new(true, false, false)
- when 6 # 结束游戏
- $scene = Scene_End.new
- end
- end
- end
- #--------------------------------------------------------------------------
- # ● 角色选择开始
- #--------------------------------------------------------------------------
- def start_actor_selection
- @command_window.active = false
- @status_window.active = true
- if $game_party.last_actor_index < @status_window.item_max
- @status_window.index = $game_party.last_actor_index
- else
- @status_window.index = 0
- end
- end
- #--------------------------------------------------------------------------
- # ● 角色选择结束
- #--------------------------------------------------------------------------
- def end_actor_selection
- @command_window.active = true
- @status_window.active = false
- @status_window.index = -1
- end
- #--------------------------------------------------------------------------
- # ● 角色选择更新
- #--------------------------------------------------------------------------
- def update_actor_selection
- if Input.trigger?(Input::B)
- Sound.play_cancel
- end_actor_selection
- elsif Input.trigger?(Input::C)
- $game_party.last_actor_index = @status_window.index
- Sound.play_decision
- case @command_window.index
- when 1 # 技能
- $scene = Scene_Skill.new(@status_window.index)
- when 2 # 装备
- $scene = Scene_Equip.new(@status_window.index)
- when 3 # 状态
- $scene = Scene_Status.new(@status_window.index)
- end
- end
- end
- end
- #==============================================================================
- # ■ Window_MenuStatus
- #==============================================================================
- class Window_MenuStatus < Window_Selectable
- #--------------------------------------------------------------------------
- # ● 初始化对像
- # x : 窗口 X 座标
- # y : 窗口 Y 座标
- #--------------------------------------------------------------------------
- def initialize(x, y)
- super(x, y, 544, 168)
- refresh
- self.active = false
- self.index = -1
- @column_max = $game_party.members.size
- @spacing = 0
- end
- #--------------------------------------------------------------------------
- # ● 刷新
- #--------------------------------------------------------------------------
- def refresh
- self.contents.clear
- @item_max = $game_party.members.size
- @column_max = $game_party.members.size
- for actor in $game_party.members
- x = actor.index * 128
- y = 28
- draw_actor_face(actor, x, 2, 96)
- draw_actor_name(actor, x, y - 28)
- draw_actor_level(actor, x, y + 32)
- draw_actor_hp(actor, x, y + WLH * 1 + 28)
- draw_actor_mp(actor, x , y + WLH * 2 + 28)
- end
- end
- #--------------------------------------------------------------------------
- # ● 更新光标
- #--------------------------------------------------------------------------
- def update_cursor
- if @index < 0 # 无光标
- self.cursor_rect.empty
- elsif @index < @item_max # 一般
- self.cursor_rect.set(@index * 128, 0, 128, 128)
- elsif @index >= 100 # 使用本身
- self.cursor_rect.set((@index - 100) * 128, 0, 128, 128)
- else # 全体
- self.cursor_rect.set(0, 0, @item_max * 128, 128)
- end
- end
- end
复制代码 然后是截图:
喏,最后是范例:
|
评分
-
查看全部评分
|