Project1

标题: 关于菜单重排的问题 [打印本页]

作者: foreverlove    时间: 2013-11-2 03:33
标题: 关于菜单重排的问题
各位大大~请教一个问题
本人脚本渣渣,稍微会改点脚本,用VX做一个东西的时候想要重排菜单,基本就是让右面任务状态那里是横着排的,改完了window_menu和scene_menu,好不容易做好了发现个问题,虽然把选框的位置和大小搞定了,但是移动选框是点击上下移动而不是左右移动,本想在改一下window_Selectable让左跟上同效果,右跟下同效果,奈何战斗脚本用了SBS,左右上下各有用处不能混用~欲哭无泪呀~
所以求各位大大给讲解一下到底怎么才能实现左右控制选菜单里面的人物~~~~{:2_253:} 大晚上的也不知道我说没说清楚。先上图

这是工程,由于原来的工程太过凌乱就新做了一个只有菜单修改的~求指导~~~
Project1.rar (237.24 KB, 下载次数: 49)
作者: yangjunyin2002    时间: 2013-11-2 07:14
。。。案件判定,right和left。
作者: 怪蜀黍    时间: 2013-11-2 09:23
找到这个类,第15行添加一句就可以了!
  1. #==============================================================================
  2. # ** Window_MenuStatus
  3. #------------------------------------------------------------------------------
  4. #  This window displays party member status on the menu screen.
  5. #==============================================================================

  6. class Window_MenuStatus < Window_Selectable
  7.   #--------------------------------------------------------------------------
  8.   # * Object Initialization
  9.   #     x : window X coordinate
  10.   #     y : window Y coordinate
  11.   #--------------------------------------------------------------------------
  12.   def initialize(x, y)
  13.     super(x, y, 444, 416)#(x, y, 384, 416)
  14.     @column_max = 4      # 加这里的一行即可
  15.     refresh
  16.     self.active = false
  17.     self.index = -1
  18.   end
  19.   #--------------------------------------------------------------------------
  20.   # * Refresh
  21.   #--------------------------------------------------------------------------
  22.   def refresh
  23.     self.contents.clear
  24.     @item_max = $game_party.members.size
  25.     for actor in $game_party.members
  26.       x = actor.index * 102 + 8
  27.       draw_actor_face(actor, x, 2, 92)
  28.       draw_actor_name(actor, x, 2)
  29.       draw_actor_level(actor, x, 98)
  30.       draw_actor_class(actor, x, 124)
  31.       draw_actor_hp(actor, x, 152)
  32.       draw_actor_mp(actor, x,180)
  33.       draw_actor_state(actor, x, 206)
  34.     end
  35.   end
  36.   #--------------------------------------------------------------------------
  37.   # * Update cursor
  38.   #--------------------------------------------------------------------------
  39.   def update_cursor
  40.     if [url=home.php?mod=space&uid=370741]@Index[/url] < 0               # No cursor
  41.       self.cursor_rect.empty
  42.     elsif @index < @item_max    # Normal
  43.       self.cursor_rect.set(@index * 102 + 2, 0, 96, contents.height)
  44.     elsif @index >= 100         # Self
  45.       self.cursor_rect.set((@index - 100) * 102 + 2, 0, 96, contents.height)
  46.     else                        # All
  47.       self.cursor_rect.set(2, 0, 96, contents.height)
  48.     end
  49.   end
  50. end
复制代码

作者: LBQ    时间: 2013-11-2 09:24
Window Selectable本身是支持左右的,你没法弄是因为你没有修改Window_MenuStatus的Item Max 还有Column还有Rows
请修改好参数之后再弄
不会改就别改,改了就别问,这种问题每月都会见到那么几个
作者: foreverlove    时间: 2013-11-2 12:24
protosssonny 发表于 2013-11-2 09:23
找到这个类,第15行添加一句就可以了!

原来是这样~我原来自己搜这数量怎么也搜不到,原来要自己写一句{:2_270:}果然还得好好研究一下!话说感觉VX比XP麻烦好多呀!




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1