Project1

标题: 敌人HP、SP槽 随血量改变颜色的问题 [打印本页]

作者: 南宫洛阳    时间: 2008-1-5 15:02
标题: 敌人HP、SP槽 随血量改变颜色的问题
“敌人HP、SP槽 随血量改变颜色”这个脚本可不可以把敌人的HP、SP的具体数值去掉,不让它显示,而是现实成百分比的形式? [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 南宫洛阳    时间: 2008-1-5 15:02
标题: 敌人HP、SP槽 随血量改变颜色的问题
“敌人HP、SP槽 随血量改变颜色”这个脚本可不可以把敌人的HP、SP的具体数值去掉,不让它显示,而是现实成百分比的形式? [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 秋弦月    时间: 2008-1-5 16:47
可以把脚本贴上来吗?这样方便一点,你这么说别人不一定知道{/tp}
作者: 南宫洛阳    时间: 2008-1-5 17:12
http://rpg.blue/web/htm/news432.htm
  1. #==============================================================================
  2. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  3. #==============================================================================


  4. class Window_Help < Window_Base
  5.   def set_enemy(actor)
  6.     self.contents.clear
  7.     draw_actor_name(actor, 4, 0)
  8.     draw_actor_state(actor, 140, 0)
  9.     carol3_draw_hp_bar(actor, 284, 0)
  10.     carol3_draw_sp_bar(actor, 460, 0)
  11.     @text = nil
  12.     self.visible = true
  13.   end
  14.   def carol3_draw_hp_bar(actor, x, y, width = 128) #宽度可调
  15.     self.contents.font.color = system_color
  16.     w = width * actor.hp / [actor.maxhp,1].max
  17.     if actor.maxhp != 0
  18.       rate = actor.hp.to_f / actor.maxhp
  19.     else
  20.       rate = 0
  21.     end
  22.     color1 = Color.new(240 - 72 * rate, 240 * rate, 62 * rate, 150)
  23.     self.contents.fill_rect(x+1, y+15, width+2,1, Color.new(0, 0, 0, 255))
  24.     self.contents.fill_rect(x+1, y+16, width+2,1, Color.new(255, 255, 192, 192))
  25.     self.contents.fill_rect(x+1, y+17, w,6,color1)
  26.     self.contents.fill_rect(x+1, y+23, width+2,1, Color.new(255, 255, 192, 192))
  27.     self.contents.fill_rect(x+1, y+24, width+2,1, Color.new(0, 0, 0, 255))
  28.     self.contents.fill_rect(x, y+16, 1,8, Color.new(255, 255, 192, 192))
  29.     self.contents.fill_rect(x-1, y+15, 1,10, Color.new(0, 0, 0, 255))
  30.     self.contents.fill_rect(x+129, y+16, 1,8, Color.new(255, 255, 192, 192))
  31.     self.contents.fill_rect(x+130, y+15, 1,10, Color.new(0, 0, 0, 255))
  32.     self.contents.draw_text(x-53,y,128,32,$data_system.words.hp,1)
  33.     if actor.hp>actor.maxhp/3
  34.       self.contents.font.color = Color.new(255, 255, 255, 250)
  35.     end
  36.     if actor.hp>=actor.maxhp/6 and actor.maxhp/3>actor.hp
  37.       self.contents.font.color = Color.new(200, 200, 0, 255)
  38.     end
  39.     if actor.maxhp/6>actor.hp
  40.       self.contents.font.color = Color.new(200, 0, 0, 255)
  41.     end
  42.     self.contents.draw_text(x+47,y,128,32,actor.hp.to_s,1)
  43.   end
  44.   def carol3_draw_sp_bar(actor, x, y, width = 128)
  45.     self.contents.font.color = system_color
  46.     if actor.maxsp != 0
  47.       rate = actor.sp.to_f / actor.maxsp
  48.     else
  49.       rate = 0
  50.     end
  51.     color2 = Color.new(62 * rate, 240 - 72 * rate, 240 * rate, 192)
  52.     w = width * actor.sp / [actor.maxsp,1].max
  53.     self.contents.fill_rect(x+1, y+15, width+2,1, Color.new(0, 0, 0, 255))
  54.     self.contents.fill_rect(x+1, y+16, width+2,1, Color.new(255, 255, 192, 192))
  55.     self.contents.fill_rect(x+1, y+17, w,6,color2)
  56.     self.contents.fill_rect(x+1, y+23, width+2,1, Color.new(255, 255, 192, 192))
  57.     self.contents.fill_rect(x+1, y+24, width+2,1, Color.new(0, 0, 0, 255))
  58.     self.contents.fill_rect(x, y+16, 1,8, Color.new(255, 255, 192, 192))
  59.     self.contents.fill_rect(x-1, y+15, 1,10, Color.new(0, 0, 0, 255))
  60.     self.contents.fill_rect(x+129, y+16, 1,8, Color.new(255, 255, 192, 192))
  61.     self.contents.fill_rect(x+130, y+15, 1,10, Color.new(0, 0, 0, 255))
  62.     self.contents.draw_text(x-53,y,128,32,$data_system.words.sp,1)
  63.     if actor.hp>actor.maxsp/3
  64.       self.contents.font.color = Color.new(255, 255, 255, 250)
  65.     end
  66.     if actor.hp>=actor.maxsp/6 and actor.maxsp/3>actor.sp
  67.       self.contents.font.color = Color.new(200, 200, 0, 255)
  68.     end
  69.     if actor.maxsp/6>actor.sp
  70.       self.contents.font.color = Color.new(200, 0, 0, 255)
  71.     end
  72.     self.contents.draw_text(x+47,y,128,32,actor.sp.to_s,1)
  73.   end
  74. end
  75. #==============================================================================
  76. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  77. #==============================================================================
复制代码

帮帮忙~{/qiang}
作者: 秋弦月    时间: 2008-1-5 17:19
改脚本麻烦,换脚本不行么?

显示敌人血槽百分比:
第一种:http://rpg.blue/web/htm/news146.htm
第二种:http://rpg.blue/web/htm/news220.htm(宽血槽版)

{/hx}刚才没多想,早知道先找出来给你好了。
作者: 黑撒旦    时间: 2008-1-5 17:26

要去掉数值,注释掉或是删掉以下语句:
self.contents.draw_text(x-53,y,128,32,$data_system.words.hp,1)
self.contents.draw_text(x+47,y,128,32,actor.hp.to_s,1)
self.contents.draw_text(x-53,y,128,32,$data_system.words.sp,1)
self.contents.draw_text(x+47,y,128,32,actor.sp.to_s,1)

或是如LS所言,换脚本也行。
[LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者: 南宫洛阳    时间: 2008-1-5 18:07
其实换脚本也可以,不过我用了这个脚本
http://rpg.blue/web/htm/news140.htm
为了美观,所以就用了提问时的脚本
不管怎样,谢谢了~!




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