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

Project1

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

[已经解决] 技能公式中赋值语句无效

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
21 小时
注册时间
2015-12-27
帖子
11
跳转到指定楼层
1
发表于 2016-1-2 01:04:25 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
我用的是 MV,在技能的公式栏里面使用一些赋值语句时会没有效果。
举个栗子: a.hp=1,让技能使用者的hp变为1,或者a.hp-=5,让技能使用者的hp减少5
这样的语句都会莫名无效果。

参考下面的截图,这是一个单体伤害技能的设置页面,用到的技能公式是:
a.hp = 1; a.atk*5 - b.def
技能效果应该是让使用者的hp变为1,并对目标造成五倍攻击力减目标防御力的伤害。
实际测试结果是对目标伤害正常,可使用者hp没有变化。


是语句写的有问题么?还是MV不支持这样写了?如果都不是,哪里可能出了问题呢?

Lv1.梦旅人

梦石
0
星屑
65
在线时间
385 小时
注册时间
2007-7-27
帖子
4106

开拓者

2
发表于 2016-1-2 02:00:15 | 只看该作者
  1. Object.defineProperties(Game_BattlerBase.prototype, {
  2.     // Hit Points
  3.     hp: { get: function() { return this._hp; }, configurable: true },
  4.     // Magic Points
  5.     mp: { get: function() { return this._mp; }, configurable: true },
  6.     // Tactical Points
  7.     tp: { get: function() { return this._tp; }, configurable: true },
  8.     // Maximum Hit Points
  9.     mhp: { get: function() { return this.param(0); }, configurable: true },
  10.     // Maximum Magic Points
  11.     mmp: { get: function() { return this.param(1); }, configurable: true },
  12.     // ATtacK power
  13.     atk: { get: function() { return this.param(2); }, configurable: true },
  14.     // DEFense power
  15.     def: { get: function() { return this.param(3); }, configurable: true },
  16.     // Magic ATtack power
  17.     mat: { get: function() { return this.param(4); }, configurable: true },
  18.     // Magic DeFense power
  19.     mdf: { get: function() { return this.param(5); }, configurable: true },
  20.     // AGIlity
  21.     agi: { get: function() { return this.param(6); }, configurable: true },
  22.     // LUcK
  23.     luk: { get: function() { return this.param(7); }, configurable: true },
  24.     // HIT rate
  25.     hit: { get: function() { return this.xparam(0); }, configurable: true },
  26.     // EVAsion rate
  27.     eva: { get: function() { return this.xparam(1); }, configurable: true },
  28.     // CRItical rate
  29.     cri: { get: function() { return this.xparam(2); }, configurable: true },
  30.     // Critical EVasion rate
  31.     cev: { get: function() { return this.xparam(3); }, configurable: true },
  32.     // Magic EVasion rate
  33.     mev: { get: function() { return this.xparam(4); }, configurable: true },
  34.     // Magic ReFlection rate
  35.     mrf: { get: function() { return this.xparam(5); }, configurable: true },
  36.     // CouNTer attack rate
  37.     cnt: { get: function() { return this.xparam(6); }, configurable: true },
  38.     // Hp ReGeneration rate
  39.     hrg: { get: function() { return this.xparam(7); }, configurable: true },
  40.     // Mp ReGeneration rate
  41.     mrg: { get: function() { return this.xparam(8); }, configurable: true },
  42.     // Tp ReGeneration rate
  43.     trg: { get: function() { return this.xparam(9); }, configurable: true },
  44.     // TarGet Rate
  45.     tgr: { get: function() { return this.sparam(0); }, configurable: true },
  46.     // GuaRD effect rate
  47.     grd: { get: function() { return this.sparam(1); }, configurable: true },
  48.     // RECovery effect rate
  49.     rec: { get: function() { return this.sparam(2); }, configurable: true },
  50.     // PHArmacology
  51.     pha: { get: function() { return this.sparam(3); }, configurable: true },
  52.     // Mp Cost Rate
  53.     mcr: { get: function() { return this.sparam(4); }, configurable: true },
  54.     // Tp Charge Rate
  55.     tcr: { get: function() { return this.sparam(5); }, configurable: true },
  56.     // Physical Damage Rate
  57.     pdr: { get: function() { return this.sparam(6); }, configurable: true },
  58.     // Magical Damage Rate
  59.     mdr: { get: function() { return this.sparam(7); }, configurable: true },
  60.     // Floor Damage Rate
  61.     fdr: { get: function() { return this.sparam(8); }, configurable: true },
  62.     // EXperience Rate
  63.     exr: { get: function() { return this.sparam(9); }, configurable: true }
  64. });
复制代码
这些属性都只有get没有set
你用_hp试试

点评

谢谢关注!  发表于 2016-1-2 19:46
吸吸
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

3
发表于 2016-1-2 07:18:01 | 只看该作者
trentswd 发表于 2016-1-2 02:00
这些属性都只有get没有set
你用_hp试试

有 setHp 这个方法,还是别乱碰私有的东西了吧

点评

哦哦,是函数啊!经测试很好用,谢谢了!  发表于 2016-1-2 19:46
a.setHp(1)  发表于 2016-1-2 19:37
谢谢,可否简单讲下setHp怎么用?我很愚钝,没有找到相关教程  发表于 2016-1-2 19:36

评分

参与人数 1梦石 +1 收起 理由
余烬之中 + 1 hhh 当然要用_ 不用_还敢说玩mv

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
177
在线时间
170 小时
注册时间
2012-3-4
帖子
57
4
发表于 2016-1-3 23:36:02 手机端发表。 | 只看该作者
不能用=。JS不认自定义方法。只认数值运算。并且只有第一个;前的公式
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-14 13:35

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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