※現在、「wonderfl build flash online」求人コンテンツ制作に関してのアンケートを実施中です!みなさまのお力添えを頂いて、続々とアンケート結果が集まっていますが、まだまだ募集しております。ご協力のほど、どうぞよろしくお願いいたします!
wonderfl運営事務局
→アンケートページ(※ログインしてからお答えいただけるようになっています。)
LifeShooter forked from: LifeShooter
- // forked from miyaoka's LifeShooter
- // forked from psyark's forked from: convolution_life
- // forked from hacker_3szp8277's convolution_life
- // 自機は想像で補ってください。または補ってください。
- package
- {
- import flash.display.*;
- import flash.filters.ConvolutionFilter;
- import flash.events.*;
- import flash.geom.*;
- [SWF(width="465", height="465", backgroundColor= 0x000033, frameRate="60")]
- public class LifeShooter
- extends Sprite
- {
- private var pixelScale:Number = 1 + Math.random()*4;
- private var scrollHeight:int = 4;
- private var scrollFrame:int = 120;
- private var lifeBD:BitmapData = new BitmapData(stage.stageWidth * 0.75 / pixelScale, stage.stageHeight / pixelScale + scrollHeight * pixelScale, false, 0x000000);
- private var lifeBmp:Bitmap = new Bitmap(lifeBD);
- private var field:Sprite = new Sprite();
- private var step:ConvolutionFilter = new ConvolutionFilter(3, 3, [1, 1, 1, 1, 9, 1, 1, 1, 1], 0xFF, 0);
- private var rule:Array = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xFF0000, 0xFF0000];// 0xFF0000];
- private var scrollWaitFrames:uint = 0;
- private var mouseHold:uint = 0;
- public function LifeShooter()
- {
- field.addChild(lifeBmp);
- field.scaleX = field.scaleY = pixelScale;
- addChild(field);
- field.x = (stage.stageWidth - field.width)/2
- lifeBmp.y = -scrollHeight;
- lifeBD.pixelDissolve(lifeBD, new Rectangle(0,0,lifeBD.width, lifeBD.height * 0.1), lifeBD.rect.topLeft, Math.floor(Math.random() * int.MAX_VALUE), lifeBD.width*lifeBD.height /10, 0xFFFF0000);
- field.addEventListener(MouseEvent.MOUSE_DOWN, function (mEvt:MouseEvent):void { mouseHold = 2 });
- stage.addEventListener(MouseEvent.MOUSE_UP, function ():void { mouseHold = 0 });
- addEventListener(Event.ENTER_FRAME, enterFrameHandler);
- }
- private function enterFrameHandler(evt:Event):void
- {
- if (mouseHold)
- {
- if(mouseHold++ % 2 == 0)
- {
- var bullet:Sprite = new Sprite;
- bullet.graphics.beginFill(0xFF0000);
- var bulletSize:Number = Math.min(10, 2 +mouseHold / 10);
- bullet.graphics.drawRect(-bulletSize / 2, -1/2, bulletSize, 1);
- bullet.x = field.mouseX;
- bullet.y = field.mouseY;
- field.addChild(bullet);
- bullet.addEventListener(Event.ENTER_FRAME, bulletEnterFrameHandler, false, 0, true);
- }
- }
- lifeBD.lock();
- lifeBD.applyFilter(lifeBD, lifeBD.rect, lifeBD.rect.topLeft, step);
- lifeBD.paletteMap(lifeBD, lifeBD.rect, lifeBD.rect.topLeft, rule);
- lifeBmp.y = -scrollHeight + scrollHeight * scrollWaitFrames / scrollFrame
- if (++scrollWaitFrames % scrollFrame == 0)
- {
- lifeBmp.y = -scrollHeight;
- scrollWaitFrames = 0;
- lifeBD.scroll(0, scrollHeight);
- lifeBD.fillRect(new Rectangle(0, 0, lifeBD.width, scrollHeight), 0xFF000000);
- lifeBD.pixelDissolve(lifeBD, new Rectangle(0, 0, lifeBD.width, scrollHeight), lifeBD.rect.topLeft, Math.floor(Math.random() * int.MAX_VALUE), lifeBD.width * scrollHeight / 2, 0xFFFF0000);
- }
- lifeBD.unlock();
- }
- private function bulletEnterFrameHandler(evt:Event):void
- {
- var bullet:Sprite = evt.target as Sprite;
- bullet.y -= bullet.height * 2;
- if (bullet.height / 2 >= bullet.y)
- {
- bullet.removeEventListener(Event.ENTER_FRAME, bulletEnterFrameHandler);
- field.removeChild(bullet);
- return;
- }
- var bd:BitmapData = new BitmapData(Math.floor(bullet.width + 2), Math.floor(bullet.height + 2));
- bd.copyPixels(lifeBD, new Rectangle(Math.floor(bullet.x - bullet.width /2), Math.floor(bullet.y-bullet.height/2), bd.width, bd.height), bd.rect.topLeft);
- if (bd.compare( new BitmapData(bd.width, bd.height, true, 0xFF000000) ) != 0)
- {
- bullet.removeEventListener(Event.ENTER_FRAME, bulletEnterFrameHandler);
- lifeBD.draw(bullet, new Matrix(1, 0, 0, 1, bullet.x , bullet.y));
- field.removeChild(bullet);
- }
- }
- }
- }
LifeShooter forked from: LifeShooter
- // forked from miyaoka's LifeShooter
- // forked from psyark's forked from: convolution_life
- // forked from hacker_3szp8277's convolution_life
- // 自機は想像で補ってください。または補ってください。
- package
- {
- import flash.display.*;
- import flash.filters.ConvolutionFilter;
- import flash.events.*;
- import flash.geom.*;
- [SWF(width="465", height="465", backgroundColor= 0x000033, frameRate="60")]
- public class LifeShooter
- extends Sprite
- {
- private var pixelScale:Number = 1 + Math.random()*4;
- private var scrollHeight:int = 4;
- private var scrollFrame:int = 120;
- private var lifeBD:BitmapData = new BitmapData(stage.stageWidth * 0.75 / pixelScale, stage.stageHeight / pixelScale + scrollHeight * pixelScale, false, 0x000000);
- private var lifeBmp:Bitmap = new Bitmap(lifeBD);
- private var field:Sprite = new Sprite();
- private var step:ConvolutionFilter = new ConvolutionFilter(3, 3, [1, 1, 1, 1, 9, 1, 1, 1, 1], 0xFF, 0);
- private var rule:Array = [0, 0, 0, 0xFF0000, 0, 0, 0, 0, 0, 0, 0, 0xFF0000, 0xFF0000];// 0xFF0000];
- private var scrollWaitFrames:uint = 0;
- private var mouseHold:uint = 0;
- public function LifeShooter()
- {
- field.addChild(lifeBmp);
- field.scaleX = field.scaleY = pixelScale;
- addChild(field);
- field.x = (stage.stageWidth - field.width)/2
- lifeBmp.y = -scrollHeight;
- lifeBD.pixelDissolve(lifeBD, new Rectangle(0,0,lifeBD.width, lifeBD.height * 0.1), lifeBD.rect.topLeft, Math.floor(Math.random() * int.MAX_VALUE), lifeBD.width*lifeBD.height /10, 0xFFFF0000);
- field.addEventListener(MouseEvent.MOUSE_DOWN, function (mEvt:MouseEvent):void { mouseHold = 2 });
- stage.addEventListener(MouseEvent.MOUSE_UP, function ():void { mouseHold = 0 });
- addEventListener(Event.ENTER_FRAME, enterFrameHandler);
- }
- private function enterFrameHandler(evt:Event):void
- {
- if (mouseHold)
- {
- if(mouseHold++ % 2 == 0)
- {
- var bullet:Sprite = new Sprite;
- bullet.graphics.beginFill(0xFF0000);
- var bulletSize:Number = Math.min(10, 2 +mouseHold / 10);
- bullet.graphics.drawRect(-bulletSize / 2, -1/2, bulletSize, 1);
- bullet.x = field.mouseX;
- bullet.y = field.mouseY;
- field.addChild(bullet);
- bullet.addEventListener(Event.ENTER_FRAME, bulletEnterFrameHandler, false, 0, true);
- }
- }
- lifeBD.lock();
- lifeBD.applyFilter(lifeBD, lifeBD.rect, lifeBD.rect.topLeft, step);
- lifeBD.paletteMap(lifeBD, lifeBD.rect, lifeBD.rect.topLeft, rule);
- lifeBmp.y = -scrollHeight + scrollHeight * scrollWaitFrames / scrollFrame
- if (++scrollWaitFrames % scrollFrame == 0)
- {
- lifeBmp.y = -scrollHeight;
- scrollWaitFrames = 0;
- lifeBD.scroll(0, scrollHeight);
- lifeBD.fillRect(new Rectangle(0, 0, lifeBD.width, scrollHeight), 0xFF000000);
- lifeBD.pixelDissolve(lifeBD, new Rectangle(0, 0, lifeBD.width, scrollHeight), lifeBD.rect.topLeft, Math.floor(Math.random() * int.MAX_VALUE), lifeBD.width * scrollHeight / 2, 0xFFFF0000);
- }
- lifeBD.unlock();
- }
- private function bulletEnterFrameHandler(evt:Event):void
- {
- var bullet:Sprite = evt.target as Sprite;
- bullet.y -= bullet.height * 2;
- if (bullet.height / 2 >= bullet.y)
- {
- bullet.removeEventListener(Event.ENTER_FRAME, bulletEnterFrameHandler);
- field.removeChild(bullet);
- return;
- }
- var bd:BitmapData = new BitmapData(Math.floor(bullet.width + 2), Math.floor(bullet.height + 2));
- bd.copyPixels(lifeBD, new Rectangle(Math.floor(bullet.x - bullet.width /2), Math.floor(bullet.y-bullet.height/2), bd.width, bd.height), bd.rect.topLeft);
- if (bd.compare( new BitmapData(bd.width, bd.height, true, 0xFF000000) ) != 0)
- {
- bullet.removeEventListener(Event.ENTER_FRAME, bulletEnterFrameHandler);
- lifeBD.draw(bullet, new Matrix(1, 0, 0, 1, bullet.x , bullet.y));
- field.removeChild(bullet);
- }
- }
- }
- }
LifeShooter forked from: LifeShooter
- // forked from miyaoka's LifeShooter
- // forked from psyark's forked from: convolution_life
- // forked from hacker_3szp8277's convolution_life
- // 自機は想像で補ってください。または補ってください。
- package
- {
- import flash.display.*;
- import flash.filters.ConvolutionFilter;
- import flash.events.*;
- import flash.geom.*;
- [SWF(width="465", height="465", backgroundColor= 0x000033, frameRate="60")]
- public class LifeShooter
- extends Sprite
- {
- private var pixelScale:Number = 1 + Math.random()*4;
- private var scrollHeight:int = 4;
- private var scrollFrame:int = 120;
- private var lifeBD:BitmapData = new BitmapData(stage.stageWidth * 0.75 / pixelScale, stage.stageHeight / pixelScale + scrollHeight * pixelScale, false, 0x000000);
- private var lifeBmp:Bitmap = new Bitmap(lifeBD);
- private var field:Sprite = new Sprite();
- private var step:ConvolutionFilter = new ConvolutionFilter(3, 3, [1, 1, 1, 1, 9, 1, 1, 1, 1], 0xFF, 0);
- private var rule:Array = [0, 0, 0, 0xFF0000, 0, 0, 0, 0, 0, 0, 0, 0xFF0000, 0xFF0000];// 0xFF0000];
- private var scrollWaitFrames:uint = 0;
- private var mouseHold:uint = 0;
- public function LifeShooter()
- {
- field.addChild(lifeBmp);
- field.scaleX = field.scaleY = pixelScale;
- addChild(field);
- field.x = (stage.stageWidth - field.width)/2
- lifeBmp.y = -scrollHeight;
- lifeBD.pixelDissolve(lifeBD, new Rectangle(0,0,lifeBD.width, lifeBD.height * 0.1), lifeBD.rect.topLeft, Math.floor(Math.random() * int.MAX_VALUE), lifeBD.width*lifeBD.height /10, 0xFFFF0000);
- field.addEventListener(MouseEvent.MOUSE_DOWN, function (mEvt:MouseEvent):void { mouseHold = 2 });
- stage.addEventListener(MouseEvent.MOUSE_UP, function ():void { mouseHold = 0 });
- addEventListener(Event.ENTER_FRAME, enterFrameHandler);
- }
- private function enterFrameHandler(evt:Event):void
- {
- if (mouseHold)
- {
- if(mouseHold++ % 2 == 0)
- {
- var bullet:Sprite = new Sprite;
- bullet.graphics.beginFill(0xFF0000);
- var bulletSize:Number = Math.min(10, 2 +mouseHold / 10);
- bullet.graphics.drawRect(-bulletSize / 2, -1/2, bulletSize, 1);
- bullet.x = field.mouseX;
- bullet.y = field.mouseY;
- field.addChild(bullet);
- bullet.addEventListener(Event.ENTER_FRAME, bulletEnterFrameHandler, false, 0, true);
- }
- }
- lifeBD.lock();
- lifeBD.applyFilter(lifeBD, lifeBD.rect, lifeBD.rect.topLeft, step);
- lifeBD.paletteMap(lifeBD, lifeBD.rect, lifeBD.rect.topLeft, rule);
- lifeBmp.y = -scrollHeight + scrollHeight * scrollWaitFrames / scrollFrame
- if (++scrollWaitFrames % scrollFrame == 0)
- {
- lifeBmp.y = -scrollHeight;
- scrollWaitFrames = 0;
- lifeBD.scroll(0, scrollHeight);
- lifeBD.fillRect(new Rectangle(0, 0, lifeBD.width, scrollHeight), 0xFF000000);
- lifeBD.pixelDissolve(lifeBD, new Rectangle(0, 0, lifeBD.width, scrollHeight), lifeBD.rect.topLeft, Math.floor(Math.random() * int.MAX_VALUE), lifeBD.width * scrollHeight / 2, 0xFFFF0000);
- }
- lifeBD.unlock();
- }
- private function bulletEnterFrameHandler(evt:Event):void
- {
- var bullet:Sprite = evt.target as Sprite;
- bullet.y -= bullet.height * 2;
- if (bullet.height / 2 >= bullet.y)
- {
- bullet.removeEventListener(Event.ENTER_FRAME, bulletEnterFrameHandler);
- field.removeChild(bullet);
- return;
- }
- var bd:BitmapData = new BitmapData(Math.floor(bullet.width + 2), Math.floor(bullet.height + 2));
- bd.copyPixels(lifeBD, new Rectangle(Math.floor(bullet.x - bullet.width /2), Math.floor(bullet.y-bullet.height/2), bd.width, bd.height), bd.rect.topLeft);
- if (bd.compare( new BitmapData(bd.width, bd.height, true, 0xFF000000) ) != 0)
- {
- bullet.removeEventListener(Event.ENTER_FRAME, bulletEnterFrameHandler);
- lifeBD.draw(bullet, new Matrix(1, 0, 0, 1, bullet.x , bullet.y));
- field.removeChild(bullet);
- }
- }
- }
- }
LifeShooter forked from: LifeShooter
- // forked from miyaoka's LifeShooter
- // forked from psyark's forked from: convolution_life
- // forked from hacker_3szp8277's convolution_life
- // 自機は想像で補ってください。または補ってください。
- package
- {
- import flash.display.*;
- import flash.filters.ConvolutionFilter;
- import flash.events.*;
- import flash.geom.*;
- [SWF(width="465", height="465", backgroundColor= 0x000033, frameRate="60")]
- public class LifeShooter
- extends Sprite
- {
- private var pixelScale:Number = 1 + Math.random()*4;
- private var scrollHeight:int = 4;
- private var scrollFrame:int = 120;
- private var lifeBD:BitmapData = new BitmapData(stage.stageWidth * 0.75 / pixelScale, stage.stageHeight / pixelScale + scrollHeight * pixelScale, false, 0x000000);
- private var lifeBmp:Bitmap = new Bitmap(lifeBD);
- private var field:Sprite = new Sprite();
- private var step:ConvolutionFilter = new ConvolutionFilter(3, 3, [1, 1, 1, 1, 9, 1, 1, 1, 1], 0xFF, 0);
- private var rule:Array = [0, 0, 0, 0xFF0000, 0, 0, 0, 0, 0, 0, 0, 0xFF0000, 0xFF0000];// 0xFF0000];
- private var scrollWaitFrames:uint = 0;
- private var mouseHold:uint = 0;
- public function LifeShooter()
- {
- field.addChild(lifeBmp);
- field.scaleX = field.scaleY = pixelScale;
- addChild(field);
- field.x = (stage.stageWidth - field.width)/2
- lifeBmp.y = -scrollHeight;
- lifeBD.pixelDissolve(lifeBD, new Rectangle(0,0,lifeBD.width, lifeBD.height * 0.1), lifeBD.rect.topLeft, Math.floor(Math.random() * int.MAX_VALUE), lifeBD.width*lifeBD.height /10, 0xFFFF0000);
- field.addEventListener(MouseEvent.MOUSE_DOWN, function (mEvt:MouseEvent):void { mouseHold = 2 });
- stage.addEventListener(MouseEvent.MOUSE_UP, function ():void { mouseHold = 0 });
- addEventListener(Event.ENTER_FRAME, enterFrameHandler);
- }
- private function enterFrameHandler(evt:Event):void
- {
- if (mouseHold)
- {
- if(mouseHold++ % 2 == 0)
- {
- var bullet:Sprite = new Sprite;
- bullet.graphics.beginFill(0xFF0000);
- var bulletSize:Number = Math.min(10, 2 +mouseHold / 10);
- bullet.graphics.drawRect(-bulletSize / 2, -1/2, bulletSize, 1);
- bullet.x = field.mouseX;
- bullet.y = field.mouseY;
- field.addChild(bullet);
- bullet.addEventListener(Event.ENTER_FRAME, bulletEnterFrameHandler, false, 0, true);
- }
- }
- lifeBD.lock();
- lifeBD.applyFilter(lifeBD, lifeBD.rect, lifeBD.rect.topLeft, step);
- lifeBD.paletteMap(lifeBD, lifeBD.rect, lifeBD.rect.topLeft, rule);
- lifeBmp.y = -scrollHeight + scrollHeight * scrollWaitFrames / scrollFrame
- if (++scrollWaitFrames % scrollFrame == 0)
- {
- lifeBmp.y = -scrollHeight;
- scrollWaitFrames = 0;
- lifeBD.scroll(0, scrollHeight);
- lifeBD.fillRect(new Rectangle(0, 0, lifeBD.width, scrollHeight), 0xFF000000);
- lifeBD.pixelDissolve(lifeBD, new Rectangle(0, 0, lifeBD.width, scrollHeight), lifeBD.rect.topLeft, Math.floor(Math.random() * int.MAX_VALUE), lifeBD.width * scrollHeight / 2, 0xFFFF0000);
- }
- lifeBD.unlock();
- }
- private function bulletEnterFrameHandler(evt:Event):void
- {
- var bullet:Sprite = evt.target as Sprite;
- bullet.y -= bullet.height * 5;
- if (bullet.height / 10 >= bullet.y)
- {
- bullet.removeEventListener(Event.ENTER_FRAME, bulletEnterFrameHandler);
- field.removeChild(bullet);
- return;
- }
- var bd:BitmapData = new BitmapData(Math.floor(bullet.width + 5), Math.floor(bullet.height + 2));
- bd.copyPixels(lifeBD, new Rectangle(Math.floor(bullet.x - bullet.width /2), Math.floor(bullet.y-bullet.height/7), bd.width, bd.height), bd.rect.topLeft);
- if (bd.compare( new BitmapData(bd.width, bd.height, true, 0xFF000000) ) != 0)
- {
- bullet.removeEventListener(Event.ENTER_FRAME, bulletEnterFrameHandler);
- lifeBD.draw(bullet, new Matrix(1, 0, 0, 1, bullet.x , bullet.y));
- field.removeChild(bullet);
- }
- }
- }
- }
LifeShooter forked from: LifeShooter
- // forked from miyaoka's LifeShooter
- // forked from psyark's forked from: convolution_life
- // forked from hacker_3szp8277's convolution_life
- // 自機は想像で補ってください。または補ってください。
- package
- {
- import flash.display.*;
- import flash.filters.GradientFilter;
- import flash.events.*;
- import flash.geom.*;
- [SWF(width="465", height="465", backgroundColor= 0x000033, frameRate="60")]
- public class LifeShooter
- extends Sprite
- {
- private var pixelScale:Number = 2 + Math.random()*4;
- private var scrollHeight:int = 3;
- private var scrollFrame:int = 120;
- private var lifeBD:BitmapData = new BitmapData(stage.stageWidth * 0.75 / pixelScale, stage.stageHeight / pixelScale + scrollHeight * pixelScale, true, 0x000000);
- private var lifeBmp:Bitmap = new Bitmap(lifeBD);
- private var field:Sprite = new Sprite();
- private var step:ConvolutionFilter = new ConvolutionFilter(3, 3, [1, 1, 1, 1, 9, 1, 1, 1, 1], 0xFF, 0);
- private var rule:Array = [0, 0, 0, 0xFF0000, 0, 0, 0, 0, 0, 0, 0, 0xFF0000, 0xFF0000];// 0xFF0000];
- private var scrollWaitFrames:uint = 0;
- private var mouseHold:uint = 0;
- public function LifeShooter()
- {
- field.addChild(lifeBmp);
- field.scaleX = field.scaleY = pixelScale;
- addChild(field);
- field.x = (stage.stageWidth - field.width)/2
- lifeBmp.y = -scrollHeight;
- lifeBD.pixelDissolve(lifeBD, new Rectangle(0,0,lifeBD.width, lifeBD.height * 0.1), lifeBD.rect.topLeft, Math.floor(Math.random() * int.MAX_VALUE), lifeBD.width*lifeBD.height /10, 0xFFFF0000);
- field.addEventListener(MouseEvent.MOUSE_DOWN, function (mEvt:MouseEvent):void { mouseHold = 2 });
- stage.addEventListener(MouseEvent.MOUSE_UP, function ():void { mouseHold = 0 });
- addEventListener(Event.ENTER_FRAME, enterFrameHandler);
- }
- private function enterFrameHandler(evt:Event):void
- {
- if (mouseHold)
- {
- if(mouseHold++ % 2 == 0)
- {
- var bullet:Sprite = new Sprite;
- bullet.graphics.beginFill(0xFF0000);
- var bulletSize:Number = Math.min(10, 2 +mouseHold / 10);
- bullet.graphics.drawRect(-bulletSize / 2, -1/2, bulletSize, 1);
- bullet.x = field.mouseX;
- bullet.y = field.mouseY;
- field.addChild(bullet);
- bullet.addEventListener(Event.ENTER_FRAME, bulletEnterFrameHandler, false, 0, true);
- }
- }
- lifeBD.lock();
- lifeBD.applyFilter(lifeBD, lifeBD.rect, lifeBD.rect.topLeft, step);
- lifeBD.paletteMap(lifeBD, lifeBD.rect, lifeBD.rect.topLeft, rule);
- lifeBmp.y = -scrollHeight + scrollHeight * scrollWaitFrames / scrollFrame
- if (++scrollWaitFrames % scrollFrame == 0)
- {
- lifeBmp.y = -scrollHeight;
- scrollWaitFrames = 0;
- lifeBD.scroll(0, scrollHeight);
- lifeBD.fillRect(new Rectangle(0, 0, lifeBD.width, scrollHeight), 0xFF000000);
- lifeBD.pixelDissolve(lifeBD, new Rectangle(0, 0, lifeBD.width, scrollHeight), lifeBD.rect.topLeft, Math.floor(Math.random() * int.MAX_VALUE), lifeBD.width * scrollHeight / 2, 0xFFFF0000);
- }
- lifeBD.unlock();
- }
- private function bulletEnterFrameHandler(evt:Event):void
- {
- var bullet:Sprite = evt.target as Sprite;
- bullet.y -= bullet.height * 2;
- if (bullet.height / 2 >= bullet.y)
- {
- bullet.removeEventListener(Event.ENTER_FRAME, bulletEnterFrameHandler);
- field.removeChild(bullet);
- return;
- }
- var bd:BitmapData = new BitmapData(Math.floor(bullet.width + 2), Math.floor(bullet.height + 2));
- bd.copyPixels(lifeBD, new Rectangle(Math.floor(bullet.x - bullet.width /2), Math.floor(bullet.y-bullet.height/2), bd.width, bd.height), bd.rect.topLeft);
- if (bd.compare( new BitmapData(bd.width, bd.height, true, 0xFF000000) ) != 0)
- {
- bullet.removeEventListener(Event.ENTER_FRAME, bulletEnterFrameHandler);
- lifeBD.draw(bullet, new Matrix(1, 0, 0, 1, bullet.x , bullet.y));
- field.removeChild(bullet);
- }
- }
- }
- }
notice: 


