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

Project1

 找回密码
 注册会员
搜索

如何使用METHODS 让角色在对话和战斗中显示半身像

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

正文摘要:

本帖最后由 四代天殇 于 2012-8-19 02:33 编辑 今天早上一直在研究游戏脚本,一般来讲,对话的显示头像是用 游戏当中的draw_face 这methods 达成的。 def draw_face(face_name, face_index, x, y, size = 96) &n ...

回复

四代天殇 发表于 2012-8-21 14:15:41
铅笔描绘的思念 发表于 2012-8-20 10:08
没有去看过message的。。不过小错误就有几个。。@{character_name} 插入字符串的话应该是#{}
我想你应该 ...

试过了这个代码,经过几轮测试之后发现一些问题:

1.这个代码 的坐标 X,Y(0,0) 是在画面左上角,并且在调过X,Y值之后发现图片是被半透明的对话框覆盖的。所以得出可能用SPRITE 不可行。

2.在之后我修改了代码,把draw_half 里面的sprite 取消,改成 cache 的读取形式,发现图片不会被覆盖,但是由于对话框大小的限制图片无法显示完整,所以想请教关于对话框内 图像头像框的设置代码的位置,然后我想准备朝那个地方下手。

点评

首先精灵类是可以可以改Z值得。。只不过我回帖的时候忘了。现已加上。。 Cache的话。。。和Bitmap.new的方法差不太多。。不过改不了z吧。。  发表于 2012-8-21 14:36
铅笔描绘的思念 发表于 2012-8-20 10:08:32
本帖最后由 铅笔描绘的思念 于 2012-8-20 12:09 编辑
四代天殇 发表于 2012-8-19 21:48
那么您觉得这样可以吗?
在windows_message 的 def new_page 下把 draw face 的方程改成


没有去看过message的。。不过小错误就有几个。。@{character_name} 插入字符串的话应该是#{}
我想你应该是想吧@character_name套进去吧。。不过@character_name应该没有在Windows_message吧。。记得是Game_character和Sprite_character的变量 不过改draw_face的方法不如新建个方法。。。
仿照draw_face写一个
  1. def draw_half(half_name, x, y)
  2. #方法的参数也是有用的。。可以再加点什么。。。height啊。。。width啊
  3.      half=Sprite.new
  4.      half.bitmap=Bitmap.new("Graphics/Half/#{half_name}")
  5.      half.z = 101 #窗口的z是100
  6.      rect = Rect.new(0,0,0,0)
  7.      rect.width=character_half.bitmap.width  
  8.      rect.height=character_half.bitmap.height

  9.      half.bitmap.blt(x, y , half.bitmap, rect)
  10.    
  11. end
复制代码
还有调用的地方也要改一下。
#--------------------------------------------------------------------------
  # ● 新页处理
  #--------------------------------------------------------------------------
  def new_page
    contents.clear
    if $game_message.face_name.empty?
      @contents_x = 0
    else
      name = $game_message.face_name
      index = $game_message.face_index
      draw_half(name, 0, 0)
      @contents_x = 112
    end
    @contents_y = 0
    @line_count = 0
    @show_fast = false
    @line_show_fast = false
    @pause_skip = false
    contents.font.color = text_color(0)
  end

不过你不如在战上找个脚本吧。。貌似很多的。。半身像对话

点评

谢谢大神的指点。不过战上的半身像脚本第一怕脚本冲突,第二我看得心疼。  发表于 2012-8-20 12:04

评分

参与人数 1星屑 +200 收起 理由
iisnow + 200 多谢指点了

查看全部评分

四代天殇 发表于 2012-8-19 21:48:39
铅笔描绘的思念 发表于 2012-8-19 16:24
就没人想到建个精灵么。。。src_rect 的height和width改一下 再调下精灵的z值不就完美解决么。。 ...

那么您觉得这样可以吗?
在windows_message 的 def new_page 下把 draw face 的方程改成



     character_half=Sprite.new
     character_half.bitmap=Bitmap.new("Graphics/Half/@{character_name}")
rect=Rect.new(0,0,0,0)
rect.width=character_half.bitmap.width
rect.height=character_half.bitmap.height

  contents.blt(x,y,character_half.bitmap,rect)
四代天殇 发表于 2012-8-19 17:14:08
铅笔描绘的思念 发表于 2012-8-19 16:24
就没人想到建个精灵么。。。src_rect 的height和width改一下 再调下精灵的z值不就完美解决么。。 ...

表示 RGSS2新手, sprite 什么的完全不懂

点评

可以慢慢学嘛。。。  发表于 2012-8-19 17:16
铅笔描绘的思念 发表于 2012-8-19 16:24:36
就没人想到建个精灵么。。。src_rect 的height和width改一下 再调下精灵的z值不就完美解决么。。

评分

参与人数 1星屑 +10 收起 理由
怪蜀黍 + 10 果然是大神,我很赞同。

查看全部评分

四代天殇 发表于 2012-8-19 16:12:18
protosssonny 发表于 2012-8-19 09:15
没有。(光回答这一句是要被扣分的,这里不宜效仿多啦)
draw_face是在Window_Message类下被调用 ...

ef new_page
    print $game_message.face_name
    contents.clear
    if $game_message.face_name.empty?
      @contents_x = 0
    else
      name = $game_message.face_name
      index = $game_message.face_index
      draw_face(name, index, 0, 0)
      @contents_x = 112
    end
    @contents_y = 0
    @line_count = 0
    @show_fast = false
    @line_show_fast = false
    @pause_skip = false
    contents.font.color = text_color(0)
  end


谢谢你的提醒,看来必须修改Window_Message 的大小才行。不过我刚才有了一个新的思路不知道可不可以。我在这个CLASS里面加了一个print ,这个print 显示的是 face_name ,所以我想能否通过修改face_name 的方式让bitmap 不调Actor1 这个图片而是其他 图片? 这样如果我换成大图片的话,那么 这个CLASS就直接可以显示半身像了吧?
怪蜀黍 发表于 2012-8-19 09:15:46
没有。(光回答这一句是要被扣分的,这里不宜效仿多啦
draw_face是在Window_Message类下被调用的,所以要更改Window_Message的大小方可显示完全,否则,即使你改draw_face也是无济于事的,因为小窗口无法显示大图片。你其实可以新建一个窗口类,这个窗口的Z要大于对话窗口的Z,在其下仿照draw_face写一个类似的定义,改大rect.width,rect.height,这样就可以了。
四代天殇 发表于 2012-8-19 02:34:54
回复A神,我还以为付费是大神解决问题后我付费给他们- -
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-12-23 22:38

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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