Project1

标题: 关于VA默认战斗增强脚本的一些问题 [打印本页]

作者: BlackAz    时间: 2013-1-16 18:45
标题: 关于VA默认战斗增强脚本的一些问题
本帖最后由 BlackAz 于 2013-1-19 09:42 编辑

上次问了一下如何在战斗中显示人物
感谢    冰鎮史萊姆    的帮助
然后去 http://rpg.blue/thread-221918-1-5.html
下载了一个脚本
如下(我删掉了AUDIO部分因为我不需要-。-):

$se名 = [*"A".."E"]
class Scene_Battle < Scene_Base
        alias start_actor_command_selection_old start_actor_command_selection
        def start_actor_command_selection
    start_actor_command_selection_old
               
                @actorface = Sprite.new
                @actorface.bitmap = Bitmap.new("Graphics/Faces/face" + BattleManager.actor.id.to_s + ".png")
                @actorface.y = Graphics.height - @actor_command_window.height - @actorface.bitmap.height
        end
         
        alias prior_command_old prior_command
        def prior_command
                @actorface.dispose if @actorface != nil && @actorface.disposed? != true
                prior_command_old
        end
        alias next_command_old next_command
        def next_command
                @actorface.dispose if @actorface != nil && @actorface.disposed? != true
                next_command_old
        end
end

然后我发现如果头像文件过大貌似就不显示了(其实我想放一个2/3身像上去=、=)
有什么解决办法么=。=?(没接触过ruby表示里面都代表什么看不懂啊....)
其次
@actorface.y这个应该是代表图片显示的Y坐标吧-。- 求教一下Graphics.height以及后面那些数据是代表什么-。-
或者有没有说明这些变量的帖子或者教程呢?伸手一下{:2_249:} 因为我还想改一下X坐标...但是完全不知道应该用什么来表示..
作者: j433463    时间: 2013-1-16 20:26
Graphics 是指整个画面,Graphics.width 是屏幕的宽,Graphics.height 是屏幕的高,
默认分辨率是 544*416,所以 Graphics.width 是 544,Graphics.height 是 416


作者: hcm    时间: 2013-1-16 20:38
这好办啊,直接把图片缩小一下或者把原本就不用显示的图片部分删掉就行了。
作者: BlackAz    时间: 2013-1-16 20:44
j433463 发表于 2013-1-16 20:26
Graphics 是指整个画面,Graphics.width 是屏幕的宽,Graphics.height 是屏幕的高,
默认分辨率是 544*416 ...

@actor_command_window.height - @actorface.bitmap.height
那这两个呢?
作者: BlackAz    时间: 2013-1-16 20:44
hcm 发表于 2013-1-16 20:38
这好办啊,直接把图片缩小一下或者把原本就不用显示的图片部分删掉就行了。 ...

好的我去试试~
作者: j433463    时间: 2013-1-16 21:36
BlackAz 发表于 2013-1-16 20:44
@actor_command_window.height - @actorface.bitmap.height
那这两个呢?

脚本不是有这个吗:

RUBY 代码复制
  1. @actorface = Sprite.new
  2. @actorface.bitmap = Bitmap.new("Graphics/Faces/face" + BattleManager.actor.id.to_s + ".png")


建立一个名称为 @actorface 的新方法,而且在方法中建立位图,也就是角色的脸图,
所以 @actorface.bitmap.height 当然就是角色脸图的高了。

而原来默认脚本中

RUBY 代码复制
  1. @actor_command_window = Window_ActorCommand.new


则建立了名为 @actor_command_window 的新方法,那 @actor_command_window.height 自然是它的高了,
而这 @actor_command_window 是生成角色指令视窗的。

所以,

Graphics.height - @actor_command_window.height - @actorface.bitmap.height

就是 画面的总高度 - 角色指令视窗的高度 - 角色脸图的高度

也就是角色脸图是从那个高度开始描画的,就是头顶那个高度。


作者: BlackAz    时间: 2013-1-16 21:56
j433463 发表于 2013-1-16 21:36
脚本不是有这个吗:

@actorface = Sprite.new

太感谢了~
因为才刚刚接触RM所以不懂的比较多-。-




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