Project1

标题: 如何让各个角色的tp值独立 [打印本页]

作者: 时空輓    时间: 2018-4-6 20:29
标题: 如何让各个角色的tp值独立
emmmmm……最近沉迷fgo
然后呢想复刻一个np系统,然后就卡在了np最大值上
所以就来这里问问,tp可以用if命令改脚本来加到300,可是貌似不能单独加某个角色的tp上限
求一下解决方法
作者: 文雅夕露    时间: 2018-4-6 20:31
np系统是个什么样的系统?
如果是单独tp上限的话,case when就能办到了吧。
作者: 时空輓    时间: 2018-4-6 20:33
文雅夕露 发表于 2018-4-6 21:31
np系统是个什么样的系统?
如果是单独tp上限的话,case when就能办到了吧。

np可以简单视为tp,不过这里的简单想法就是想你所说的单独tp上限,顺便问一下case when是啥玩意,这里基本是咸鱼
作者: 文雅夕露    时间: 2018-4-6 20:39
时空輓 发表于 2018-4-6 20:33
np可以简单视为tp,不过这里的简单想法就是想你所说的单独tp上限,顺便问一下case when是啥玩意,这里基 ...

简单的条件分歧...
case actor_id
when 0
return
when 1
return
end

作者: 时空輓    时间: 2018-4-6 20:58
文雅夕露 发表于 2018-4-6 21:39
简单的条件分歧...
case actor_id
when 0

……说句实话还是不太懂,如果按照我能理解的就是
if开关x开启,则角色x的tp上限增加
目前就是不清楚怎么作出角色x的效果,还是希望dalao能帮帮忙啦~
作者: 文雅夕露    时间: 2018-4-6 21:32
本帖最后由 文雅夕露 于 2018-4-7 12:27 编辑
  1. #==============================================================================
  2. # ■ Game_BattlerBase
  3. #------------------------------------------------------------------------------
  4. #  管理战斗者的类。主要含有能力值计算的方法。Game_Battler 类的父类。
  5. #==============================================================================

  6. class Game_BattlerBase
  7.   #--------------------------------------------------------------------------
  8.   # ● 获取角色实例
  9.   #--------------------------------------------------------------------------
  10.   def actor
  11.     $data_actors[@actor_id]
  12.   end
  13.   #--------------------------------------------------------------------------
  14.   # ● 获取 TP 的最大值
  15.   #--------------------------------------------------------------------------
  16.   def max_tp
  17.     if self.is_a?(Game_Actor)
  18.     case @actor_id
  19.     when 1
  20.     return 200
  21.     when 2
  22.     return 300
  23.   else
  24.     return 100
  25.         end
  26.     end
  27.   end
  28. end
  29.   #--------------------------------------------------------------------------
  30.   # ● 获取 TP 的比率
  31.   #--------------------------------------------------------------------------
  32.   def tp_rate
  33.     if self.is_a?(Game_Actor)
  34.     case @actor_id
  35.     when 1
  36.     @tp.to_f / 200
  37.     when 2
  38.     @tp.to_f / 300
  39.   else
  40.     @tp.to_f / 100
  41.       end
  42.     end
  43.   end

复制代码

挺简单的操作,这里只是举个例子而已。

每个角色的TP最大值都是不一样,详情请你自己赋值吧。




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