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

Project1

 找回密码
 注册会员
搜索

如何在战斗画面显示自定义的角色头像

查看数: 2878 | 评论数: 15 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2009-8-16 15:43

正文摘要:

本帖最后由 flzt5354 于 2009-8-18 08:24 编辑

回复

柳飛鷹 发表于 2009-8-18 11:38:43
哦 我望了 要在Scene_Battle 1生成其他窗口那里加入
    @face_window = Window_Battleface.new
释放窗口那里增加    @face_window.dispose
坐标自己修改一下 我这个只是配合了自己的游戏
坐标需要自己修改
well 发表于 2009-8-18 04:28:54
本帖最后由 well 于 2009-8-18 04:40 编辑

draw_actor_face(actor, x, y)
按你的要求是在battle_status窗口里调用的样子
class Window_Battleface
新建的这个窗口类是个范例吧,示范如何调用。
好像也可以在scene_battle里开一个这类窗口。调调窗口Z值和x,y大概就可以了。
别忘了dispose
flzt5354 发表于 2009-8-17 18:53:57
自动顶帖机器
flzt5354 发表于 2009-8-17 14:34:16
本帖最后由 flzt5354 于 2009-8-17 14:40 编辑

这脚本怎么用的- -我设置了也没效果
  1. class Window_Base < Window
  2.   def draw_actor_face(actor, x, y)
  3.   #----------------------------------------------------
  4.   #自定义角色脸图文件夹设定
  5.   #----------------------------------------------------
  6.   #以下定义角色脸图储存文件夹母文件夹。必须定义,否则会出错
  7.   #参照格式:Graphics/pictures/
  8.   $face1 = "Graphics/pictures/"
  9.   #以下定义角色脸图储存文件夹子文件夹。不定义子文件夹则留空
  10.   $face2 = ""
  11.   #--------------------------------------------------------------------------
  12.   # ● 脸图的描绘
  13.   #     actor : 角色
  14.   #     x     : 描画目标 X 坐标RPG::Cache.picture
  15.   #     y     : 描画目标 Y 坐标
  16.   #--------------------------------------------------------------------------
  17.   #----------------------------------------------------------------------------
  18.   #●脸图位置判定开始
  19.   #----------------------------------------------------------------------------
  20.   #判定脸图名称
  21.   #此为使用角色id作为脸图名称,若不使用则注释掉本行并取消使用角色名称作为
  22.   #脸图名称的注释
  23.   #test = actor.id
  24.   #此为使用角色名称作为脸图名称,若不使用则注释掉本行并取消使用角色id作为
  25.   #脸图名称的注释
  26.   test = actor.name + ""
  27.   #判定脸图位置
  28.   #这是自定义的文件夹,若不使用则注释掉本行并取消默认文件夹的注释
  29.   bitmap = Bitmap.new($face1+$face2+ "#{test}.png")
  30.   #这是默认的文件夹,若不使用则注释掉本行并取消自定义文件夹的注释
  31.   #bitmap = RPG::Cache.picture("#{test}")  
  32.   #----------------------------------------------------------------------------
  33.   #●脸图位置判定结束,生成脸图
  34.   #----------------------------------------------------------------------------
  35.     cw = bitmap.width
  36.     ch = bitmap.height
  37.     src_rect = Rect.new(0, 0, cw, ch)
  38.     self.contents.blt(x , y  , bitmap, src_rect)#(x - cw / 2, y - ch, bitmap, src_rect)
  39.   end
  40. end
  41. class Window_Battleface < Window_Base
  42.   #--------------------------------------------------------------------------
  43.   # ● 初始化目标
  44.   #--------------------------------------------------------------------------
  45.   def initialize
  46.     super(0, 0, 640, 480)
  47.     self.contents = Bitmap.new(width - 32, height - 32)
  48.     self.opacity = 0
  49.     self.z  = 199
  50.     refresh
  51. #    self.active = false
  52. #    self.index = -1
  53.   end
  54.   #--------------------------------------------------------------------------
  55.   # ● 刷新
  56.   #--------------------------------------------------------------------------
  57. def refresh
  58.     self.contents.clear
  59.     @item_max = $game_party.actors.size
  60.     for i in 0...$game_party.actors.size
  61.       x = i * 160-30
  62.       y = 260
  63.       actor = $game_party.actors[i]
  64.       draw_actor_face(actor, x + 8, y )
  65.       #draw_actor_graphic(actor, x - 40, y + 80)
  66.       #actor = $game_party.actors[i]
  67.     end
  68.   end
  69. end
复制代码
柳飛鷹 发表于 2009-8-17 12:57:24
我能!
  1. #战斗显示脚本新版。 作者:玄月
  2. #这是我第一次写外挂,所以有什么问题请多多包涵。
  3. #虽然我不知道这算不算外挂脚本,可是大家也凑合着用吧。
  4. #以前我也发过类似的脚本,可是那个他的z值无法调节,而且改动的地方很多
  5. #这次把它整合到一起,希望可以帮到大家,而且这次的用法也很简单了。
  6. #本人的思路就是想到既然可以在窗口中显示角色行走图,那么显示脸图也是可以的吧
  7. #鉴于战斗脚本还不是很熟练,所以只是在Window_Base里新建了一个项目来显示脸图而已
  8. #如果还有更好的方法请大家不吝赐教,谢谢了。
  9.    
  10. class Window_Base < Window
  11.   def draw_actor_face(actor, x, y)
  12.   #----------------------------------------------------
  13.   #自定义角色脸图文件夹设定
  14.   #----------------------------------------------------
  15.   #以下定义角色脸图储存文件夹母文件夹。必须定义,否则会出错
  16.   #参照格式:Graphics/pictures/
  17.   $face1 = "Graphics/system/battle/battlehead/"
  18.   #以下定义角色脸图储存文件夹子文件夹。不定义子文件夹则留空
  19.   $face2 = ""
  20.   #--------------------------------------------------------------------------
  21.   # ● 脸图的描绘
  22.   #     actor : 角色
  23.   #     x     : 描画目标 X 坐标RPG::Cache.picture
  24.   #     y     : 描画目标 Y 坐标
  25.   #--------------------------------------------------------------------------
  26.   #----------------------------------------------------------------------------
  27.   #●脸图位置判定开始
  28.   #----------------------------------------------------------------------------
  29.   #判定脸图名称
  30.   #此为使用角色id作为脸图名称,若不使用则注释掉本行并取消使用角色名称作为
  31.   #脸图名称的注释
  32.   #test = actor.id
  33.   #此为使用角色名称作为脸图名称,若不使用则注释掉本行并取消使用角色id作为
  34.   #脸图名称的注释
  35.   test = actor.name + ""
  36.   #判定脸图位置
  37.   #这是自定义的文件夹,若不使用则注释掉本行并取消默认文件夹的注释
  38.   bitmap = Bitmap.new($face1+$face2+ "#{test}.png")
  39.   #这是默认的文件夹,若不使用则注释掉本行并取消自定义文件夹的注释
  40.   #bitmap = RPG::Cache.picture("#{test}")  
  41.   #----------------------------------------------------------------------------
  42.   #●脸图位置判定结束,生成脸图
  43.   #----------------------------------------------------------------------------
  44.     cw = bitmap.width
  45.     ch = bitmap.height
  46.     src_rect = Rect.new(0, 0, cw, ch)
  47.     self.contents.blt(x , y  , bitmap, src_rect)#(x - cw / 2, y - ch, bitmap, src_rect)
  48.   end
  49. end
  50. class Window_Battleface < Window_Base
  51.   #--------------------------------------------------------------------------
  52.   # ● 初始化目标
  53.   #--------------------------------------------------------------------------
  54.   def initialize
  55.     super(0, 0, 640, 480)
  56.     self.contents = Bitmap.new(width - 32, height - 32)
  57.     self.opacity = 0
  58.     self.z  = 199
  59.     refresh
  60. #    self.active = false
  61. #    self.index = -1
  62.   end
  63.   #--------------------------------------------------------------------------
  64.   # ● 刷新
  65.   #--------------------------------------------------------------------------
  66. def refresh
  67.     self.contents.clear
  68.     @item_max = $game_party.actors.size
  69.     for i in 0...$game_party.actors.size
  70.       x = i * 160-30
  71.       y = 260
  72.       actor = $game_party.actors[i]
  73.       draw_actor_face(actor, x + 8, y )
  74.       #draw_actor_graphic(actor, x - 40, y + 80)
  75.       #actor = $game_party.actors[i]
  76.     end
  77.   end
  78. end
复制代码
flzt5354 发表于 2009-8-17 12:52:53
不知不觉中,3小时过去了
flzt5354 发表于 2009-8-17 09:05:31
唉.还没解决
flzt5354 发表于 2009-8-16 21:59:18
睡前顶一顶
人气旺一旺
明早一起床
问题已解决
flzt5354 发表于 2009-8-16 20:18:55
第二张很明显...GOOGLE搜索轩辕剑图片就有了
第三张是我在七夕小雨的值槽绘制的视频教程中截图的- -
你叫我怎么弄脚本呢
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2025-1-25 22:28

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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