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

Project1

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

[已经解决] 怎样用事件(用物品给使用者加随机的体力上限等)?

[复制链接]

Lv3.寻梦者

梦石
0
星屑
3665
在线时间
915 小时
注册时间
2017-1-19
帖子
270
跳转到指定楼层
1
发表于 2017-6-23 22:28:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
没办法完成必须在事件中加脚本

Lv4.逐梦者

梦石
0
星屑
6240
在线时间
1458 小时
注册时间
2015-7-25
帖子
617

极短25参与开拓者

2
发表于 2017-6-23 23:49:23 | 只看该作者
插件脚本
RUBY 代码复制
  1. class Game_Battler < Game_BattlerBase
  2.   def item_apply(user, item)
  3.     @result.clear
  4.     @result.used = item_test(user, item)
  5.     @result.missed = (@result.used && rand >= item_hit(user, item))
  6.     @result.evaded = (!@result.missed && rand < item_eva(user, item))
  7.  
  8.     if @result.hit?
  9.       unless item.damage.none?
  10.         @result.critical = (rand < item_cri(user, item))
  11.         make_damage_value(user, item)
  12.         execute_damage(user)
  13.       end
  14.       if /<随机增加最大HP\s*(\d+)>/ =~ item.note
  15.         add_param(0,rand($1.to_i)+1)
  16.       end
  17.       item.effects.each {|effect| item_effect_apply(user, item, effect) }
  18.       item_user_effect(user, item)
  19.     end
  20.   end
  21. end


数据库物品备注
<随机增加最大HP 最大数值>
比如
<随机增加最大HP 100>
则随机范围为1~100

评分

参与人数 2星屑 +40 梦石 +1 收起 理由
VIPArcher + 1 认可答案
铅笔描绘的思念 + 40 精品文章

查看全部评分

笨肉包的游戏讨论群932812135 (实时更新) 喜欢的话欢迎加入~
目前的坑
??? #像素风OC游戏 准备中 短篇-约5小时
花城梦之心 #像素风OC游戏 系统开发+素材绘制中
【不可思议的迷宫】幽灵契约外传:歌莉娅 v0.3.8.1 (游戏文件已上传更新
同时更新中~ (沉迷摸鱼中~更新速度较慢请见谅w)
这是属于笨肉包一个人的旅行~(再见了...蚊子湯,七重酱,笨肉包永远想你们!TwT
旅途的最终目标~ ???(保密~
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3665
在线时间
915 小时
注册时间
2017-1-19
帖子
270
3
 楼主| 发表于 2017-6-24 17:58:49 | 只看该作者
如果使用多个该怎么办(如mp上限 物攻上限 物防上限等等)

点评

那就自己参照上面的插件脚本写  发表于 2017-6-24 20:42
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3665
在线时间
915 小时
注册时间
2017-1-19
帖子
270
4
 楼主| 发表于 2017-6-25 16:40:01 | 只看该作者
脚本有个bug必须在物品的能力提升(比如体力上限+1)否则出现物品使用无反应
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
6240
在线时间
1458 小时
注册时间
2015-7-25
帖子
617

极短25参与开拓者

5
发表于 2017-6-25 17:24:55 | 只看该作者
修复楼上说的bug
RUBY 代码复制
  1. class Game_Battler < Game_BattlerBase
  2.   def item_apply(user, item)
  3.     @result.clear
  4.     @result.used = item_test(user, item)
  5.     @result.missed = (@result.used && rand >= item_hit(user, item))
  6.     @result.evaded = (!@result.missed && rand < item_eva(user, item))
  7.     if /<随机增加最大HP\s*(\d+)>/ =~ item.note
  8.         add_param(0,rand($1.to_i)+1)
  9.     end
  10.     if @result.hit?
  11.       unless item.damage.none?
  12.         @result.critical = (rand < item_cri(user, item))
  13.         make_damage_value(user, item)
  14.         execute_damage(user)
  15.       end
  16.  
  17.       item.effects.each {|effect| item_effect_apply(user, item, effect) }
  18.       item_user_effect(user, item)
  19.     end
  20.   end
  21.   def item_test(user, item)
  22.     return false if item.for_dead_friend? != dead?
  23.     return true if $game_party.in_battle
  24.     return true if item.for_opponent?
  25.     return true if item.damage.recover? && item.damage.to_hp? && hp < mhp
  26.     return true if item.damage.recover? && item.damage.to_mp? && mp < mmp
  27.     return true if item_has_any_valid_effects?(user, item)
  28.     return true if /<随机增加最大HP\s*(\d+)>/ =~ item.note
  29.     return false
  30.   end
  31. end
笨肉包的游戏讨论群932812135 (实时更新) 喜欢的话欢迎加入~
目前的坑
??? #像素风OC游戏 准备中 短篇-约5小时
花城梦之心 #像素风OC游戏 系统开发+素材绘制中
【不可思议的迷宫】幽灵契约外传:歌莉娅 v0.3.8.1 (游戏文件已上传更新
同时更新中~ (沉迷摸鱼中~更新速度较慢请见谅w)
这是属于笨肉包一个人的旅行~(再见了...蚊子湯,七重酱,笨肉包永远想你们!TwT
旅途的最终目标~ ???(保密~
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3665
在线时间
915 小时
注册时间
2017-1-19
帖子
270
6
 楼主| 发表于 2017-6-25 22:14:44 | 只看该作者
非常感谢
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-7-23 02:20

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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