`
lilisalo
  • 浏览: 1102037 次
文章分类
社区版块
存档分类
最新评论

flash脚本引擎LegendForFlashProgramming0.1版发布

 
阅读更多

一,LegendForFlashProgramming脚本引擎是什么?
它是一个用ActionScript3.0开发的游戏脚本引擎,游戏里的所有元素都可以由脚本语言来控制,它可以轻松制作一款SLG游戏,即使你完全不会写程序,从而降低了游戏开发的难度。
二,该引擎可以制作什么样的游戏?

0.1版本可以制作一款LVG游戏,或者一款小型SLG游戏(类似三国志曹操传系列),计划在之后的版本中会陆续支持大型SLG游戏的开发(类似三国志系列),RPG游戏及MMO-RPG游戏的开发,以及其他新的功能。

三,为什么是0.1版,而不是1.0版?

目前版本虽然能够自由制作一款战棋游戏,但是有些地方还不够便利,比如:

1,目前游戏中的图片,除了地图之外,添加和修改得时候,需要借助FlashProfessional CS系列工具,所以,准备在1.0版本中,改变图片存储形式,提供游戏的图片修改器。

2,游戏中的策略,特技等还不够全,准备在1.0版本中添加大量的策略和武将特技等。

基于以上原因,本次先发布0.1版,以后有机会的话,准备提供专门的游戏剧本编辑器。

四,该引擎作品案例

三国记黄巾之乱

http://blog.csdn.net/lufy_legend/article/details/6889261




五,引擎脚本语法

该引擎使用L#脚本语言0.1版(专门为该引擎而设计的脚本语言),L#脚本语言随引擎更新而更新,下面是该脚本的语法说明,你不需要全看懂,更不用全记住(其实我列出的也不一定全),真正制作游戏的时候,不一定全都用到,如何用该脚本来制作游戏,会另外提供详细的教程,用到的时候再详细了解即可。

L#脚本文法

一,代码注释

在L#语法中,用“//”可以注释一行代码,用“/**/”可以注释多行代码。

例如下面的代码,只有第一行有效:

Button.add(-,btnstart,游戏开始,280,270,btnup,btnover,btnover,#ffffff);

//Button.add(-,btnload,读取进度,280,310,btnup,btnover,btnover,#ffffff);

/*

Button.add(-,btnset,环境设定,280,350,btnup,btnover,btnover,#ffffff);

Button.add(-,btnbuy,合作伙伴,280,390,btnup,btnover,btnover,#ffffff);

Button.add(-,btnover,关闭游戏,280,430,btnup,btnover,btnover,#ffffff);

*/

二, 变量操作
1,变量赋值
Var.set(name,value);
参数:变量名,值

例:Var.set(n1,100); Var.set(n2,"abc");Var.set(n2,abc);

注意,在L#中,字符串"abc"和abc,其实是不相等的
2,变量使用
@+变量名

例:if(@test==0);

三,条件语句if
if语句以if开头,以endif结束,每一个分句用";"结束
例:
if(@test==0);
Var.set(backWidth,100);
elseif(@test==1);
Var.set(backWidth,400);
else;
Var.set(backWidth,700);
endif;
说明:如果变量test等于0,则变量backWidth等于100,如果变量test等于1,则变量backWidth等于400,否则变量backWidth等于700

四,goto语句
1,定义Mark.married;(married是任意自定义名称)
2,Mark.goto(married);可以跳转到定义的位置
参数:自定义名称的位置

五,Load:文件Load类,用来读取文件和图片
1,Load.script(path);
载入脚本文件
参数:脚本文件路径,例:data/script/Main.lf
2,Load.img(name,path);
载入图片
参数:载入图片文件后的数据名,图片路径

六,function:添加方法,以endfunction;结束,格式如下

function btn01click();

Text.windChange(talk,30歳以上の方ですね!);

Layer.remove(select);

endfunction;

七,Call:调用方法

Call.btn01click();

八,Wait:游戏暂停,进入等待

1, Wait. click();

等待鼠标点击

2, Wait.time(30);

等待30*10毫秒。

九,Layer:操作层
1,Layer.add(-,name,0,0);
添加层
参数:层名(如果是-,则添加到基层上),添加层名,添加层坐标
2,Layer.remove(name);
移除层
参数:移除层名
3,Layer.clear(name);
移除该层上的所有子元件
参数:移除层名
4,Layer.clear(name);
移除该层上的所有子元件
参数:移除层名
5,改变透明度
Layer.transition(name,fadeIn,0.1);
参数:层名,类型,速度
Layer.transition(name,fadeOut,0.1);
参数:层名,类型,速度
Layer.transition(name,fadeTo,0.1,0.5);
参数:层名,类型,目标透明度,速度

十,Img:图片操作类

1, Img.add (-,logoimg,logo,0,0,800,480,1);

显示一张图片

参数:所在层,图片名,图片数据名,坐标x,坐标y,宽,高,透明度

2, Img.changeData(backimg,backdata01);

改变图片数据

参数:图片名,图片数据名

3, Img.remove(img);

移除图片

参数:图片名

4, Img.moveTo(gril,400,150,10);

移除图片

参数:图片名,移动目的地x,移动目的地y,移动速度

5, 改变透明度

Layer.transition(name,fadeIn,0.1);
参数:层名,类型,速度
Layer.transition(name,fadeOut,0.1);
参数:层名,类型,速度
Layer.transition(name,fadeTo,0.1,0.5);
参数:层名,类型,目标透明度,速度

十一,Button:按钮操作类

1, Button.add(select,btn01,男性,0,10,selectbtnup,selectbtnover,selectbtnover,#ffffff);

添加一个按钮

参数:所在层,按钮名,按钮文字,按钮图片up状态,按钮图片over状态,按钮图片down状态,按钮文字颜色

2, Button.remove(btn01);

移除图片

参数:图片名

3, Button.mousedown(btn01,btn01click);

添加按钮MOUSE_DOWN事件

参数:按钮名,方法名

4, Button.mouseup(btn01,btn01click);

添加按钮MOUSE_UP事件

参数:按钮名,方法名

5, Button.mouseover(btn01,btn01click);

添加按钮MOUSE_OVER事件

参数:按钮名,方法名

6, Button.mouseout(btn01,btn01click);

添加按钮MOUSE_OUT事件

参数:按钮名,方法名

十二,Text:文字操作类

可以直接全部显示,也可以逐字显示文本

1, Text.label(talk,name01,[lufy ],120,360,15,#ffffff);

显示文本

参数:层名,文本名,文本信息,坐标x,坐标y,字体大小,字体颜色

2, Text.labelChange(name01,[??? ],15,#ff0000);

改变文本信息

参数:文本名,文本信息,文字大小,文字颜色

3, Text.wind(talk,talk,こんにちは!「legendゲーム世界」にようこそ!<spanclass='red'>lufy</span>と申します。これから、L#スクリプトでノベルゲームを作りましょう。,120,380,380,13,20);

添加文本,逐字显示

参数:层名,文本名,文本信息,坐标x,坐标y,文本框宽度,字体大小,逐字显示速度

在逐字显示文本时,可以利用L#中的css来改变个别文字的颜色等,如<span class='red'>lufy</span>表示lufy这个字母显示为红色,其他几种颜色共有red,yellow,green,blue,pink,black

十三,还有小型SLG对应的所有脚本,大类约20个,每个类中方法若干,这些会在接下来的SLG教程里面进行详细的介绍。

六,制作Hellow World小程序。

首先你需要SanguojiForPC.swf文件,你可以下载由此引擎制作的游戏三国记黄巾之乱,使用里面的SanguojiForPC.swf,或者下载此引擎制作的其他的一些DEMO等。

1, 首先建立一个文件夹hellow,然后将SanguojiForPC.swf放到文件夹里面。

2, 在hellow文件夹里面建立一个script文件夹,在script文件夹下建一个文本文件MainSLG.lf,这里将扩展名改成了lf,因为LegendForFlashProgramming引擎用的是L#脚本语言,L#脚本文件扩展名为lf。

3, 用记事本打开MainSLG.lf,在里面添加下面一行代码

Text.label(-,txt,Hello World !,280,230,30,#000000);

现在打开SanguojiForPC.swf,应该看到我们熟悉的“Hellow World”了。




分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics