设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1264|回复: 0
打印 上一主题 下一主题

[已经过期] 想做一个45°的游戏 请问如何美化界面?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
85
在线时间
97 小时
注册时间
2012-9-8
帖子
34
跳转到指定楼层
1
发表于 2013-6-24 23:10:10 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x


我使用主站45°脚本想做一个游戏 但是界面太丑了想美化一下
再次请问一下各位 如何把战斗图下侧的血条和HP\PP去掉改成类似右图一样的血条
谢谢了!
↓使用的脚本
RUBY 代码复制
  1. # ————————————————————————————————————
  2. # 本脚本来自[url]www.66rpg.com[/url],转载请保留此信息
  3. # ————————————————————————————————————
  4. #==============================================================================
  5. # ■ Game_Actor
  6. #------------------------------------------------------------------------------
  7. #  处理角色的类。本类在 Game_Actors 类 ($game_actors)
  8. # 的内部使用、Game_Party 类请参考 ($game_party) 。
  9. #==============================================================================
  10. class Game_Actor < Game_Battler
  11.   #--------------------------------------------------------------------------
  12.   # ● 取得战斗画面的 X 坐标
  13.   #--------------------------------------------------------------------------
  14.   def screen_x
  15.     case self.index
  16.     when 0
  17.       return 350
  18.     when 1
  19.       return 430
  20.     when 2
  21.       return 510
  22.     when 3
  23.       return 580
  24.     else
  25.       return 600
  26.     end
  27.   end
  28.   #--------------------------------------------------------------------------
  29.   # ● 取得战斗画面的 Y 坐标
  30.   #--------------------------------------------------------------------------
  31.   def screen_y
  32.     case self.index
  33.     when 0
  34.       return 430
  35.     when 1
  36.       return 395
  37.     when 2
  38.       return 360
  39.     when 3
  40.       return 325
  41.     else
  42.       return 1000
  43.     end
  44.   end
  45.   #--------------------------------------------------------------------------
  46.   # ● 取得战斗画面的 Z 坐标
  47.   #--------------------------------------------------------------------------
  48.   def screen_z
  49.     case self.index
  50.     when 0
  51.       return 10
  52.     when 1
  53.       return 9
  54.     when 2
  55.       return 8
  56.     when 3
  57.       return 7
  58.     else
  59.       return 0
  60.     end
  61.   end
  62. end
  63.  
  64. #==============================================================================
  65. # ■ Window_Base
  66. #------------------------------------------------------------------------------
  67. #  游戏中全部窗口的超级类。
  68. #==============================================================================
  69. class Window_Base < Window
  70.   #--------------------------------------------------------------------------
  71.   # ● 描绘 HP
  72.   #     actor : 角色
  73.   #     x     : 描画目标 X 坐标
  74.   #     y     : 描画目标 Y 坐标
  75.   #     width : 描画目标的宽
  76.   #--------------------------------------------------------------------------
  77.   def draw_actor_hp1(actor, x, y, width = 72)
  78.     # 描绘字符串 "HP"
  79.     self.contents.font.color = system_color
  80.     self.contents.draw_text(x, y, 24, 24, $data_system.words.hp)
  81.     # 计算描绘 MaxHP 所需的空间
  82.     if width - 24 >= 32
  83.       hp_x = x + 32# + width - 24
  84.     end
  85.     # 描绘 HP
  86.     self.contents.font.color = actor.hp == 0 ? knockout_color :
  87.       actor.hp <= actor.maxhp / 4 ? crisis_color : normal_color
  88.     self.contents.draw_text(hp_x, y, 32, 24, actor.hp.to_s, 2)
  89.   end
  90.   #--------------------------------------------------------------------------
  91.   # ● 描绘 SP
  92.   #     actor : 角色
  93.   #     x     : 描画目标 X 坐标
  94.   #     y     : 描画目标 Y 坐标
  95.   #     width : 描画目标的宽
  96.   #--------------------------------------------------------------------------
  97.   def draw_actor_sp1(actor, x, y, width = 72)
  98.     # 描绘字符串 "SP"
  99.     self.contents.font.color = system_color
  100.     self.contents.draw_text(x, y, 24, 24, $data_system.words.sp)
  101.     # 计算描绘 MaxSP 所需的空间
  102.     if width - 24 >= 32
  103.       sp_x = x + 32# + width - 24
  104.     end
  105.     # 描绘 SP
  106.     self.contents.font.color = actor.sp == 0 ? knockout_color :
  107.       actor.sp <= actor.maxsp / 4 ? crisis_color : normal_color
  108.     self.contents.draw_text(sp_x, y, 32, 24, actor.sp.to_s, 2)
  109.   end
  110. end
  111.  
  112.  
  113.  
  114. #==============================================================================
  115. # ■ Window_BattleStatus
  116. #------------------------------------------------------------------------------
  117. #  显示战斗画面同伴状态的窗口。
  118. #==============================================================================
  119. class Window_BattleStatus < Window_Base
  120.   #--------------------------------------------------------------------------
  121.   # ● 初始化对像
  122.   #--------------------------------------------------------------------------
  123.   #$data_system_level_up_me = "Audio/ME/升级音乐"
  124.   def initialize
  125.     super(0, 0, 640, 480)
  126.     self.contents = Bitmap.new(width - 10, height - 32)
  127.     self.opacity = 0
  128.     @level_up_flags = [false, false, false, false]
  129.     refresh
  130.   end
  131.   #--------------------------------------------------------------------------
  132.   # ● 释放
  133.   #--------------------------------------------------------------------------
  134.   def dispose
  135.     super
  136.   end
  137.   #--------------------------------------------------------------------------
  138.   # ● 设置升级标志
  139.   #     actor_index : 角色索引
  140.   #--------------------------------------------------------------------------
  141.   def level_up(actor_index)
  142.     @level_up_flags[actor_index] = true
  143.   end
  144.   #--------------------------------------------------------------------------
  145.   # ● 刷新
  146.   #--------------------------------------------------------------------------
  147.   def refresh
  148.     self.contents.clear
  149.     @item_max = $game_party.actors.size
  150.     for i in 0...$game_party.actors.size
  151.       actor = $game_party.actors[i]
  152.       case i
  153.       when 0
  154.         x = 310
  155.         y = 390
  156.       when 1
  157.         x = 390
  158.         y = 340
  159.       when 2
  160.         x = 480
  161.         y = 300
  162.       when 3
  163.         x = 550
  164.         y = 270
  165.       end
  166.       if @level_up_flags[i]
  167.         self.contents.font.color = normal_color
  168.         self.contents.draw_text(x, y, 80, 24, "LEVEL UP!")
  169.         Audio.me_stop
  170.         #        Audio.me_play($data_system_level_up_me)
  171.       else
  172.         draw_actor_hp1(actor, x-15, y-15, 80)
  173.         draw_actor_sp1(actor, x-15, y+5, 80)
  174.       end
  175.     end
  176.   end
  177.   #--------------------------------------------------------------------------
  178.   # ● 刷新画面
  179.   #--------------------------------------------------------------------------
  180.   def update
  181.     super
  182.     # 主界面的不透明度下降
  183.     if $game_temp.battle_main_phase
  184.       self.contents_opacity -= 50 if self.contents_opacity > 1
  185.     else
  186.       self.contents_opacity += 50 if self.contents_opacity < 255
  187.     end
  188.   end
  189. end
  190.  
  191.  
  192. #==============================================================================
  193. # ■ Window_BattleStatus
  194. #==============================================================================
  195. class Window_BattleStatus < Window_Base
  196.   #--------------------------------------------------------------------------
  197.   # ● 初始化
  198.   #--------------------------------------------------------------------------
  199.   alias xrxs_bp2_refresh refresh
  200.   def refresh
  201.     xrxs_bp2_refresh
  202.     @item_max = $game_party.actors.size
  203.     for i in 0...$game_party.actors.size
  204.       actor = $game_party.actors[i]
  205.       case i
  206.       when 0
  207.         x = 310
  208.         y = 390
  209.       when 1
  210.         x = 390
  211.         y = 340
  212.       when 2
  213.         x = 480
  214.         y = 300
  215.       when 3
  216.         x = 550
  217.         y = 270
  218.       end
  219.       draw_actor_hp_meter(actor, x, y, 50)
  220.       draw_actor_sp_meter(actor, x, y + 8, 50)
  221.     end
  222.   end
  223. end
  224. #==============================================================================
  225. # ■ Window_Base
  226. #==============================================================================
  227. class Window_Base < Window
  228.   #--------------------------------------------------------------------------
  229.   # ● HP描画
  230.   #--------------------------------------------------------------------------
  231.   def draw_actor_hp_meter(actor, x, y, width = 156, type = 0)
  232.     if type == 1 and actor.hp == 0
  233.       return
  234.     end
  235.     self.contents.font.color = system_color
  236.     self.contents.fill_rect(x-1, y+27, width+2,6, Color.new(0, 0, 0, 25))
  237.     w = width * actor.hp / actor.maxhp
  238.     self.contents.fill_rect(x, y+28, w,1, Color.new(255, 96, 96, 255))
  239.     self.contents.fill_rect(x, y+29, w,1, Color.new(255, 0, 0, 255))
  240.     self.contents.fill_rect(x, y+30, w,1, Color.new(128, 0, 0, 255))
  241.     self.contents.fill_rect(x, y+31, w,1, Color.new(0, 0, 0, 255))
  242.  
  243.   end
  244.   #--------------------------------------------------------------------------
  245.   # ● SP描画
  246.   #--------------------------------------------------------------------------
  247.   def draw_actor_sp_meter(actor, x, y, width = 156, type = 0)
  248.     if type == 1 and actor.hp == 0
  249.       return
  250.     end
  251.     self.contents.font.color = system_color
  252.     self.contents.fill_rect(x-1, y+27, width+2,6, Color.new(0, 0, 0, 255))
  253.     w = width * actor.sp / actor.maxsp
  254.     self.contents.fill_rect(x, y+28, w,1, Color.new(128, 255, 255, 255))
  255.     self.contents.fill_rect(x, y+29, w,1, Color.new(0, 255, 255, 255))
  256.     self.contents.fill_rect(x, y+30, w,1, Color.new(0, 192, 192, 255))
  257.     self.contents.fill_rect(x, y+31, w,1, Color.new(0, 128, 128, 255))
  258.   end
  259. end
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-12-28 06:22

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表