/* emotionDiver3D ある人のお誕生会のために作ったモノ。 赤青メガネを使うと、飛び出て見えるはず。 エレクトロなバンドのVJ係として、 バラードに合わせてメッセージが 少しずつ出てくるっていうやつ。 なので、元々ステージサイズ640*480向けに 作ったものなので、文字が欠けちゃうけど許して。 実際本番ではプロジェクターで投影したんだけど、 色がずれてて焦った焦ったw 本番直前まで色合わせ。 コードのごちゃごちゃはご容赦。 こんなの本人でも直せないよw */ package{ import flash.display.Sprite; import flash.events.Event; import flash.events.MouseEvent; import flash.events.KeyboardEvent; import flash.display.BlendMode; import flash.ui.Mouse; import flash.text.TextField; import flash.text.TextFormat; import flash.text.TextFieldAutoSize; import flash.display.StageScaleMode; [SWF(width="465", height="465", frameRate="30", backgroundColor="0x000000")] public class Test extends Sprite { private var stageWidth:int = stage.stageWidth; private var stageHeight:int = stage.stageHeight; private var fullScreenBtn:Sprite = new Sprite(); function Test(){ stage.scaleMode = StageScaleMode.NO_SCALE; //Mouse.hide(); /////// var origin_array:Array = new Array(); var msg_array:Array = new Array(); var msg0_array:Array = new Array("水玉さんスキじゃお〜★おめでとないっ♪<br>メッセージ0","おめでとうございます!!<br>大阪のネイリストより☆ <br>メッセージ1","Happy Birthday!! <br>遠く大阪よりお祝いしま〜す。<br>メッセージ2","本日は参加できなくて、<br>ホンマすいません! <br>20代最後のお誕生日、<br>おめでとう! <br>メッセージ3","おめでとぉーーーーう!<br>今度是非新居に遊びに来てね!<br>メッセージ4","姫にとって良い歳でありますように。<br>Happy Birthday!!<br>メッセージ5","お誕生日オメデトウ<br>また会いましょうね <br>メッセージ6","おめでとー!<br>メッセージ7","誕生日おめでとう。<br>ますますいい女になってね<br>メッセージ8","僕のこと<br> 覚えてますか?<br> おめでとう!(5・7・5)<br>メッセージ9"); var msg1_array:Array = new Array("生誕2●周年、おめでとうございます! <br>エブリデイ毎日を楽しくエンジョイした<br>人生ライフにしてください。 <br>メッセージ10","誕生日おめでとうございます、<br>いつまでもお美しく<br>メッセージ11 ","あれ?私より年上なんだぁ。<br>うふっ♪<br>メッセージ12","*かつお*〜〜!! <br>HAPPY BIRTHDAY☆<br> FROM NEWYORK <br>かけつけれへんけど、<br>みんなにたっぷり祝ってもらってな。 <br>いつになったらうちに<br>遊びに来てくれるんやろか??待ってるで〜。<br> まあ、まだまだおりそうな予感なので<br>そのうちに来てねん!! <br>HAVE A HAPPY <br>LIFE FOREVERやで。 <br>そして、私らは<br> Life long friendよ☆ <br>かつおの一年が素敵で輝かしい歳になりますように =) <br>メッセージ13","身体ご自愛のほどを。<br>良き1歳にしてください。<br>メッセージ14","素敵なこといっぱいで<br>キラキラな1年になりますように<br>メッセージ15","こころより、お誕生日おめでとう!!<br>メッセージ16","ハッピーバースデー!<br>メッセージ17","お誕生日おめでとー!!<br>めっさ大好きやで〜!!<br>メッセージ18","お誕生日おめでとう!<br>また、ハニビなどのイベントで<br>ご一緒できること、<br>楽しみにしています♪<br>メッセージ19"); var msg2_array:Array = new Array("おめでとう!早く元気に!<br>メッセージ20","一度お会いしたっきりですが、<br>ファンです!おめでとうございます!<br>メッセージ21","☆お誕生日おめでとうございます☆<br> お誕生会に参加出来なくてすみません…<br>大阪から水玉さんにとって<br>素敵な1年になりますよう<br>お祈りしています☆<br>メッセージ22"); msg_array = msg0_array.concat(msg1_array,msg2_array); var msgpoz_array:Array = new Array(); var msgpoz0_array:Array = new Array([150,-170,-70,-2.424,0,3.087],[215,230,90,-1.24,-0.540,0.572],[0,435,-305,-1.082,0,-0.891],[-420,445,150,-3.309,0.254,0.233],[-180,-475,-360,-1.685,-0.668,1.79],[-200,255,430,-1.495,-0.923,4.339],[-220,120,-520,0.127,0.445,0.636],[-415,-585,260,-0.508,0.827,1.06],[-200,-390,580,-0.381,0,-0.572],[-590,110,380,-0.317,2.402,0]); var msgpoz1_array:Array = new Array([-170,0,-600,-3.14,0,0],[-80,-390,600,0,3.203,1.655],[-140,360,240,0.254,3.649,0.254],[-170,-290,-520,0.445,0.381,-0.891],[280,-50,30,0,3.14,0.636],[-430,-460,-470,0,-0.3819,3.190],[-340,170,-510,0,3.14,-3],[-540,-130,-250,3.0763,0.063,2.809],[30,-550,330,-0.636,-1.336,0.127],[-260,-260,-590,-0.317,2.465,0]); var msgpoz2_array:Array = new Array( [-250,350,60,-4.222,0.254,0.0636],[-450,-550,-220,-0.06,3.457,1.718],[-370,-450,-600,-2.821,0.254,3.190]); msgpoz_array = msgpoz0_array.concat(msgpoz1_array,msgpoz2_array); var msgcount_num:int = new Number(-1); var dotline_00_array:Array = new Array([0, ["dotline",0,0], [[0-475, 0-250, 0],[0-475, 200-250, 0]]],[0, ["dotline",0,0], [[0-475, 100-250, 0],[100-475, 100-250, 0]]],[0, ["dotline",0,0], [[100-475, 0-250, 0],[100-475, 200-250, 0]]]); var dotline_01_array:Array = new Array([0, ["dotline",0,1], [[150-475, 200-250, 0],[200-475, 0-250, 0],[250-475, 200-250, 0]]],[0, ["dotline",0,1], [[175-475, 100-250, 0],[225-475, 100-250, 0]]]); var dotline_02_array:Array = new Array([0, ["dotline",0,2], [[300-475, 200-250, 0],[300-475, 0-250, 0],[375-475, 0-250, 0],[400-475, 50-250, 0],[375-475, 100-250, 0],[300-475, 100-250, 0]]]); var dotline_03_array:Array = new Array([0, ["dotline",0,3], [[450-475, 200-250, 0],[450-475, 0-250, 0],[525-475, 0-250, 0],[550-475, 50-250, 0],[525-475, 100-250, 0],[450-475, 100-250, 0]]]); var dotline_04_array:Array = new Array([0, ["dotline",0,4], [[600-475, 0-250, 0],[650-475, 100-250, 0],[700-475, 0-250, 0]]],[0, ["dotline",0,4], [[650-475, 100-250, 0],[650-475, 200-250, 0]]]); var dotline_05_array:Array = new Array([0, ["dotline",0,5], [[75-475, 400-250, 0],[100-475, 450-250, 0],[75-475, 500-250, 0],[0-475, 500-250, 0],[0-475, 300-250, 0],[75-475, 300-250, 0],[100-475, 350-250, 0],[75-475, 400-250, 0],[0-475, 400-250, 0]]]); var dotline_06_array:Array = new Array([0, ["dotline",0,6], [[150-475, 300-250, 0],[150-475, 500-250, 0]]]); var dotline_07_array:Array = new Array([0, ["dotline",0,7], [[200-475, 500-250, 0],[200-475, 300-250, 0],[275-475, 300-250, 0],[300-475, 350-250, 0],[275-475, 400-250, 0],[200-475, 400-250, 0]]],[0, ["dotline",0,7], [[300-475, 500-250, 0],[275-475, 400-250, 0]]]); var dotline_08_array:Array = new Array([0, ["dotline",0,8], [[315-475, 300-250, 0],[415-475, 300-250, 0]]],[0, ["dotline",0,8], [[365-475, 300-250, 0],[365-475, 500-250, 0]]]); var dotline_09_array:Array = new Array([0, ["dotline",0,9], [[450-475, 300-250, 0],[450-475, 500-250, 0]]],[0, ["dotline",0,9], [[450-475, 400-250, 0],[550-475, 400-250, 0]]],[0, ["dotline",0,9], [[550-475, 300-250, 0],[550-475, 500-250, 0]]]); var dotline_10_array:Array = new Array([0, ["dotline",0,10], [[600-475, 400-250, 0],[600-475, 300-250, 0],[675-475, 300-250, 0],[700-475, 350-250, 0],[700-475, 450-250, 0],[675-475, 500-250, 0],[600-475, 500-250, 0],[600-475, 400-250, 0]]]); var dotline_11_array:Array = new Array([0, ["dotline",0,11], [[725-475, 500-250, 0],[775-475, 300-250, 0],[825-475, 500-250, 0]]],[0, ["dotline",0,11], [[750-475, 400-250, 0],[800-475, 400-250, 0]]]); var dotline_12_array:Array = new Array([0, ["dotline",0,12], [[850-475, 300-250, 0],[900-475, 400-250, 0],[950-475, 300-250, 0]]],[0, ["dotline",0,12], [[900-475, 400-250, 0],[900-475, 500-250, 0]]]); var dotlinecount_num:int = new Number(0); origin_array = origin_array.concat(dotline_00_array,dotline_01_array,dotline_02_array,dotline_03_array,dotline_04_array,dotline_05_array,dotline_06_array,dotline_07_array,dotline_08_array,dotline_09_array,dotline_10_array,dotline_11_array,dotline_12_array); var txt_array:Array = new Array(); var txt0_array:Array = new Array([0,["txt",0,0x666666,0],[[350,250,100]]],[0,["txt",0,0x666666,1],[[-410,100,-250]]],[0,["txt",0,0x666666,2],[[210,-400,-300]]],[0,["txt",0,0x666666,3],[[440,400,200]]],[0,["txt",0,0x666666,4],[[-310,-100,400]]],[0,["txt",0,0x666666,5],[[-140,-400,-300]]],[0,["txt",0,0x666666,6],[[-210,50,500]]],[0,["txt",0,0x666666,7],[[600,-100,250]]],[0,["txt",0,0x666666,8],[[-310,500,-400]]],[0,["txt",0,0x666666,9],[[-40,-350,550]]]); var txt1_array:Array = new Array([0,["txt",0,0x666666,10],[[-70,50,-600]]],[0,["txt",0,0x666666,11],[[410,-100,650]]],[0,["txt",0,0x666666,12],[[-210,-350,300]]],[0,["txt",0,0x666666,13],[[-440,-50,400]]],[0,["txt",0,0x666666,14],[[370,-320,50]]],[0,["txt",0,0x666666,15],[[-440,-400,300]]],[0,["txt",0,0x666666,16],[[210,250,-500]]],[0,["txt",0,0x666666,17],[[-400,-65,-250]]],[0,["txt",0,0x666666,18],[[-150,300,500]]],[0,["txt",0,0x666666,19],[[-440,300,-250]]]); var txt2_array:Array = new Array([0,["txt",0,0x666666,20],[[70,250,400]]],[0,["txt",0,0x666666,21],[[510,70,-250]]],[0,["txt",0,0x666666,22],[[20,550,-400]]]); txt_array = txt0_array.concat(txt1_array,txt2_array); origin_array = origin_array.concat(txt_array); var vpcutpoint_num:int = new Number(50); var mcnum_num:int = origin_array.length; var poz_array:Array = new Array(0,0,1335,0,0,0); var ballpoz_array:Array= new Array(0,0,0); var ballpozto_array:Array= new Array(100,100,0); stage.addEventListener( MouseEvent.CLICK , CLICK ); function CLICK(event:MouseEvent):void{ fc_pozset(90); fc_pozset(90); fc_pozset(90); fc_pozset(66); } stage.addEventListener( MouseEvent.MOUSE_WHEEL , onWheel ); function onWheel( event:MouseEvent ):void{ anime_array[3] += event.delta/100; } stage.addEventListener( KeyboardEvent.KEY_DOWN , fc_keydown ); var auto_boo:Boolean = new Boolean(false); function fc_keydown( event:KeyboardEvent ):void{ fc_pozset(event.keyCode); //trace(event.keyCode); if(event.keyCode == 191 || event.keyCode == 186){ auto_boo = !auto_boo; } } var currentpoz_num:int = new Number(-1); var auto_array:Array = new Array(48,49,50,51,52,53,54,55,56,57,65,68,69,70,71,72,73,74,75,76,79,80,81,83,85,87,90); function fc_pozset(arg_num:*):void{ if(arg_num == "auto"){ if(auto_boo){ arg_num = auto_array[Math.round(Math.random()*auto_array.length)]; }else{ return; } } currentpoz_num = -1; autorote_boo = false; switch (arg_num) { case 32 : trace(poz_array); break; case 37 ://← poz_array[0] -= 10; autorote_boo = true; break; case 39 ://→ poz_array[0] += 10; autorote_boo = true; break; case 38 ://↑ poz_array[1] -= 10; autorote_boo = true; break; case 40 ://↓ poz_array[1] += 10; autorote_boo = true; break; case 186 : poz_array[2] -= 10; autorote_boo = true; break; case 189 : poz_array[2] += 10; autorote_boo = true; break; case 48 ://0 currentpoz_num = 20; poz_array = [-250,350,60,-4.222,0.254,0.0636]; autorote_boo = true; break; case 49 ://1 currentpoz_num = 21; poz_array = [-450,-550,-220,-0.0636,3.4576,1.718]; autorote_boo = true; break; case 50 ://2 currentpoz_num = 22; poz_array = [-370,-450,-600,-2.821,0.254,3.190]; autorote_boo = true; break; case 51 ://3 currentpoz_num = 13; poz_array = [-170,-290,-520,0.445,0.381,-0.891]; autorote_boo = true; break; case 52 ://4 currentpoz_num = 14; poz_array = [280,-50,30,0,3.14,0.636]; autorote_boo = true; break; case 53 ://5 currentpoz_num = 15; poz_array = [-430,-460,-470,0,-0.3819,3.190]; autorote_boo = true; break; case 54 : currentpoz_num = 16; poz_array = [-340,170,-510,0,3.14,-3]; autorote_boo = true; break; case 55 : currentpoz_num = 17 poz_array = [-540,-130,-250,3.0763,0.063,2.809]; autorote_boo = true; break; case 56 : currentpoz_num = 18 poz_array = [30,-550,330,-0.636,-1.336,0.127]; autorote_boo = true; break; case 57 ://9 currentpoz_num = 19; poz_array = [-260,-260,-590,-0.317,2.465,0]; autorote_boo = true; break; case 81 ://q poz_array[3] += 2/(Math.PI*10); autorote_boo = true; break; case 87 ://w poz_array[4] += 2/(Math.PI*10); autorote_boo = true; break; case 69 ://e poz_array[5] += 2/(Math.PI*10); autorote_boo = true; break; case 65 ://a poz_array[3] -= 2/(Math.PI*10); autorote_boo = true; break; case 83 ://s poz_array[4] -= 2/(Math.PI*10); autorote_boo = true; break; case 68 ://d poz_array[5] -= 2/(Math.PI*10); autorote_boo = true; break; case 90 ://z dotlinecount_num += 2; return; break; /* case 88 ://x 0,-60,470,-2.424,0,2.769 break; */ case 67 ://c currentpoz_num = 99; poz_array = [0,0,500,0,0,0]; break; /* case 86 ://v 65,-220,520,-1.240,-0.031,0.572 break; */ case 66 ://b //trace(msg_array.length , msgcount_num) msgcount_num ++; if(msg_array.length > msgcount_num){ currentpoz_num = msgcount_num; poz_array = msgpoz_array[currentpoz_num].concat(); autorote_boo = true; }else{ currentpoz_num = 99; poz_array = [0,0,500,0,0,0]; } break; case 78 ://n poz_array = [0,0,300,0,0,0]; break; case 77 ://m poz_array = [0,0,-700,0,0,0]; break; case 82 : poz_array = [-335,-120,475,0,0,0]; break; case 84 : poz_array = [-430,-150,645,-1.082,0,0]; break; case 89 : poz_array = [-65,15,-75,3.455,3.596,2.864]; break; case 85 : poz_array = [-80,75,165,5.493,6.842,6.302]; break; case 73 : poz_array = [0,95,-15,-1.05,0,0]; break; case 79 : poz_array = [0,-60,470,3.424,3.596,2.769]; break; case 70 : poz_array = [30,-200,500,-1,0,0]; break; case 71 : poz_array = [135,90,-15,-1.227,-0.668,0]; break; case 72 : poz_array = [-285,110,-15,-1.227,-0.368,0]; break; case 74 : poz_array = [-450,130,-400,-1.227,0.236,0.031]; break; case 75 : poz_array = [0,0,1000,0,0,0]; break; case 76 : poz_array = [-75,-50,-110,-1.114,-0.0318,-1.973]; break; default : return; break; } fc_startint(); } var i:int; var sprits:Array = new Array(); for (i = 0 ; i < origin_array.length*2;i++) { var mc:Sprite = new Sprite(); this.addChild(mc); mc.x = stageWidth/2;//320; mc.y = stageHeight/2;//240; sprits.push(mc); } /// var txtsprits:Array = new Array(); for(i = 0; i<txt_array.length*2;i++){ var tmc:TextField =new TextField(); tmc.autoSize = TextFieldAutoSize.LEFT; tmc.multiline = true; tmc.selectable = false; this.addChild(tmc); var fmt:TextFormat = new TextFormat(); fmt.size = 24; tmc.setTextFormat(fmt); txtsprits.push(tmc); } /// var sq_array:Array = new Array(); function fc_create(arg_array:Array):void{ //map var data_array:Array = new Array(); data_array = Math3D.fc_arraycopy(origin_array).concat(Math3D.fc_arraycopy(origin_array)); //affine var _array:Array = new Array(); _array[0] = Math.cos(arg_array[3]); _array[1] = Math.sin(arg_array[3]); _array[2] = Math.cos(arg_array[4]); _array[3] = Math.sin(arg_array[4]); _array[4] = Math.cos(arg_array[5]); _array[5] = Math.sin(arg_array[5]); _array[6] = arg_array[0]; _array[7] = arg_array[1]; _array[8] = arg_array[2]; for (var i:int = 0; i<data_array.length; i++) { for (var j:int = 0; j<data_array[i][2].length; j++) { data_array[i][2][j] = Math3D.fc_affine(data_array[i][2][j][0], data_array[i][2][j][1], data_array[i][2][j][2], _array); if(i >= data_array.length/2){ data_array[i][2][j][0] += 18; data_array[i][1][1] = 0xcc0000; }else{ data_array[i][2][j][0] -= 18; data_array[i][1][1] = 0x0000ff; } } } ///cut var dispcount_num:int = new int(0); var vp_difference_num:Number = new Number(vpcutpoint_num-Math3D.vp_num); for (i = 0; i<data_array.length; i++) { var ar_array:Array= new Array(); for (j = 0; j<data_array[i][2].length; j++) { if (data_array[i][2][j][2]<vp_difference_num) { for (var k:int = 0; k<2; k++) { var m:int = (data_array[i][2].length-1+j+2*k)%data_array[i][2].length; var n:int = j%data_array[i][2].length; if (data_array[i][2][m][2]>vp_difference_num) { var n_wariai:Number = (vp_difference_num-data_array[i][2][n][2])/(data_array[i][2][m][2]-data_array[i][2][n][2]); var n_repointx:Number = (data_array[i][2][m][0]-data_array[i][2][n][0])*n_wariai+data_array[i][2][n][0]; var n_repointy:Number = (data_array[i][2][m][1]-data_array[i][2][n][1])*n_wariai+data_array[i][2][n][1]; ar_array.push([n_repointx, n_repointy, vp_difference_num]); } } } else { ar_array.push(data_array[i][2][j]); } } if(ar_array.length < 1){ data_array[i][1][0] = "cut"; }else{ data_array[i][2] = ar_array.concat(); } } ///pertrance for (i = 0; i<data_array.length; i++) { if(data_array[i][1][0] == "cut"){ continue; } for (j = 0; j<data_array[i][2].length; j++) { data_array[i][2][j] = Math3D.fc_pertrans(data_array[i][2][j]); if(data_array[i][1][1] == 0xcc0000){ data_array[i][2][j][0] -= 15; }else{ data_array[i][2][j][0] += 15; } } } //render for (i =0;i < mcnum_num; i++) { var mc:Sprite = Sprite(sprits[i]); mc.graphics.clear(); } // Spriteインスタンスへの矩形の描画 for (i = 0; i<data_array.length; i++) { mc= Sprite(sprits[i]); if(data_array[i][1][0] == "cut"){ continue; } mcnum_num = data_array.length; if(data_array[i][1][0] == "txt"){ var _mc:TextField; if(data_array[i][1][1] == 0xcc0000){ _mc= txtsprits[0+2*data_array[i][1][3]]; }else{ _mc= txtsprits[1+2*data_array[i][1][3]]; } if((msg_boo && currentpoz_num == data_array[i][1][3]) || currentpoz_num == 99){ var my_fmt:TextFormat = new TextFormat(); my_fmt.color = data_array[i][1][1]; _mc.visible = true; _mc.htmlText = msg_array[data_array[i][1][3]]; _mc.x = data_array[i][2][0][0]+465/2; _mc.y = data_array[i][2][0][1]+465/2; _mc.scaleX = data_array[i][2][0][2]/10; _mc.scaleY = data_array[i][2][0][2]/10; _mc.setTextFormat(my_fmt); _mc.blendMode = BlendMode.SCREEN; }else{ _mc.visible = false; mc.graphics.beginFill(data_array[i][1][1],1); mc.graphics.drawCircle(data_array[i][2][0][0],data_array[i][2][0][1],data_array[i][2][0][2]); mc.blendMode = BlendMode.SCREEN; } }else if(data_array[i][1][0] == "ball"){ mc.graphics.beginFill(data_array[i][1][1],1); mc.graphics.drawCircle(data_array[i][2][0][0],data_array[i][2][0][1],data_array[i][2][0][2]); mc.blendMode = BlendMode.SCREEN; }else if(data_array[i][1][0] == "dotline"){ if(dotlinecount_num/10 < data_array[i][1][2]){ mc.graphics.lineStyle(1,data_array[i][1][1],0); }else if(dotlinecount_num/10 > data_array[i][1][2]+0.9){ mc.graphics.lineStyle(1,data_array[i][1][1],1); }else{ mc.graphics.lineStyle(1,data_array[i][1][1],(dotlinecount_num/10)%1); } mc.graphics.moveTo(data_array[i][2][0][0],data_array[i][2][0][1]); for (j = 1; j<data_array[i][2].length; j++) { mc.graphics.lineTo(data_array[i][2][j][0],data_array[i][2][j][1]); } mc.graphics.lineStyle(1,data_array[i][1][1],1); mc.graphics.drawCircle(data_array[i][2][0][0],data_array[i][2][0][1],data_array[i][2][0][2]/3); mc.graphics.drawCircle(data_array[i][2][data_array[i][2].length-1][0],data_array[i][2][data_array[i][2].length-1][1],data_array[i][2][data_array[i][2].length-1][2]/3); mc.blendMode = BlendMode.SCREEN; }else{ mc.graphics.lineStyle(1,data_array[i][1][1],1); //mc.graphics.beginFill(data_array[i][1][1]); mc.graphics.moveTo(data_array[i][2][0][0],data_array[i][2][0][1]); for (j = 1; j<data_array[i][2].length; j++) { mc.graphics.lineTo(data_array[i][2][j][0],data_array[i][2][j][1]); } mc.graphics.lineTo(data_array[i][2][0][0],data_array[i][2][0][1]); mc.blendMode = BlendMode.SCREEN; } } } var animecount_num:int = new int(1); var anime_array:Array = new Array(0,0,0,0,0,0); var animestep_num:int = new int(60); function fc_animator():void { if(animecount_num < animestep_num){ for (var i:int = 0; i<poz_array.length; i++) { anime_array[i] = anime_array[i]*(animestep_num-animecount_num)/animestep_num+poz_array[i]*animecount_num/animestep_num; } animecount_num ++; if(animecount_num < animestep_num-25){ msg_boo = false; }else{ msg_boo = true; } }else if(autorote_boo){ return; }else{ anime_array[4] += (root.mouseX-465/2)/25000; anime_array[5] -= (root.mouseY-465/2)/12500; //animecount_num = 1; //trace("comp"); //clearInterval(my_timedProcess); fc_pozset("auto"); } anime_array[3] %= Math.PI*2; anime_array[4] %= Math.PI*2; anime_array[5] %= Math.PI*2; fc_create(anime_array); } var autorote_boo:Boolean = new Boolean(false); var msg_boo:Boolean = new Boolean(false); var my_timedProcess:uint; function fc_startint():void { animecount_num = 1; } addEventListener(Event.ENTER_FRAME,fc_animator); fc_startint(); //フルスクリーンボタン fullScreenBtn.graphics.beginFill(0x333333); fullScreenBtn.graphics.drawRect(0,0,70,14); var fullScreenTf:TextField = new TextField(); fullScreenTf.text = "FullScreen"; fullScreenTf.textColor = 0x666666; fullScreenTf.selectable = false; fullScreenBtn.addChild(fullScreenTf); fullScreenBtn.x = (stageWidth-465)/2+465-70; fullScreenBtn.addEventListener(MouseEvent.MOUSE_UP,MOUSE_UP); addChild(fullScreenBtn); } private function MOUSE_UP(e:MouseEvent = null):void{ if(stage.displayState == "normal"){ stage.displayState = "fullScreen"; }else{ stage.displayState = "normal"; } stageWidth = stage.stageWidth; stageHeight = stage.stageHeight; fullScreenBtn.x = (stageWidth-465)/2+465-70; fullScreenBtn.y = -(stageHeight-465)/2; } /////// } } class Math3D { static public var vp_num:Number = 450; static public function fc_pertrans(arg_array:Array):Array { var _per:Number = vp_num/(vp_num+arg_array[2]); return [arg_array[0]*_per, arg_array[1]*_per, _per*20]; } static public function fc_affine(x:Number, y:Number, z:Number, arg_array:Array):Array { var n_cx:Number = arg_array[0]; var n_sx:Number = arg_array[1]; var n_cy:Number = arg_array[2]; var n_sy:Number = arg_array[3]; var n_cz:Number = arg_array[4]; var n_sz:Number = arg_array[5]; var _array:Array = new Array(); _array[0] = x*(n_cz*n_cy+n_sy*n_sx*n_sz)+y*(-n_sz*n_cy+n_sy*n_sx*n_cz)+z*(n_sy*n_cx)+arg_array[6]; _array[1] = x*(n_cx*n_sz)+y*n_cx*n_cz-z*(n_sx)+arg_array[7]; _array[2] = x*(-n_sy*n_cz+n_cy*n_sx*n_sz)+y*(n_sy*n_sz+n_cy*n_sx*n_cz)+z*(n_cy*n_cx)+arg_array[8]; return _array; } static public function fc_arraycopy(copy_array:Array):Array { var _array:Array = new Array(); var i_array:Array = new Array(); for(var i:int= 0;i<copy_array.length;i++){ i_array[0] = copy_array[i][0]; i_array[1] = copy_array[i][1].concat(); var j_array:Array = new Array(); for(var j:int= 0;j<copy_array[i][2].length;j++){ j_array[j] = copy_array[i][2][j].concat(); } i_array[2] = j_array.concat(); _array[i] = i_array.concat(); } return _array; } } emotionDiver3D