Flood すでにあるゲームですが簡潔に書いてみた。 クリックした色で左上を塗りつぶします。 全部同じ色にすればクリア。 少ないクリックでクリアを目指そう inu forked:0favorite:8lines:23license : MIT License modified : 2011-11-11 04:35:35 Embed Tweet package { import flash.display.*;import flash.events.*;import flash.text.*; public class Main extends Sprite { public function Main():void { var colorV:Vector.<uint> = Vector.<uint>([0xffbb6666, 0xff008800, 0xff5555bb, 0xffdddd00, 0xffcc88cc, 0xff88cccc]); var i:int, j:int,clickCnt:int; var bmd:BitmapData =new BitmapData(15, 15, true, 0x00000000); var bmp:Bitmap = new Bitmap(bmd); var tf:TextField = new TextField(); tf.text = "Start"; tf.selectable = false; tf.x = 220; tf.y = 230;addChild(tf); bmp.scaleX = 31; bmp.scaleY = 31;addChild(bmp); stage.addEventListener(MouseEvent.CLICK, function(e:MouseEvent):void { if (bmd.getPixel32(0, 0) == 0) for (i = 0; i < 15; i++ ) for (j = 0; j < 15; j++ ) bmd.setPixel32(i, j, colorV[int(Math.random() * colorV.length)]); else { clickCnt++; tf.text = "click : " + clickCnt; bmd.floodFill(0, 0, bmd.getPixel32(int(e.stageX / 31), int(e.stageY / 31))); var cnt:int = 0; for (i = 0; i < colorV.length;i++ )cnt += bmd.getColorBoundsRect(0xffffffff, colorV[i]).isEmpty(); if (cnt == 5) {clickCnt = 0;bmp.bitmapData = bmd = new BitmapData(15, 15, true, 0x00000000);} } }); } } } Code Fullscreen Preview Fullscreen Vladik jimiwu gaziya anime037 a24 Joker wh0 andrewexex88.. game getPixel32 floodFill getColorBoundsRect scaleY setPixel32 stageY scaleX selectable stageX bitmapData Bitmap addChild addEventListener text BitmapData MouseEvent.CLICK length TextField MouseEvent Vector