Project1
标题:
问个问题
[打印本页]
作者:
1965685904X
时间:
2013-8-15 15:09
标题:
问个问题
在RPGXP中如何制作开头动画
作者:
1965685904X
时间:
2013-8-15 15:16
啊啊啊啊啊啊啊啊啊啊~求解啊
作者:
紫英晓狼1130
时间:
2013-8-15 15:40
在地图中设置并行处理事件
事件内容为你想要的
作者:
1965685904X
时间:
2013-8-15 15:52
听不懂啊
作者:
国产刘备
时间:
2013-8-15 15:59
在Title类用$game_map.setup(1)跳过游戏开头 在地图上用事件制作动画
相关脚本
作者:
1965685904X
时间:
2013-8-15 16:04
还是不会啊
作者:
kuerlulu
时间:
2013-8-15 16:24
这种标题好像违规吧
柳柳以前做过一个游戏开头的制作,可搜。
开头≠标题,如果要做一个霸气的标题需要用到脚本了。
作者:
1965685904X
时间:
2013-8-15 16:27
柳柳是谁?
作者:
jiahui5592986
时间:
2013-8-15 17:45
http://rpg.blue/forum.php?mod=viewthread&tid=148030
请LZ善用搜索
作者:
化螺耕
时间:
2013-8-15 20:12
对楼主表示很无语
…………楼主可以先看一下新手教程
作者:
水木依
时间:
2013-8-15 20:34
额,连柳柳也不知道么……{:2_271:}
作者:
1059847607
时间:
2013-8-15 20:46
这个是在标题前插入图片的脚本,比较简单
Graphics.freeze
devil = Sprite.new
devil.bitmap = Bitmap.new("Graphics/Pictures/神将.JPG") #这里显示图片的地址
devil.ox = devil.bitmap.width / 2
devil.oy = devil.bitmap.height / 2
devil.x = 320#图片的X坐标,坐标越大图片越靠右
devil.y = 240#图片的Y坐标,坐标越大图片越靠下
$a = 0
Graphics.transition(100)
100.times{Graphics.update}
loop do
$a += 1
Graphics.update
devil.opacity -= 2
if $a == 100 #这里设置图片的时常,每次刷新大概是0.05秒的样子,填100大概有5秒钟。
break
end
end
devil.bitmap.dispose
devil.dispose
devil = nil
Graphics.freeze
复制代码
作者:
wangyongchao49
时间:
2013-8-24 07:47
片头制作教程:脚本版
在写场景之前先将场景加入到游戏里区,所以首先我们需要修改Main脚本段。
将原先的一句:
$scene = Scene_Title.new
复制代码
修改为:
$scene = Scene_Logo.new
复制代码
然后新建一个脚本段落GPRA_Scene_Logo,给出脚本段全部代码如下:
#=================================================
# ■ Scene_Logo
#-------------------------------------------------
# 处理片头的类。
#=================================================
class Scene_Logo
#-----------------------------------------------
# ● 主处理
#-----------------------------------------------
def main
# 如果您不想在每次测试游戏游戏的时候都显示LOGO,请加入以下注释语句
# if $DEBUG
# $scene = Scene_Title.new
# return
# end
# 生成LOGO图形
[url=home.php?mod=space&uid=114926]@sprite[/url] = Sprite.new
@sprite.bitmap = RPG::Cache.picture("logo")
@sprite.x = 160
@sprite.y = 120
# 显示计时器
@show_time=60
# 执行过渡
Graphics.transition(20)
# 主循环
while @show_time>0 do
# 刷新游戏画面
Graphics.update
# 显示计时器减一
@show_time -= 1
end
# 准备过渡
Graphics.freeze
# 释放标题图形
@sprite.bitmap.dispose
@sprite.dispose
# 执行过渡,过渡到全黑
Graphics.transition(20)
# 准备过渡,用于准备过渡到标题画面
Graphics.freeze
# 进入标题画面
$scene = Scene_Title.new
end
end
复制代码
片头是为了显示图片~所以需要做的准备工作就是先把要显示的图片导入到工程里,或者直接Copy到"./Graphics/Pictures/"目录下。在脚本里显示图片一般是要使用到精灵(Sprite)的,在这里我们首先声明一个@sprite变量,然后用它的bitmap载入图片。例如:@sprite.bitmap = RPG::Cache.picture("logo"),载入的就是刚刚导入的名为"logo.*"的图片文件。然后如果图片不是全屏的,通过精灵的x和y属性指定一下显示的坐标。精灵是自动显示的,所以不用进行贴图等操作的。有关精灵的详细使用,可以参看F1或者66的其它相关教程,在此不再多说。
之后片头总要停止啊,所以在这里定义一个计时器@show_time,初始化它的值为60。在显示过程循环中将对它递减,最后达到定时的目的,将LOGO显示一个固定长的时间。代码中的while循环就是循环刷新画面的,其中就使用了@show_time变量作为循环继续条件。
关于Graphics.freeze和Graphics.transition函数,就是准备过渡和进行过渡,和事件中的功能是完全一样的,大家如果不清楚自己试试就明白了(在F1中可以搜索到)。
Graphics.freeze冻结当前的屏幕,不允许画面进行更新。
Graphics.transition就是从刚刚冻结时的画面过渡到当前绘制好的画面。
Graphics.transition第一个可选参数指定的是多少帧完成过渡。
@sprite.bitmap.dispose / @sprite.dispose
位图和精灵一定要释放的,这点不能忘记。
最后记得,还要显示标题画面的,不然怎么进入游戏呢,呵呵?
加一句$scene = Scene_Title.new,就回到标题画面了。
是不是实际上也很简单呢?不加注释一共也只有二三十行的代码。
最后请注意,如果您不想在每次测试的时候都会显示LOGO浪费时间的话,参看最前面几行注释,将它们前面的"#"去掉就可以啦~
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1