如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
package{importflash.display.Sprite;importflash.text.TextField;importflash.events.Event;importflash.events.KeyboardEvent;importflash.utils.getTimer;importorg.papervision3d.materials.*;importorg.papervision3d.materials.utils.*;importorg.papervision3d.materials.shadematerials.FlatShadeMaterial;importorg.papervision3d.lights.PointLight3D;importorg.papervision3d.objects.*;importorg.papervision3d.objects.primitives.*importorg.papervision3d.view.*;importorg.papervision3d.scenes.Scene3D;[SWF(backgroundColor="0x000000",frameRate="24")]publicclassTetrisextendsBasicView{privateconstW:int=10;privateconstH:int=20;privateconstUNIT:int=16;privateconstCOLOR:Array=[0x000000,0x00FFFF,0xFFFF00,0x22FF22,0xFF2222,0x4444FF,0xFF8844,0xFF22FF];privateconstPAT:Array=[[[1,1,1,1]],[[0,2,0],[2,2,2]],[[3,3,0],[0,3,3]],[[0,4,4],[4,4,0]],[[5,5],[5,0],[5,0]],[[6,6],[0,6],[0,6]],[[7,7],[7,7]]];privateconstSPEED:Array=[30,20,10,5];privateconstVK_H:int=72;//hprivateconstVK_J:int=74;//jprivateconstVK_K:int=75;//kprivateconstVK_L:int=76;//lprivateconstVK_SPC:int=32;//spaceprivatevarfield:Array=[];privatevarpiece:Array;privatevarnext:Array;privatevartext:TextField=newTextField();privatevarkeytable:Array=[];privatevarcount:int=0;privatevarstep:int=0;privatevarpx:int;privatevarpy:int;privatevarlight:PointLight3D;publicfunctionTetris(){Wonderfl.capture_delay(25);light=newPointLight3D(false);light.x=500;light.y=-750;light.z=1500;text.x=300;text.textColor=0xFFFFFF;text.text="Next:";addChild(text);vart:TextField=newTextField();t.textColor=0xFFFFFF;t.text="Keys:H,J,K,L,SPACE";t.scaleX=t.scaleY=1.25;t.width=250;addChild(t);field=newArray(H).map(function():*{returnnewArray(W).map(function():*{return0;})});keytable[VK_H]=function():void{px-=space(px-1,py,piece)};keytable[VK_J]=function():void{rotate(true)};keytable[VK_K]=function():void{rotate(false)};keytable[VK_L]=function():void{px+=space(px+1,py,piece)};keytable[VK_SPC]=function()