lufylegend教程:如何创建循环移动的背景
2016-02-04 10:21
429 查看
lufylegend教程:如何创建循环移动的背景
发布时间:2014-09-26 关键字:lufylegend教程开发游戏的过程中,常常需要循环移动的背景。
类似下面这两种游戏,背景就是循环移动的:
接下来我们来看一下如何使用 lufylegend实现循环移动的背景效果吧。
首先准备一张图:
background.js文件的 代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | //背景类 function Background(){ base(this,LSprite,[]); var self = this; self.bitmapData = new LBitmapData(imglist["back"]); self.bitmap1 = new LBitmap(self.bitmapData); self.addChild(self.bitmap1); self.bitmap2 = new LBitmap(self.bitmapData); self.bitmap2.y = self.bitmap1.getHeight(); self.addChild(self.bitmap2); self.bitmap3 = new LBitmap(self.bitmapData); self.bitmap3.y = self.bitmap1.getHeight()*2; self.addChild(self.bitmap3); } Background.prototype.run = function(){ var self = this; self.bitmap1.y -= STAGE_STEP; self.bitmap2.y -= STAGE_STEP; self.bitmap3.y -= STAGE_STEP; if(self.bitmap1.y < -self.bitmap1.getHeight()){ self.bitmap1.y = self.bitmap2.y; self.bitmap2.y = self.bitmap1.y + self.bitmap1.getHeight(); self.bitmap3.y = self.bitmap1.y + self.bitmap1.getHeight()*2; } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 2526 | <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>循环移动的背景</title> <meta name="viewport" content="width=device-width,initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no,target-densitydpi=device-dpi"/> <meta name="apple-mobile-web-app-capable" content="yes"/> <meta name="full-screen" content="true"/> <meta name="screen-orientation" content="portrait"/> <meta name="x5-fullscreen" content="true"/> <meta name="360-fullscreen" content="true"/> <style> *{margin:0;padding:0} </style> </head> <body> <div id="mylegend">loading...</div> <script src="lufylegend-1.7.6.min.js" language="javascript" type="text/javascript" ></script> <script src="background.js" language="javascript" type="text/javascript"></script> <script> init(30,"mylegend",320,480,main); var loadingLayer,backLayer,background; var MOVE_STEP = 2, STAGE_STEP = 2; var loadData = [ {name:"back",path:"images/back.jpg"} ]; function main(){ loadingLayer = new LoadingSample1(); addChild(loadingLayer); LLoadManage.load( loadData, function(progress){ loadingLayer.setProgress(progress); }, gameInit ); } function gameInit(result){ imglist = result; removeChild(loadingLayer); loadingLayer=null; backLayer = new LSprite(); addChild(backLayer); //实例化Background类 background = new Background(); backLayer.addChild(background); //绑定循环事件 backLayer.addEventListener(LEvent.ENTER_FRAME,onframe); } function onframe(){ //执行背景移动 background.run(); } </script> </body> </html> |
1、lufylegend.js文件被正确引入;
2、作为背景的图片路径是正确的。
确认这两点后直接运行上述代码,就可以看到背景自下而上不断地移动了。
相关文章推荐
- mysql存储过程详解
- 只有程序员才会下载的黄片儿
- react-native 导航栏
- js获取宽、高
- 浅谈单元测试之(一):单元测试的意义
- ubuntu mount命令的使用
- elastic查询笔记(2)
- spring的aop拦截action中的方法会报java.lang.NoSuchMethodException: $Proxy97.test()异常
- 责任链模式——使编程更有灵活性
- overlaps the location of another project Zendstudio导入已经存在的目录
- 第3天
- Qt之进程间通信(TCP/IP)
- Inventor中工作点导出到excel
- Effective Objective-C 2.0 — 第13条:用“方法调配 技术” 调试 “黑盒方法”
- Qt之进程间通信(TCP/IP)
- Android 网络请求Volley库完全解析,Volley的基本用法(二)
- 欢迎使用CSDN-markdown编辑器
- Codechef:Sherlock and Inversions
- MySQL中的存储引擎讲解(InnoDB,MyISAM,Memory等各存储引擎对比)
- 使用 obfsproxy 混淆网络流量