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

Project1

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

[讨论] VX-囧版菜单

[复制链接]

Lv2.观梦者

花开堪折直须折

梦石
0
星屑
681
在线时间
943 小时
注册时间
2010-7-17
帖子
4963

贵宾

跳转到指定楼层
1
发表于 2010-10-7 17:10:22 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 冰舞蝶恋 于 2010-10-11 21:02 编辑

不敢原创发布,因为自己只是稍微改了下坐标,主要靠小幽大的纠正脚本……XD若有雷同,说明见鬼(去死……)……该脚本唯一好处就是,增加或减少选项时可以像普通菜单那样更改,就不必像图片菜单、图标菜单那样再去加一大堆东西,还算比较美观吧= .=……反正吾是看晕了……没有针对他人哈,莫动怒。
唔,脚本先发了:
  1. #==============================================================================
  2. =begin
  3. 【VX囧版菜单】
  4. 主脚本:小幽的马甲
  5. 其他:冰舞蝶恋
  6. 详见提问区此帖:http://rpg.blue/forum.php?mod=viewthread&tid=158048&page=1&extra=#pid1543583
  7. 中间好空的说……角色状态好挤的说……(小柯之意)而且还令人忍无可忍地去掉了职业描绘……
  8. 努力挑自己的毛病ing……
  9. 所以,请PIA飞脚本白痴冰舞蝶恋的囧版菜单……
  10. 如有冒犯各位大大,请联系QQ877684540
  11. 对该脚本有不满意之处,请联系本人修改坐标……
  12. =end
  13. #==============================================================================
  14. class Scene_Menu < Scene_Base
  15.   #--------------------------------------------------------------------------
  16.   # ● 初始化对像
  17.   #     menu_index : 命令窗口光标初始位置
  18.   #--------------------------------------------------------------------------
  19.   def initialize(menu_index = 0)
  20.     @menu_index = menu_index
  21.   end
  22.   #--------------------------------------------------------------------------
  23.   # ● 开始处理
  24.   #--------------------------------------------------------------------------
  25.   def start
  26.     super
  27.     create_menu_background
  28.     @status_window = Window_MenuStatus.new(0, 248)
  29.     @gold_window = Window_Gold.new(385, 0)
  30.     create_command_window
  31.   end
  32.   #--------------------------------------------------------------------------
  33.   # ● 结束处理
  34.   #--------------------------------------------------------------------------
  35.   def terminate
  36.     super
  37.     dispose_menu_background
  38.     @command_window.dispose
  39.     @gold_window.dispose
  40.     @status_window.dispose
  41.   end
  42.   #--------------------------------------------------------------------------
  43.   # ● 更新画面
  44.   #--------------------------------------------------------------------------
  45.   def update
  46.     super
  47.     update_menu_background
  48.     @command_window.update
  49.     @gold_window.update
  50.     @status_window.update
  51.     if @command_window.active
  52.       update_command_selection
  53.     elsif @status_window.active
  54.       update_actor_selection
  55.     end
  56.   end
  57.   #--------------------------------------------------------------------------
  58.   # ● 生成命令窗口
  59.   #--------------------------------------------------------------------------
  60.   def create_command_window
  61.     s1 = "物品"
  62.     s2 = "法术"
  63.     s3 = "装备"
  64.     s4 = "状态"
  65.     s5 = "存储"
  66.     s6 = "退出"
  67.     @command_window = Window_Command.new(80, [s1, s2, s3, s4, s5, s6])
  68.     @command_window.index = @menu_index
  69.     if $game_party.members.size == 0          # 如果队伍为空
  70.       @command_window.draw_item(0, false)     # 无效化物品选项
  71.       @command_window.draw_item(1, false)     # 无效化技能选项
  72.       @command_window.draw_item(2, false)     # 无效化装备选项
  73.       @command_window.draw_item(3, false)     # 无效化状态选项
  74.     end
  75.     if $game_system.save_disabled             # 如果禁止存档
  76.       @command_window.draw_item(4, false)     # 无效化存档选项
  77.     end
  78.   end
  79.   #--------------------------------------------------------------------------
  80.   # ● 更新命令窗口
  81.   #--------------------------------------------------------------------------
  82.   def update_command_selection
  83.     if Input.trigger?(Input::B)
  84.       Sound.play_cancel
  85.       $scene = Scene_Map.new
  86.     elsif Input.trigger?(Input::C)
  87.       if $game_party.members.size == 0 and @command_window.index < 4
  88.         Sound.play_buzzer
  89.         return
  90.       elsif $game_system.save_disabled and @command_window.index == 4
  91.         Sound.play_buzzer
  92.         return
  93.       end
  94.       Sound.play_decision
  95.       case @command_window.index
  96.       when 0      # 物品
  97.         $scene = Scene_Item.new
  98.       when 1,2,3  # 技能、装备、状态
  99.         start_actor_selection
  100.       when 4      # 存档
  101.         $scene = Scene_File.new(true, false, false)
  102.       when 6      # 结束游戏
  103.         $scene = Scene_End.new
  104.       end
  105.     end
  106.   end
  107.   #--------------------------------------------------------------------------
  108.   # ● 角色选择开始
  109.   #--------------------------------------------------------------------------
  110.   def start_actor_selection
  111.     @command_window.active = false
  112.     @status_window.active = true
  113.     if $game_party.last_actor_index < @status_window.item_max
  114.       @status_window.index = $game_party.last_actor_index
  115.     else
  116.       @status_window.index = 0
  117.     end
  118.   end
  119.   #--------------------------------------------------------------------------
  120.   # ● 角色选择结束
  121.   #--------------------------------------------------------------------------
  122.   def end_actor_selection
  123.     @command_window.active = true
  124.     @status_window.active = false
  125.     @status_window.index = -1
  126.   end
  127.   #--------------------------------------------------------------------------
  128.   # ● 角色选择更新
  129.   #--------------------------------------------------------------------------
  130.   def update_actor_selection
  131.     if Input.trigger?(Input::B)
  132.       Sound.play_cancel
  133.       end_actor_selection
  134.     elsif Input.trigger?(Input::C)
  135.       $game_party.last_actor_index = @status_window.index
  136.       Sound.play_decision
  137.       case @command_window.index
  138.       when 1  # 技能
  139.         $scene = Scene_Skill.new(@status_window.index)
  140.       when 2  # 装备
  141.         $scene = Scene_Equip.new(@status_window.index)
  142.       when 3  # 状态
  143.         $scene = Scene_Status.new(@status_window.index)
  144.       end
  145.     end
  146.   end
  147. end
  148. #==============================================================================
  149. # ■ Window_MenuStatus
  150. #==============================================================================
  151. class Window_MenuStatus < Window_Selectable
  152.   #--------------------------------------------------------------------------
  153.   # ● 初始化对像
  154.   #     x      : 窗口 X 座标
  155.   #     y      : 窗口 Y 座标
  156.   #--------------------------------------------------------------------------
  157.   def initialize(x, y)
  158.     super(x, y, 544, 168)
  159.     refresh
  160.     self.active = false
  161.     self.index = -1
  162.     @column_max = $game_party.members.size
  163.     @spacing = 0
  164.   end
  165.   #--------------------------------------------------------------------------
  166.   # ● 刷新
  167.   #--------------------------------------------------------------------------
  168.   def refresh
  169.     self.contents.clear
  170.     @item_max = $game_party.members.size
  171.     @column_max = $game_party.members.size
  172.     for actor in $game_party.members
  173.       x = actor.index * 128
  174.       y = 28
  175.       draw_actor_face(actor, x, 2, 96)
  176.       draw_actor_name(actor, x, y - 28)
  177.       draw_actor_level(actor, x, y + 32)
  178.       draw_actor_hp(actor, x, y + WLH * 1 + 28)
  179.       draw_actor_mp(actor, x , y + WLH * 2 + 28)
  180.     end
  181.   end
  182.   #--------------------------------------------------------------------------
  183.   # ● 更新光标
  184.   #--------------------------------------------------------------------------
  185.   def update_cursor
  186.     if @index < 0               # 无光标
  187.       self.cursor_rect.empty
  188.     elsif @index < @item_max    # 一般
  189.       self.cursor_rect.set(@index * 128, 0, 128, 128)
  190.     elsif @index >= 100         # 使用本身
  191.       self.cursor_rect.set((@index - 100) * 128, 0, 128, 128)
  192.     else                        # 全体
  193.       self.cursor_rect.set(0, 0, @item_max * 128, 128)
  194.     end
  195.   end
  196. end
复制代码
然后是截图:


喏,最后是范例:

菜单.zip

738.71 KB, 下载次数: 233

点评

同意!职业是多馀的!哈哈  发表于 2010-10-13 18:34
很欠扁的把职业描绘给去掉了……  发表于 2010-10-7 17:11

评分

参与人数 4星屑 +968 收起 理由
烁灵 + 2 谅吾辈分不多=。=小冰加油,越来越强了~。~ ...
九夜神尊 + 60 真是神作呀!有点点当年的勇者斗恶龙的风范 ...
小幽的马甲 + 900
Rion幻音 + 6 也是写着菜单脚本中~

查看全部评分

大家好,我叫节操,有一天,我被吃了。
http://forever-dream.5d6d.com
永恒の梦制作组论坛

129993099
永恒の梦制作组QQ群
头像被屏蔽

Lv1.梦旅人 (禁止访问)

梦石
0
星屑
50
在线时间
89 小时
注册时间
2009-10-26
帖子
747
2
发表于 2010-10-7 17:12:17 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv2.观梦者

花开堪折直须折

梦石
0
星屑
681
在线时间
943 小时
注册时间
2010-7-17
帖子
4963

贵宾

3
 楼主| 发表于 2010-10-7 17:19:20 | 只看该作者
回复 overpan 的帖子

您老真速度……= .=
嘛,鉴于您的速度,送一只猫做礼物{:nm_4:}

点评

人家哪里老了.....  发表于 2010-10-7 17:59
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
518 小时
注册时间
2010-6-16
帖子
1073
4
发表于 2010-10-7 17:32:24 | 只看该作者
顶一顶你,加油吧~
回复 支持 反对

使用道具 举报

Lv1.梦旅人

天空之神

梦石
0
星屑
156
在线时间
173 小时
注册时间
2009-5-3
帖子
612
5
发表于 2010-10-7 17:51:39 | 只看该作者
一般般啦……
不过认真创造的态度很值得学习
回复 支持 反对

使用道具 举报

Lv1.梦旅人

万物创造者

梦石
0
星屑
54
在线时间
352 小时
注册时间
2008-2-15
帖子
2432
6
发表于 2010-10-7 18:01:28 | 只看该作者
本帖最后由 小幽的马甲 于 2010-10-7 18:03 编辑

头像没有居中,吴莉嘉的头发都和选框相切了{:nm_5:}
      draw_actor_face(actor, x, 2, 96)
=》
      draw_actor_face(actor, x + 16, 2, 96)
这样看着似乎更好些
From mortal hope immortal power springs.
回复 支持 反对

使用道具 举报

Lv2.观梦者

花开堪折直须折

梦石
0
星屑
681
在线时间
943 小时
注册时间
2010-7-17
帖子
4963

贵宾

7
 楼主| 发表于 2010-10-7 18:27:44 | 只看该作者
回复 小幽的马甲 的帖子

哇耶?小幽大您后来改的脚本吾偷懒没有改坐标哈
回复 支持 反对

使用道具 举报

Lv1.梦旅人

前进之卒

梦石
0
星屑
55
在线时间
20 小时
注册时间
2010-8-17
帖子
176
8
发表于 2010-10-7 19:51:29 | 只看该作者
把等级坐标移到名字后面会不会更好看些?
开始拼吧!
回复 支持 反对

使用道具 举报

Lv2.观梦者

花开堪折直须折

梦石
0
星屑
681
在线时间
943 小时
注册时间
2010-7-17
帖子
4963

贵宾

9
 楼主| 发表于 2010-10-7 20:08:42 | 只看该作者
回复 红灯 的帖子
不确定角色名字的长短啊。

   

点评

没办法啊……  发表于 2010-10-7 20:18
啊,你用了那个全键盘输入的脚本啊。不过等级挡着脸图的嘴巴,感觉看着不舒服啊。= =!  发表于 2010-10-7 20:16
回复 支持 反对

使用道具 举报

Lv3.寻梦者

小睡

梦石
0
星屑
2191
在线时间
508 小时
注册时间
2010-8-1
帖子
1378
10
发表于 2010-10-9 20:28:03 | 只看该作者
哎~这个不错~我做过,然后弄得好的话,很有仙剑一的风范~
欢迎来到6R RTP Maker!加入RTP行走图制作组的行列吧!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-24 21:43

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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