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

Project1

 找回密码
 注册会员
搜索

如何不依靠状态做出每回合自动回血或回魔的装备

查看数: 2739 | 评论数: 8 | 收藏 1
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2015-11-23 21:38

正文摘要:

因为用了多状态脚本,不想让角色身上附加太多状态。记得囧魂有个装备叫黑猫布偶,装备时并没有显示状态,我想做出类似的效果,请问应该怎么做

回复

sky40 发表于 2015-11-26 12:48:52
装备20号饰品“黑猫布偶”的工程

Project1.rar

187.15 KB, 下载次数: 65

评分

参与人数 2星屑 +150 梦石 +1 收起 理由
无忧谷主幻 + 150 忘了给糖了
RyanBern + 1 认可答案

查看全部评分

无忧谷主幻 发表于 2015-11-25 23:04:32
本帖最后由 无忧谷主幻 于 2015-11-25 23:05 编辑
sky40 发表于 2015-11-24 00:39
查找 “# 连续伤害”在下面加上

我上工程吧
Project1.zip (201.57 KB, 下载次数: 41)

补充:
忘了已经回复过1楼了

点评

如果黑猫布偶是饰品的话 ,armor4_id == 20里的,这个20替换成对应“黑猫布偶”的饰品ID就行  发表于 2015-11-26 12:42
weapon_id 武器ID;armor1_id 盾ID ;armor2_id 头防具ID;armor3_id 身体体防具ID;armor4_id装饰品ID  发表于 2015-11-26 12:38
数据默认20号是防具,@active_battler.armor3_id == 20 #20号身体防具  发表于 2015-11-26 12:38
yang1zhi 发表于 2015-11-25 12:51:25
RUBY 代码复制
  1. #==============================================================================
  2. # 本脚本来自[url]www.66RPG.com[/url],使用和转载请保留此信息
  3. # 欢迎访问[url]www.66RPG.com[/url]
  4. # 梦想世界,在你手中
  5. #==============================================================================
  6. #==============================================================================
  7. # 图标显示状态 v1.1
  8. # By 叶子
  9. # 9-30-2007 v1.1
  10. # 修正了描绘状态的一个致命BUG
  11. # 12-31-2005 v1.0
  12. # 重定义类:Window_Base, Window_Help
  13. #==============================================================================
  14. # 脚本功能:
  15. # 实现战斗中和菜单中用图标显示状态,代替原来的文字显示。
  16. # 默认最多同时显示5个状态
  17. #------------------------------------------------------------------------------
  18. # 设置方法:
  19. # 一个状态对应的图标文件名为“状态的动画ID”
  20. # 例如某状态的动画ID为50,那么它的图标就是“Icons\50.png”或“Icons\50.jpg”
  21. # 如果找不到对应的文件,会报错 ◎_◎
  22. #==============================================================================
  23. # 注意,在ICON_STATE_IDS中写上需要带图标的状态ID
  24. # ICON_STATE_IDS是一个数组,数组的方法请参考帮助文件
  25. # 例如:
  26. # 只要1,5,8号状态带图标,就这样:ICON_STATE_IDS = [1,5,8]
  27. # 要20到50号状态带图标:ICON_STATE_IDS = 20..50
  28. ICON_STATE_IDS = 1..100
  29. #==============================================================================
  30. # ■ Window_Base
  31. #------------------------------------------------------------------------------
  32. #  游戏中全部窗口的超级类。
  33. #==============================================================================
  34. class Window_Base < Window
  35.   #--------------------------------------------------------------------------
  36.   # ● 描绘状态
  37.   #     actor : 角色
  38.   #     x     : 描画目标 X 坐标
  39.   #     y     : 描画目标 Y 坐标
  40.   #     width : 描画目标的宽
  41.   #--------------------------------------------------------------------------
  42.   def draw_actor_state(actor, x, y, width = 120)
  43.     state_size = 0
  44.     for state in actor.states
  45.       # 图标数量超出宽度就中断循环
  46.       if state_size >= width / 24
  47.         break
  48.       end
  49.       # 此状态不带图标就跳过
  50.       if !ICON_STATE_IDS.include?(state)
  51.         next
  52.       end
  53.       bitmap = RPG::Cache.icon($data_states[state].name + ".png")
  54.       if actor.states_turn[state] >= $data_states[state].hold_turn/2
  55.         opacity = 255
  56.       else
  57.         opacity = 100
  58.       end
  59.       # 这里的图标大小默认是24x24,要改就改下面那个Rect.new(0, 0, 24, 24)
  60.       self.contents.blt(x + 24 * state_size, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
  61.       state_size += 1
  62.     end
  63.   end
  64. end
  65. #==============================================================================
  66. # ■ Window_Help
  67. #------------------------------------------------------------------------------
  68. #  特技及物品的说明、角色的状态显示的窗口。
  69. #==============================================================================
  70. class Window_Help < Window_Base
  71.   #--------------------------------------------------------------------------
  72.   # ● 设置敌人
  73.   #     enemy : 要显示名字和状态的敌人
  74.   #--------------------------------------------------------------------------
  75.   def set_enemy(enemy)
  76.     @text = ""
  77.     # 描绘敌人名字
  78.     set_text(enemy.name, 1)
  79.     # 描绘状态图标
  80.     state_size = 0
  81.     for state in enemy.states
  82.       # 图标数量超出宽度就中断循环
  83.       if state_size >= 5
  84.         break
  85.       end
  86.       # 此状态不带图标就跳过
  87.       if !ICON_STATE_IDS.include?(state)
  88.         next
  89.       end
  90.       bitmap = RPG::Cache.icon($data_states[state].name + ".png")
  91.       if enemy.states_turn[state] >= $data_states[state].hold_turn/2
  92.         opacity = 255
  93.       else
  94.         opacity = 100
  95.       end
  96.       self.contents.blt(70 + 24 * state_size, 0, bitmap, Rect.new(0, 0, 24, 24), opacity)
  97.       state_size += 1
  98.     end
  99.   end
  100. end
  101. class Game_Battler
  102.   attr_reader :states_turn       # 声明状态剩余回合
  103. end
  104. #==============================================================================
  105. # 本脚本来自[url]www.66RPG.com[/url],使用和转载请保留此信息
  106. # 欢迎访问[url]www.66RPG.com[/url]
  107. # 梦想世界,在你手中
  108. #==============================================================================

评分

参与人数 1星屑 +200 收起 理由
无忧谷主幻 + 200 最终决定用不到了

查看全部评分

yang1zhi 发表于 2015-11-25 12:15:54
状态图标脚本不是可以设置哪几个不显示出来的吗

点评

具体怎么做?  发表于 2015-11-25 12:46
sky40 发表于 2015-11-24 00:39:16
查找 “# 连续伤害”在下面加上

  1. if @active_battler.is_a?(Game_Actor)
  2.     if @active_battler.hp > 0 and @active_battler.armor4_id == 20 #20号饰品
  3.         @active_battler.hp += 10 #恢复10
  4.     end
  5. end
复制代码

点评

回血是 .hp += 10 扣血是.hp -= 10 也可能是带有中毒状态造成扣血  发表于 2015-11-24 23:53
为何变成每回合扣血  发表于 2015-11-24 22:15
Scene_Battle 4 里 连续伤害的下面 if @active_battler.hp > 0 and @active_battler.slip_damage? 的上面,mp的话改成 @active_battler.sp += 10  发表于 2015-11-24 22:05
1,需要插入到哪2,MP呢?  发表于 2015-11-24 00:52
表情 发表于 2015-11-23 23:32:05
这样应该可以 只不过要攻击才能触发

[T}U98SIWJ1D(6VVU[70`%A.png (67.47 KB, 下载次数: 9)

[T}U98SIWJ1D(6VVU[70`%A.png

点评

那就在物品或防御或技能都加上这个  发表于 2015-11-24 20:57
如果是角色使用物品或防御呢?  发表于 2015-11-23 23:38
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-9-22 23:34

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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