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

Project1

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

[已经解决] 物品栏分类换行

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1346
在线时间
806 小时
注册时间
2013-8-3
帖子
455
跳转到指定楼层
1
发表于 2020-4-11 20:13:59 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
800星屑
怎么把多出的分类换第二列去

232201r11ycspnroprls40.png (33.83 KB, 下载次数: 18)

232201r11ycspnroprls40.png

最佳答案

查看完整内容

由于物品栏窗口是继承自Window_HorzCommand的横向窗口类 对拥有上下左右滚动功能的光标超类Window_Selectable方法进行了一定的修改 所以正常情况下只能进行Y坐标横向描绘 比如Window_Selectable类的rect.y = index / col_max * item_height 这种可以根据项目次序与设定列数判断换行 到了Window_HorzCommand里是直接赋值0的 (也就是描绘不判断换行) 根据楼主的需求在这里对原版物品窗口进行了一些修改 大部分直接引用自Window_Se ...

【同人游戏】勇者斗恶龙TG
欢迎加入游戏测试群333599798
如有需私聊请加QQ:516425000

Lv4.逐梦者

梦石
3
星屑
7095
在线时间
589 小时
注册时间
2019-9-15
帖子
113

R考场第七期金奖

2
发表于 2020-4-11 20:14:00 | 只看该作者
本帖最后由 Cupidk爱呗茶 于 2020-4-12 10:58 编辑

由于物品栏窗口是继承自Window_HorzCommand的横向窗口类 对拥有上下左右滚动功能的光标超类Window_Selectable方法进行了一定的修改 所以正常情况下只能进行Y坐标横向描绘
比如Window_Selectable类的rect.y = index / col_max * item_height 这种可以根据项目次序与设定列数判断换行 到了Window_HorzCommand里是直接赋值0的 (也就是描绘不判断换行)
根据楼主的需求在这里对原版物品窗口进行了一些修改 大部分直接引用自Window_Selectable的原版方法  有问题的话楼主可以随时联系【   使用方法 : 将脚本复制到插件页即可使用
那个..最后要感谢自己的师父雷君sama(gqxastg)该系统是师父提供了大量思路与实践帮助才得以实现的  阿利亚多! sfgrszqd xixi

RUBY 代码复制
  1. #==============================================================================
  2. # ★ 设定部分 ★
  3. #==============================================================================
  4. module SFSaigao
  5.  
  6. COL_MAX = 7  #每行可显示的列数
  7. LINEMAX = 2  #窗口行数
  8. end
  9. #==============================================================================
  10. # ★ 设定结束 ★
  11. #==============================================================================
  12. class Window_Selectable < Window_Base
  13.   alias selectable_cursor_down cursor_down
  14.   alias selectable_cursor_up cursor_up
  15.   alias selectable_ensure_cursor_visible ensure_cursor_visible
  16.   alias selectable_item_rect item_rect
  17. end
  18. class Window_ItemCategory < Window_HorzCommand
  19.   include SFSaigao
  20.   #--------------------------------------------------------------------------
  21.   # ● 获取显示行数
  22.   #--------------------------------------------------------------------------
  23.   def visible_line_number; return LINEMAX; end
  24.   #--------------------------------------------------------------------------
  25.   # ● 获取列数
  26.   #--------------------------------------------------------------------------
  27.   def col_max; return COL_MAX; end
  28.   def ensure_cursor_visible; selectable_ensure_cursor_visible; end
  29.   def contents_width; width - standard_padding * 2; end
  30.   def contents_height; item_height * row_max; end
  31.   def cursor_down(wrap = false); selectable_cursor_down(wrap); end
  32.   def cursor_up(wrap = false); selectable_cursor_up(wrap); end
  33.   def item_rect(index); selectable_item_rect(index); end
  34. end



评分

参与人数 1+1 收起 理由
gqxastg + 1 塞糖

查看全部评分

********
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-30 10:23

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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