热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

用仿ActionScript的语法来编写html5——终篇,LegendForHtml5Programming1.0开源库件

用仿ActionScript的语法来编写html5——终篇,LegendForHtml5Programming1.0开源库件本页面的文字允许在CC-BY-SA3.0协议和GNU自由文档许可证下修改和再使用。终篇,LegendForHtml5Programming1.0开源库件库件下...

 

用仿ActionScript的语法来编写html5——终篇,LegendForHtml5Programming1.0开源库件

 

本页面的文字允许在CC-BY-SA 3.0协议和GNU自由文档许可证下修改和再使用。

 

 

 

终篇,LegendForHtml5Programming1.0开源库件

 

 

库件下载地址

http://code.google.com/p/legendforhtml5programming/downloads/list

 

 

一,LegendForHtml5Programming1.0库件是什么?

它是一个Javascript库,它模仿了ActionScript的语法,用于html5的开发,目前实现的功能相对较少,还不能称之为引擎,希望将来可以作为html5的开源引擎,为html5开发者提供服务。

 

 

二,LegendForHtml5Programming1.0库件的构建过程

请参照下面的九篇文章,最终代码和构建过程会有些出入,以源码为准。

用仿ActionScript的语法来编写html5系列文章

 

 

用仿ActionScript的语法来编写html5——第一篇,

用仿ActionScript的语法来编写html5——第二篇,利用Sprite来实现动画

用仿ActionScript的语法来编写html5——第三篇,鼠标事件与游戏人物移动

用仿ActionScript的语法来编写html5——第四篇,继承与简单的rpg

用仿ActionScript的语法来编写html5——第五篇,Graphics绘图

用仿ActionScript的语法来编写html5——第六篇,TextField与输入框
用仿ActionScript的语法来编写html5——第七篇,自定义按钮
用仿ActionScript的语法来编写html5——第八篇,图片处理+粒子效果
用仿ActionScript的语法来编写html5——第九篇,仿URLLoader读取文件

 

 

 

三,LegendForHtml5Programming1.0库件的使用举例

下面是使用LegendForHtml5Programming1.0开发的两个简陋的小游戏,只是为了试验,非常简陋,以后会开发几个像样的游戏来做参照。

1,俄罗斯方块

http://fsanguo.comoj.com/html5/jstoas10/index.html

2,抽奖小游戏

http://fsanguo.comoj.com/html5/lottery_html5/index.html

个人感觉,该库件使用起来还是很方便的,尤其上面的俄罗斯方块,我是直接把以前的AS代码复制过来,在语法上稍加修改,竟然直接可以运行了

关于游戏的源码,大家点击鼠标右键就可以自己看了,我就不多说了

 

 

四,LegendForHtml5Programming1.0库件的语法举例

使用前,需要在html中引进LegendForHtml5Programming1.0库件的legend.js文件,然后在legend.js中配置你的库件所在的位置

 

 

1,显示图片

www.2cto.com

var loader;   

function main(){   

    loader = new LLoader();   

    loader.addEventListener(LEvent.COMPLETE,loadBitmapdata);   

    loader.load("10594855.png","bitmapData");   

}   

function loadBitmapdata(event){   

    var bitmapdata = new LBitmapData(loader.content);   

    var bitmap = new LBitmap(bitmapdata);   

    addChild(bitmap);   

}   

//图片的缩放 

bitmapdata = new LBitmapData(imglist["chara"]); 

showImg2 = new LBitmap(bitmapdata); 

showImg2.scaleX = 0.2; 

showImg2.scaleY = 0.2; 

//图片的透明度 

bitmapdata = new LBitmapData(imglist["chara"]); 

showImg3 = new LBitmap(bitmapdata); 

showImg3.alpha = 0.2; 

//图片的旋转 

bitmapdata = new LBitmapData(imglist["chara"]); 

showImg4 = new LBitmap(bitmapdata); 

showImg4.rotate = 50; 

 

2,Sprite的使用

www.2cto.com

var backLayer = new LSprite();   

addChild(backLayer);  

//在sprite上加child 

backLayer.addChild(mapimg);   

 

3,事件

www.2cto.com

//frame事件 

//backLayer.addEventListener(LEvent.ENTER_FRAME, onframe)   

//鼠标事件 

//backLayer.addEventListener(LMouseEvent.MOUSE_DOWN, onframe)   

 

鼠标事件可以添加MOUSE_DOWN,MOUSE_UP,MOUSE_MOVE

如果你开发的是iphone,ipad或者android,那么该库件会自动将MOUSE_DOWN,MOUSE_UP,MOUSE_MOVE转换为TOUCH_START,TOUCH_END,TOUCH_MOVE,无需自己添加touch事件

4,继承

在构造器中调用base(this,LSprite,[]);方法既可实现继承

三个参数分别是自己,要继承的父类,父类构造器的参数

5,Graphics绘图

www.2cto.com

backLayer = new LSprite();   

addChild(backLayer);   

//画一圆   

backLayer.graphics.drawRect(1,"black",[20, 20, 150, 20],true,"#cccccc");   

//画一个矩形   

backLayer.graphics.drawArc(2,"black",[100, 100, 50, 0,2*Math.PI,false],true,"#FF0000");   

//画一条线   

backLayer.graphics.drawLine(2,"#FF0000",[200, 20, 100, 50]);   

 

6,文字与输入框

www.2cto.com

//文字显示   

var txt = new LTextField();   

txt.x = 100;   

txt.text = "TextField 测试";   

addChild(txt);   

//输入框   

var txt1 = new LTextField();   

txt1.x = 100;   

txt1.y = 50;   

txt1.setType(LTextFieldType.INPUT);   

addChild(txt1);   

 

7,按钮

www.2cto.com

function gameInit(event){   

    backLayer = new LSprite();   

    addChild(backLayer);   

       

    btn01 = new LButton(new LBitmap(new LBitmapData(imglist["replay_button_up"])),new LBitmap(new LBitmapData(imglist["replay_button_over"])));   

    btn01.x = 76;   

    btn01.y = 50;   

    backLayer.addChild(btn01);   

       

    btn02 = new LButton(new LBitmap(new LBitmapData(imglist["quit_button_up"])),new LBitmap(new LBitmapData(imglist["quit_button_over"])));   

    btn02.x = 76;   

    btn02.y = 100;   

    backLayer.addChild(btn02);   

       

    btn01.addEventListener(LMouseEvent.MOUSE_DOWN, onmousedown01);   

    btn02.addEventListener(LMouseEvent.MOUSE_DOWN, onmousedown02);   

}   

function onmousedown01(event){   

    alert("btn01 on click");   

}   

function onmousedown02(event){   

    alert("btn02 on click");   

}   

 

欢迎大家使用以及提出意见等

 

 


摘自 lufy小屋

 


推荐阅读
  • 本文介绍了互联网思维中的三个段子,涵盖了餐饮行业、淘品牌和创业企业的案例。通过这些案例,探讨了互联网思维的九大分类和十九条法则。其中包括雕爷牛腩餐厅的成功经验,三只松鼠淘品牌的包装策略以及一家创业企业的销售额增长情况。这些案例展示了互联网思维在不同领域的应用和成功之道。 ... [详细]
  • Unity3D引擎的体系结构和功能详解
    本文详细介绍了Unity3D引擎的体系结构和功能。Unity3D是一个屡获殊荣的工具,用于创建交互式3D应用程序。它由游戏引擎和编辑器组成,支持C#、Boo和JavaScript脚本编程。该引擎涵盖了声音、图形、物理和网络功能等主题。Unity编辑器具有多语言脚本编辑器和预制装配系统等特点。本文还介绍了Unity的许可证情况。Unity基本功能有限的免费,适用于PC、MAC和Web开发。其他平台或完整的功能集需要购买许可证。 ... [详细]
  • 本文介绍了iOS开发中检测和解决内存泄漏的方法,包括静态分析、使用instruments检查内存泄漏以及代码测试等。同时还介绍了最能挣钱的行业,包括互联网行业、娱乐行业、教育行业、智能行业和老年服务行业,并提供了选行业的技巧。 ... [详细]
  • 《Axure新技能:自适应手机屏幕大小》相信不少人都已经看过,并对设置方法已经很熟悉了,但该教程只能适应iphone6的屏幕尺寸的比例&# ... [详细]
  • 微信回应「10 元就能在朋友圈改定位」;谷歌官方首次提及 Android 11;Node 8.16.2 发布 | 极客头条...
    微信回应「10元就能在朋友圈改定位」;谷歌官方首次提及Android11;Node8.16.2发布|极客头条,Go语言社区,Golang程序员人脉社 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 本文介绍了使用Python编写购物程序的实现步骤和代码示例。程序启动后,用户需要输入工资,并打印商品列表。用户可以根据商品编号选择购买商品,程序会检测余额是否充足,如果充足则直接扣款,否则提醒用户。用户可以随时退出程序,在退出时打印已购买商品的数量和余额。附带了完整的代码示例。 ... [详细]
  • 使用圣杯布局模式实现网站首页的内容布局
    本文介绍了使用圣杯布局模式实现网站首页的内容布局的方法,包括HTML部分代码和实例。同时还提供了公司新闻、最新产品、关于我们、联系我们等页面的布局示例。商品展示区包括了车里子和农家生态土鸡蛋等产品的价格信息。 ... [详细]
  • 安卓“灵动岛”App下载安装量超100万次
    安卓“灵动岛”App下载安装量超100万次 ... [详细]
  • 当google在搜索上很成功,并购youtube、发布gmail、进入手机、一统地图的时候,我们说google真伟大。当苹果在mp3领域一骑绝尘,iphone秒杀诺基亚,ipad打倒了电子 ... [详细]
  • 我一直都有记录信息的习惯,不知是从什么时候开始,大约是在工作后不久。如今还真有点庆幸从那时开始记了点东西,当然是电子版的,写 ... [详细]
  • 1.webkit内核中的一些私有的meta标签,这些meta标签在开发webapp时起到非常重要的作用(1) ... [详细]
  • Apple iPad:过渡设备还是平板电脑?
    I’vebeenagonizingoverwhethertopostaniPadarticle.Applecertainlydon’tneedmorepublicityandthe ... [详细]
  • smarty内部日期函数html_select_date()用法实例分析,select函数用法
    php教程|php手册smarty,日期,html,select,date(),smartyphp教程-php手册smarty内部日期函数html_select_date()用法实 ... [详细]
  • http:www.importnew.com6510.html优先级队列(PriprityQueue)是一种无界队列,基于优先级堆,它的元素根据自然顺序或者通过实现Compar ... [详细]
author-avatar
张春雷11111
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有