Project1

标题: 请教当第10号开关打开后所有怪的掉宝率增加10%的方法 [打印本页]

作者: taeckle    时间: 2020-5-4 03:18
标题: 请教当第10号开关打开后所有怪的掉宝率增加10%的方法
在数据库“敌人"一栏里可以设置战斗结束后敌人身上宝物的爆率,

如果我想让当第10号开关打开后所有怪的掉宝率增加10%的话,又该怎么搞呢?

再次请大家指点一二,多谢了!


作者: enghao_lim    时间: 2020-5-4 11:14
本帖最后由 enghao_lim 于 2020-5-4 11:16 编辑

比起开关,我更建议用变量,将一个变量赋值10就额外增加10%,不增加放0即可,这样可以做到多变化。
找到:
  1.         # 出现宝物判定
  2.         if rand(100) < enemy.treasure_prob
复制代码

改成
  1.         # 出现宝物判定
  2.         if rand(100) < enemy.treasure_prob + (($game_variables[1]) ? $game_variables[1] : 0)
复制代码

其中那个$game_variables[1]就是一号变量,要50号变量就改成$game_variables[50]。

当然你坚持10号开关如下……
  1.         # 出现宝物判定
  2.         if rand(100) < enemy.treasure_prob + (($game_switches[10]) ? 10 : 0)
复制代码

作者: SailCat    时间: 2020-5-5 02:23
建议更改Game系,而不是Scene系
楼上的方法有可能会使得掉落率超过100%,因此建议的改法是把不掉落率改成原来的90%

  1. class Game_Enemy
  2.   alias sc_treasure_prob treasure_prob
  3.   def treasure_prob
  4.     100 - (100 - sc_treasure_prob) * ($game_switches[10] ? 90 : 100) / 100
  5.   end
  6. end
复制代码







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