Project1

标题: 【纯新请教】一些基础的问题 [打印本页]

作者: 罪恶ぺ殇痕    时间: 2014-2-17 11:16
标题: 【纯新请教】一些基础的问题
本帖最后由 罪恶ぺ殇痕 于 2014-2-17 11:20 编辑

新人问题比较多,就一次性多问几个了0 0

Q1:前卫后卫中卫这些称呼是否可以改变?

Q2:请问怎么用纯事件制作技能冷却效果?

Q3:我制作了一个技能,效果想法是5回合后目标会强制死亡,但是不知道应该怎么做。

Q4:怎么让一个角色使用技能后在技能装备下生命上限提升,然后状态解除后上限回复原样。

Q5:怎么让两个特定角色在队伍中的时候可以获得一个指定的特殊技能,然后其中一人离队的情况下两人的特殊技能都会消失。

Q6:怎么突破显示文章的字数上限?
作者: 天地有正气    时间: 2014-2-17 19:44
1.这些在游戏里是无法显示的,没有改的必要。
2.纯事件制作比较麻烦,建议使用脚本。
3.http://rpg.blue/thread-338888-1-1.html 这是我一个教程,下载里面的范例,实现了3回合强制死亡,只不过是RMVA的,事件通用。
4.看不懂你在说什么……使用状态制作,使用后附加状态。
5.在战斗开始前判定。
6.使用其他对话框脚本。

LZ注意看版规,一贴多问是违规的!!!
作者: 罪恶ぺ殇痕    时间: 2014-2-17 20:54
天地有正气 发表于 2014-2-17 19:44
1.这些在游戏里是无法显示的,没有改的必要。
2.纯事件制作比较麻烦,建议使用脚本。
3.http://bbs.66rpg.c ...

不好意思0 0之前没注意版规。。。
第四条具体解释是这样的
假设我设置了一个技能:强壮
强壮的效果:在状态持续期间HPMAX会增加若干,但是状态解除后HPMAX回复原样。
我研究了半天的事件设置,只会把HPMAX调上去,但是结束后就变不回来了。
作者: 罪恶ぺ殇痕    时间: 2014-2-17 21:15
天地有正气 发表于 2014-2-17 19:44
1.这些在游戏里是无法显示的,没有改的必要。
2.纯事件制作比较麻烦,建议使用脚本。
3.http://bbs.66rpg.c ...


直接附加状态也不行啊。
我设置了一个状态:强壮。

然后公共事件:判断角色为【强壮】变为
HPMAX+2000
HP+2000

除此以外的场合
HPMAX-2000


结果技能释放成功之后HPMAX+2000,但是状态解除了却不会变回来。
而且如果状态附加失败就直接-2000的HPMAX了。。。
作者: 断电    时间: 2014-2-17 22:07
本帖最后由 断电 于 2014-2-17 22:15 编辑

用脚本实现比较容易一些……在Game_Battler 1   53行左右找到这一部分:

  1.   #--------------------------------------------------------------------------
  2.   # ● 获取 MaxHP
  3.   #--------------------------------------------------------------------------
  4.   def maxhp
  5.     n = [[base_maxhp + @maxhp_plus, 1].max, 9999].min
  6.     for i in @states
  7.       n *= $data_states[i].maxhp_rate / 100.0
  8.     end
  9.     n = [[Integer(n), 1].max, 9999].min
  10.     return n
  11.   end
复制代码
改成:

  1.   #--------------------------------------------------------------------------
  2.   # ● 获取 MaxHP
  3.   #--------------------------------------------------------------------------
  4.   def maxhp
  5.     n = [[base_maxhp + @maxhp_plus, 1].max, 9999].min
  6.     ##############当角色处于25号状态时,基础HP上升2000(状态百分比受加成)
  7.     if self.states.include?(25)
  8.      n += 2000
  9.     end
  10.     ##############
  11.     for i in @states
  12.       n *= $data_states[i].maxhp_rate / 100.0
  13.     end
  14.     ##############当角色处于25号状态时,基础HP上升2000(状态百分比不受加成)
  15.     #if self.states.include?(25)
  16.      #n += 2000
  17.     #end
  18.     ##############
  19.     n = [[Integer(n), 1].max, 9999].min
  20.     return n
  21.   end
复制代码
其实就是加了一个是否具有某状态的判断,状态的序号和加的数值只要修改成你需要的数值就可以了。如果有多个这样效果的状态(比如24号加500,25号加2000这样的),就复制一下两行###内的内容粘在原处的下面就可以了(我可真是啰嗦)。两个不同的位置效果不太一样在上面的注释也写了,启用哪个就在另一个前面加#。第一个位置是受状态设置中的百分比加成的,举例来说原HP1000,附加HP2000,共3000,获取一个HP增加到120%的状态,那么最终就是1000*120%+2000=3200.如果启用第二个位置的最终就是(1000+2000)*120%=3600.根据你的需要启用其中一个吧(不要两个都用)
增加其他类型数值的话,仿照这个,复制粘贴到下面的获取力量啊什么的里面就行了(注意上限)。

但是这样试一下你会发现只有力量之类的设置才起效果,最大HP木有变这是为什么呢
然后我发现在Game_Actor里面还有一个获取MaxHP而且只有MaxHP……总之就把这个修改过的复制一份粘到Game_Actor的获取MaxHP里面就行了(为什么要重写一遍我真的很困惑……难道因为我用的是1.02?)




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1