时间:2014-10-28 13:17:25 来源: 复制分享
使用了脚本改变角色的注册点的位置的方法来实现。
重点:脚本的编辑。LINGO中的局部变量,角色的注册点属性。
效果如图:
1. 首先引入位图演员作为被移动的对象。名字随便,如图如示:
2.将这个演员拖到场景中。
3.设置这个演员的着墨方式为背景透明。(具体方法见上一篇)
4.引入4个位图演员,分别带边着4个方向,可以根据方向来分别命名4个位图演员。
5.将4个分别拖到场景中合适的位置。
6.着墨方式设置为背景透明。
7.选取UP角色,单击鼠标的右键,选择“SCRIPT^”选项,打开脚本编辑器。在ONMOUSEUP ME函数内添加如下命令行:
APPLETOP=SPRITE(5).TOP --记录当前的TOP参数
SPRITE(5).TOP=APPLETOP-10 --设置TOP参数减10
APPLEHEIGHT=SPRITE(5).HEIGHT --记录当前的高度参数
SPRITE(5).HEIGHT=APPLEHEIGHT-10 将高度减少10,形成上移10个象素的效果
(注意,为什么要将高度减去10呢,原因是TOP参数减去10的时候,角色被向上拉伸了0个象素,而不是上移了0个象素,所以要将高度减去10才可以达到上移的效果。)
程序中的APPLETOP和APPLEHEIGHT称为变量,在函数中用来记录角色的TOP参数和HEIGHT的参数。LINGO中的基本运算符号和其他语言中的类似,赋值用等号,加减乘除分别用+ - * / 来表示。
语句SPRITE(5).TOP的作用是取得SPRITE(5)角色的TOP参数。
语句SPRITE(5)的作用是取得桢编辑器中编号为“5”的角色,即APPLE。
(注意,本例子使用SPRITE(5)是因为笔者是先引入4个位置演员之后,才将BB.bmp,如图所示:
拖到场景中的,如果你是先将BB.bmp人拖到场景中的,那么这个BB.bmp的演员在帧编辑器中的编号为“1”,你需要使用SPRITE(1)控制,即将下边函数中的SPRITE(5)全部改为SPRITE(1)就可以了。
上边的程序也可以这样子写:
APPLETOP=SPRITE(5).TOP
APPLEHEIGHT=SPRITE(5).HEIGHT
SPRITE(5).TOP=APPLETOP-10
SPRITE(5).HEIGHT=APPLEHEIGHT-10
它同上边的程序的不同之处是APPLEHEIGHTE变量记录高度的时刻不同。是在设置了角色的 TOP参数前记录的,所以最后不用将角色的高度减去10了。
8.编辑DOWN脚本程序,在ON MOUSEUP ME函数中写入下边名令。
APPLETOP=SPRITE(5).TOP --记录当前的TOP参数
SPRITE(5).TOP=APPLETOP+10 --设置TOP的参数加10
APPLEHEIGHT=SPRITE(5).HEIGHT --记录当前的高度
SPRITE(5).HEIGHT=APPLEHEIGHT+10 --将高度加10,形成下移10个象素的效果
9.编辑LEFT的脚本程序,在ON MOUSEUP ME函数中写下下列的命令行。
APPLELEFT=SPRITE(5).LEFT --记录当前的LEFT参数
SPRITE(5).LEFT=APPLELEFT-10 --设置LEFT的参数减10
APPLEWIDTH=SPRITE(5).WIDTH --记录当前的宽度
SPRITE(5).WIDTH=APPLEWIDTH-10 --将宽度减10,形成左移10个象素的效果
10.编辑RIGHT的脚本程序,在ON MOUSEUP ME函数中写下下列的命令行。
APPLELEFT=SPRITE(5).LEFT --记录当前的LEFT参数
SPRITE(5).LEFT=APPLELEFT+10 --设置LEFT的参数加10
APPLEWIDTH=SPRITE(5).WIDTH --记录当前的宽度
SPRITE(5).WIDTH=APPLEWIDTH+10 --将宽度加10,形成右移10个象素的效果
11.编辑完成。播放动画,按动4个按钮,可以看到演员按照4个方向移动。
到此为止,本文也完全结束了,从开始的DR8.5的基本介绍,帧编辑器的使用,内建库的使用,后来的LINGO的简单介绍。
基本上可以让一个多媒体新手对DR8.5有一定的了解。其实对于DR8.5的学习,只要认真的把握LINGO语言,一定可以作出意想不到的效果。
上一篇:DirectMedia Xtra 在 Director 中的应用技巧
本文地址:软件教程 >> http://www.9xz.net/it/ruanjianjiaocheng/28935.html
下一篇:director 应用技巧