Project1

标题: 关于经验值 [打印本页]

作者: 喵了个咪的。    时间: 2017-5-1 11:28
标题: 关于经验值
本帖最后由 喵了个咪的。 于 2017-5-6 12:13 编辑

话说我已经是问了第二遍了。{:2_277:}
能不能在RMVA里单独设置某个等级升级所需的经验值{:2_287:}

现在已经解决啦,谢谢@午睡的风铃
作者: 喵了个咪的。    时间: 2017-5-1 20:20
我的意思是升级所需的经验是没有规律的,确定可以吗,可以给截图吗
作者: 午睡的风铃    时间: 2017-5-3 09:46
  1. =begin

  2.   経験値テーブル設定ver0.90
  3.   
  4.   経験値テーブルを配列で設定できるようにします。
  5.   クラスのメモ欄に
  6.   <経験値テーブル:テーブルID>
  7.   と記述してください。
  8.   設定したテーブルIDのテーブルがそのクラスの経験値テーブルに設定されます。
  9.   
  10.   ver0.90:公開

  11. =end
  12. module SetExpTable
  13.   ExpTable = []
  14.   # テーブル1番 Lv1から順にNextを設定します。
  15.   # レベルの最大値-2だけ数値を用意してください。
  16.   ExpTable[1] = [10,20,50,100,200,300,500,999,
  17.             999,999,999,999,999,999,999,999,999,999,
  18.             999,999,999,999,999,999,999,999,999,999,
  19.             999,999,999,999,999,999,999,999,999,999,
  20.             999,999,999,999,999,999,999,999,999,999,
  21.             999,999,999,999,999,999,999,999,999,999,
  22.             999,999,999,999,999,999,999,999,999,999,
  23.             999,999,999,999,999,999,999,999,999,999,
  24.             999,999,999,999,999,999,999,999,999,999,
  25.             999,999,999,999,999,999,999,999,999,999
  26.   ]
  27. end

  28. class RPG::Class < RPG::BaseItem
  29.   alias set_exp_table_exp_for_level exp_for_level
  30.   def exp_for_level(level)
  31.     if self.note =~ /^[<<]経験値テーブル[::](\d+)[>>]/
  32.       if SetExpTable::ExpTable[$1.to_i]
  33.         n = 0
  34.         SetExpTable::ExpTable[$1.to_i].each_with_index{|exp,i|
  35.           n += exp if i <= (level - 2)
  36.         }
  37.         return n
  38.       end
  39.     end
  40.     return set_exp_table_exp_for_level(level)
  41.   end
  42. end
复制代码


自定义每一级所需升级经验

职业备注栏内备注  <経験値テーブル:テーブルID>
テーブルID改成18行ExpTable[1]的中括号里的数字

每个升级经验表格里设定的升级所需经验值数目是角色最大等级-2个,默认的99级满就是设定97个

已经忘记是什么年月在什么范例工程里搬运来的这个脚本了,不过都已经被别人搬运过了,我这次也不会侵权吧。




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