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

Project1

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

[已经解决] 求抗性与伤害关系的脚本

[复制链接]

Lv2.观梦者

梦石
0
星屑
620
在线时间
925 小时
注册时间
2011-5-11
帖子
438
跳转到指定楼层
1
发表于 2012-7-31 13:19:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1星屑
{:2_264:} 最近开始想做游戏 。经过询问和测试 ,发现【属性抗性】越高 ,受到的【属性伤害】也越高。

特求一脚本,要求如下:
1.角色或敌人单项属性抗性的和不得超过950
2.伤害关系为: 伤害值=伤害值*(1000-抗性值)/1000
3.
4.有较为详细的中文说明

最佳答案

查看完整内容

脚本放在脚本列表尽可能上方(Game_Battler下方) 然后,数据库内特征栏的所有属性耐性设置改为“增加的属性耐性值” 如角色A原本有0耐性,装备设置有100的防具,则角色A的耐性为100,再装备一个,角色A的耐性为200。 剩余内容同默认(如多属性攻击怎么算等)。 之后我想问问第三项要求是啥= =
http://rpg.blue/static/image/smiley/yct/A059.gif中国字认识都不到一半,哪的心情学英语呀!

Lv1.梦旅人

Mr.Gandum

梦石
0
星屑
226
在线时间
2070 小时
注册时间
2007-1-31
帖子
3039

贵宾

2
发表于 2012-7-31 13:19:16 | 只看该作者
  1. #==============================================================================
  2. # ■ Game_BattlerBase
  3. #------------------------------------------------------------------------------
  4. #  バトラーを扱う基本のクラスです。主に能力値計算のメソッドを含んでいます。こ
  5. # のクラスは Game_Battler クラスのスーパークラスとして使用されます。
  6. #==============================================================================

  7. class Game_BattlerBase
  8.   #--------------------------------------------------------------------------
  9.   # ● 属性有効度の取得
  10.   #--------------------------------------------------------------------------
  11.   def element_rate(element_id)
  12.     [[features_sum(FEATURE_ELEMENT_RATE, element_id),0.0].max,9.5].min
  13.   end
  14. end
  15. #==============================================================================
  16. # ■ Game_Battler
  17. #------------------------------------------------------------------------------
  18. #  スプライトや行動に関するメソッドを追加したバトラーのクラスです。このクラス
  19. # は Game_Actor クラスと Game_Enemy クラスのスーパークラスとして使用されます。
  20. #==============================================================================

  21. class Game_Battler < Game_BattlerBase
  22.   #--------------------------------------------------------------------------
  23.   # ● ダメージ計算
  24.   #--------------------------------------------------------------------------
  25.   def make_damage_value(user, item)
  26.     value = item.damage.eval(user, self, $game_variables)
  27.     value = value * (( 10 - item_element_rate(user, item)) / 10)
  28.     value *= pdr if item.physical?
  29.     value *= mdr if item.magical?
  30.     value *= rec if item.damage.recover?
  31.     value = apply_critical(value) if @result.critical
  32.     value = apply_variance(value, item.damage.variance)
  33.     value = apply_guard(value)
  34.     @result.make_damage(value.to_i, item)
  35.   end
  36. end
复制代码
脚本放在脚本列表尽可能上方(Game_Battler下方)
然后,数据库内特征栏的所有属性耐性设置改为“增加的属性耐性值”
如角色A原本有0耐性,装备设置有100的防具,则角色A的耐性为100,再装备一个,角色A的耐性为200。
剩余内容同默认(如多属性攻击怎么算等)。
之后我想问问第三项要求是啥= =

点评

虽然我不喜欢脚本中有日文,但算法没问题,还是把分给你吧!没有第三项........  发表于 2012-7-31 16:35
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-27 13:44

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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