Project1

标题: 状态和菜单不显示行走图显示头像、储存问题 [打印本页]

作者: huangaidehua    时间: 2009-10-31 12:17
标题: 状态和菜单不显示行走图显示头像、储存问题
状态和菜单不显示行走图显示头像
以前下过66的范例,现在没找到,大家直接给我脚本,就是那个插入什么_f 、 什么_h  的脚本
还有就是存储画面什么都不显示的的脚本
谢谢.很急
作者: 上帝的眼睛    时间: 2009-10-31 13:31
本帖最后由 上帝的眼睛 于 2009-10-31 13:32 编辑

现在比较讨厌SSD肆意横行……
[line]1[/line]
教程如下:
首先看下Scene_Menu的内容54行
  1.     # 生成状态窗口
  2.     @status_window = Window_MenuStatus.new
复制代码
我们知道了显示角色状态是在Window_MenuStatus这个类里面
到Window_MenuStatus里面找到28行
  1.       draw_actor_graphic(actor, x - 40, y + 80)
复制代码
把它注释掉,运行游戏看看效果

接下来,我们全局搜索draw_actor_graphic,按CTRL+SHIFT+F搜索
找到在Window_base中找到draw_actor_graphic
把整个draw_actor_graphic方法复制一份
修改成:

  1.     def draw_actor_face(actor, x, y)
  2.     bitmap = RPG::Cache.character(actor.name+"_f.png", actor.character_hue)
  3.     cw = bitmap.width / 4
  4.     ch = bitmap.height / 4
  5.     src_rect = Rect.new(0, 0, cw, ch)
  6.     self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect)
  7.   end
复制代码
bitmap = RPG::Cache.character(actor.name+"_f.png", actor.character_hue)
这一句是指bitmap指向的是character文件夹中的角色的名字+"_f.png"的图片
然后回到Window_MenuStatus里,把刚才注释掉的语句修改成
  1. draw_actor_face(actor, x - 40, y + 80)
复制代码
运行看效果(别忘了把头像放到characters文件夹)

嗯,坐标有点问题,调一下
来到Window_base,找到
  1.     def draw_actor_face(actor, x, y)
  2.     bitmap = RPG::Cache.character(actor.name+"_f.png", actor.character_hue)
  3.     cw = bitmap.width / 4
  4.     ch = bitmap.height / 4
复制代码
  1.     cw = bitmap.width / 4
  2.     ch = bitmap.height / 4
复制代码
改为
  1.     cw = bitmap.width
  2.     ch = bitmap.height
复制代码
到Window_MenuStatus找到刚才那句修改成
  1.       draw_actor_face(actor, x - 12, y + 95)
复制代码
不要问我这些坐标哪来的……自己试!
现在测试看看:
在把名字、等级等坐标调整下
  1.       draw_actor_face(actor, x - 12, y +95)
  2.       draw_actor_name(actor, x+86, y)
  3.       draw_actor_class(actor, x +130, y-50)
  4.       draw_actor_level(actor, x+86, y + 32)
  5.       draw_actor_state(actor, x +147, y + 32)
  6.       draw_actor_exp(actor, x+56, y + 64)
  7.       draw_actor_hp(actor, x + 236, y + 32)
  8.       draw_actor_sp(actor, x + 236, y + 64)
复制代码
来到window_base,我们来调整下EXP的大小
找到这个
  1.   def draw_actor_exp(actor, x, y)
  2.     self.contents.font.color = system_color
  3.     self.contents.draw_text(x, y, 24, 32, "E")
  4.     self.contents.font.color = normal_color
  5.     self.contents.draw_text(x + 24, y, 84, 32, actor.exp_s, 2)
  6.     self.contents.draw_text(x + 108, y, 12, 32, "/", 1)
  7.     self.contents.draw_text(x + 120, y, 84, 32, actor.next_exp_s)
  8.   end
复制代码
修改成
  1.   def draw_actor_exp(actor, x, y)
  2.       self.contents.font.size = 16
  3.     self.contents.font.color = system_color
  4.     self.contents.draw_text(x, y, 24, 32, "E")
  5.     self.contents.font.color = normal_color
  6.     self.contents.draw_text(x + 24, y, 84, 32, actor.exp_s, 2)
  7.     self.contents.draw_text(x + 108, y, 12, 32, "/", 1)
  8.     self.contents.draw_text(x + 120, y, 84, 32, actor.next_exp_s)
  9.       self.contents.font.size = 18
  10.   end
复制代码
好啦,来看看效果
关于状态的那个我就不在赘述,和这个大同小异,就是坐标之类的问题罢了




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