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

Project1

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

[已经解决] 求大神告诉下 怎么让角色在原地等待5秒后回血!!

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1883
在线时间
157 小时
注册时间
2016-1-29
帖子
267
跳转到指定楼层
1
发表于 2018-12-24 14:45:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
20星屑
在原地等待5秒回血 但期间如果走动的话就没有效果了 ,必须5秒后才能回血!

最佳答案

查看完整内容

class Scene_Map alias cld99_update update def update cld99_update update_recover_hp if $game_switches[1] #1号开关打开时原地回血 end def update_recover_hp @time ||= 0 Input.dir4 == 0 ? @time += 1 : @time = 0 if @time == 300 $game_party.members.each do |actor| actor.change_hp(actor.mhp / 5, true) end @time = 0 end end end [/pre] ...

Lv5.捕梦者

梦石
10
星屑
39440
在线时间
1914 小时
注册时间
2010-11-14
帖子
3315

R考场第七期纪念奖

2
发表于 2018-12-24 14:45:54 | 只看该作者
lixinglixing022 发表于 2018-12-26 21:38
kb哥 我是要做一个事件 怎么弄. 不是全图的那种  就是面对佛像5秒后 血回满 ...

RUBY 代码复制
  1. class Scene_Map
  2.   alias cld99_update update
  3.   def update
  4.     cld99_update
  5.     update_recover_hp if $game_switches[1] #1号开关打开时原地回血
  6.   end
  7.  
  8.   def update_recover_hp
  9.     @time ||= 0
  10.     Input.dir4 == 0 ? @time += 1 : @time = 0
  11.     if @time == 300
  12.       $game_party.members.each do |actor|
  13.         actor.change_hp(actor.mhp / 5, true)
  14.       end
  15.       @time = 0
  16.     end      
  17.   end
  18. end


在有佛像的地图设置并行处理事件
当角色X,Y等于(佛像面前)时打开1号开关,否则关闭1号开关

评分

参与人数 1星屑 +30 收起 理由
VIPArcher + 30 认可答案

查看全部评分

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

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
39714
在线时间
7486 小时
注册时间
2009-7-6
帖子
13484

开拓者贵宾

3
发表于 2018-12-24 15:09:29 | 只看该作者
设置一个公共事件,条件为某开关,执行方式并行处理
需要占用5个变量,1个开关

变量:
001:当前角色X坐标
002:当前角色Y坐标
003:角色上一次的X坐标
004:角色上一次的Y坐标
005:站立的持续时间

开关:
001:角色是否移动

事件内容:
开关操作:001角色是否移动 = 关
变量操作:001当前角色X坐标 = 角色的 X 坐标
变量操作:002当前角色Y坐标 = 角色的 Y 坐标
条件分歧:如果变量001当前角色X坐标 不等于 003:角色上一次的X坐标
   开关操作:001角色是否移动 = 开
结束分歧
条件分歧:如果变量002当前角色Y坐标 不等于 004:角色上一次的Y坐标
   开关操作:001角色是否移动 = 开
结束分歧
条件分歧:如果开关 001角色是否移动 为 开
   变量操作 005站立的持续时间 = 0
否则
   变量操作 005站立的持续时间 += 1 (注意这里是增加
   条件分歧: 如果变量 005站立的持续时间 在 300 以上
      注释:一秒等于60帧,300代表5秒
      变量操作 005站立的持续时间 = 0
      增减角色HP 001 角色 += 1000
   结束分歧
结束分歧

评分

参与人数 2星屑 +50 +1 收起 理由
百里_飞柳 + 1 我被醋虾了,你呢
VIPArcher + 50 醋鸡口胡事件!醋瞎力

查看全部评分

RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复

使用道具 举报

Lv5.捕梦者

梦石
10
星屑
39440
在线时间
1914 小时
注册时间
2010-11-14
帖子
3315

R考场第七期纪念奖

4
发表于 2018-12-25 01:02:07 | 只看该作者


RUBY 代码复制
  1. class Scene_Map
  2.   alias cld99_update update
  3.   def update
  4.     cld99_update
  5.     update_recover_hp
  6.   end
  7.  
  8.   def update_recover_hp
  9.     @time ||= 0
  10.     Input.dir4 == 0 ? @time += 1 : @time = 0
  11.     if @time == 300
  12.       $game_party.members.each do |actor|
  13.         actor.change_hp(actor.mhp / 5, true)
  14.       end
  15.       @time = 0
  16.     end      
  17.   end
  18. end


修改13行的actor.mhp / 5来得到你要恢复的量,目前是最大hp的5分之1
用头画头像,用脚写脚本
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1883
在线时间
157 小时
注册时间
2016-1-29
帖子
267
5
 楼主| 发表于 2018-12-26 21:38:30 手机端发表。 | 只看该作者
KB.Driver 发表于 2018-12-25 01:02
class Scene_Map
  alias cld99_update update
  def update

kb哥 我是要做一个事件 怎么弄. 不是全图的那种  就是面对佛像5秒后 血回满
回复

使用道具 举报

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

本版积分规则

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

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

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

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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