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

Project1

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

[已经解决] 怎么在游戏菜单上添加属性?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
107 小时
注册时间
2010-10-10
帖子
228
跳转到指定楼层
1
发表于 2010-10-26 16:16:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 梦到叶子了 于 2010-10-26 20:15 编辑

如何在VX默认的菜单上加上      饮酒、声望、轻功、魅力?
而且要能够用变量自由控制这些属性

Lv1.梦旅人

梦石
0
星屑
50
在线时间
72 小时
注册时间
2010-10-18
帖子
104
2
发表于 2010-10-26 16:26:20 | 只看该作者
请参考置顶帖的
新增角色能力并使其受装备等级影响
如果只是想用变量记录并显示   且和装备等级无关
就修改菜单脚本  让其显示该变量即可
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
107 小时
注册时间
2010-10-10
帖子
228
3
 楼主| 发表于 2010-10-26 16:27:23 | 只看该作者
回复 迷路子 的帖子

就只要几个数值 显示在菜单上就可以了。与属性其他的都无关,而且 能够自由加减,条件分歧的
   
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
72 小时
注册时间
2010-10-18
帖子
104
4
发表于 2010-10-26 16:32:49 | 只看该作者
先看要显示在哪
如果是主菜单   那就修改scene_menu
在里面新增个窗口显示你说的数值(这就要自己写才行  如果脚本盲可能看有没人帮忙代写)
如果是人物状态栏  就修改scene_status
一样新增要显示的数值和文字

至於自由加减、条件分歧  那么以资料库中的变量表来做储存应该就是比较方便的做法

点评

俄外的窗口 谢谢啦!  发表于 2010-10-26 17:30
你是要显示在人物头像那边还是要额外再加一个窗口显示?  发表于 2010-10-26 17:03
在主菜单上显示 饮酒、声望、轻功、魅力 ,我是脚本盲吖  发表于 2010-10-26 16:41
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
107 小时
注册时间
2010-10-10
帖子
228
5
 楼主| 发表于 2010-10-26 17:28:37 | 只看该作者
回复 迷路子 的帖子


    俄外的窗口 谢谢啦!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
72 小时
注册时间
2010-10-18
帖子
104
6
发表于 2010-10-26 19:30:47 | 只看该作者
回复 梦到叶子了 的帖子

自取吧  
如果还行的话
就麻烦到认可帖认可一下吧~
  1. #
  2. # 作者:迷路子
  3. # 脚本:非常简陋的额外属性窗口
  4. #

  5. module Other
  6.   #1 2 3 4分别对应到Other_data2的1 2 3 4
  7.   #後面的5 6 7 8 分别表示那四个数值储存的变数序号
  8.   #以例子来说  就是"饮酒"的数值储存在5号变数中  声望则是6号变数
  9.   #如果要加其他的属性的话  依照同样的格式继续往下加入即可
  10.   Other_data = {
  11.   1 => 5,
  12.   2 => 6,
  13.   3 => 7,
  14.   4 => 8,
  15.   }
  16.   #该属性的名称
  17.   Other_data2 = {
  18.   1 => "饮酒",
  19.   2 => "声望",
  20.   3 => "轻功",
  21.   4 => "魅力",
  22.   }
  23.   #窗口的位置
  24.   Other_x = 0
  25.   Other_y = 180

  26.   Color1 = Color.new(120,120,255)   #属性名称的颜色
  27.   Color2 = Color.new(255,255,255)   #属性能力值的颜色
  28.   Font_Name = "SimHei"  #字体的名称
  29.   Font_Size = 18    #字的大小
  30. end

  31. #==============================================================================
  32. # ■ Window_Gold
  33. #------------------------------------------------------------------------------
  34. #  显示金钱的窗口。
  35. #==============================================================================

  36. class Window_Other < Window_Base
  37.   #--------------------------------------------------------------------------
  38.   # ● 初始化对像
  39.   #     x      : 窗口 X 座标
  40.   #     y      : 窗口 Y 座标
  41.   #--------------------------------------------------------------------------
  42.   def initialize(x, y)
  43.     super(x, y, 160, WLH*Other::Other_data.size + 32)
  44.     refresh
  45.   end
  46.   #--------------------------------------------------------------------------
  47.   # ● 刷新
  48.   #--------------------------------------------------------------------------
  49.   def refresh
  50.     self.contents.clear
  51.     draw_data(4, 0)
  52.   end
  53.   
  54.   def draw_data(x,y)
  55.     self.contents.font.name = Other::Font_Name
  56.     self.contents.font.size = Other::Font_Size
  57.     for i in 1..Other::Other_data2.size
  58.       self.contents.font.color = Other::Color1
  59.       self.contents.draw_text(x,y+WLH*(i-1),Other::Other_data2[i].size*11,WLH,Other::Other_data2[i])
  60.       self.contents.font.color = Other::Color2
  61.       self.contents.draw_text(x+60,y+WLH*(i-1),60,WLH,$game_variables[Other::Other_data[i-1].to_i].to_s,2)
  62.     end
  63.   end
  64. end




  65. #==============================================================================
  66. # ■ Scene_Menu
  67. #------------------------------------------------------------------------------
  68. #  处理菜单画面的类。
  69. #==============================================================================

  70. class Scene_Menu < Scene_Base
  71.   #--------------------------------------------------------------------------
  72.   # ● 初始化对像
  73.   #     menu_index : 命令窗口光标初始位置
  74.   #--------------------------------------------------------------------------
  75.   def initialize(menu_index = 0)
  76.     @menu_index = menu_index
  77.   end
  78.   #--------------------------------------------------------------------------
  79.   # ● 开始处理
  80.   #--------------------------------------------------------------------------
  81.   def start
  82.     super
  83.     create_menu_background
  84.     create_command_window
  85.     @gold_window = Window_Gold.new(0, 360)
  86.     @status_window = Window_MenuStatus.new(160, 0)
  87.     @other_window = Window_Other.new(Other::Other_x,Other::Other_y)
  88.   end
  89.   #--------------------------------------------------------------------------
  90.   # ● 结束处理
  91.   #--------------------------------------------------------------------------
  92.   def terminate
  93.     super
  94.     dispose_menu_background
  95.     @command_window.dispose
  96.     @other_window.dispose
  97.     @gold_window.dispose
  98.     @status_window.dispose
  99.   end
  100.   #--------------------------------------------------------------------------
  101.   # ● 更新画面
  102.   #--------------------------------------------------------------------------
  103.   def update
  104.     super
  105.     update_menu_background
  106.     @command_window.update
  107.     @gold_window.update
  108.     @status_window.update
  109.     if @command_window.active
  110.       update_command_selection
  111.     elsif @status_window.active
  112.       update_actor_selection
  113.     end
  114.   end
  115.   #--------------------------------------------------------------------------
  116.   # ● 生成命令窗口
  117.   #--------------------------------------------------------------------------
  118.   def create_command_window
  119.     s1 = Vocab::item
  120.     s2 = Vocab::skill
  121.     s3 = Vocab::equip
  122.     s4 = Vocab::status
  123.     s5 = Vocab::save
  124.     s6 = Vocab::game_end
  125.     @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])
  126.     @command_window.index = @menu_index
  127.     if $game_party.members.size == 0          # 如果队伍为空
  128.       @command_window.draw_item(0, false)     # 无效化物品选项
  129.       @command_window.draw_item(1, false)     # 无效化技能选项
  130.       @command_window.draw_item(2, false)     # 无效化装备选项
  131.       @command_window.draw_item(3, false)     # 无效化状态选项
  132.     end
  133.     if $game_system.save_disabled             # 如果禁止存档
  134.       @command_window.draw_item(4, false)     # 无效化存档选项
  135.     end
  136.   end
  137.   #--------------------------------------------------------------------------
  138.   # ● 更新命令窗口
  139.   #--------------------------------------------------------------------------
  140.   def update_command_selection
  141.     if Input.trigger?(Input::B)
  142.       Sound.play_cancel
  143.       $scene = Scene_Map.new
  144.     elsif Input.trigger?(Input::C)
  145.       if $game_party.members.size == 0 and @command_window.index < 4
  146.         Sound.play_buzzer
  147.         return
  148.       elsif $game_system.save_disabled and @command_window.index == 4
  149.         Sound.play_buzzer
  150.         return
  151.       end
  152.       Sound.play_decision
  153.       case @command_window.index
  154.       when 0      # 物品
  155.         $scene = Scene_Item.new
  156.       when 1,2,3  # 技能、装备、状态
  157.         start_actor_selection
  158.       when 4      # 存档
  159.         $scene = Scene_File.new(true, false, false)
  160.       when 5      # 结束游戏
  161.         $scene = Scene_End.new
  162.       end
  163.     end
  164.   end
  165.   #--------------------------------------------------------------------------
  166.   # ● 角色选择开始
  167.   #--------------------------------------------------------------------------
  168.   def start_actor_selection
  169.     @command_window.active = false
  170.     @status_window.active = true
  171.     if $game_party.last_actor_index < @status_window.item_max
  172.       @status_window.index = $game_party.last_actor_index
  173.     else
  174.       @status_window.index = 0
  175.     end
  176.   end
  177.   #--------------------------------------------------------------------------
  178.   # ● 角色选择结束
  179.   #--------------------------------------------------------------------------
  180.   def end_actor_selection
  181.     @command_window.active = true
  182.     @status_window.active = false
  183.     @status_window.index = -1
  184.   end
  185.   #--------------------------------------------------------------------------
  186.   # ● 角色选择更新
  187.   #--------------------------------------------------------------------------
  188.   def update_actor_selection
  189.     if Input.trigger?(Input::B)
  190.       Sound.play_cancel
  191.       end_actor_selection
  192.     elsif Input.trigger?(Input::C)
  193.       $game_party.last_actor_index = @status_window.index
  194.       Sound.play_decision
  195.       case @command_window.index
  196.       when 1  # 技能
  197.         $scene = Scene_Skill.new(@status_window.index)
  198.       when 2  # 装备
  199.         $scene = Scene_Equip.new(@status_window.index)
  200.       when 3  # 状态
  201.         $scene = Scene_Status.new(@status_window.index)
  202.       end
  203.     end
  204.   end
  205. end
复制代码

点评

原来是脚本里面的字体我没有,我改为黑体了, 多谢多谢,可是我找不到评分吖!  发表于 2010-10-26 20:21
脚本贴上去了,有了窗口,但是没有文字……  发表于 2010-10-26 20:19
旁边怎么没有评分啊?我点不上认可。。。。  发表于 2010-10-26 20:17
多谢,不过使用方法是什么?  发表于 2010-10-26 20:16
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-15 22:55

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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