Project1

标题: ……关于脚本的问题…… [打印本页]

作者: 紫苍焰    时间: 2012-11-14 12:15
标题: ……关于脚本的问题……
……
完全是个脚本盲,刚开始学脚本,谁能告诉我一下,if actor.id ==1 这句,设置一个以上要用的分隔符是啥?
我知道这貌似是基础,不过找了很多地方都没找到……有谁能告诉我要去哪里翻这部分知识当然最好……
万分感谢……dsu_plus_rewardpost_czw
作者: 咕噜    时间: 2012-11-14 12:47
@actor_id = 1

= =?我完全不懂(大雾
作者: 紫苍焰    时间: 2012-11-14 13:11
  #--------------------------------------------------------------------------
  # ● 绘制值槽区域(包括 TP)
  #--------------------------------------------------------------------------
  def draw_gauge_area_with_tp(rect, actor)
    if actor.id == 1
      draw_actor_hp(actor, rect.x + 0, rect.y, 72)
      draw_actor_tp(actor, rect.x + 82, rect.y, 64)
    else
      draw_actor_hp(actor, rect.x + 0, rect.y, 72)
      draw_actor_mp(actor, rect.x + 82, rect.y, 64)
      draw_actor_tp(actor, rect.x + 156, rect.y, 64)
    end
  end

Window_BattleStatus最后的部分我这样改的……然后的确就能让1号角色在战斗画面不显示MP了……但是没法多加一个人物除非另写一条if……
作者: 怪蜀黍    时间: 2012-11-14 13:20
要让1、3、4号角色满足actor.id。
方法1:
if [1,3,4].include?(actor.id)
  draw_actor_hp(actor, rect.x + 0, rect.y, 72)
  draw_actor_tp(actor, rect.x + 82, rect.y, 64)
else
  draw_actor_hp(actor, rect.x + 0, rect.y, 72)
  draw_actor_mp(actor, rect.x + 82, rect.y, 64)
  draw_actor_tp(actor, rect.x + 156, rect.y, 64)
end
方法2:
case actor.id
when 1,3,4

  draw_actor_hp(actor, rect.x + 0, rect.y, 72)
  draw_actor_tp(actor, rect.x + 82, rect.y, 64)
else
  draw_actor_hp(actor, rect.x + 0, rect.y, 72)
  draw_actor_mp(actor, rect.x + 82, rect.y, 64)
  draw_actor_tp(actor, rect.x + 156, rect.y, 64)
end
作者: 紫苍焰    时间: 2012-11-14 13:24
哦哦!多谢!方法2看上去比较适合我这样的小白,于是决定采用了!
另外,这个case也可以用在别的地方吧?比如角色状态画面那里?




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