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

Project1

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

如何在战斗选项底加图片(每个角色不一样)

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
205
在线时间
230 小时
注册时间
2008-7-8
帖子
233
跳转到指定楼层
1
发表于 2009-2-9 19:05:47 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
在战斗选项底加图,像每个角色一张图
此贴于 2009-2-9 13:48:00 被版主redant提醒,请楼主看到后对本贴做出回应。
版务信息:本贴由楼主自主结贴~
A man chooses; a slave obeys.

Lv1.梦旅人

蚂蚁卡卡

梦石
0
星屑
116
在线时间
66 小时
注册时间
2007-12-16
帖子
3081
3
发表于 2009-2-9 21:47:03 | 只看该作者
  1. #==============================================================================
  2. # ■ Window_BattleStatus
  3. #------------------------------------------------------------------------------
  4. #  显示战斗画面同伴状态的窗口。
  5. #==============================================================================

  6. class Window_BattleStatus < Window_Base
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对像
  9.   #--------------------------------------------------------------------------
  10.   def initialize
  11.     super(0, 0, 640, 480)
  12.     self.contents = Bitmap.new(width - 32, height - 32)
  13.     @level_up_flags = [false, false, false, false]
  14.     #........................................................................
  15.     self.opacity = 0
  16.     @sta_back = []
  17.     @sta_output = []
  18.    # @cp_output = []
  19.     @hp_bitmap = RPG::Cache.picture("../system/battle/hmcp/hp_bar.png")
  20.     @mp_bitmap = RPG::Cache.picture("../system/battle/hmcp/mp_bar.png")
  21.    # @bitmap3 = RPG::Cache.picture("../system/battle/hmcp/底.png")
  22.     # @cp_bitmap = RPG::Cache.picture("../system/battle/hmcp/cp_bar.png")
  23.    # @cp_output = []
  24.    # @cp_back_bar = Sprite.new
  25.     #@cp_back_bar.bitmap = Bitmap.new("Graphics/system/battle/hmcp/cp_back_bar")
  26.    ## @cp_back_bar.x = 450
  27.    # @cp_back_bar.y = 25
  28.     #@cp_back_bar.z = self.z + 1
  29.    # @actor_cp_sprite = []
  30.    # @actor_cp_sprite_back = []

  31.     for actor_index in 1..$game_party.actors.size
  32. #      @cp_output[actor_index] = Sprite.new
  33.      # @cp_output[actor_index].bitmap = Bitmap.new(133, 78)
  34.     #  @cp_output[actor_index].x = 100 + (actor_index - 1) * 133
  35.     #  @cp_output[actor_index].y = 480 - 78 - 10
  36.     #  @cp_output[actor_index].z = self.z + 2
  37. #      @cp_output[actor_index].bitmap.clear
  38.       @sta_back[actor_index] = Sprite.new
  39.       @sta_back[actor_index].bitmap = Bitmap.new("Graphics/System/Battle/sta_back/" + $game_party.actors[actor_index - 1].name + "战斗.png")
  40.       @sta_back[actor_index].x = 10
  41.       @sta_back[actor_index].y = 220 + (actor_index - 1) * 80
  42.       @sta_back[actor_index].z = self.z + 1
  43.      @sta_output[actor_index] = Sprite.new
  44.       @sta_output[actor_index].bitmap = Bitmap.new(133, 78)
  45.      @sta_output[actor_index].x = 75
  46.       @sta_output[actor_index].y = 232 + (actor_index - 1) * 80
  47.       @sta_output[actor_index].z = self.z + 2
  48.       @sta_output[actor_index].bitmap.clear
  49.       @sta_output[actor_index].bitmap.font.size = 10
  50.       @sta_output[actor_index].bitmap.font.name = "黑体"
  51.       hp_width = $game_party.actors[actor_index - 1].hp * @hp_bitmap.width/$game_party.actors[actor_index - 1].maxhp
  52.       hp_rect = Rect.new(0, 0, hp_width, 5)
  53.       mp_width = $game_party.actors[actor_index - 1].sp * @mp_bitmap.width/$game_party.actors[actor_index - 1].maxsp
  54.       mp_rect = Rect.new(0, 0, mp_width, 5)
  55.       
  56.      # @src_rect3 = Rect.new(0,0,@bitmap3.width, @bitmap3.height)
  57.      # self.contents.blt(10,220, @bitmap3, @src_rect3)
  58.       
  59.     #  @sta_output[actor_index].bitmap.blt(66, 44, @hp_bitmap, hp_rect)
  60.      # @sta_output[actor_index].bitmap.blt(66, 64, @mp_bitmap, mp_rect)
  61.      # @sta_output[actor_index].bitmap.blt(66, 54, @bitmap3, @src_rect3)
  62.       
  63.       @sta_output[actor_index].bitmap.font.color.set(255, 0, 0)
  64.       @sta_output[actor_index].bitmap.draw_text(80, 31, 77, 11,$game_party.actors[actor_index - 1].hp.to_s + "/" + $game_party.actors[actor_index - 1].maxhp.to_s)
  65.       @sta_output[actor_index].bitmap.font.color.set(0, 0, 255)
  66.      @sta_output[actor_index].bitmap.draw_text(80, 51, 77, 11,$game_party.actors[actor_index - 1].sp.to_s + "/" + $game_party.actors[actor_index - 1].maxsp.to_s)
  67.     end
  68.     #........................................................................
  69.     refresh
  70.   end
  71.   #--------------------------------------------------------------------------
  72.   # ● 释放
  73.   #--------------------------------------------------------------------------
  74.   def dispose
  75.     super
  76.     @hp_bitmap.bitmap.dispose
  77.    @hp_bitmap.dispose
  78.     @mp_bitmap.bitmap.dispose
  79.     @mp_bitmap.dispose
  80.     #@cp_bitmap.bitmap.dispose
  81.    # @cp_bitmap.dispose
  82.     for actor_index in 1..$game_party.actors.size
  83.       @sta_back[actor_index].bitmap.dispose
  84.       @sta_back[actor_index].dispose
  85.       @sta_output[actor_index].bitmap.dispose
  86.       @sta_output[actor_index].dispose
  87.      # @cp_output[actor_index].bitmap.dispose
  88.      # @cp_output[actor_index].dispose
  89.     end
  90.   end
  91.   #--------------------------------------------------------------------------
  92.   # ● 设置升级标志
  93.   #     actor_index : 角色索引
  94.   #--------------------------------------------------------------------------
  95.   def level_up(actor_index)
  96.     @level_up_flags[actor_index] = true
  97.   end
  98.   #......................................................................
  99.   #--------------------------------------------------------------------------
  100.   # ● 设置正在攻击标志
  101.   #     actor_index : 角色索引
  102.   #--------------------------------------------------------------------------
  103.   def in_atk(actor_index)
  104.    @sta_back[actor_index + 1].bitmap = Bitmap.new("Graphics/System/Battle/sta_back/" + $game_party.actors[actor_index].name + "战斗1.png")
  105.   end
  106.   #--------------------------------------------------------------------------
  107.   # ● 设置不在攻击标志
  108.   #     actor_index : 角色索引
  109.   #--------------------------------------------------------------------------
  110.   def out_atk(actor_index)
  111.     @sta_back[actor_index + 1].bitmap = Bitmap.new("Graphics/System/Battle/sta_back/" + $game_party.actors[actor_index].name + "战斗.png")
  112.   end
  113.   #......................................................................
  114.   #--------------------------------------------------------------------------
  115.   # ● 刷新
  116.   #--------------------------------------------------------------------------
  117.   def refresh
  118.     self.contents.clear
  119.     @item_max = $game_party.actors.size
  120.     for i in 0...$game_party.actors.size
  121.       actor = $game_party.actors[i]
  122.       #......................................................................
  123.        actor_x = i * 160 + 145
  124.        actor_y = i * 80 + 220
  125.       @sta_output[i + 1].bitmap.clear
  126.      hp_width = $game_party.actors[i].hp * @hp_bitmap.width/$game_party.actors[i].maxhp
  127.       hp_rect = Rect.new(0, 0, hp_width, 5)
  128.       mp_width = $game_party.actors[i].sp * @mp_bitmap.width/$game_party.actors[i].maxsp
  129.       mp_rect = Rect.new(0, 0, mp_width, 5)
  130.       @sta_output[i + 1].bitmap.blt(66, 44, @hp_bitmap, hp_rect)
  131.       #间距
  132.       @sta_output[i + 1].bitmap.blt(66, 64, @mp_bitmap, mp_rect)
  133.       @sta_output[i + 1].bitmap.font.color.set(255, 0, 0)
  134.       @sta_output[i + 1].bitmap.draw_text(80, 31, 77, 11,$game_party.actors[i].hp.to_s + "/" + $game_party.actors[i].maxhp.to_s)
  135.       @sta_output[i + 1].bitmap.font.color.set(0, 0, 255)
  136.       @sta_output[i + 1].bitmap.draw_text(80, 51, 77, 11,$game_party.actors[i].sp.to_s + "/" + $game_party.actors[i].maxsp.to_s)
  137.       #......................................................................
  138.       if @level_up_flags[i]
  139.         self.contents.font.color = normal_color
  140.         self.contents.draw_text(0, 0, 640 , 480, "LEVEL UP!")
  141.       else
  142.         draw_actor_state(actor, 120, actor_y)
  143.       end
  144.     end
  145.   end
  146.   #--------------------------------------------------------------------------
  147.   # ● 刷新画面
  148.   #--------------------------------------------------------------------------
  149.   def update
  150.     super
  151. #     主界面的不透明度下降
  152.     if $game_temp.battle_main_phase
  153.       self.contents_opacity = 255 #if self.contents_opacity > 1
  154.     else
  155.       self.contents_opacity = 255 #if self.contents_opacity < 255
  156.     end
  157.   end
  158. end
复制代码

系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
《隋唐乱》完整解密版点击进入
米兰,让我怎么说离开……

曾经我也是一个有志青年,直到我膝盖中了一箭……

《隋唐乱》博客地址
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2009-2-9
帖子
13
2
发表于 2009-2-9 19:46:46 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

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

GMT+8, 2025-1-18 06:45

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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