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

Project1

 找回密码
 注册会员
搜索

请问怎么样修改脚本实现使用物品时,显示头像血槽?

查看数: 1805 | 评论数: 6 | 收藏 1
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2013-4-13 19:34

正文摘要:

本帖最后由 美丽晨露 于 2013-4-17 17:00 编辑 就是使用物品时,选择对象时的那个放框, 修改为能显示角色的头像和血槽? 如这个游戏一样:

回复

芯☆淡茹水 发表于 2013-4-17 11:42:42
   在 Window_Base 增 加了个描绘头像定义,头像图片裁剪成 50 - 100 的正方形,命名为:角色名_h  。 保存在 Characters 文件夹下。
然后在 Window_Target   中增加描绘头像,一些描绘角色状态的位置可自己调 X,Y轴,自己排版。

工程:
Project1.rar (208.5 KB, 下载次数: 29)

点评

嗯,我知道怎么做了。感谢啊  发表于 2013-4-17 17:01

评分

参与人数 2星屑 +225 收起 理由
hcm + 200 认可答案
美丽晨露 + 25 谢谢解答

查看全部评分

joe5491 发表于 2013-4-14 23:13:07
圖片名稱為"pX.png"(X為角色編號)(放在Pictures下)

在Windows_Base裡發現def draw_actor_graphic(actor, x, y)
改成下面這樣
  1. def draw_actor_graphic(actor, x, y)
  2.     bitmap = Bitmap.new('Graphics/Pictures/p' + (actor.id-1).to_s + '.png')
  3.     #bitmap = RPG::Cache.character(actor.character_name, actor.character_hue)
  4.     cw = bitmap.width #/ 4
  5.     ch = bitmap.height #/ 4
  6.     src_rect = Rect.new(0, 0, cw, ch)
  7.     #self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect)
  8.     self.contents.blt(x - cw / 4, y - ch + 13, bitmap, src_rect)
  9.   end
复制代码
然後在Windown_Target裡發現def refresh
改成這樣
  1. def refresh
  2.     self.contents.clear
  3.     for i in 0...$game_party.actors.size
  4.       x = 4
  5.       y = i * 116
  6.       actor = $game_party.actors[i]
  7.       draw_actor_graphic(actor, x-10, y+80)
  8.       #draw_actor_name(actor, x+70, y)
  9.       draw_actor_name(actor, x+70, y)
  10.       draw_actor_class(actor, x + 144, y)
  11.       #draw_actor_level(actor, x + 8, y + 32)
  12.       draw_actor_level(actor, x+70, y + 32)
  13.       draw_actor_state(actor, x + 8, y + 64)
  14.       draw_actor_hp(actor, x + 152, y + 32)
  15.       draw_actor_sp(actor, x + 152, y + 64)
  16.     end
  17.   end
复制代码
看起來就像這樣:


p.s.你選單裡的行走圖也會被改掉...

评分

参与人数 2星屑 +60 收起 理由
hcm + 50 感谢回答
美丽晨露 + 10 谢谢帮助

查看全部评分

美丽晨露 发表于 2013-4-14 20:24:44
clear仔 发表于 2013-4-14 20:23
那你就定义其他的图片啊,没必要一定是战斗图,我这里只是举个例子。

头像解决了
那血条又要定义是吗?

点评

不用啊。血条不用定义,这又没有覆盖。  发表于 2013-4-14 20:35
clear仔 发表于 2013-4-14 20:23:38
美丽晨露 发表于 2013-4-14 19:06
我想描绘头像的说
因为我的战斗图是透明的

那你就定义其他的图片啊,没必要一定是战斗图,我这里只是举个例子。
美丽晨露 发表于 2013-4-14 19:06:07
clear仔 发表于 2013-4-14 18:26
找到Window_Target,先定义显示头像的方法。我这里定义的是显示战斗图。
找到draw_actor_sp(actor, x + 152 ...

我想描绘头像的说
因为我的战斗图是透明的
clear仔 发表于 2013-4-14 18:26:19
找到Window_Target,先定义显示头像的方法。
  1. def draw_battler_graphics(actor, x, y)
  2.     battler=RPG::Cache.battler(actor.battler_name, actor.battler_hue)
  3.     w = battler.width
  4.     h = battler.height
  5.     self.contents.blt(x-w/2, y-h, battler, Rect.new(0, 0, w,h))
  6.   end   
复制代码
我这里定义的是显示战斗图。
找到draw_actor_sp(actor, x + 152, y + 64)
下面加一句
draw_battler_graphics(actor, x + 64, y + 96)#X,Y可以自行调整,如果你定义的是其他的,也可以调整。
然后就可以了,只是优先级的问题我也不知道怎么解决,如果你知道恳请教我。

评分

参与人数 1星屑 +30 收起 理由
hcm + 30 感谢回答

查看全部评分

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

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

GMT+8, 2024-11-6 14:37

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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