flash脚本引擎LegendForFlashProgramming0.1版发布

原创 2011年10月21日 14:51:33

一,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”了。


如何用LegendForFlashProgramming来制作LVG游戏

如何用LegendForFlashProgramming来制作SLG游戏


app版本更新的四种实现方式

版本更新大致分为四大类:app负责单版本检测测与更新(自己实现版本更新),通过苹果商店的自动更新机制进行自动更新和通过第三方平台实现版本检测与更新(如:友盟的版本检测与更新),app和服务器联合实现多...
  • jia12216
  • jia12216
  • 2015-11-06 10:04:07
  • 15463

简易 文章发布系统——后台管理系统

来自于慕课网的学习        这里建立一个简易的文章发布系统——后台管理系统,功能包括 文章的发表、查看文章列表,其中还提供对文章的删除和修改功能。        首先使用mysql建立数据库...
  • weishoupao
  • weishoupao
  • 2016-12-25 16:42:15
  • 2162

如何判断swf自身是调试版还是发布版(2012-2-20)

问题描述:如何判断一个swf自身是调试版还是发布版 问题解决: 调试版SWF文件的stackTrace结果包含行号,可通过搜索在错位堆栈结果中的行号信息来判断是何版本,核心代码如下: isDeb...
  • linguifa
  • linguifa
  • 2012-02-23 13:19:43
  • 2007

Nashorn为Java与JavaScript搭起一座桥

三月面世的Java 8,将会带来一个新的JavaScript引擎,代号Nashorn。由Oracle所创造,让Java开发人员能够嵌入JavaScript到他们的应用中并开发独立的JavaScript...
  • bighead1026
  • bighead1026
  • 2014-02-24 17:50:41
  • 816

AppCan开源案例:移动电商 APP《海外购》超详源码

项目实现功能:用户注册、登录,商品查看和发布,加入购物车、在线支付,交易确认,地理定位,商品查询、评论和分享、关注商家等。...
  • u014702161
  • u014702161
  • 2016-05-05 11:47:33
  • 1189

【Android 开发教程】获取预设信息

下面展示如何使用SharedPreferences对象去保存应用的数据。你也将会看见通过特殊的Activity去修改已经被保存的应用数据。1. 新建一个工程,UsingPreferences。2. 在...
  • manoel
  • manoel
  • 2012-09-27 14:37:32
  • 7600

【FLASH】flash发布APK遇到问题

Flash发布APK时候遇到问题,折腾了一下弄好了
  • u013580497
  • u013580497
  • 2016-01-01 14:43:39
  • 1105

adobe flash builder 4.7 for mac 破解版打开闪退的解决方法

MAC电脑 第一步、删除文件 /Users/apple/Documents/Adobe Flash Builder 4.7 第二步、重新打开FB即可!...
  • JacketLu
  • JacketLu
  • 2017-05-17 17:22:23
  • 774

flash生成ipa文件上传appstore

最近项目需求,需要把flash做的ipa文件上传到appstore。 第一,进入苹果开发者界面,进入ituns connect选项,把各种相应资料填好。灾后遇到个问题,需要提交xcode构建号,由于不...
  • whlei01
  • whlei01
  • 2015-11-05 20:15:11
  • 994

实现一个脚本引擎(燕良译)- -

Part I:概述序言OK,在你的引擎中你想有一个脚本语言.首先,确定你需要那种脚本语言;Henry Robinson 已经写过了一个各种脚本语言区别的介绍(如果你还没读过就去读一下吧),在这个系列教...
  • prgmBaggio
  • prgmBaggio
  • 2007-06-17 16:06:00
  • 1504
收藏助手
不良信息举报
您举报文章:flash脚本引擎LegendForFlashProgramming0.1版发布
举报原因:
原因补充:

(最多只允许输入30个字)