亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? armlayer.as

?? 使用 flash AS3開發(fā)的超級(jí)瑪麗游戲源代碼,
?? AS
字號(hào):
?/*****************************
* CLASS GASLAYER
* CREATES A TILEMAP ASSEMBLY
* SCROLLING BY ATTACH & REMOVE
* TILE ANIMATION SUPPORT
*****************************/

import com.gamepackage.tilemap.layer.*;

class com.gamepackage.tilemap.layer.ARMLayer
	implements com.gamepackage.tilemap.TileLayer, com.gamepackage.util.Loadable
{
	private var parent: MovieClip;
	private var depth: Number;
	private var map: Array;
	private var cols: Number;
	private var rows: Number;
	private var tilesize: Number;
	private var linkageId: String;
	
	private var timeline: MovieClip;

	private var clips: Array;

	private var x: Number, y: Number;
	private var ttx: Number, tty: Number;
	
	private var jx: Number;
	private var jy: Number;
	
	private var centered: Boolean = false;
	
	private var offsetX: Number;
	private var offsetY: Number;
	
	private var sync: Number;
	
	private var childCount: Number;
	private var childDepth: Number;
	private var depthSpace: Number;
	
	//-- MAP COLS --//
	private var mcl: Number;
	
	function ARMLayer( parent: MovieClip, depth: Number, map: Array, cols: Number, rows: Number, tilesize: Number, linkageId: String, centered: Boolean )
	{
		this.parent = parent;
		this.depth = depth;
		this.map = map;
		this.cols = cols;
		this.rows = rows;
		this.tilesize = tilesize;
		this.linkageId = linkageId;
		this.centered = centered;
		
		init();
	}
	
	private function init( Void ): Void
	{
		//-- CREATE TIMELINE --//
		timeline = parent.createEmptyMovieClip( linkageId , depth );
		
		depthSpace = 0;
		childCount = 0;
	}
	
	function create( Void ): Void
	{
		//-- COMPUTE JUMP OFFSET --//
		jx = ( cols + 1 ) * tilesize;
		jy = ( rows + 1 ) * tilesize;
		
		offsetX = ( centered ) ? jx / 2 - tilesize / 2 : 0;
		offsetY = ( centered ) ? jy / 2 - tilesize / 2 : 0;
		
		//-- BUILD CLIPS --//
		clips = new Array;
		
		var rx, ry;
		
		for( ry = 0 ; ry <= rows ; ry++ )
		{
			clips[ry] = new Array;
			
			for( rx = 0 ; rx <= cols ; rx++ )
			{
				clips[ry][rx] = undefined;
			}
		}
		
		mcl = map[0].length + depthSpace;
		
		childDepth = ( map.length + 1 ) * mcl;
		
		sync = 0;
		
		ttx = tty = Number.POSITIVE_INFINITY;
	}
	
	function moveTo( x: Number, y: Number ): Void
	{
		//-- COMPARE ASSEMBLY --//
		var tx: Number = int( ( this.x = x ) / tilesize );
		var ty: Number = int( ( this.y = y ) / tilesize );
		
		var dx: Number = ttx - tx;
		var dy: Number = tty - ty;
		
		var i: Number;
		
		ttx = tx;
		tty = ty;
		
		//-- STORE REFERENCES LOCAL --/
		var c = clips;
		var m = map;
		var t = timeline;

		//-- OTHER LOCALS --//
		var rx, ry;
		var mrow, crow;
		var clip: MovieClip;
		
		//-- MOVE TIMELINE --//
		t._x = -x;
		t._y = -y;
		
		var abs = Math.abs;
		
		var ani: MovieClip;
		
		sync++;
		
		if ( abs( dx ) > 1 || abs( dy ) > 1 )
		{
			//-- COMPLETE BUILD NEEDED --//
			ry = rows;
			while( ry > -1 )
			{
				crow = clips[ry--];
				rx = cols;
				while( rx > -1 )
				{
					crow[rx--].removeMovieClip();
				}
			}
			
			
			ry = rows;
			while( ry > -1 )
			{
				crow = clips[ry];
				mrow = map[ry+ty];
				
				rx = cols;
				while( rx > -1 )
				{
					if ( mrow[rx+tx] )
					{
						i = ( ry + ty ) * mcl + rx + tx;
						
						clip = crow[rx] = t.attachMovie(
							linkageId,
							i.toString(),
							i,
							{
								_x: ( tx + rx ) * tilesize - offsetX,
								_y: ( ty + ry ) * tilesize - offsetY
							}
						);
						clip.gotoAndStop( mrow[rx+tx] );
						if( ani = clip.a )
						{
							ani.gotoAndPlay( sync % ani._totalframes );
						}
					}
					rx--;
				}
				ry--;
			}
		}
		else
		{
			var mx, my, frame;
			//-- HORIZONTAL SCROLLING --//
			if ( dx < 0 )
			{
				//-- PUSH RIGHT --//
				mx = tx + cols;
				
				ry = c.length;
				
				while( --ry > -1 )
				{
					crow = c[ry];
					
					crow.shift().removeMovieClip();
					
					my = ry + ty + dy;
					
					if ( frame = m[ my ][ mx ] )
					{
						i = my * mcl + mx;
						
						crow.push( clip = t.attachMovie( linkageId , i.toString(), i , { _x: mx * tilesize - offsetX, _y: my * tilesize - offsetY } ) );
						clip.gotoAndStop( frame );
						if( ani = clip.a )
						{
							ani.gotoAndPlay( sync % ani._totalframes );
						}
					}
					else
					{
						crow.push( undefined );
					}
				}
			}
			else if ( dx > 0 )
			{
				//-- PUSH RIGHT --//
				ry = c.length;
				
				while( --ry > -1 )
				{
					crow = c[ry];
					
					crow.pop().removeMovieClip();
					
					my = ry + ty + dy;
					
					if ( frame = m[ my ][ tx ] )
					{
						i = my * mcl + tx;
						
						crow.unshift( clip = t.attachMovie( linkageId , i.toString(), i , { _x: tx * tilesize - offsetX, _y: my * tilesize - offsetY } ) );
						clip.gotoAndStop( frame );
						if( ani = clip.a )
						{
							ani.gotoAndPlay( sync % ani._totalframes );
						}
					}
					else
					{
						crow.unshift( undefined );
					}
				}
			}
			//-- VERTICAL SCROLLING --//
			//
			if ( dy < 0 )
			{
				var c0 = c[0];
				//-- PUSH DOWN --//
				c.push( crow = c.shift() );
				
				mrow = m[ my = ty + rows ];

				rx = crow.length;
				
				while( --rx > -1 )
				{
					crow[rx].removeMovieClip();
					
					mx = rx + tx;
					
					if ( frame = mrow[ mx ] )
					{
						i = my * mcl + mx;
						
						clip = c0[rx] = t.attachMovie( linkageId , i.toString(), i , { _x: mx * tilesize - offsetX, _y: my * tilesize - offsetY } );
						clip.gotoAndStop( frame );
						if( ani = clip.a )
						{
							ani.gotoAndPlay( sync % ani._totalframes );
						}
					}
				}
			}
			else if( dy > 0 )
			{
				//-- PUSH UP --//
				c.unshift( crow = c.pop() );
				
				var c0 = c[0];
				
				mrow = m[ ty ];
				
				rx = crow.length;
				
				while( --rx > -1 )
				{
					crow[rx].removeMovieClip();
					
					mx = rx + tx;
					
					if ( frame = mrow[ mx ] )
					{
						i = ty * mcl + mx;
						
						clip = c0[rx] = t.attachMovie( linkageId , i.toString(), i , { _x: mx * tilesize - offsetX, _y: ty * tilesize - offsetY } );
						clip.gotoAndStop( frame );
						if( ani = clip.a )
						{
							ani.gotoAndPlay( sync % ani._totalframes );
						}
					}
				}
			}
		}
	}
	
	function removeTile( rx: Number, ry: Number ): Void
	{
		var tx: Number = int( x / tilesize );
		var ty: Number = int( y / tilesize );
		
		//-- REMOVE THE MOVIECLIP --//
		clips[ry-ty][rx-tx].removeMovieClip();
		
		//-- CLEAR THE MAP ENTRY --//
		map[ry][rx] = 0;
	}
	
	function getChildMovieClip( Void ): MovieClip
	{
		return timeline.createEmptyMovieClip( '_child_' + childCount++ , ++childDepth );
	}
	
	function getLayerWidth( Void ): Number
	{
		return map[0].length * tilesize;
	}
	
	function getLayerHeight( Void ): Number
	{
		return map.length * tilesize;
	}
	
	function setDepthSpace( depthSpace: Number ): Void
	{
		this.depthSpace = depthSpace;
	}
	
	function getDepthSpace( Void ): Number
	{
		return depthSpace;
	}
	
	function getRowDepth( row: Number ): Number
	{
		return ( row + 1 ) * mcl;
	}
	
	function getMap( Void ): Array
	{
		return map;
	}
	
	function getX( Void ): Number
	{
		return x;
	}
	
	function getY( Void ): Number
	{
		return y;
	}
	
	function getLoaderClip( Void ): MovieClip
	{
		return timeline;
	}
}
















?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线免费观看日本欧美| 国产福利一区二区| 欧美日韩亚洲综合| 午夜亚洲福利老司机| 欧美二区三区的天堂| 蜜乳av一区二区| 精品99999| 不卡的av电影| 一区二区三区色| 69av一区二区三区| 国产自产2019最新不卡| 欧美国产激情二区三区| 色婷婷国产精品综合在线观看| 亚洲综合色视频| 日韩美女主播在线视频一区二区三区| 久久99精品国产.久久久久 | 97久久人人超碰| 亚洲午夜羞羞片| 精品美女在线播放| 99麻豆久久久国产精品免费| 一区二区免费在线| www激情久久| 色老汉av一区二区三区| 青青草国产成人av片免费| 久久精品一区二区三区四区| 91首页免费视频| 久久激情五月激情| 国产精品第13页| 亚洲图片激情小说| 在线不卡a资源高清| 国产精品一级片在线观看| 一区二区三区不卡视频| xf在线a精品一区二区视频网站| 99久久er热在这里只有精品15| 日韩高清一级片| 国产精品二区一区二区aⅴ污介绍| 欧美午夜精品一区二区蜜桃 | 一级中文字幕一区二区| 欧美xxxx在线观看| 91色在线porny| 国产一区二区不卡| 日韩在线a电影| 一区二区三区久久| 亚洲国产精品国自产拍av| 7777精品伊人久久久大香线蕉最新版| 国产成人精品三级麻豆| 美女网站色91| 亚洲国产欧美在线| 中文字幕日本不卡| 2020日本不卡一区二区视频| 欧美性感一区二区三区| 国产精品综合在线视频| 日本欧美加勒比视频| 亚洲精品国产视频| 国产精品成人一区二区三区夜夜夜 | 亚洲欧美色图小说| 国产日本欧美一区二区| 欧美成人精品福利| 555夜色666亚洲国产免| 欧美午夜精品电影| 一本大道久久a久久综合| 国产成人免费在线观看不卡| 免费国产亚洲视频| 日韩精品1区2区3区| 午夜久久久久久| 亚洲香蕉伊在人在线观| 亚洲自拍偷拍麻豆| 亚洲欧美日韩国产综合| 国产精品久久精品日日| 国产亚洲精品aa午夜观看| 欧美成人艳星乳罩| 欧美一区二区视频网站| 欧美一级日韩不卡播放免费| 欧美日韩精品二区第二页| 欧美日韩在线免费视频| 欧美乱熟臀69xxxxxx| 欧美日韩国产区一| 91精品国产免费| 日韩欧美另类在线| 久久综合久久综合亚洲| 久久免费美女视频| 亚洲国产高清在线| 日韩理论片在线| 一区二区三区小说| 91麻豆国产福利在线观看| jlzzjlzz欧美大全| 色婷婷久久久久swag精品 | 欧美午夜精品久久久久久超碰| 在线观看日韩电影| 欧美日韩免费视频| 欧美巨大另类极品videosbest| 欧美精品少妇一区二区三区| 欧美美女一区二区在线观看| 欧美肥妇free| 久久久久久免费毛片精品| 国产欧美精品区一区二区三区| 国产精品无码永久免费888| 中文字幕一区三区| 洋洋av久久久久久久一区| 午夜av一区二区| 激情综合色综合久久综合| 国产精品18久久久久久久久| 99久久婷婷国产综合精品电影| 在线看日本不卡| 日韩免费高清电影| 国产精品无圣光一区二区| 亚洲一线二线三线久久久| 另类小说欧美激情| 粉嫩一区二区三区在线看| 色88888久久久久久影院野外| 欧美日韩高清一区二区不卡| 精品国产免费人成在线观看| 成人欧美一区二区三区视频网页 | 中文字幕高清不卡| 一区二区三区免费在线观看| 另类专区欧美蜜桃臀第一页| caoporen国产精品视频| 制服丝袜激情欧洲亚洲| 国产日韩亚洲欧美综合| 亚洲国产一区二区三区青草影视| 久久精品国产精品亚洲红杏| caoporen国产精品视频| 日韩一区二区免费高清| 亚洲欧美国产三级| 国内精品视频一区二区三区八戒| 97aⅴ精品视频一二三区| 日韩免费在线观看| 亚洲精品综合在线| 国产九色sp调教91| 欧美日韩一区二区在线观看视频| 久久久三级国产网站| 亚洲成人av一区二区| 波多野结衣中文一区| 日韩欧美二区三区| 亚洲一区二区三区四区在线免费观看 | 欧美影片第一页| 中文字幕欧美三区| 久久se精品一区二区| 欧美亚洲一区二区三区四区| 国产欧美日韩在线视频| 美女网站在线免费欧美精品| 色94色欧美sute亚洲线路一久 | 成人黄色777网| 久久亚区不卡日本| 日本一不卡视频| 欧美性高清videossexo| 亚洲人成精品久久久久久| 国产成人综合在线| 精品国产一区二区亚洲人成毛片 | 亚洲综合无码一区二区| 成人黄色av网站在线| 国产日韩av一区二区| 欧美午夜一区二区| 亚洲柠檬福利资源导航| 99久久免费视频.com| 中文字幕av一区二区三区免费看| 国产美女av一区二区三区| 欧美mv日韩mv| 黑人精品欧美一区二区蜜桃| 日韩欧美第一区| 日本不卡不码高清免费观看| 宅男在线国产精品| 蜜桃久久av一区| 欧美一区二区三区免费大片| 日本欧美加勒比视频| 欧美精选一区二区| 免费在线观看一区| 精品久久久网站| 激情亚洲综合在线| 久久久91精品国产一区二区精品| 国产一区高清在线| 国产日韩欧美在线一区| 国产成人av电影在线观看| 中文字幕av不卡| 99精品视频中文字幕| 一区二区三区久久| 777午夜精品免费视频| 日韩在线播放一区二区| 欧美一级生活片| 国产综合一区二区| 日本一区二区三区视频视频| 不卡大黄网站免费看| 亚洲欧美另类小说视频| 欧美老人xxxx18| 麻豆高清免费国产一区| 久久久噜噜噜久久人人看| 高清国产午夜精品久久久久久| 中文字幕在线一区免费| 欧美在线制服丝袜| 美女视频第一区二区三区免费观看网站| 日韩天堂在线观看| 国产成人在线电影| 一区二区三区欧美久久| 日韩一区二区三区免费看 | 国产精品女人毛片| 欧美专区亚洲专区| 激情综合色播五月| 亚洲人快播电影网| 欧美电影在线免费观看| 国产成人免费xxxxxxxx|