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

Project1

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

[已经解决] 如何让特定的角色战斗中不能使用物品

[复制链接]

Lv3.寻梦者

梦石
0
星屑
2145
在线时间
235 小时
注册时间
2018-3-23
帖子
100
跳转到指定楼层
1
发表于 2019-1-14 16:57:38 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
100星屑
我使用的是RTAB战斗系统
这个if条件应该怎么写呢?

when 3  # 物品
if XXXXXXXXXXXXXXXXXXXXXXXX
@actor_command_window.disable_item(3)
$game_system.se_play($data_system.buzzer_se)
return
end

最佳答案

查看完整内容

【Scene_Battle】类里的【def update_phase3_item_select】方法里面, 有一句 unless $game_party.item_can_use?(@item.id) 改成 if !$game_party.item_can_use?(@item.id) or @active_actor.id == 1 数据库ID为1的角色无法使用物品。
RMXP天下第一!

Lv4.逐梦者

梦石
0
星屑
19478
在线时间
3111 小时
注册时间
2013-1-11
帖子
1292
2
发表于 2019-1-14 16:57:39 | 只看该作者
【Scene_Battle】类里的【def update_phase3_item_select】方法里面,

有一句  unless $game_party.item_can_use?(@item.id)
改成    if !$game_party.item_can_use?(@item.id) or @active_actor.id == 1

数据库ID为1的角色无法使用物品。

评分

参与人数 1+1 收起 理由
xp兔子徒弟 + 1 简单又快捷 这就很舒服

查看全部评分

回复

使用道具 举报

Lv5.捕梦者

梦石
10
星屑
39592
在线时间
1920 小时
注册时间
2010-11-14
帖子
3320

R考场第七期纪念奖

3
发表于 2019-1-14 18:03:37 | 只看该作者
本帖最后由 KB.Driver 于 2019-1-14 18:07 编辑


没用过RTAB,如果这段脚本没有效果的话请报告。

RUBY 代码复制
  1. module BattleManager
  2.  
  3.   ACTORS_ITEM_FORBIDDEN = [1,2]
  4.   # 在此填写战斗中禁止使用物品的角色的ID
  5.   # 不要删除方括号
  6.  
  7. end
  8.  
  9. #◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
  10. # 不要编辑下面
  11.  
  12. class Game_Actor
  13.   def item_forbidden?
  14.     BattleManager::ACTORS_ITEM_FORBIDDEN.include?(@actor_id)
  15.   end
  16. end
  17.  
  18. module Sound
  19.   def self.play_buzzer
  20.     $game_system.se_play($data_system.buzzer_se)
  21.   end
  22. end
  23.  
  24. class Scene_Battle
  25.   #--------------------------------------------------------------------------
  26.   # ● 刷新画面
  27.   #--------------------------------------------------------------------------
  28.   alias cld99_update update
  29.   def update
  30.     if @actor_command_window && @active_battler
  31.       if @active_battler.item_forbidden? then @actor_command_window.disable_item(3)
  32.       else @actor_command_window.refresh end
  33.     end
  34.     cld99_update
  35.   end
  36.   #--------------------------------------------------------------------------
  37.   # ● 刷新画面 (角色命令回合 : 基本命令)
  38.   #--------------------------------------------------------------------------
  39.   alias cld99_update_phase3_basic_command update_phase3_basic_command
  40.   def update_phase3_basic_command
  41.     if Input.trigger?(Input::C)
  42.       if @actor_command_window.index == 3 #物品
  43.         return Sound.play_buzzer if @active_battler.item_forbidden?
  44.       end
  45.     end
  46.     cld99_update_phase3_basic_command
  47.   end
  48. end

点评

原来已经解决了啊,那咱忙自己的去了_(:3」∠)_  发表于 2019-1-14 19:36
能提供一下rtab的工程或者脚本吗,工程最好。  发表于 2019-1-14 19:35

评分

参与人数 1+1 收起 理由
xp兔子徒弟 + 1 rtab里有冲突

查看全部评分

用头画头像,用脚写脚本
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-25 18:55

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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