赞 | 23 |
VIP | 207 |
好人卡 | 31 |
积分 | 31 |
经验 | 48797 |
最后登录 | 2024-5-11 |
在线时间 | 1535 小时 |
Lv3.寻梦者 孤独守望
- 梦石
- 0
- 星屑
- 3132
- 在线时间
- 1535 小时
- 注册时间
- 2006-10-16
- 帖子
- 4321
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
灵感来自提问区某问题
效果:在要给特殊人物使用物品时,他会被跳过
脚本:- $hash_item_not = {20 => [1,7],21 => [8]}
- class Window_Target
- attr_accessor :number
- alias old_initialize initialize
- def initialize
- old_initialize
- @number = -1
- end
- alias old_update_cursor_rect update_cursor_rect
- def update_cursor_rect
- if @number == -1
- old_update_cursor_rect
- return
- end
- not_array = $hash_item_not[@number]
- if not_array == nil
- old_update_cursor_rect
- return
- end
- if not_array.include?($game_party.actors[@index].id)
- # 光标向下移动
- @index = (@index + @column_max) % @item_max
- end
- old_update_cursor_rect
- end
- end
- class Scene_Item
- alias old_update_item update_item
- def update_item
- if Input.trigger?(Input::C)
- @item = @item_window.item
- if @item.is_a?(RPG::Item)
- if $game_party.item_can_use?(@item.id)
- if @item.scope >= 3
- @target_window.number = @item.id
- end
- end
- end
- end
- old_update_item
- end
- end
复制代码
设定:开头的哈希表为设定内容,假设设定的是x => [y1,y2],那么编号为y1和y2的人在使用x号物品时,会被跳过
即使是一个数字也要用中括号括起来!
==========以下吐槽=========
哈希表真是好~不过还是花了我将近1个小时~最后要改refresh,却发现原来这玩意儿居然不是每一帧都刷新~气死我了……
===========================
恩,缺点如下:
有可能死循环(队伍中所有的人都是无法使用)
被禁止的人没有特殊标记{/bz} |
|