flash on 2015-12-20
♥0 |
Line 53 |
Modified 2015-12-20 05:00:25 |
MIT License
archived:2017-03-30 11:40:42
ActionScript3 source code
/**
* Copyright mutantleg ( http://wonderfl.net/user/mutantleg )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/uF89
*/
package {
import flash.text.TextField;
import flash.events.Event;
import flash.display.Sprite;
public class FlashTest extends Sprite {
public function FlashTest() {
deb = new TextField();
deb.mouseEnabled = false;
deb.width = 320;
deb.height = 240;
addChild(deb);
setFlag(0, true);
setFlag(4, true);
setFlag(3000, true);
setFlag(8191, true);
var str:String;
str = "flag " + getFlag(0);
str += "\nflag " + getFlag(3);
str += "\nflag " + getFlag(4);
str += "\nflag " + getFlag(3000-1);
str += "\nflag3k " + getFlag(3000);
str += "\nflag " + getFlag(3000+1);
str += "\nflag " + getFlag(8190);
str += "\nflag " + getFlag(8191);
str += "\nflag " + getFlag(18191);
deb.text = str;
}//ctor
public var deb:TextField;
public var maxFlag:int = 256*32; //8192 //1Kb
public var vecFlag:Vector.<int> = new Vector.<int>(256, false);
public function setFlag(f:int, v:Boolean):void
{ if (f <0 || f >= maxFlag) { return; }
var i:int; var k:int; var m:int;
i = f/32; k = f % 32;
m = vecFlag[i];
if (v) { m |= (1 << k); }
else { m &= ~(1 << k); }
vecFlag[i] = m;
}//setflag
public function getFlag(f:int):Boolean
{ if (f <0 || f >= maxFlag) { return false; }
var i:int; var k:int; var m:int;
i = f/32; k = f % 32;
m = vecFlag[i];
return ((m & (1 << k)) != 0);
}//getflag
public function onEnter(e:Event):void
{
graphics.clear();
graphics.lineStyle(2, 0);
}//onenter
}//classend
}