Section 1
//MainTimeline (sc_fla.MainTimeline)
package sc_fla {
import flash.display.*;
public dynamic class MainTimeline extends MovieClip {
public var main_obj:Main;
public function MainTimeline(){
addFrameScript(1, frame2);
}
function frame2(){
stage.quality = StageQuality.LOW;
main_obj = new Main(this);
stop();
}
}
}//package sc_fla
Section 2
//Bg (Bg)
package {
import flash.display.*;
import flash.events.*;
public class Bg {
var container:DisplayObjectContainer;
var my_obj:Object;
public var px;
public var py:Number;
public var bg_num:uint;
var delete_flg:Boolean;// = false
var main:Object;
public var sp:Sprite;
public function Bg(_arg1:Object, _arg2:DisplayObjectContainer, _arg3:uint, _arg4:Number){
my_obj = this;
delete_flg = false;
super();
container = _arg2;
sp = new Sprite();
container.addChild(sp);
px = _arg4;
main = _arg1;
main.makeBg(sp, _arg3, px);
bg_num = _arg3;
sp.addEventListener(Event.ENTER_FRAME, mainLoop);
}
public function setDelete():void{
delete_flg = true;
deleteObj();
}
function mainLoop(_arg1:Event):void{
var _local2:uint;
if (!main.enterframe_flg){
return;
};
if (delete_flg){
deleteObj();
} else {
px = (px - main.scroll_x);
if (px < -550){
px = (550 + (px + 550));
bg_num = (bg_num + 2);
main.start_bg_map_num = bg_num;
if (bg_num > 47){
bg_num = (bg_num - 8);
};
main.makeBg(sp, bg_num, px);
_local2 = (Math.floor((bg_num / 8)) + 1);
main.score_obj.dispMap(_local2);
};
sp.x = px;
};
}
function deleteObj():void{
sp.removeEventListener(Event.ENTER_FRAME, mainLoop);
container.removeChild(sp);
sp = null;
my_obj = null;
}
}
}//package
Section 3
//Bgm_stg1 (Bgm_stg1)
package {
import flash.media.*;
public dynamic class Bgm_stg1 extends Sound {
}
}//package
Section 4
//Bgm_stg2 (Bgm_stg2)
package {
import flash.media.*;
public dynamic class Bgm_stg2 extends Sound {
}
}//package
Section 5
//Bgm_stg3 (Bgm_stg3)
package {
import flash.media.*;
public dynamic class Bgm_stg3 extends Sound {
}
}//package
Section 6
//Bgm_stg4 (Bgm_stg4)
package {
import flash.media.*;
public dynamic class Bgm_stg4 extends Sound {
}
}//package
Section 7
//Bgm_stg5 (Bgm_stg5)
package {
import flash.media.*;
public dynamic class Bgm_stg5 extends Sound {
}
}//package
Section 8
//Bgm_stg6 (Bgm_stg6)
package {
import flash.media.*;
public dynamic class Bgm_stg6 extends Sound {
}
}//package
Section 9
//BgStar (BgStar)
package {
import flash.display.*;
import flash.events.*;
public class BgStar {
public var sp_list:Array;
var my_obj:Object;
var spdummy:Sprite;
var delete_flg:Boolean;// = false
var lineColor:uint;
var container:DisplayObjectContainer;
var main:Object;
public function BgStar(_arg1:Object, _arg2:DisplayObjectContainer){
var _local3:int;
var _local4:Sprite;
var _local5:int;
my_obj = this;
delete_flg = false;
sp_list = new Array();
super();
container = _arg2;
spdummy = new Sprite();
spdummy.addEventListener(Event.ENTER_FRAME, mainLoop);
_local3 = 0;
while (_local3 < 100) {
_local4 = new Sprite();
_arg2.addChild(_local4);
_local5 = (getRandom(3) + 2);
drawGraphics(_local4, _local5);
_local4.x = getRandom(550);
_local4.y = getRandom(400);
sp_list.push([_local4, _local5]);
_local3++;
};
main = _arg1;
}
function mainLoop(_arg1:Event):void{
var _local2:int;
if (!main.enterframe_flg){
return;
};
if (delete_flg){
deleteObj();
} else {
_local2 = 0;
while (_local2 < sp_list.length) {
sp_list[_local2][0].alpha = Math.random();
sp_list[_local2][0].x = (sp_list[_local2][0].x - sp_list[_local2][1]);
if (sp_list[_local2][0].x < 0){
sp_list[_local2][0].x = 550;
if (main.stage_num == 1){
sp_list[_local2][0].visible = false;
} else {
sp_list[_local2][0].visible = true;
};
};
_local2++;
};
};
}
public function deleteObj():void{
var _local1:int;
spdummy.removeEventListener(Event.ENTER_FRAME, mainLoop);
spdummy = null;
_local1 = 0;
while (_local1 < sp_list.length) {
sp_list[_local1][0].graphics.clear();
container.removeChild(sp_list[_local1][0]);
sp_list[_local1][0] = null;
_local1++;
};
my_obj = null;
}
function drawGraphics(_arg1:Sprite, _arg2:int):void{
var _local3:uint;
_local3 = (Math.random() * 0x666666);
_arg1.graphics.beginFill(_local3);
_arg1.graphics.lineStyle(0, _local3);
_arg1.graphics.drawRect(0, 0, 1, 1);
}
public function setDelete():void{
delete_flg = true;
}
public function getRandom(_arg1:uint):uint{
var _local2:uint;
_local2 = Math.floor((Math.random() * _arg1));
return (_local2);
}
}
}//package
Section 10
//Data (Data)
package {
import flash.display.*;
public class Data {
public static var enemy_tank:Array = [[-8, -10], [0, -4], [8, -10], [12, -6], [12, 0], [8, 0], [0, -4], [-8, 0], [-12, 0], [-12, -6], [-8, -10], [-14, -10], [-14, -18], [-10, -24], [-4, -26], [0, -30], [4, -26], [10, -24], [14, -18], [14, -10], [8, -10]];
public static var enemy_ufo:Array = [[-12, 2], [-8, 4], [-8, 12], [-12, 2], [-16, -2], [-6, -6], [6, -6], [16, -2], [12, 2], [0, 8], [-8, 4], [8, 4], [8, 12], [12, 2]];
public static var bg_rock_data:Array = [[], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [[106, 622, 491.4]], [[437, 583, 423.3], [225, 543, 363.5]], [[147, 520, 297.5], [-2, 524, 297.5]], [[426, 441, 195], [214, 459, 195], [94, 437, 129.1], [312, 449, 195], [534, 460, 195]], [[196, 315, 195], [351, 390, 98.1], [199, 206, 67.1], [122, 385, 171.1], [382, 52, 151], [274, 12, 74.1], [433, -14, 155.1], [290, 62, 30.1], [539, 405, 67.1], [286, 353, 98.1], [451, 420, 150], [14, 450, 171.1]], [[178, 422, 219.4], [97, 395, 126.1], [279, 399, 126.1], [406, 492, 233.6], [-3, 423, 126.1], [532, 490, 233.6]], [[321, 379, 145], [203, 438, 145], [92, 478, 210.3], [414, 473, 210.3], [548, 477, 210.3]], [[299, 460, 297.5], [102, 510, 320.4], [482, 493, 243.6], [171, 388, 118.1]], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []];
public static var enemy_fuel:Array = [[6, -12], [4, -16], [-4, -16], [-12, 0], [-4, -8], [4, -8], [12, 0], [6, -12], [8, -12], [12, -24], [8, -34], [-8, -34], [-12, -24], [-8, -12], [-6, -12]];
public static var player_ship_f:Array = [[0, -2], [-6, -6], [-14, -4], [-12, -2], [-20, 0], [-12, 2], [-14, 4], [-6, 6], [0, 2]];
public static var player_ship:Array = [[-10, -2], [-12, -8], [-18, -14], [6, -12], [-6, -10], [-8, -8], [-4, -4], [2, -6], [22, 0], [2, 6], [-4, 4], [-8, 8], [-6, 10], [6, 12], [-18, 14], [-12, 8], [-10, 2], [-6, 2], [6, 0], [-6, -2], [-10, -2], [-18, 0], [-10, 2]];
public static var if_flag:Array = [[0, 0], [0, -16], [12, -12], [0, -6]];
public static var kazan:Array = [[0, -8], [6, -6], [8, -2], [6, 6], [2, 8], [-6, 6], [-8, 0], [-6, -6], [0, -8]];
public static var enemy_rocket_f:Array = [[-2, -8], [-6, -2], [-4, 6], [-2, 4], [0, 12], [2, 4], [4, 6], [6, -2], [2, -8]];
public static var bgt_data:Array = [[[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[1, 0], [47, 19], [62, 30], [86, 46], [116, 56], [133, 75], [153, 67], [176, 68], [200, 56], [219, 61], [237, 79], [247, 93], [260, 88], [273, 100], [287, 90], [308, 83], [325, 91], [342, 77], [376, 75], [392, 83], [416, 75], [445, 74], [479, 66], [513, 60], [529, 63], [550, 50]], [[0, 50], [14, 44], [44, 48], [75, 53], [111, 56], [134, 69], [154, 59], [181, 54], [199, 47], [230, 52], [242, 64], [262, 66], [271, 69], [286, 78], [297, 91], [311, 109], [332, 113], [346, 107], [361, 122], [391, 116], [412, 127], [436, 117], [461, 103], [476, 85], [492, 65], [507, 71], [517, 78], [533, 68], [550, 60]], [[0, 60], [26, 62], [53, 72], [74, 87], [109, 76], [123, 70], [134, 83], [152, 79], [166, 80], [185, 72], [202, 70], [213, 96], [234, 109], [251, 128], [274, 132], [298, 116], [305, 93], [316, 76], [332, 58], [345, 53], [361, 43], [371, 61], [381, 58], [400, 50], [418, 59], [430, 60], [447, 51], [472, 43], [490, 66], [507, 79], [517, 89], [530, 82], [550, 100]], [[0, 100], [21, 93], [34, 94], [59, 102], [73, 103], [88, 86], [101, 83], [123, 78], [137, 81], [153, 73], [174, 90], [189, 104], [200, 117], [210, 124], [220, 118], [234, 123], [248, 121], [263, 143], [289, 157], [299, 166], [317, 168], [333, 176], [345, 175], [365, 181], [380, 175], [394, 163], [404, 148], [413, 124], [433, 117], [443, 100], [476, 85], [496, 72], [508, 50], [532, 36], [550, 40]], [[0, 40], [12, 47], [29, 58], [65, 65], [71, 72], [94, 96], [115, 120], [143, 124], [158, 138], [190, 139], [205, 166], [225, 181], [245, 167], [271, 180], [280, 191], [301, 214], [326, 206], [356, 210], [381, 203], [402, 191], [426, 203], [450, 218], [475, 213], [486, 220], [506, 231], [517, 218], [524, 207], [550, 200]], [[0, 200], [21, 203], [38, 214], [52, 230], [72, 240], [91, 233], [108, 232], [120, 220], [139, 217], [162, 201], [171, 173], [192, 152], [210, 162], [236, 162], [249, 174], [264, 186], [286, 197], [300, 197], [319, 191], [334, 187], [347, 177], [373, 162], [385, 138], [408, 120], [425, 126], [443, 118], [478, 97], [499, 119], [513, 123], [522, 138], [550, 130]], [[0, 130], [19, 120], [47, 118], [75, 117], [107, 114], [128, 106], [137, 97], [160, 81], [183, 68], [210, 56], [227, 67], [242, 75], [259, 71], [286, 53], [301, 68], [325, 103], [346, 87], [369, 78], [396, 78], [413, 64], [435, 60], [460, 61], [475, 76], [494, 100], [525, 90], [534, 88], [550, 70]], [[0, 70], [21, 62], [40, 55], [58, 60], [69, 77], [82, 89], [89, 112], [100, 142], [114, 152], [125, 181], [140, 170], [149, 152], [167, 145], [189, 146], [203, 151], [231, 135], [242, 117], [265, 105], [288, 93], [311, 102], [326, 101], [350, 85], [371, 74], [407, 81], [429, 84], [444, 83], [462, 72], [478, 58], [482, 45], [488, 33], [0x0202, 23], [529, 4], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [222, -11], [230, 4], [242, 31], [262, 49], [280, 73], [301, 80], [318, 98], [340, 121], [356, 137], [377, 138], [391, 133], [408, 129], [429, 117], [441, 95], [455, 88], [466, 62], [487, 51], [495, 29], [507, 14], [523, -4], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [550, -10]], [[0, -10], [50, 0], [51, 50], [190, 50], [191, 90], [330, 90], [331, 120], [550, 120]], [[0, 120], [120, 120], [121, 270], [249, 270], [250, 50], [460, 50], [461, 90], [550, 90]], [[0, 90], [260, 90], [261, 260], [319, 260], [320, 50], [550, 50]], [[0, 50], [270, 50], [271, 290], [359, 290], [360, 245], [449, 245], [450, 90], [550, 90]], [[0, 90], [130, 90], [131, 50], [420, 50], [421, 210], [550, 210]], [[0, 210], [90, 210], [91, 270], [260, 270], [261, 60], [550, 60]], [[0, 60], [310, 60], [311, 230], [410, 230], [411, 150], [550, 150]], [[0, 150], [140, 150], [141, 190], [369, 190], [370, 90], [460, 90], [460, -20], [550, -20]], [[0, -10], [210, -10], [260, 40], [430, 40], [480, 90], [550, 90]], [[0, 90], [160, 90], [190, 60], [310, 60], [390, -10], [550, -10]], [[0, -10], [100, -10], [200, 90], [350, 90], [400, 40], [550, 40]], [[0, 40], [250, 40], [270, 20], [550, 20]], [[0, 20], [200, 220], [270, 220], [310, 260], [550, 260]], [[0, 260], [140, 260], [240, 160], [400, 160], [430, 130], [550, 130]], [[0, 130], [260, 130], [280, 150], [365, 150], [420, 205], [445, 205], [495, 150], [515, 150], [530, 120], [550, 120]], [[0, 120], [80, 120], [110, 90], [150, 90], [250, -15], [550, -10]]];
public static var demo_data:Array = [[275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [275, 200, false, false], [271, 200, false, false], [267, 200, false, false], [263, 200, false, false], [259, 200, false, false], [0xFF, 200, false, false], [251, 200, false, false], [247, 200, false, false], [243, 200, false, false], [239, 200, false, false], [235, 200, false, false], [231, 200, false, false], [227, 200, false, false], [223, 200, false, false], [219, 200, false, false], [215, 200, false, false], [211, 200, false, false], [207, 200, false, false], [203, 200, false, false], [199, 200, false, false], [195, 200, false, false], [191, 200, false, false], [187, 200, false, false], [183, 200, false, false], [179, 200, false, false], [175, 196, false, false], [171, 192, false, false], [167, 188, false, false], [163, 184, false, false], [159, 180, false, false], [155, 176, false, false], [155, 172, false, false], [155, 168, false, false], [155, 164, false, false], [155, 160, false, false], [155, 156, false, false], [155, 152, false, false], [155, 148, false, false], [155, 144, false, false], [155, 140, false, false], [155, 140, false, false], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 140, true, true], [155, 136, true, true], [155, 132, true, true], [155, 128, true, true], [155, 124, true, true], [155, 120, true, true], [155, 116, true, true], [155, 112, true, true], [155, 108, true, true], [155, 104, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 100, true, true], [155, 104, true, true], [155, 108, true, true], [155, 112, true, true], [151, 116, true, true], [147, 120, true, true], [143, 124, true, true], [139, 128, true, true], [135, 132, true, true], [131, 136, true, true], [127, 140, true, true], [123, 144, true, true], [123, 144, true, true], [123, 144, true, true], [123, 144, true, true], [123, 144, true, true], [123, 144, true, true], [123, 144, true, true], [123, 144, true, true], [123, 144, true, true], [123, 144, true, true], [123, 144, true, true], [123, 144, true, true], [123, 144, true, true], [123, 144, true, true], [123, 144, true, true], [123, 140, true, true], [123, 136, true, true], [123, 132, true, true], [123, 128, true, true], [123, 124, true, true], [123, 120, true, true], [123, 120, true, true], [123, 120, true, true], [123, 120, true, true], [123, 120, true, true], [123, 120, true, true], [127, 120, true, true], [131, 120, true, true], [135, 120, true, true], [139, 120, true, true], [143, 120, true, true], [147, 120, true, true], [151, 120, true, true], [155, 120, true, true], [159, 120, true, true], [163, 120, true, true], [167, 120, true, true], [167, 120, true, true], [167, 120, true, true], [167, 120, true, true], [167, 120, true, true], [167, 120, true, true], [167, 116, true, true], [167, 112, true, true], [167, 108, true, true], [167, 104, true, true], [167, 100, true, true], [167, 96, true, true], [167, 92, true, true], [167, 88, true, true], [167, 88, true, true], [167, 88, true, true], [167, 88, true, true], [167, 88, true, true], [167, 88, true, true], [167, 88, true, true], [167, 88, true, true], [167, 88, true, true], [167, 88, true, true], [167, 88, true, true], [167, 88, true, true], [167, 88, true, true], [167, 88, true, true], [167, 88, true, true], [167, 88, true, true], [167, 88, true, true], [167, 92, true, true], [167, 96, true, true], [167, 100, true, true], [163, 104, true, true], [159, 108, true, true], [155, 112, true, true], [151, 116, true, true], [147, 120, true, true], [143, 124, true, true], [139, 128, true, true], [135, 132, true, true], [131, 136, true, true], [127, 140, true, true], [123, 144, true, true], [119, 148, true, true], [115, 152, true, true], [115, 152, true, true], [115, 152, true, true], [115, 152, true, true], [115, 152, true, true], [115, 152, true, true], [115, 152, true, true], [115, 152, true, true], [115, 152, true, true], [115, 152, true, true], [115, 152, true, true], [115, 152, true, true], [115, 152, true, true], [115, 152, true, true], [115, 152, true, true], [115, 152, true, true], [115, 156, true, true], [115, 160, true, true], [115, 164, true, true], [115, 168, true, true], [115, 172, true, true], [115, 176, true, true], [115, 180, true, true], [115, 184, true, true], [115, 188, true, true], [115, 192, true, true], [119, 196, true, true], [123, 200, true, true], [127, 200, true, true], [131, 200, true, true], [135, 200, true, true], [139, 200, true, true], [143, 200, true, true], [143, 200, true, true], [143, 200, true, true], [143, 200, true, true], [143, 200, true, true], [143, 200, true, true], [143, 200, true, true], [143, 204, true, true], [143, 208, true, true], [143, 212, true, true], [143, 216, true, true], [143, 220, true, true], [139, 224, true, true], [135, 228, true, true], [131, 232, true, true], [127, 236, true, true], [123, 240, true, true], [119, 240, true, true], [119, 240, true, true], [119, 240, true, true], [119, 240, true, true], [119, 240, true, true], [119, 240, true, true], [119, 240, true, true], [119, 240, true, true], [119, 240, true, true], [119, 240, true, true], [119, 240, true, true], [119, 240, true, true], [119, 240, true, true], [119, 240, true, true], [119, 240, true, true], [119, 240, true, true], [115, 240, true, true], [111, 240, true, true], [107, 240, true, true], [103, 240, true, true], [99, 236, true, true], [95, 232, true, true], [91, 228, true, true], [87, 224, true, true], [87, 220, true, true], [87, 216, true, true], [87, 212, true, true], [87, 208, true, true], [87, 204, true, true], [87, 200, true, true], [87, 196, true, true], [87, 192, true, true], [87, 188, true, true], [87, 184, true, true], [87, 180, true, true], [87, 176, true, true], [91, 172, true, true], [95, 168, true, true], [99, 164, true, true], [103, 160, true, true], [107, 156, true, true], [111, 156, true, true], [115, 156, true, true], [119, 156, true, true], [123, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 156, true, true], [127, 160, true, true], [127, 164, true, true], [123, 168, true, true], [119, 172, true, true], [115, 176, true, true], [111, 180, true, true], [111, 184, true, true], [111, 188, true, true], [111, 188, true, true], [111, 188, true, true], [111, 188, true, true], [111, 188, true, true], [111, 188, true, true], [111, 188, true, true], [111, 188, true, true], [111, 188, true, true], [111, 188, true, true], [111, 188, true, true], [111, 188, true, true], [111, 188, true, true], [111, 188, true, true], [111, 188, true, true], [115, 188, true, true], [119, 188, true, true], [123, 188, true, true], [127, 188, true, true], [131, 188, true, true], [135, 188, true, true], [139, 188, true, true], [143, 184, true, true], [147, 180, true, true], [151, 176, true, true], [155, 172, true, true], [159, 172, true, true], [163, 172, true, true], [163, 172, true, true], [163, 172, true, true], [163, 172, true, true], [163, 172, true, true], [163, 172, true, true], [163, 172, true, true], [163, 172, true, true], [163, 172, true, true], [163, 176, true, true], [163, 180, true, true], [163, 184, true, true], [163, 188, true, true], [163, 192, true, true], [163, 196, true, true], [163, 200, true, true], [163, 204, true, true], [163, 208, true, true], [163, 212, true, true], [163, 216, true, true], [163, 220, true, true], [163, 224, true, true], [163, 228, true, true], [163, 232, true, true], [163, 236, true, true], [163, 240, true, true], [163, 244, true, true], [163, 248, true, true], [163, 252, true, true], [163, 0x0100, true, true], [163, 260, true, true], [163, 264, true, true], [163, 268, true, true], [163, 272, true, true], [163, 276, true, true], [163, 280, true, true], [163, 284, true, true], [163, 288, true, true], [163, 288, true, true], [163, 288, true, true], [163, 288, true, true], [163, 288, true, true], [163, 288, true, true], [163, 288, true, true], [159, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 288, true, true], [155, 284, true, true], [155, 280, true, true], [155, 276, true, true], [155, 272, true, true], [155, 268, true, true], [155, 264, true, true], [155, 260, true, true], [155, 0x0100, true, true], [155, 252, true, true], [155, 248, true, true], [155, 244, true, true], [155, 240, true, true], [155, 236, true, true], [155, 232, true, true], [155, 228, true, true], [155, 224, true, true], [155, 220, true, true], [155, 216, true, true], [155, 212, true, true], [155, 208, true, true], [155, 204, true, true], [155, 200, true, true], [155, 196, true, true], [155, 192, true, true], [155, 188, true, true], [155, 184, true, true], [155, 180, true, true], [151, 176, true, true], [147, 172, true, true], [143, 168, true, true], [139, 164, true, true], [135, 160, true, true], [135, 156, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 152, true, true], [135, 148, true, true], [135, 144, true, true], [135, 140, true, true], [135, 136, true, true], [135, 132, true, true], [135, 128, true, true], [135, 124, true, true], [135, 124, true, true], [135, 124, true, true], [135, 124, true, true], [135, 124, true, true], [135, 124, true, true], [135, 124, true, true], [131, 128, true, true], [127, 132, true, true], [123, 136, true, true], [119, 140, true, true], [115, 144, true, true], [111, 148, true, true], [107, 152, true, true], [103, 156, true, true], [99, 160, true, true], [95, 164, true, true], [91, 168, true, true], [87, 172, true, true], [83, 176, true, true], [79, 180, true, true], [75, 184, true, true], [71, 188, true, true], [67, 192, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [63, 196, true, true], [67, 192, true, true], [71, 188, true, true], [75, 184, true, true], [79, 180, true, true], [83, 176, true, true], [87, 172, true, true], [91, 168, true, true], [95, 164, true, true], [99, 160, true, true], [103, 156, true, true], [103, 152, true, true], [103, 148, true, true], [103, 148, true, true], [103, 148, true, true], [103, 148, true, true], [103, 148, true, true], [103, 148, true, true], [103, 148, true, true], [103, 148, true, true], [103, 148, true, true], [103, 148, true, true], [103, 148, true, true], [103, 148, true, true], [103, 148, true, true], [103, 148, true, true], [103, 148, true, true], [103, 152, true, true], [103, 156, true, true], [103, 160, true, true], [103, 164, true, true], [103, 168, true, true], [103, 172, true, true], [103, 176, true, true], [103, 180, true, true], [103, 184, true, true], [103, 188, true, true], [103, 192, true, true], [103, 196, true, true], [103, 196, true, true], [103, 196, true, true], [103, 196, true, true], [103, 196, true, true], [103, 196, true, true], [103, 196, true, true], [103, 196, true, true], [103, 196, true, true], [103, 192, true, true], [103, 188, true, true], [103, 184, true, true], [103, 180, true, true], [103, 176, true, true], [103, 172, true, true], [103, 168, true, true], [103, 164, true, true], [103, 160, true, true], [103, 156, true, true], [103, 152, true, true], [103, 148, true, true], [103, 144, true, true], [103, 140, true, true], [103, 136, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, true, true], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false], [103, 132, false, false]];
public static var fuel_me:Array = [[0, -4], [-6, -8], [-6, 0], [0, 6], [6, 0], [6, -8], [0, -4]];
public static var bg_data:Array = [[[0, 371], [17, 373], [36, 367], [57, 371], [70, 362], [81, 359], [97, 362], [107, 359], [112, 354], [131, 365], [139, 370], [153, 369], [157, 362], [164, 363], [178, 363], [195, 369], [206, 363], [216, 370], [219, 372], [234, 368], [237, 372], [250, 364], [267, 369], [281, 358], [300, 350], [323, 343], [348, 352], [383, 346], [403, 346], [421, 337], [435, 338], [443, 347], [452, 324], [459, 319], [469, 326], [480, 325], [499, 335], [506, 332], [513, 327], [525, 325], [533, 315], [542, 311], [550, 300]], [[0, 300], [24, 293], [52, 294], [67, 299], [76, 289], [89, 278], [99, 266], [106, 273], [115, 0x0101], [131, 266], [145, 264], [153, 268], [168, 260], [173, 266], [181, 253], [192, 244], [200, 248], [209, 243], [217, 234], [227, 236], [239, 230], [252, 223], [265, 212], [272, 193], [283, 175], [297, 157], [304, 167], [320, 173], [325, 187], [334, 200], [339, 223], [353, 239], [368, 246], [383, 246], [395, 252], [411, 269], [418, 278], [421, 294], [428, 308], [438, 323], [450, 329], [457, 349], [464, 366], [477, 358], [492, 363], [500, 358], [0x0200, 358], [522, 359], [530, 365], [538, 359], [550, 360]], [[0, 360], [16, 376], [34, 382], [47, 376], [64, 381], [82, 374], [96, 369], [112, 372], [120, 379], [135, 372], [142, 369], [157, 367], [164, 363], [190, 362], [206, 370], [220, 354], [241, 351], [252, 340], [268, 338], [274, 331], [285, 325], [304, 326], [318, 328], [332, 325], [357, 326], [378, 326], [387, 316], [398, 298], [404, 289], [412, 289], [418, 300], [427, 299], [436, 310], [444, 330], [457, 351], [469, 356], [478, 356], [492, 358], [506, 355], [524, 352], [538, 355], [550, 350]], [[0, 350], [12, 362], [29, 362], [38, 353], [48, 359], [60, 365], [77, 362], [84, 354], [100, 332], [112, 329], [121, 317], [134, 317], [143, 305], [157, 308], [169, 313], [185, 314], [198, 314], [208, 312], [218, 316], [231, 314], [243, 319], [0x0100, 327], [269, 323], [277, 330], [291, 339], [301, 340], [311, 334], [323, 340], [339, 332], [352, 341], [364, 335], [375, 326], [392, 330], [405, 328], [414, 338], [428, 335], [438, 333], [447, 341], [462, 353], [474, 351], [487, 363], [500, 366], [515, 366], [529, 367], [550, 370]], [[0, 370], [26, 352], [54, 351], [65, 364], [82, 364], [107, 364], [128, 360], [141, 341], [167, 333], [191, 327], [197, 320], [219, 300], [239, 294], [0x0100, 310], [262, 320], [286, 323], [292, 329], [308, 329], [323, 329], [338, 332], [353, 346], [379, 347], [396, 343], [404, 339], [420, 339], [438, 337], [444, 343], [452, 360], [470, 362], [481, 356], [508, 353], [523, 341], [526, 334], [541, 316], [550, 300]], [[0, 300], [10, 295], [32, 292], [45, 289], [70, 285], [85, 277], [97, 266], [112, 0x0100], [127, 258], [144, 272], [164, 273], [181, 272], [210, 271], [215, 279], [232, 288], [249, 302], [261, 306], [282, 314], [299, 324], [310, 341], [330, 345], [342, 344], [362, 357], [382, 355], [407, 355], [418, 356], [426, 356], [434, 363], [459, 374], [477, 373], [501, 373], [520, 361], [535, 350], [550, 350]], [[0, 350], [25, 343], [61, 344], [82, 337], [111, 339], [120, 344], [139, 342], [149, 337], [180, 338], [199, 333], [222, 330], [254, 331], [267, 325], [292, 325], [322, 319], [353, 312], [356, 298], [370, 295], [389, 283], [413, 283], [425, 279], [456, 281], [473, 290], [498, 282], [511, 277], [537, 274], [550, 270]], [[0, 270], [17, 285], [25, 299], [36, 319], [46, 351], [65, 357], [88, 369], [102, 367], [120, 377], [136, 378], [157, 379], [182, 375], [202, 364], [216, 364], [234, 356], [251, 357], [270, 368], [288, 367], [301, 361], [317, 349], [347, 336], [384, 329], [398, 336], [413, 342], [432, 345], [447, 336], [463, 347], [477, 357], [493, 374], [0x0202, 375], [534, 363], [550, 370]], [[0, 370], [20, 358], [35, 348], [55, 341], [72, 344], [88, 333], [93, 328], [109, 318], [119, 304], [135, 291], [144, 298], [154, 298], [157, 311], [170, 319], [189, 306], [201, 302], [214, 279], [227, 276], [258, 264], [274, 267], [288, 292], [298, 292], [311, 303], [331, 316], [336, 328], [358, 331], [363, 315], [375, 310], [397, 302], [418, 292], [424, 281], [434, 282], [455, 266], [483, 266], [498, 262], [522, 0x0101], [550, 270]], [[0, 270], [15, 275], [39, 273], [67, 265], [82, 246], [112, 240], [130, 227], [150, 220], [168, 223], [182, 208], [197, 202], [208, 191], [220, 192], [229, 190], [240, 199], [244, 223], [0xFF, 232], [262, 253], [266, 265], [293, 317], [300, 337], [323, 346], [336, 341], [365, 339], [388, 350], [419, 357], [436, 339], [452, 343], [471, 334], [493, 342], [513, 321], [537, 323], [550, 300]], [[0, 300], [22, 313], [33, 316], [55, 326], [70, 331], [87, 342], [103, 341], [129, 353], [157, 359], [187, 355], [196, 350], [220, 348], [240, 337], [270, 323], [283, 327], [303, 324], [317, 310], [353, 294], [373, 272], [393, 278], [404, 289], [412, 289], [421, 298], [450, 318], [459, 332], [472, 339], [492, 340], [502, 348], [516, 362], [530, 364], [550, 380]], [[0, 380], [23, 366], [55, 368], [82, 380], [110, 383], [128, 375], [159, 375], [197, 376], [214, 371], [232, 362], [263, 345], [281, 331], [310, 332], [325, 324], [348, 308], [360, 279], [384, 252], [409, 258], [423, 287], [437, 299], [452, 330], [460, 346], [474, 361], [487, 371], [501, 377], [516, 388], [530, 380], [550, 380]], [[0, 380], [29, 375], [47, 355], [66, 346], [93, 324], [117, 321], [128, 322], [149, 317], [163, 319], [184, 338], [197, 354], [218, 354], [231, 343], [254, 366], [267, 376], [284, 377], [293, 371], [304, 368], [321, 368], [334, 381], [361, 375], [378, 362], [408, 364], [417, 371], [461, 373], [470, 382], [503, 392], [531, 386], [550, 380]], [[0, 380], [15, 377], [39, 383], [52, 383], [71, 377], [89, 370], [102, 371], [122, 365], [148, 364], [162, 358], [175, 352], [220, 353], [0x0101, 357], [270, 343], [296, 341], [311, 333], [324, 328], [330, 317], [341, 307], [363, 322], [372, 347], [392, 360], [415, 360], [424, 357], [448, 356], [470, 352], [504, 352], [0x0200, 360], [528, 363], [550, 350]], [[0, 350], [28, 353], [51, 368], [69, 371], [98, 372], [111, 356], [126, 345], [139, 330], [150, 301], [169, 299], [178, 283], [190, 278], [202, 274], [215, 258], [225, 237], [243, 213], [252, 192], [273, 197], [286, 207], [297, 217], [313, 226], [325, 247], [328, 271], [340, 280], [362, 279], [380, 293], [411, 294], [430, 306], [446, 311], [464, 307], [479, 314], [486, 321], [497, 327], [502, 342], [508, 354], [528, 361], [550, 360]], [[0, 360], [15, 353], [29, 352], [36, 350], [60, 347], [84, 362], [107, 361], [127, 346], [148, 344], [166, 335], [187, 335], [206, 329], [220, 338], [234, 320], [247, 307], [258, 308], [270, 299], [278, 305], [292, 335], [295, 357], [320, 359], [341, 350], [363, 346], [387, 344], [404, 323], [429, 330], [455, 346], [472, 347], [476, 361], [0x0200, 369], [538, 381], [550, 380]], [[0, 380], [24, 373], [48, 382], [79, 385], [98, 385], [116, 377], [127, 377], [155, 388], [180, 377], [207, 387], [243, 399], [268, 418], [550, 450]], [[0, 450], [99, 419], [108, 397], [134, 380], [169, 380], [199, 368], [221, 371], [246, 371], [259, 377], [287, 380], [311, 379], [335, 387], [370, 388], [397, 379], [422, 378], [453, 374], [475, 374], [496, 380], [508, 381], [530, 376], [550, 380]], [[0, 380], [24, 379], [61, 386], [97, 387], [122, 376], [156, 370], [176, 379], [192, 386], [234, 389], [270, 399], [272, 429], [550, 430]], [[0, 430], [38, 397], [67, 377], [93, 366], [111, 371], [132, 376], [152, 375], [177, 368], [194, 363], [223, 357], [246, 363], [260, 365], [270, 354], [296, 355], [322, 354], [354, 363], [378, 356], [396, 348], [423, 341], [438, 336], [457, 347], [475, 352], [494, 355], [510, 367], [527, 358], [550, 360]], [[0, 360], [30, 376], [47, 358], [55, 340], [66, 314], [96, 307], [106, 254], [137, 240], [156, 214], [172, 175], [190, 165], [215, 174], [228, 190], [237, 209], [246, 223], [0x0101, 247], [267, 265], [285, 283], [297, 300], [318, 312], [335, 336], [352, 343], [369, 342], [379, 349], [389, 356], [400, 356], [412, 345], [429, 349], [444, 347], [463, 340], [477, 349], [498, 357], [511, 374], [531, 371], [550, 360]], [[0, 360], [13, 371], [34, 371], [38, 352], [49, 339], [68, 328], [97, 326], [121, 314], [142, 312], [163, 309], [174, 304], [187, 308], [205, 300], [218, 304], [233, 310], [247, 331], [268, 327], [282, 329], [293, 336], [306, 335], [316, 340], [330, 352], [335, 359], [341, 364], [348, 386], [365, 387], [388, 379], [403, 376], [422, 383], [437, 375], [453, 383], [474, 389], [497, 384], [519, 382], [525, 374], [550, 380]], [[0, 380], [19, 383], [44, 389], [61, 385], [77, 385], [97, 376], [123, 383], [143, 387], [175, 377], [191, 369], [213, 369], [235, 375], [259, 365], [273, 355], [285, 333], [298, 324], [317, 315], [340, 307], [351, 317], [373, 338], [375, 354], [385, 368], [394, 375], [418, 375], [442, 370], [457, 379], [474, 387], [497, 387], [522, 385], [537, 377], [550, 370]], [[0, 370], [27, 365], [59, 356], [79, 352], [102, 343], [115, 336], [134, 330], [159, 331], [176, 328], [210, 323], [254, 323], [264, 321], [274, 319], [289, 314], [309, 315], [331, 322], [352, 323], [380, 335], [394, 355], [407, 367], [421, 371], [442, 377], [472, 379], [498, 376], [519, 380], [540, 375], [550, 360]], [[0, 360], [60, 360], [61, 310], [119, 310], [120, 330], [150, 330], [151, 300], [179, 300], [180, 320], [210, 320], [211, 290], [239, 290], [240, 310], [270, 310], [271, 280], [329, 280], [330, 250], [370, 250], [371, 85], [449, 85], [450, 100], [550, 100]], [[0, 100], [70, 100], [71, 130], [160, 130], [161, 115], [309, 115], [310, 230], [379, 230], [380, 330], [440, 330], [441, 180], [504, 180], [505, 300], [550, 300]], [[0, 300], [150, 300], [151, 250], [209, 250], [210, 280], [320, 280], [321, 125], [389, 125], [390, 150], [459, 150], [460, 360], [550, 360]], [[0, 360], [130, 360], [131, 260], [200, 260], [201, 200], [320, 200], [321, 120], [389, 120], [390, 340], [450, 340], [451, 300], [550, 300]], [[0, 300], [50, 300], [51, 350], [149, 350], [150, 330], [230, 330], [231, 300], [369, 300], [370, 360], [550, 360]], [[0, 360], [50, 360], [51, 170], [160, 170], [161, 120], [230, 120], [231, 140], [330, 140], [331, 180], [430, 180], [431, 230], [550, 230]], [[0, 230], [40, 230], [41, 290], [100, 290], [101, 230], [160, 230], [161, 170], [220, 170], [221, 110], [350, 110], [351, 140], [440, 140], [441, 120], [550, 120]], [[0, 120], [50, 120], [51, 235], [120, 235], [121, 85], [200, 85], [201, 115], [270, 115], [271, 95], [370, 95], [371, 220], [460, 220], [461, 300], [550, 300]], [[0, 300], [110, 300], [111, 230], [229, 230], [230, 270], [409, 270], [410, 360], [550, 360]], [[0, 360], [400, 360], [401, 220], [550, 220]], [[0, 220], [149, 220], [150, 350], [480, 350], [481, 130], [550, 130]], [[0, 130], [69, 130], [70, 350], [450, 350], [451, 290], [550, 290]], [[0, 290], [90, 290], [91, 190], [230, 190], [231, 350], [550, 350]], [[0, 350], [420, 350], [421, 110], [550, 110]], [[0, 110], [160, 110], [161, 350], [480, 350], [481, 320], [550, 320]], [[0, 320], [230, 320], [231, 260], [370, 260], [371, 330], [550, 330]], [[0, 330], [330, 330], [420, 240], [550, 240]], [[0, 240], [50, 240], [110, 300], [230, 300], [260, 330], [310, 330], [390, 410], [550, 410]], [[0, 410], [30, 410], [130, 310], [180, 310], [280, 210], [430, 210], [490, 150], [550, 150]], [[0, 150], [40, 150], [240, 350], [370, 350], [410, 380], [550, 380]], [[0, 380], [310, 380], [350, 350], [550, 350]], [[0, 350], [390, 350], [430, 310], [550, 310]], [[0, 310], [100, 310], [205, 205], [300, 205], [385, 290], [455, 290], [510, 330], [550, 330]], [[0, 330], [80, 330], [110, 360], [170, 360], [210, 280], [250, 280], [270, 330], [320, 330], [340, 280], [380, 280], [410, 360], [460, 360], [490, 330], [550, 330]]];
public static var bg_color:Array = [[0xFF, 68], [0x8800FF, 0x440066], [0xFF9900, 0x220000], [0xFF00, 0x2200], [0xFF, 68], [0xFF00FF, 0x220022]];
public static var enemy_rocket:Array = [[4, -22], [8, -16], [8, 0], [4, -12], [2, -14], [0, 0], [-2, -14], [-4, -12], [-8, 0], [-8, -16], [-4, -22], [-2, -4], [0, -22], [2, -14], [4, -22], [4, -28], [0, -38], [-4, -28], [-4, -22]];
public static var enemy_hex:Array = [[-6, -12], [-14, 0], [-6, 12], [6, 12], [14, 0], [6, -12], [-6, -12]];
public static var enemy_core:Array = [[0, -24], [-16, 0], [0, 24], [16, 0], [0, -24], [0, -6], [-16, 0], [0, 6], [16, 0], [0, -6], [0, 24]];
public static var enemy_rock:Array = [[0, -18], [-12, -14], [-16, -2], [-14, 12], [-2, 18], [14, 12], [17, 2], [10, -14], [0, -18]];
public static var bg_e_data:Array = [[], [[201, 250, 4], [223, 241, 4], [246, 230, 4], [136, 267, 4], [504, 363, 4], [36, 296, 4], [372, 251, 4], [532, 362, 2], [475, 365, 4]], [[327, 327, 4], [122, 377, 4], [178, 366, 4], [299, 327, 4], [490, 360, 4], [231, 355, 2], [528, 357, 2], [152, 371, 2], [359, 327, 0]], [[158, 315, 4], [192, 315, 4], [297, 340, 4], [322, 341, 4], [419, 339, 4], [472, 355, 4], [222, 317, 2], [353, 340, 2], [498, 369, 2], [532, 369, 2], [0xFF, 325, 0], [384, 330, 0]], [[40, 353, 4], [270, 326, 4], [298, 330, 4], [325, 333, 4], [459, 364, 4], [490, 359, 4], [79, 366, 2], [113, 365, 2], [415, 343, 2], [366, 346, 0]], [[156, 275, 4], [180, 275, 4], [375, 361, 4], [398, 360, 4], [277, 316, 4], [460, 377, 2], [322, 346, 2], [495, 376, 2], [227, 287, 0], [251, 306, 0]], [[439, 288, 4], [392, 289, 4], [291, 329, 4], [239, 334, 4], [167, 339, 4], [130, 346, 4], [97, 344, 4], [39, 348, 4], [200, 333, 2], [72, 345, 2], [320, 325, 4], [470, 292, 2], [265, 327, 0], [522, 279, 0]], [[84, 371, 4], [128, 382, 4], [160, 381, 4], [280, 372, 4], [241, 360, 4], [506, 377, 4], [423, 347, 4], [56, 360, 2], [196, 373, 2], [366, 334, 2], [332, 347, 0], [398, 339, 0]], [[347, 329, 4], [167, 317, 4], [471, 271, 4], [510, 266, 4], [371, 180, 1], [376, 313, 2], [405, 298, 2], [232, 277, 2], [73, 342, 2], [437, 281, 0]], [[320, 344, 4], [350, 342, 4], [409, 358, 4], [485, 340, 4], [103, 147, 1], [450, 227, 1], [448, 348, 2], [157, 224, 2], [186, 205, 0], [217, 194, 0], [295, 165, 1]], [[289, 328, 4], [174, 363, 4], [140, 360, 4], [88, 344, 4], [483, 341, 4], [90, 172, 1], [210, 207, 1], [516, 179, 1], [530, 367, 2], [115, 352, 2], [315, 316, 4], [340, 302, 4], [210, 352, 2], [249, 333, 0], [373, 184, 1]], [[178, 381, 4], [139, 378, 4], [101, 384, 4], [65, 377, 4], [297, 336, 4], [0x0200, 384, 4], [222, 252, 1], [104, 196, 1], [520, 210, 1], [215, 373, 2], [305, 233, 1]], [[339, 384, 4], [105, 327, 4], [129, 325, 4], [275, 377, 4], [438, 376, 4], [480, 389, 4], [157, 242, 1], [396, 293, 1], [312, 373, 2], [203, 356, 0], [314, 277, 1], [476, 280, 1], [21, 168, 1], [393, 366, 4]], [[190, 357, 4], [244, 359, 4], [404, 364, 4], [486, 355, 4], [198, 265, 1], [476, 195, 1], [282, 346, 2], [217, 357, 4], [161, 364, 2], [95, 374, 2], [128, 365, 0], [445, 357, 0], [314, 245, 1], [34, 340, 1]], [[160, 303, 4], [349, 282, 4], [82, 373, 4], [442, 309, 4], [471, 315, 4], [523, 363, 4], [55, 263, 1], [153, 198, 1], [444, 189, 1], [186, 283, 2], [395, 296, 2], [279, 122, 1]], [[21, 355, 4], [180, 340, 4], [308, 363, 4], [356, 350, 4], [382, 348, 4], [39, 215, 1], [239, 222, 1], [332, 358, 2], [493, 369, 2], [531, 381, 4], [424, 333, 0], [459, 349, 0], [97, 365, 0], [140, 347, 0], [344, 159, 1], [349, 278, 1]], [[527, 65, 3], [351, 158, 3], [147, 238, 3], [469, 300, 3], [64, 391, 2], [26, 380, 2], [97, 387, 0], [135, 377, 0], [169, 381, 0]], [[296, 383, 4], [350, 391, 4], [385, 390, 4], [452, 377, 4], [480, 378, 4], [0x0200, 385, 4], [119, 55, 3], [121, 171, 3], [115, 285, 3], [270, 125, 3], [264, 239, 3], [473, 62, 3], [475, 178, 3], [469, 292, 3], [153, 384, 2], [179, 375, 2], [418, 381, 2], [216, 367, 0], [537, 379, 0], [245, 371, 2], [321, 387, 2]], [[45, 386, 4], [135, 378, 4], [212, 392, 4], [91, 64, 3], [93, 180, 3], [87, 294, 3], [242, 134, 3], [236, 248, 3], [445, 71, 3], [447, 187, 3], [441, 301, 3], [78, 391, 2], [169, 375, 0], [112, 380, 2]], [[141, 379, 4], [284, 358, 4], [310, 358, 4], [338, 364, 4], [102, 55, 3], [104, 171, 3], [98, 285, 3], [253, 125, 3], [247, 239, 3], [456, 62, 3], [450, 188, 3], [452, 292, 3], [364, 114, 3], [353, 238, 3], [528, 105, 3], [530, 254, 3], [407, 347, 2], [239, 365, 2], [476, 353, 2], [444, 340, 0], [0x0200, 368, 0], [207, 363, 2], [383, 357, 2]], [[117, 74, 3], [59, 180, 3], [47, 293, 3], [259, 126, 3], [344, 274, 3], [519, 85, 3], [473, 197, 3], [502, 311, 3]], [[82, 329, 4], [407, 379, 4], [464, 389, 4], [499, 385, 4], [58, 61, 3], [132, 270, 3], [181, 159, 3], [465, 272, 3], [327, 195, 3], [262, 334, 2], [373, 386, 2], [175, 310, 2], [216, 304, 0], [433, 382, 0], [298, 337, 2]], [[231, 378, 4], [116, 384, 4], [153, 387, 4], [406, 380, 4], [435, 377, 4], [505, 391, 4], [100, 98, 3], [49, 268, 3], [179, 197, 3], [469, 390, 2], [188, 378, 2], [88, 385, 0], [260, 367, 0]], [[232, 327, 4], [458, 382, 4], [487, 380, 4], [336, 321, 4], [88, 352, 4], [149, 336, 4], [429, 379, 2], [187, 326, 2], [296, 316, 0], [523, 380, 0]], [[134, 331, 4], [195, 321, 4], [0xFF, 311, 4], [288, 281, 4], [313, 281, 4], [165, 300, 2], [226, 291, 2], [477, 103, 2], [515, 104, 2], [350, 251, 4], [385, 86, 4], [410, 86, 4], [435, 86, 4]], [[186, 116, 4], [212, 116, 4], [262, 116, 4], [287, 116, 4], [360, 231, 2], [98, 131, 2], [133, 131, 2], [457, 181, 2], [329, 230, 0], [486, 180, 0], [237, 116, 4], [8, 102, 4], [34, 102, 4], [59, 102, 4], [399, 331, 4], [424, 331, 4]], [[52, 302, 4], [77, 302, 4], [102, 302, 4], [165, 249, 4], [227, 282, 4], [278, 282, 4], [436, 152, 4], [479, 362, 4], [505, 362, 4], [530, 362, 4], [193, 249, 0], [338, 125, 0], [372, 125, 0], [127, 302, 4], [253, 282, 4], [303, 282, 4], [411, 152, 4]], [[155, 261, 4], [180, 261, 4], [222, 201, 4], [247, 201, 4], [296, 201, 4], [341, 120, 4], [370, 120, 4], [430, 341, 4], [79, 361, 2], [13, 361, 2], [474, 301, 2], [509, 301, 2], [45, 360, 0], [108, 360, 0], [409, 341, 4], [272, 201, 4]], [[171, 332, 4], [207, 332, 4], [246, 302, 4], [272, 302, 4], [325, 302, 4], [352, 302, 4], [426, 361, 4], [461, 361, 4], [496, 361, 4], [531, 361, 4], [79, 351, 2], [299, 302, 2], [114, 350, 0], [391, 360, 0]], [[73, 170, 4], [105, 170, 4], [180, 121, 4], [211, 121, 4], [305, 142, 4], [0xFF, 142, 4], [380, 181, 4], [408, 181, 4], [456, 231, 2], [524, 231, 2], [137, 170, 2], [489, 230, 0], [280, 142, 4], [352, 181, 4]], [[57, 292, 4], [84, 292, 4], [118, 232, 4], [145, 232, 4], [177, 170, 4], [204, 170, 4], [242, 110, 4], [271, 110, 4], [299, 110, 4], [327, 110, 4], [370, 142, 4], [420, 142, 4], [494, 121, 2], [529, 121, 2], [459, 121, 4], [395, 142, 4]], [[27, 120, 4], [71, 235, 4], [96, 235, 4], [292, 96, 4], [318, 96, 4], [345, 96, 4], [398, 221, 4], [495, 304, 4], [143, 86, 2], [178, 86, 2], [435, 221, 2], [529, 304, 2], [224, 116, 4], [249, 116, 4]], [[133, 230, 2], [169, 230, 2], [205, 230, 2], [449, 362, 2], [521, 362, 2], [260, 271, 0], [298, 271, 0], [337, 271, 0], [375, 271, 0], [485, 361, 0]], [[425, 222, 2], [458, 222, 2], [491, 222, 2], [524, 222, 2], [312, 362, 2], [379, 362, 2], [178, 362, 2], [245, 362, 2], [212, 361, 0], [279, 361, 0], [345, 361, 0], [145, 361, 0]], [[196, 352, 2], [231, 352, 2], [267, 352, 2], [302, 352, 2], [338, 352, 2], [373, 352, 2], [409, 352, 2], [445, 352, 2], [62, 220, 2], [97, 220, 2], [132, 220, 2]], [[423, 351, 2], [388, 351, 2], [353, 351, 2], [319, 351, 2], [471, 290, 2], [507, 290, 2], [214, 351, 2], [284, 351, 2], [18, 132, 2], [52, 132, 2], [249, 351, 2], [180, 351, 2]], [[126, 191, 2], [163, 191, 2], [68, 290, 2], [200, 191, 2], [261, 352, 2], [298, 352, 2], [335, 352, 2], [372, 352, 2], [408, 352, 2], [445, 352, 2], [482, 352, 2], [519, 352, 2]], [[292, 352, 2], [327, 352, 2], [361, 352, 2], [396, 352, 2], [85, 352, 2], [119, 352, 2], [154, 352, 2], [188, 352, 2], [223, 351, 0], [258, 351, 0], [50, 351, 0], [443, 109, 0], [478, 109, 0], [0x0202, 109, 0]], [[138, 111, 0], [103, 111, 0], [68, 111, 0], [33, 111, 0], [533, 321, 2], [498, 321, 2], [243, 350, 0], [278, 350, 0], [389, 350, 0], [424, 350, 0], [458, 350, 0]], [[262, 261, 2], [301, 261, 2], [339, 261, 2], [50, 321, 2], [84, 321, 2], [118, 321, 2], [152, 321, 2], [187, 321, 2], [407, 330, 0], [446, 330, 0], [486, 330, 0], [525, 330, 0]], [[66, 330, 0], [106, 330, 0], [146, 330, 0], [186, 330, 0], [225, 330, 0], [265, 330, 0], [305, 330, 0], [446, 240, 0], [486, 240, 0], [525, 240, 0]], [[334, 69, 5], [354, 81, 5], [374, 93, 5], [394, 105, 5], [354, 57, 5], [374, 69, 5], [394, 81, 5], [414, 93, 5], [414, 69, 5], [434, 81, 5], [454, 93, 5], [474, 105, 5], [434, 57, 5], [454, 69, 5], [474, 81, 5], [493, 93, 5], [453, 141, 5], [473, 153, 5], [493, 165, 5], [453, 117, 5], [473, 129, 5], [493, 141, 5], [513, 153, 5], [473, 202, 5], [493, 214, 5], [513, 226, 5], [473, 178, 5], [493, 190, 5], [513, 202, 5], [533, 214, 5], [315, 57, 5], [333, 44, 5], [352, 32, 5], [137, 302, 2], [286, 331, 2], [172, 302, 2], [207, 302, 2]], [[52, 263, 5], [72, 250, 5], [92, 238, 5], [112, 226, 5], [92, 262, 5], [112, 250, 5], [132, 238, 5], [152, 225, 5], [132, 262, 5], [152, 249, 5], [172, 237, 5], [192, 225, 5], [111, 202, 5], [132, 214, 5], [151, 201, 5], [151, 177, 5], [172, 189, 5], [191, 176, 5], [190, 152, 5], [211, 164, 5], [231, 151, 5], [230, 127, 5], [251, 138, 5], [270, 126, 5], [409, 111, 5], [430, 123, 5], [450, 111, 5], [470, 122, 5], [469, 98, 5], [370, 136, 5], [390, 124, 5], [410, 135, 5], [431, 147, 5], [451, 135, 5], [488, 85, 5], [509, 97, 5], [507, 73, 5], [489, 109, 5], [529, 109, 5], [528, 84, 5], [488, 61, 5], [507, 48, 5], [330, 209, 5], [350, 197, 5], [370, 208, 5], [370, 184, 5], [250, 114, 5], [230, 103, 5], [210, 89, 5], [270, 102, 5], [289, 89, 5], [468, 48, 5], [487, 36, 5], [448, 35, 5], [451, 158, 5], [451, 182, 5], [471, 170, 5], [527, 37, 5], [403, 210, 2], [508, 150, 2], [155, 313, 2], [300, 212, 2]], [[177, 133, 5], [158, 170, 5], [178, 182, 5], [197, 194, 5], [158, 146, 5], [177, 158, 5], [197, 170, 5], [237, 169, 5], [217, 206, 5], [237, 218, 5], [0x0101, 230, 5], [217, 182, 5], [237, 194, 5], [0x0101, 206, 5], [276, 145, 5], [0x0101, 182, 5], [277, 194, 5], [296, 206, 5], [0x0101, 157, 5], [276, 169, 5], [296, 181, 5], [336, 181, 5], [316, 218, 5], [336, 230, 5], [356, 242, 5], [316, 193, 5], [336, 205, 5], [356, 217, 5], [396, 217, 5], [376, 254, 5], [396, 266, 5], [416, 278, 5], [376, 230, 5], [396, 242, 5], [416, 254, 5], [415, 205, 5], [415, 180, 5], [455, 180, 5], [435, 217, 5], [455, 229, 5], [475, 241, 5], [435, 192, 5], [455, 204, 5], [475, 216, 5], [434, 143, 5], [434, 119, 5], [474, 118, 5], [454, 155, 5], [474, 167, 5], [494, 179, 5], [454, 131, 5], [474, 143, 5], [494, 155, 5], [453, 82, 5], [453, 58, 5], [493, 57, 5], [473, 94, 5], [493, 106, 5], [513, 118, 5], [473, 69, 5], [493, 81, 5], [513, 93, 5], [417, 302, 5], [438, 315, 5], [458, 327, 5], [477, 339, 5], [457, 302, 5], [477, 314, 5], [457, 375, 5], [477, 362, 5], [497, 327, 5], [497, 302, 5], [497, 350, 5], [517, 314, 5], [517, 338, 5], [413, 57, 5], [433, 69, 5], [434, 45, 5], [473, 44, 5], [353, 45, 5], [414, 34, 5], [453, 33, 5], [374, 33, 5], [394, 21, 5], [333, 33, 5], [237, 243, 5], [314, 20, 5], [352, 350, 2], [323, 350, 2], [293, 350, 2], [263, 350, 2]], [[27, 237, 5], [47, 249, 5], [67, 261, 5], [67, 237, 5], [106, 236, 5], [87, 273, 5], [107, 285, 5], [87, 249, 5], [107, 261, 5], [127, 273, 5], [126, 249, 5], [146, 261, 5], [166, 273, 5], [146, 236, 5], [166, 248, 5], [186, 285, 5], [186, 260, 5], [146, 285, 5], [166, 297, 5], [186, 309, 5], [186, 284, 5], [225, 284, 5], [206, 321, 5], [226, 333, 5], [206, 296, 5], [226, 308, 5], [246, 320, 5], [245, 296, 5], [265, 308, 5], [285, 320, 5], [265, 284, 5], [285, 296, 5], [305, 332, 5], [305, 308, 5], [166, 369, 5], [186, 357, 5], [206, 369, 5], [225, 381, 5], [225, 357, 5], [325, 296, 5], [345, 308, 5], [206, 345, 5], [365, 320, 5], [385, 332, 5], [405, 321, 5], [277, 381, 2], [166, 223, 5], [186, 381, 5], [185, 210, 5], [365, 344, 5], [405, 345, 5], [425, 333, 5], [445, 345, 5]], [[211, -64, 6], [251, 258, 5], [271, 270, 5], [291, 282, 5], [291, 258, 5], [330, 0x0101, 5], [311, 294, 5], [331, 306, 5], [311, 270, 5], [330, 282, 5], [350, 294, 5], [350, 270, 5], [370, 282, 5], [390, 294, 5], [370, 0x0101, 5], [390, 269, 5], [410, 306, 5], [410, 281, 5], [389, 195, 5], [369, 232, 5], [389, 244, 5], [389, 220, 5], [409, 232, 5], [409, 208, 5], [429, 220, 5], [449, 232, 5], [429, 195, 5], [449, 207, 5], [468, 244, 5], [468, 219, 5], [468, 195, 5], [468, 171, 5], [488, 183, 5], [488, 158, 5], [508, 170, 5], [508, 146, 5], [528, 158, 5], [368, 351, 2], [455, 311, 2], [493, 311, 2], [531, 311, 2], [430, 318, 5], [410, 329, 5], [488, 134, 5], [507, 122, 5], [528, 132, 5], [369, 182, 5], [350, 169, 5], [331, 156, 5], [370, 158, 5]], [[270, 162, 5], [290, 174, 5], [310, 186, 5], [310, 161, 5], [349, 161, 5], [330, 198, 5], [330, 173, 5], [349, 185, 5], [369, 197, 5], [369, 173, 5], [389, 185, 5], [409, 197, 5], [389, 161, 5], [310, 210, 5], [349, 209, 5], [389, 209, 5], [409, 221, 5], [429, 209, 5], [370, 270, 5], [389, 234, 5], [409, 246, 5], [429, 233, 5], [448, 246, 5], [488, 245, 5], [249, 150, 5], [229, 138, 5], [469, 281, 5], [289, 150, 5], [330, 149, 5], [369, 149, 5], [249, 127, 5], [269, 138, 5], [74, 138, 5], [93, 150, 5], [113, 138, 5], [74, 162, 5], [113, 162, 5], [16, 238, 5], [35, 250, 5], [55, 237, 5], [16, 262, 5], [55, 261, 5], [153, 186, 5], [172, 198, 5], [192, 185, 5], [153, 210, 5], [192, 209, 5], [468, 0x0101, 5], [448, 197, 5], [448, 220, 5], [468, 232, 5], [468, 207, 5], [429, 0x0101, 5], [291, 197, 5], [449, 293, 5], [489, 293, 5], [469, 305, 5], [490, 317, 5], [510, 328, 5], [390, 0x0101, 5], [390, 281, 5]], [[235, 224, 5], [0xFF, 236, 5], [294, 235, 5], [314, 223, 5], [334, 235, 5], [235, 248, 5], [0xFF, 260, 5], [274, 247, 5], [314, 247, 5], [334, 259, 5], [354, 247, 5], [235, 272, 5], [297, 306, 6], [215, 260, 5], [196, 273, 5], [195, 297, 5], [373, 284, 5], [373, 235, 5], [393, 247, 5], [214, 212, 5], [195, 199, 5], [175, 213, 5], [175, 284, 5], [195, 126, 5], [274, 126, 5], [175, 138, 5], [195, 150, 5], [215, 137, 5], [274, 149, 5], [294, 162, 5], [334, 137, 5], [353, 124, 5], [373, 112, 5], [392, 125, 5], [412, 137, 5], [432, 100, 5], [452, 87, 5], [116, 77, 5], [156, 76, 5], [155, 125, 5], [96, 88, 5], [116, 100, 5], [136, 88, 5], [175, 88, 5], [155, 149, 5], [135, 161, 5], [193, 320, 5], [192, 344, 5], [172, 331, 5], [153, 345, 5], [134, 331, 5], [93, 330, 5], [113, 342, 5], [156, 271, 5], [136, 259, 5], [392, 321, 5], [392, 297, 5], [412, 332, 5], [432, 320, 5], [451, 333, 5], [452, 357, 5], [115, 246, 5], [115, 222, 5], [115, 198, 5], [115, 174, 5], [372, 137, 5], [373, 161, 5], [433, 221, 5], [412, 209, 5], [155, 52, 5], [175, 39, 5], [195, 26, 5], [294, 66, 5], [294, 41, 5], [275, 77, 5], [352, 52, 5], [352, 28, 5], [332, 16, 5], [73, 317, 5], [53, 304, 5], [96, 259, 5], [96, 160, 5], [75, 147, 5], [56, 135, 5], [453, 233, 5], [453, 209, 5], [473, 221, 5], [36, 148, 5], [513, 221, 5], [533, 185, 5], [513, 197, 5], [553, 173, 5], [573, 137, 5], [553, 149, 5], [472, 98, 5], [492, 86, 5], [511, 74, 5], [531, 86, 5], [550, 98, 5], [511, 99, 5], [452, 309, 5], [471, 296, 5], [491, 284, 5], [510, 297, 5], [530, 309, 5], [490, 309, 5], [550, 298, 5], [569, 310, 5]]];
public static function drawEnemy(_arg1:Sprite, _arg2:String):void{
var _local3:Array;
var _local4:uint;
var _local5:int;
switch (_arg2){
case "flag":
_local3 = if_flag;
_local4 = 0xFFFF00;
break;
case "player":
_local3 = player_ship;
_local4 = 0xFFFFFF;
break;
case "player_f":
_local3 = player_ship_f;
_local4 = 3407871;
break;
case "rocket":
_local3 = enemy_rocket;
_local4 = 0xFFFF;
break;
case "rocket_f":
_local3 = enemy_rocket_f;
_local4 = 0xFF6600;
break;
case "ufo":
_local3 = enemy_ufo;
_local4 = 0xFF00;
break;
case "fuel":
_local3 = enemy_fuel;
_local4 = 0xFF9900;
break;
case "rock":
_local3 = enemy_rock;
_local4 = 0xFF0000;
break;
case "tank":
_local3 = enemy_tank;
_local4 = 0xFF00CC;
break;
case "hex":
_local3 = enemy_hex;
_local4 = 0xFF00FF;
break;
case "core":
_local3 = enemy_core;
_local4 = 0xFF00CC;
break;
case "fuel_me":
_local3 = fuel_me;
_local4 = 0xFF9900;
break;
case "kazan":
_local3 = kazan;
_local4 = 0xAA0000;
break;
};
_arg1.graphics.lineStyle(1, _local4);
_arg1.graphics.moveTo(_local3[0][0], _local3[0][1]);
_local5 = 1;
while (_local5 < _local3.length) {
_arg1.graphics.lineTo(_local3[_local5][0], _local3[_local5][1]);
_local5++;
};
}
}
}//package
Section 11
//Ending (Ending)
package {
import flash.display.*;
import flash.events.*;
import flash.media.*;
public class Ending extends LineString {
var sp_list:Array;
var bgm_channel:SoundChannel;
var container:DisplayObjectContainer;
var stat:uint;// = 1
var sp:Sprite;
var sp_fade:Sprite;
var rate:int;
var bgm_obj:Sound;
var my_obj:Object;
var i:int;
var now_rate:Number;// = 0
var cnt:int;
var main:Object;
public function Ending(_arg1:Object, _arg2:DisplayObjectContainer){
var _local3:Sprite;
my_obj = this;
sp_list = new Array();
stat = 1;
now_rate = 0;
super();
main = _arg1;
container = _arg2;
sp = new Sprite();
container.addChild(sp);
drawString(sp, "CONGRATULATIONS", 70, 70, 20, 20, 8, 0xFFFF00);
drawString(sp, "DESTRUCTION RATE", 70, 170, 10, 10, 8, 0xFFFFFF);
drawChar(sp, "%", 300, 210, 30, 30, 0xFF0000);
makeScreen(sp);
i = 0;
while (i < 3) {
_local3 = new Sprite();
sp_list.push(_local3);
container.addChild(_local3);
_local3.x = (220 - (i * 50));
_local3.y = 200;
i++;
};
dispRate(0);
sp_fade = new Sprite();
container.addChild(sp_fade);
sp_fade.graphics.lineStyle(0, 0);
sp_fade.graphics.beginFill(0);
sp_fade.graphics.drawRect(0, 0, 550, 400);
sp_fade.addEventListener(Event.ENTER_FRAME, mainLoop);
sp_fade.alpha = 1;
rate = Math.floor((((main.enemy_total_cnt - main.enemy_release_cnt) / main.enemy_total_cnt) * 100));
trace(rate);
}
function makeScreen(_arg1:Sprite):void{
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:*;
var _local6:uint;
var _local7:uint;
var _local8:int;
var _local9:int;
var _local10:int;
var _local11:int;
_local2 = [[-4, 0], [-10, -10], [0, -36], [10, -10], [4, 0]];
_local3 = [[-70, 0], [-44, -50], [-30, -64], [-6, -110], [0, -106], [10, -108], [26, -84], [36, -74], [60, -14], [74, 0]];
_local4 = [[0, 382], [29, 381], [67, 386], [90, 385], [114, 385], [137, 384], [162, 387], [187, 386], [211, 389], [237, 384], [259, 385], [287, 389], [304, 385], [328, 387], [350, 385], [377, 384], [405, 388], [423, 384], [450, 386], [480, 383], [502, 380], [0x0202, 385], [533, 386], [550, 380]];
_local5 = [[0, 22], [29, 11], [57, 14], [80, 13], [105, 12], [127, 15], [141, 14], [164, 18], [192, 18], [219, 19], [249, 13], [274, 15], [301, 17], [330, 16], [350, 19], [373, 22], [388, 21], [407, 18], [439, 13], [463, 11], [486, 13], [511, 12], [534, 15], [550, 15]];
_local8 = 0;
while (_local8 < 28) {
_local9 = ((_local8 * 20) + 5);
_local10 = 385;
_arg1.graphics.lineStyle(1, 0xAA00);
_arg1.graphics.moveTo((_local2[0][0] + _local9), (_local2[0][1] + _local10));
_local11 = 1;
while (_local11 < _local2.length) {
_arg1.graphics.lineTo((_local2[_local11][0] + _local9), (_local2[_local11][1] + _local10));
_local11++;
};
_local8++;
};
_local8 = 0;
while (_local8 < 2) {
_local9 = ((_local8 * 260) + 140);
_local10 = 380;
_arg1.graphics.lineStyle(1, 0xFF0000);
_arg1.graphics.moveTo((_local3[0][0] + _local9), (_local3[0][1] + _local10));
_local11 = 1;
while (_local11 < _local3.length) {
_arg1.graphics.lineTo((_local3[_local11][0] + _local9), (_local3[_local11][1] + _local10));
_local11++;
};
_local8++;
};
_local6 = 0xFF0000;
_local7 = 0x440000;
_arg1.graphics.lineStyle(undefined, 0);
_arg1.graphics.beginFill(_local7);
_arg1.graphics.moveTo(0, 400);
_arg1.graphics.lineTo(_local4[0][0], _local4[0][1]);
_local8 = 1;
while (_local8 < _local4.length) {
_arg1.graphics.lineTo(_local4[_local8][0], _local4[_local8][1]);
_local8++;
};
_arg1.graphics.lineTo(550, 400);
_arg1.graphics.endFill();
_arg1.graphics.lineStyle(undefined, 0);
_arg1.graphics.beginFill(_local7);
_arg1.graphics.moveTo(0, 0);
_arg1.graphics.lineTo(_local5[0][0], _local5[0][1]);
_local8 = 1;
while (_local8 < _local5.length) {
_arg1.graphics.lineTo(_local5[_local8][0], _local5[_local8][1]);
_local8++;
};
_arg1.graphics.lineTo(550, 0);
_arg1.graphics.endFill();
_arg1.graphics.lineStyle(1, _local6);
_arg1.graphics.moveTo(_local5[0][0], _local5[0][1]);
_local8 = 1;
while (_local8 < _local5.length) {
_arg1.graphics.lineTo(_local5[_local8][0], _local5[_local8][1]);
_local8++;
};
_arg1.graphics.lineStyle(1, _local6);
_arg1.graphics.moveTo(_local4[0][0], _local4[0][1]);
_local8 = 1;
while (_local8 < _local4.length) {
_arg1.graphics.lineTo(_local4[_local8][0], _local4[_local8][1]);
_local8++;
};
}
public function deleteObj():void{
trace("Ending削除");
i = 0;
while (i < sp_list.length) {
sp_list[i].graphics.clear();
container.removeChild(sp_list[i]);
sp_list[i] = null;
i++;
};
sp.graphics.clear();
container.removeChild(sp);
sp = null;
sp_fade.graphics.clear();
sp_fade.removeEventListener(Event.ENTER_FRAME, mainLoop);
container.removeChild(sp_fade);
sp_fade = null;
my_obj = null;
}
public function dispRate(_arg1:uint):void{
var _local2:int;
var _local3:int;
var _local4:String;
_local2 = 0;
while (_local2 < 3) {
sp_list[_local2].graphics.clear();
_local3 = (Math.floor((_arg1 / Math.pow(10, _local2))) % 10);
if ((((_arg1 < 10)) && ((_local2 == 1)))){
_local4 = " ";
} else {
if ((((_arg1 < 100)) && ((_local2 == 2)))){
_local4 = " ";
} else {
_local4 = String(_local3);
};
};
drawChar(sp_list[_local2], _local4, 0, 0, 40, 40, 8947967);
_local2++;
};
}
function mainLoop(_arg1:Event):void{
var _local2:Kazan;
if (!main.enterframe_flg){
return;
};
switch (stat){
case 1:
sp_fade.alpha = (sp_fade.alpha - 0.05);
if (sp_fade.alpha <= 0){
sp_fade.alpha = 0;
cnt = 0;
stat = 2;
bgm_obj = new Se_count();
bgm_channel = bgm_obj.play(0, 10000);
};
break;
case 2:
if (now_rate <= rate){
dispRate(Math.floor(now_rate));
now_rate = (now_rate + 0.5);
if ((cnt % 2) == 0){
_local2 = new Kazan(main, container, 145, 270);
_local2 = new Kazan(main, container, 405, 270);
};
cnt++;
} else {
bgm_channel.stop();
bgm_obj = new Se_count_end();
bgm_obj.play(0, 1);
cnt = 0;
stat = 3;
};
break;
case 3:
if (cnt > 80){
stat = 4;
} else {
cnt++;
};
break;
case 4:
sp_fade.alpha = (sp_fade.alpha + 0.05);
if (sp_fade.alpha >= 0){
sp_fade.alpha = 1;
stat = 5;
main.nextStart();
};
break;
};
if (stat == 5){
deleteObj();
};
}
}
}//package
Section 12
//Enemy (Enemy)
package {
import flash.display.*;
import flash.events.*;
import flash.media.*;
public class Enemy {
public var vy;
var container:DisplayObjectContainer;
public var py;
var delete_flg:Boolean;// = false
public var vx;
var enemy_num:int;
public var sp;
public var px;
var alg_num:int;// = 0
var my_obj:Object;
var e_name:String;
public var initx;
public var inity:Number;
var prevProcessStep:Number;
var cnt:int;// = 0
public var sp2:Sprite;
var cnt2:int;// = 0
var main:Object;
var my_score:uint;
public function Enemy(_arg1:Object, _arg2:DisplayObjectContainer, _arg3:Array, _arg4:int){
my_obj = this;
delete_flg = false;
cnt = 0;
cnt2 = 0;
alg_num = 0;
super();
container = _arg2;
main = _arg1;
sp = new Sprite();
container.addChildAt(sp, 0);
px = (_arg3[0] + Number(_arg4));
py = _arg3[1];
initx = px;
inity = py;
enemy_num = _arg3[2];
switch (enemy_num){
case 0:
Data.drawEnemy(sp, "tank");
vx = 0;
vy = 0;
my_score = 150;
e_name = "tank";
break;
case 1:
Data.drawEnemy(sp, "ufo");
vx = 0;
vy = 0;
my_score = 100;
cnt = main.getRandom(360);
e_name = "ufo";
break;
case 2:
Data.drawEnemy(sp, "fuel");
vx = 0;
vy = 0;
e_name = "fuel";
my_score = 150;
break;
case 3:
e_name = "gen";
vx = -2;
py = -100;
break;
case 4:
Data.drawEnemy(sp, "rocket");
vx = 0;
vy = 0;
my_score = 50;
e_name = "rocket";
break;
case 5:
Data.drawEnemy(sp, "hex");
vx = 0;
vy = 0;
my_score = 10;
e_name = "hex";
break;
case 6:
Data.drawEnemy(sp, "core");
vx = 0;
vy = 0;
my_score = 800;
e_name = "core";
break;
};
main.addEnemyObj(my_obj);
sp.addEventListener(Event.ENTER_FRAME, mainLoop);
sp.y = 1000;
}
function deleteObj():void{
if ((((e_name == "rocket")) && ((alg_num == 1)))){
main.fly_rocket_cnt--;
sp2.graphics.clear();
container.removeChild(sp2);
sp2 = null;
};
main.deleteEnemyObj(my_obj);
sp.removeEventListener(Event.ENTER_FRAME, mainLoop);
sp.graphics.clear();
container.removeChild(sp);
sp = null;
my_obj = null;
}
public function hit():void{
var _local1:GetPoint;
var _local2:Sound;
var _local3:Fuel;
var _local4:int;
if (!delete_flg){
if (main.scene == main.S_GAME){
_local2 = new Se_break();
_local2.play(0, 1);
};
main.entryHahen(e_name, px, py);
delete_flg = true;
switch (e_name){
case "rocket":
if (my_score == 80){
_local1 = new GetPoint(main, container, px, (py - 10), my_score);
};
break;
case "fuel":
_local4 = 0;
while (_local4 < 5) {
_local3 = new Fuel(main, container, px, py);
_local4++;
};
break;
case "tank":
if (Math.abs((main.player_obj.py - py)) >= 150){
my_score = (my_score * 2);
};
_local1 = new GetPoint(main, container, px, (py - 10), my_score);
break;
case "core":
_local1 = new GetPoint(main, container, px, py, my_score);
if (main.scene == main.S_GAME){
main.gameClear();
main.bgm1_obj.setStop();
main.bgm2_obj.setStop();
};
_local4 = 0;
while (_local4 < main.e_obj_array.length) {
main.e_obj_array[_local4].hit();
_local4++;
};
break;
case "ufo":
_local1 = new GetPoint(main, container, px, py, my_score);
break;
};
main.addScore(my_score);
};
}
public function setDelete():void{
delete_flg = true;
}
function mainLoop(_arg1:Event):void{
var _local2:Number;
var _local3:Number;
var _local4:Rock;
if (!main.enterframe_flg){
return;
};
if (delete_flg){
deleteObj();
} else {
switch (enemy_num){
case 0:
px = (px + (vx - main.scroll_x));
break;
case 1:
px = (initx + (Math.cos(((cnt2 * Math.PI) / 180)) * 30));
py = (inity + (Math.sin(((cnt * Math.PI) / 180)) * 20));
initx = (initx - main.scroll_x);
cnt2 = (cnt2 + 9);
cnt = (cnt + 18);
break;
case 2:
px = (px + (vx - main.scroll_x));
break;
case 3:
if (cnt == 0){
if (main.scene == main.S_GAME){
_local2 = (650 + Number(main.getRandom(550)));
_local3 = (200 + Number(main.getRandom(100)));
_local4 = new Rock(main, container, _local2, _local3, 30, false);
main.addRockObj(_local4);
};
cnt = (70 - (main.loop_cnt * 10));
if (cnt < 20){
cnt = 20;
};
} else {
cnt--;
};
px = (px + (vx - main.scroll_x));
py = (py + vy);
break;
case 4:
px = (px + (vx - main.scroll_x));
py = (py + vy);
if (alg_num == 0){
if ((((main.fly_rocket_cnt < 2)) && ((main.fly_stay_cnt <= 0)))){
if (Math.abs((py - main.player_obj.px)) < Math.abs((px - main.player_obj.px))){
main.fly_rocket_cnt++;
my_score = 80;
alg_num = 1;
vy = -1;
main.fly_stay_cnt = 35;
sp2 = new Sprite();
Data.drawEnemy(sp2, "rocket_f");
container.addChildAt(sp2, 0);
sp2.y = -100;
sp2.x = -100;
};
};
} else {
vy = (vy - 0.1);
if (vy < -5){
vy = -5;
};
sp2.x = px;
sp2.y = py;
sp2.visible = !(sp2.visible);
sp2.height = (sp2.height * 1.4);
if (sp2.height > 60){
sp2.height = 10;
};
};
break;
case 5:
px = (px + (vx - main.scroll_x));
break;
case 6:
px = (px + (vx - main.scroll_x));
py = ((inity - 10) + (Math.sin(((cnt * Math.PI) / 180)) * 5));
cnt = (cnt + 5);
break;
};
if (main.scene == main.S_GAME){
if (sp.hitTestObject(main.player_obj.hitsp)){
main.player_obj.hit();
};
};
sp.x = px;
sp.y = py;
if ((((px < 0)) || ((py < 0)))){
if ((((e_name == "rocket")) && ((alg_num == 1)))){
main.fly_rocket_cnt--;
};
if (((!((e_name == "hex"))) && (!((e_name == "gen"))))){
main.enemy_release_cnt++;
};
delete_flg = true;
};
};
}
}
}//package
Section 13
//Fuel (Fuel)
package {
import flash.display.*;
import flash.events.*;
import flash.media.*;
public class Fuel {
var bgm_obj:Sound;
public var vy:Number;
public var px;
public var py;
var speed2:int;// = 1
var delete_flg:Boolean;// = false
var speed:Number;// = 10
public var vx;
var container:DisplayObjectContainer;
public var sp:Sprite;
var my_obj:Object;
var main:Object;
public function Fuel(_arg1:Object, _arg2:DisplayObjectContainer, _arg3:Number, _arg4:Number){
var _local5:uint;
my_obj = this;
delete_flg = false;
speed = 10;
speed2 = 1;
super();
container = _arg2;
main = _arg1;
sp = new Sprite();
sp.y = -1000;
container.addChild(sp);
px = _arg3;
py = _arg4;
_local5 = main.getRandom(360);
vx = Math.cos(((_local5 * Math.PI) / 180));
vy = Math.sin(((_local5 * Math.PI) / 180));
Data.drawEnemy(sp, "fuel_me");
sp.addEventListener(Event.ENTER_FRAME, mainLoop);
}
function deleteObj():void{
sp.removeEventListener(Event.ENTER_FRAME, mainLoop);
sp.graphics.clear();
container.removeChild(sp);
sp = null;
my_obj = null;
}
public function setDelete():void{
delete_flg = true;
}
function mainLoop(_arg1:Event):void{
var _local2:*;
var _local3:*;
var _local4:*;
if (!main.enterframe_flg){
return;
};
if (speed > 1){
px = (px + (vx * speed));
py = (py + (vy * speed));
speed = (speed * 0.6);
} else {
speed2 = (speed2 + 2);
_local2 = (main.player_obj.px - px);
_local3 = (main.player_obj.py - py);
_local4 = Math.atan2(_local3, _local2);
vx = (Math.cos(_local4) * speed2);
vy = (Math.sin(_local4) * speed2);
px = (px + vx);
py = (py + vy);
if ((((Math.abs(_local2) < 20)) && ((Math.abs(_local3) < 20)))){
main.player_obj.addFuel(3);
delete_flg = true;
bgm_obj = new Se_getFuel();
bgm_obj.play(0, 1);
};
};
sp.x = px;
sp.y = py;
if (delete_flg){
deleteObj();
};
}
}
}//package
Section 14
//GetPoint (GetPoint)
package {
import flash.display.*;
import flash.events.*;
public class GetPoint extends LineString {
var my_obj:Object;
var cnt:int;// = 20
var container:DisplayObjectContainer;
var main:Object;
public var sp:Sprite;
public function GetPoint(_arg1:Object, _arg2:DisplayObjectContainer, _arg3:Number, _arg4:Number, _arg5:int){
my_obj = this;
cnt = 20;
super();
container = _arg2;
main = _arg1;
sp = new Sprite();
container.addChild(sp);
sp.addEventListener(Event.ENTER_FRAME, mainLoop);
drawString(sp, String(_arg5), -10, -10, 8, 8, 3, 0xFFFF00);
sp.x = _arg3;
sp.y = _arg4;
}
function mainLoop(_arg1:Event):void{
if (!main.enterframe_flg){
return;
};
if (cnt == 0){
deleteObj();
} else {
sp.visible = !(sp.visible);
sp.x = (sp.x - main.scroll_x);
cnt--;
};
}
function deleteObj():void{
sp.removeEventListener(Event.ENTER_FRAME, mainLoop);
sp.graphics.clear();
container.removeChild(sp);
sp = null;
my_obj = null;
}
}
}//package
Section 15
//Hahen (Hahen)
package {
import flash.display.*;
import flash.events.*;
public class Hahen {
public var vy:Number;
public var px;
public var vx;
var explode_flg:Boolean;// = false
var delete_flg:Boolean;// = false
public var py;
public var px_bak;
public var py_bak;
var scaleb:Number;// = 1.2
var container:DisplayObjectContainer;
public var sp:Sprite;
var my_obj:Object;
var res:Object;
var bound_cnt;// = 0
var main:Object;
var life:uint;
public function Hahen(_arg1:Object, _arg2:DisplayObjectContainer, _arg3:Array, _arg4:Array, _arg5:Number, _arg6:Number, _arg7:uint, _arg8:Number, _arg9:Number){
var _local10:uint;
var _local11:*;
my_obj = this;
delete_flg = false;
explode_flg = false;
bound_cnt = 0;
scaleb = 1.2;
super();
container = _arg2;
main = _arg1;
sp = new Sprite();
container.addChildAt(sp, 0);
_local10 = main.getRandom(360);
_local11 = (3 + (_local10 % 3));
life = (_local10 % 4);
vx = (Math.cos(((_local10 * Math.PI) / 180)) * _local11);
vy = (Math.sin(((_local10 * Math.PI) / 180)) * _local11);
vy = (vy + _arg9);
vx = (vx + _arg8);
sp.addEventListener(Event.ENTER_FRAME, mainLoop);
_arg8 = ((_arg3[0] + _arg4[0]) / 2);
_arg9 = ((_arg3[1] + _arg4[1]) / 2);
sp.graphics.lineStyle(1, _arg7);
sp.graphics.moveTo((_arg3[0] - _arg8), (_arg3[1] - _arg9));
sp.graphics.lineTo((_arg4[0] - _arg8), (_arg4[1] - _arg9));
px = (_arg5 + _arg8);
py = (_arg6 + _arg9);
px_bak = px;
py_bak = py;
sp.y = -100;
}
public function deleteObj():void{
sp.graphics.clear();
sp.removeEventListener(Event.ENTER_FRAME, mainLoop);
container.removeChild(sp);
sp = null;
my_obj = null;
}
function hit():void{
var _local1:Number;
bound_cnt++;
if (bound_cnt < life){
_local1 = (Math.sqrt(((vx * vx) + (vy * vy))) * 0.6);
vx = (Math.cos(((res.r * Math.PI) / 180)) * _local1);
vy = (Math.sin(((res.r * Math.PI) / 180)) * _local1);
if (px < px_bak){
vx = -(vx);
vy = -(vy);
};
px = res.x;
py = res.y;
px = (px + vx);
py = (py + vy);
} else {
drawGraphics2();
explode_flg = true;
};
}
function drawGraphics2():void{
var _local1:uint;
var _local2:uint;
var _local3:Number;
var _local4:Boolean;
var _local5:String;
sp.graphics.clear();
_local1 = 0;
_local2 = 0x888888;
_local3 = 1;
_local4 = false;
_local5 = "none";
sp.graphics.lineStyle(_local1, _local2, _local3, _local4, _local5);
sp.graphics.drawCircle(0, 0, 10);
}
function mainLoop(_arg1:Event):void{
if (!main.enterframe_flg){
return;
};
if (explode_flg){
px = (px - main.scroll_x);
sp.scaleX = (sp.scaleX * scaleb);
sp.scaleY = (sp.scaleY * scaleb);
sp.alpha = (sp.alpha - 0.1);
sp.x = px;
scaleb = (scaleb * 0.98);
if (scaleb < 1){
scaleb = 1;
};
if (sp.alpha <= 0){
deleteObj();
return;
};
} else {
px_bak = px;
py_bak = py;
px = (px + (vx - main.scroll_x));
py = (py + vy);
vy = (vy + 0.8);
if ((((px < 550)) && ((px > 0)))){
res = main.hitCheckBg(Data.bg_data, px, py, px_bak, py_bak);
if (res.x != undefined){
hit();
} else {
res = main.hitCheckBg(Data.bg_data, px, py, px_bak, py_bak);
if (res.x != undefined){
hit();
};
};
};
};
sp.x = px;
sp.y = py;
sp.rotation = (sp.rotation + (vx * 5));
if ((((((px < 0)) || ((px < 0)))) || ((py_bak > 400)))){
deleteObj();
};
}
}
}//package
Section 16
//Kazan (Kazan)
package {
import flash.display.*;
import flash.events.*;
public class Kazan {
var main:Object;
public var vy:Number;
public var px;
public var py;
var my_obj:Object;
public var vx;
var res:Object;
var container:DisplayObjectContainer;
public var sp:Sprite;
public function Kazan(_arg1:Object, _arg2:DisplayObjectContainer, _arg3:Number, _arg4:Number){
var _local5:int;
var _local6:int;
my_obj = this;
super();
container = _arg2;
main = _arg1;
sp = new Sprite();
container.addChildAt(sp, 0);
sp.addEventListener(Event.ENTER_FRAME, mainLoop);
Data.drawEnemy(sp, "kazan");
_local5 = (Math2.getRandom(140) + 20);
_local6 = (Math2.getRandom(10) + 14);
px = _arg3;
py = _arg4;
vx = (Math.cos(((_local5 * Math.PI) / 180)) * _local6);
vy = -(Math.abs((Math.sin(((_local5 * Math.PI) / 180)) * _local6)));
}
function mainLoop(_arg1:Event):void{
if (!main.enterframe_flg){
return;
};
px = (px + vx);
py = (py + vy);
vy++;
sp.x = px;
sp.y = py;
if (py > 400){
deleteObj();
};
}
public function deleteObj():void{
sp.graphics.clear();
sp.removeEventListener(Event.ENTER_FRAME, mainLoop);
container.removeChild(sp);
sp = null;
my_obj = null;
}
}
}//package
Section 17
//LineString (LineString)
package {
import flash.display.*;
public class LineString {
public static var lineObj:Object = {0:[[0, 0], [20, 0], [20, 20], [0, 20], [0, 0]], 1:[[0, 0], [10, 0], [10, 20], [0, 20], [20, 20]], 2:[[0, 0], [20, 0], [20, 10], [0, 10], [0, 20], [20, 20]], 3:[[0, 0], [20, 0], [20, 10], [0, 10], [20, 10], [20, 20], [0, 20]], 4:[[0, 0], [0, 10], [20, 10], [20, 0], [20, 20]], 5:[[20, 0], [0, 0], [0, 10], [20, 10], [20, 20], [0, 20]], 6:[[20, 0], [0, 0], [0, 20], [20, 20], [20, 10], [0, 10]], 7:[[0, 0], [20, 0], [20, 20]], 8:[[0, 0], [20, 0], [20, 20], [0, 20], [0, 0], [0, 10], [20, 10]], 9:[[20, 10], [0, 10], [0, 0], [20, 0], [20, 20], [0, 20]], A:[[0, 20], [0, 0], [20, 0], [20, 20], [20, 10], [0, 10]], B:[[0, 10], [20, 10], [20, 20], [0, 20], [0, 0], [10, 0], [10, 10]], C:[[20, 0], [0, 0], [0, 20], [20, 20]], D:[[0, 0], [0, 20], [20, 20], [20, 10], [10, 0], [0, 0]], E:[[20, 0], [0, 0], [0, 10], [20, 10], [0, 10], [0, 20], [20, 20]], F:[[20, 0], [0, 0], [0, 10], [20, 10], [0, 10], [0, 20]], G:[[20, 0], [0, 0], [0, 20], [20, 20], [20, 10], [10, 10]], H:[[0, 0], [0, 20], [0, 10], [20, 10], [20, 20], [20, 0]], I:[[0, 0], [20, 0], [10, 0], [10, 20], [0, 20], [20, 20]], J:[[10, 0], [20, 0], [20, 20], [0, 20], [0, 10]], K:[[0, 0], [0, 20], [0, 10], [10, 10], [10, 0], [10, 10], [20, 10], [20, 20]], L:[[0, 0], [0, 20], [20, 20]], M:[[0, 20], [0, 0], [10, 10], [20, 0], [20, 20]], N:[[0, 20], [0, 0], [20, 20], [20, 0]], O:[[0, 0], [20, 0], [20, 20], [0, 20], [0, 0]], P:[[0, 20], [0, 0], [20, 0], [20, 10], [0, 10]], Q:[[10, 10], [20, 20], [0, 20], [0, 0], [20, 0], [20, 20]], R:[[0, 20], [0, 0], [20, 0], [20, 10], [0, 10], [10, 10], [20, 20]], S:[[20, 0], [0, 0], [0, 10], [20, 10], [20, 20], [0, 20]], T:[[0, 0], [20, 0], [10, 0], [10, 20]], U:[[0, 0], [0, 20], [20, 20], [20, 0]], V:[[0, 0], [10, 20], [20, 0]], W:[[0, 0], [0, 20], [10, 10], [20, 20], [20, 0]], X:[[0, 0], [20, 20], [10, 10], [20, 0], [0, 20]], Y:[[0, 0], [10, 10], [20, 0], [10, 10], [10, 20]], Z:[[0, 0], [20, 0], [0, 20], [20, 20]], [:[[20, 0], [10, 0], [10, 20], [20, 20]], ]:[[0, 0], [10, 0], [10, 20], [0, 20]], ↑:[[0, 10], [10, 0], [20, 10], [10, 0], [10, 20]], ↓:[[0, 10], [10, 20], [20, 10], [10, 20], [10, 0]], ←:[[10, 0], [0, 10], [10, 20], [0, 10], [20, 10]], →:[[10, 0], [20, 10], [10, 20], [20, 10], [0, 10]], _:[[0, 20], [20, 20]], -:[[0, 10], [20, 10]], ・:[[8, 8], [8, 12], [12, 12], [8, 12], [8, 8]], ?:[[0, 10], [0, 0], [20, 0], [20, 10], [10, 10], [10, 20], [5, 20], [5, 15], [10, 15]], &:[[15, 5], [15, 20], [0, 20], [0, 10], [10, 5], [10, 0], [0, 0], [0, 5], [20, 15]], %:[[10, 10], [0, 10], [0, 0], [10, 0], [10, 20], [20, 20], [20, 10], [10, 10], [0, 20], [20, 0]], :[[0, 0]]};
public static function drawChar(_arg1:Sprite, _arg2:String, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:uint){
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:int;
_local8 = 1;
_local9 = (_arg5 / 20);
_local10 = (_arg6 / 20);
_arg1.graphics.lineStyle(_local8, _arg7);
_arg1.graphics.moveTo((((lineObj[_arg2][0][0] * _local9) + _arg3) + _arg5), ((lineObj[_arg2][0][1] * _local10) + _arg4));
_local11 = 1;
while (_local11 < lineObj[_arg2].length) {
_arg1.graphics.lineTo((((lineObj[_arg2][_local11][0] * _local9) + _arg3) + _arg5), ((lineObj[_arg2][_local11][1] * _local10) + _arg4));
_local11++;
};
}
public static function drawString(_arg1:Sprite, _arg2:String, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int, _arg8:uint){
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:int;
var _local13:int;
_local9 = 1;
_local10 = (_arg5 / 20);
_local11 = (_arg6 / 20);
_arg1.graphics.lineStyle(_local9, _arg8);
_local12 = 0;
while (_local12 < _arg2.length) {
_arg1.graphics.moveTo((((lineObj[_arg2.charAt(_local12)][0][0] * _local10) + _arg3) + (_local12 * (_arg5 + _arg7))), ((lineObj[_arg2.charAt(_local12)][0][1] * _local11) + _arg4));
_local13 = 1;
while (_local13 < lineObj[_arg2.charAt(_local12)].length) {
_arg1.graphics.lineTo((((lineObj[_arg2.charAt(_local12)][_local13][0] * _local10) + _arg3) + (_local12 * (_arg5 + _arg7))), ((lineObj[_arg2.charAt(_local12)][_local13][1] * _local11) + _arg4));
_local13++;
};
_local12++;
};
}
}
}//package
Section 18
//Main (Main)
package {
import flash.display.*;
import flash.events.*;
import flash.media.*;
import flash.net.*;
import flash.utils.*;
public class Main {
public const S_DEMOEND:uint = 7;
public const S_CLEAR:uint = 6;
public const S_TITLE:uint = 1;
public const S_GAME:uint = 3;
public const S_MISS:uint = 5;
public const MSEC = 30;
public var p_obj_array:Array;
public var ship_num:uint;
public var bgm1_obj;
public var start_bg_map_num:int;
public var extend_score:int;
public var bom_total_cnt:int;
public var restart_flg:Boolean;// = false
public var miss_obj:Miss;
public var bg_star_obj:BgStar;
public var bg2_obj:Bg;
public var highscore_list:Array;
public var loop_cnt;// = 0
public var sound_bgm_num:uint;// = 1
var i:int;
public var main_obj:Object;
public var bg_make_first_flg:Boolean;
public var r_obj_array:Array;
public var scroll_x:uint;
public var bg_num:uint;
public var title_obj:Title;
public var score:uint;
var scene:uint;// = 1
public var pause_flg:Boolean;
public var stage_num_bak:int;// = -1
public var player_obj:Player;
public var bgm2_obj:SoundBgm;
public var container:DisplayObjectContainer;
public var ranking_obj:Ranking;
var prevProcessStep:Number;
public var high_score:uint;
public var enterframe_flg:Boolean;
public var e_obj_array:Array;
public var stage_num:int;// = 0
public var fly_rocket_cnt:int;// = 0
public var bg1_obj;
public var fly_stay_cnt:int;// = 0
public var score_obj:Score;
public var ending_obj:Ending;
public var shot_total_cnt:int;
public var enemy_total_cnt:uint;// = 487
public var enemy_release_cnt:uint;
public function Main(_arg1:DisplayObjectContainer){
var _local2:SharedObject;
var _local3:Object;
scene = S_TITLE;
fly_rocket_cnt = 0;
fly_stay_cnt = 0;
loop_cnt = 0;
stage_num_bak = -1;
stage_num = 0;
sound_bgm_num = 1;
restart_flg = false;
enemy_total_cnt = 487;
main_obj = this;
e_obj_array = new Array();
p_obj_array = new Array();
r_obj_array = new Array();
super();
container = _arg1;
container.addEventListener(Event.ENTER_FRAME, mainLoop);
title_obj = new Title(main_obj, container);
bgm1_obj = new SoundBgm(main_obj, 1);
bgm2_obj = new SoundBgm(main_obj, 2);
initGame();
_local2 = SharedObject.getLocal("hs1");
if (_local2){
_local3 = _local2.data;
if (_local3.ary == undefined){
highscore_list = [10000, 9000, 8000, 7000, 6000, 5000, 4000, 3000, 2000, 1000];
save();
} else {
highscore_list = _local3.ary.slice();
};
};
high_score = highscore_list[0];
prevProcessStep = getTimer();
enterframe_flg = false;
pause_flg = false;
}
public function clearAllGameObjects():void{
var _local1:int;
bg1_obj.setDelete();
bg2_obj.setDelete();
_local1 = 0;
while (_local1 < p_obj_array.length) {
p_obj_array[_local1].setDelete();
_local1++;
};
_local1 = 0;
while (_local1 < e_obj_array.length) {
e_obj_array[_local1].setDelete();
_local1++;
};
_local1 = 0;
while (_local1 < r_obj_array.length) {
r_obj_array[_local1].setDelete();
_local1++;
};
player_obj.setDelete();
bg_star_obj.setDelete();
score_obj.deleteObj();
}
public function addEnemyObj(_arg1:Object):void{
e_obj_array.push(_arg1);
}
public function setTitle():void{
title_obj = new Title(main_obj, container);
initGame();
}
public function deleteEnemyObj(_arg1:Object):void{
e_obj_array.splice(e_obj_array.indexOf(_arg1), 1);
}
function initGame():void{
scroll_x = 6;
score = 0;
ship_num = 3;
loop_cnt = 0;
extend_score = 10000;
initStage();
}
public function setEnding():void{
ending_obj = new Ending(main_obj, container);
}
public function deleteRockObj(_arg1:Object):void{
r_obj_array.splice(r_obj_array.indexOf(_arg1), 1);
}
public function entryHahen(_arg1:String, _arg2:Number, _arg3:Number):void{
var _local4:Array;
var _local5:uint;
var _local6:*;
var _local7:Number;
var _local8:Hahen;
switch (_arg1){
case "tank":
_local4 = Data.enemy_tank;
_local5 = 0xFF00CC;
_local6 = 0;
_local7 = -2;
break;
case "rocket":
_local4 = Data.enemy_rocket;
_local5 = 0xFFFF;
_local6 = 0;
_local7 = -2;
break;
case "rock":
_local4 = Data.enemy_rock;
_local5 = 0xFF0000;
_local6 = -2;
_local7 = -2;
break;
case "ufo":
_local4 = Data.enemy_ufo;
_local5 = 0xFF00;
_local6 = 0;
_local7 = -2;
break;
case "fuel":
_local4 = Data.enemy_fuel;
_local5 = 0xFF9900;
_local6 = 0;
_local7 = -3;
break;
case "player":
_local4 = Data.player_ship;
_local5 = 0xFFFFFF;
_local6 = 0;
_local7 = 0;
break;
case "hex":
_local4 = Data.enemy_hex;
_local5 = 0xFF00FF;
_local6 = 0;
_local7 = -2;
break;
case "core":
_local4 = Data.enemy_core;
_local5 = 0xFF00CC;
_local6 = 0;
_local7 = -3;
break;
};
i = 0;
while (i < (_local4.length - 2)) {
_local8 = new Hahen(main_obj, container, _local4[i], _local4[(i + 1)], _arg2, _arg3, _local5, _local6, _local7);
i++;
};
}
public function nextStart():void{
loop_cnt++;
initStage();
gameStart(0);
}
public function reStartBgm(){
if (sound_bgm_num == 1){
bgm1_obj.setBgm((stage_num + 1));
bgm2_obj.setFadeOut();
sound_bgm_num = 2;
} else {
bgm1_obj.setFadeOut();
bgm2_obj.setBgm((stage_num + 1));
sound_bgm_num = 1;
};
}
public function hitCheckBg(_arg1:Array, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Object{
var _local6:uint;
var _local7:int;
var _local8:uint;
var _local9:uint;
var _local10:uint;
var _local11:Boolean;
var _local12:uint;
var _local13:Array;
var _local14:Number;
var _local15:Number;
var _local16:uint;
var _local17:uint;
var _local18:Object;
var _local19:Number;
_local9 = 0;
_local10 = 0;
_local12 = 0;
_local13 = new Array();
_local14 = bg1_obj.px;
_local15 = bg2_obj.px;
_local16 = bg1_obj.bg_num;
_local17 = bg2_obj.bg_num;
if (_arg2 < _arg4){
_local19 = _arg2;
_arg2 = _arg4;
_arg4 = _local19;
_local19 = _arg3;
_arg3 = _arg5;
_arg5 = _local19;
_arg2 = (_arg2 - scroll_x);
} else {
_arg4 = (_arg4 - scroll_x);
};
if (_local14 < _local15){
_local8 = _arg1[_local16].length;
_local7 = 0;
while (_local7 < _local8) {
if (_arg2 < (_arg1[_local16][_local7][0] + _local14)){
_local9 = _local7;
_local12 = 1;
break;
};
_local7++;
};
if (_local12 == 0){
_local8 = _arg1[_local17].length;
_local7 = 0;
while (_local7 < _local8) {
if (_arg2 < (_arg1[_local17][_local7][0] + _local15)){
_local9 = _local7;
_local12 = 2;
break;
};
_local7++;
};
};
} else {
_local8 = _arg1[_local17].length;
_local7 = 0;
while (_local7 < _local8) {
if (_arg2 < (_arg1[_local17][_local7][0] + _local15)){
_local9 = _local7;
_local12 = 2;
break;
};
_local7++;
};
if (_local12 == 0){
_local8 = _arg1[_local16].length;
_local7 = 0;
while (_local7 < _local8) {
if (_arg2 < (_arg1[_local16][_local7][0] + _local14)){
_local9 = _local7;
_local12 = 1;
break;
};
_local7++;
};
};
};
if (_local9 == 0){
_local9 = 1;
};
if (_local12 == 1){
_local11 = false;
_local7 = (_local9 - 1);
while (_local7 >= 0) {
if (_arg4 > (_arg1[_local16][_local7][0] + _local14)){
_local10 = _local7;
_local11 = true;
break;
};
_local7--;
};
if (!_local11){
_local7 = (_arg1[_local17].length - 1);
while (_local7 >= 0) {
if (_arg4 > (_arg1[_local17][_local7][0] + _local15)){
_local10 = _local7;
break;
};
_local7--;
};
_local8 = _arg1[_local17].length;
_local7 = _local10;
while (_local7 < _local8) {
_local13.push([(_arg1[_local17][_local7][0] + _local15), _arg1[_local17][_local7][1]]);
_local7++;
};
_local7 = 1;
while (_local7 <= _local9) {
_local13.push([(_arg1[_local16][_local7][0] + _local14), _arg1[_local16][_local7][1]]);
_local7++;
};
} else {
_local7 = _local10;
while (_local7 <= _local9) {
_local13.push([(_arg1[_local16][_local7][0] + _local14), _arg1[_local16][_local7][1]]);
_local7++;
};
};
} else {
_local11 = false;
_local7 = (_local9 - 1);
while (_local7 >= 0) {
if (_arg4 > (_arg1[_local17][_local7][0] + _local15)){
_local10 = _local7;
_local11 = true;
break;
};
_local7--;
};
if (!_local11){
_local7 = (_arg1[_local16].length - 1);
while (_local7 >= 0) {
if (_arg4 > (_arg1[_local16][_local7][0] + _local14)){
_local10 = _local7;
break;
};
_local7--;
};
_local8 = _arg1[_local16].length;
_local7 = _local10;
while (_local7 < _local8) {
_local13.push([(_arg1[_local16][_local7][0] + _local14), _arg1[_local16][_local7][1]]);
_local7++;
};
_local7 = 1;
while (_local7 <= _local9) {
_local13.push([(_arg1[_local17][_local7][0] + _local15), _arg1[_local17][_local7][1]]);
_local7++;
};
} else {
_local7 = _local10;
while (_local7 <= _local9) {
_local13.push([(_arg1[_local17][_local7][0] + _local15), _arg1[_local17][_local7][1]]);
_local7++;
};
};
};
_local8 = (_local13.length - 1);
if (_local8 == 0){
trace(("bg_point_array = " + _local13));
trace(((((((("err hitCheckBg 調査線分なし " + _arg2) + " , ") + _arg3) + " , ") + _arg4) + " , ") + _arg5));
};
_local7 = 0;
while (_local7 < _local8) {
_local18 = Math2D.getCrossPoint(_arg2, _arg3, _arg4, _arg5, _local13[_local7][0], _local13[_local7][1], _local13[(_local7 + 1)][0], _local13[(_local7 + 1)][1]);
if (_local18.x != undefined){
return (_local18);
};
_local7++;
};
_local18 = new Object();
_local18.x = undefined;
return (_local18);
}
public function setDemo():void{
initGame();
gameStart(1);
}
public function setRanking():void{
var _local1:int;
_local1 = setHighScore();
ranking_obj = new Ranking(main_obj, container, highscore_list, _local1, "end");
}
public function addRockObj(_arg1:Object):void{
r_obj_array.push(_arg1);
}
public function save():void{
var _local1:SharedObject;
var _local2:Object;
_local1 = SharedObject.getLocal("hs1");
if (_local1){
_local2 = _local1.data;
_local2.ary = highscore_list.slice();
};
}
public function addScore(_arg1:uint):void{
var _local2:Sound;
score = (score + _arg1);
if (score >= high_score){
high_score = score;
};
score_obj.dispScore(score);
score_obj.dispHighScore(high_score);
if (score >= extend_score){
extend_score = (extend_score + 1000000);
ship_num++;
score_obj.dispMyship();
_local2 = new Se_1up();
_local2.play(0, 1);
};
}
public function gameClear():void{
scene = S_CLEAR;
miss_obj = new Miss(main_obj, container, "clear");
}
function gameStart(_arg1:uint):void{
scene = S_GAME;
bg_make_first_flg = true;
bg_star_obj = new BgStar(main_obj, container);
bg1_obj = new Bg(main_obj, container, start_bg_map_num, 0);
bg2_obj = new Bg(main_obj, container, (start_bg_map_num + 1), 550);
player_obj = new Player(main_obj, container, _arg1);
score_obj = new Score(main_obj, container);
}
public function setPause():void{
pause_flg = !(pause_flg);
bgm1_obj.setPause(pause_flg);
bgm2_obj.setPause(pause_flg);
}
public function getRandom(_arg1:uint):uint{
var _local2:uint;
_local2 = Math.floor((Math.random() * _arg1));
return (_local2);
}
public function gameRestart():void{
start_bg_map_num = (start_bg_map_num - 2);
if (start_bg_map_num < 0){
start_bg_map_num = 0;
};
if (start_bg_map_num >= 46){
start_bg_map_num = 43;
};
restart_flg = true;
reStartBgm();
gameStart(0);
restart_flg = false;
}
public function setHighScore():int{
highscore_list.push(score);
highscore_list.sort((16 | 2));
highscore_list.pop();
save();
return (highscore_list.indexOf(score, 0));
}
public function makeBg(_arg1:Sprite, _arg2:uint, _arg3:int){
var _local4:uint;
var _local5:uint;
var _local6:int;
var _local7:Enemy;
var _local8:Number;
var _local9:Number;
var _local10:uint;
var _local11:Rock;
stage_num = Math.floor((_arg2 / 8));
if ((((scene == S_GAME)) && (!(restart_flg)))){
if ((_arg2 % 8) == 0){
if (sound_bgm_num == 1){
bgm1_obj.setBgm((stage_num + 1));
bgm2_obj.setFadeOut();
sound_bgm_num = 2;
} else {
bgm2_obj.setBgm((stage_num + 1));
bgm1_obj.setFadeOut();
sound_bgm_num = 1;
};
};
};
stage_num_bak = stage_num;
_local4 = Data.bg_color[stage_num][0];
_local5 = Data.bg_color[stage_num][1];
_arg1.graphics.clear();
_arg1.graphics.lineStyle(undefined, 0);
_arg1.graphics.beginFill(_local5);
_arg1.graphics.moveTo(0, 400);
_arg1.graphics.lineTo(Data.bg_data[_arg2][0][0], Data.bg_data[_arg2][0][1]);
_local6 = 1;
while (_local6 < Data.bg_data[_arg2].length) {
_arg1.graphics.lineTo(Data.bg_data[_arg2][_local6][0], Data.bg_data[_arg2][_local6][1]);
_local6++;
};
_arg1.graphics.lineTo(550, 400);
_arg1.graphics.endFill();
if (Data.bgt_data[_arg2].length >= 2){
_arg1.graphics.lineStyle(undefined, 0);
_arg1.graphics.beginFill(_local5);
_arg1.graphics.moveTo(0, 0);
_arg1.graphics.lineTo(Data.bgt_data[_arg2][0][0], Data.bgt_data[_arg2][0][1]);
_local6 = 1;
while (_local6 < Data.bgt_data[_arg2].length) {
_arg1.graphics.lineTo(Data.bgt_data[_arg2][_local6][0], Data.bgt_data[_arg2][_local6][1]);
_local6++;
};
_arg1.graphics.lineTo(550, 0);
_arg1.graphics.endFill();
_arg1.graphics.lineStyle(1, _local4);
_arg1.graphics.moveTo(Data.bgt_data[_arg2][0][0], Data.bgt_data[_arg2][0][1]);
_local6 = 1;
while (_local6 < Data.bgt_data[_arg2].length) {
_arg1.graphics.lineTo(Data.bgt_data[_arg2][_local6][0], Data.bgt_data[_arg2][_local6][1]);
_local6++;
};
};
_arg1.graphics.lineStyle(1, _local4);
_arg1.graphics.moveTo(Data.bg_data[_arg2][0][0], Data.bg_data[_arg2][0][1]);
_local6 = 1;
while (_local6 < Data.bg_data[_arg2].length) {
_arg1.graphics.lineTo(Data.bg_data[_arg2][_local6][0], Data.bg_data[_arg2][_local6][1]);
_local6++;
};
if (scene == S_GAME){
if (!bg_make_first_flg){
_local6 = 0;
while (_local6 < Data.bg_e_data[_arg2].length) {
_local7 = new Enemy(main_obj, container, Data.bg_e_data[_arg2][_local6], _arg3);
_local6++;
};
} else {
bg_make_first_flg = false;
};
_local6 = 0;
while (_local6 < Data.bg_rock_data[_arg2].length) {
_local8 = (Data.bg_rock_data[_arg2][_local6][0] + _arg3);
_local9 = Data.bg_rock_data[_arg2][_local6][1];
_local10 = Data.bg_rock_data[_arg2][_local6][2];
_local11 = new Rock(main_obj, container, _local8, _local9, _local10, true);
addRockObj(_local11);
_local6++;
};
};
}
function initStage():void{
start_bg_map_num = 0;
bg_num = 0;
stage_num_bak = -1;
fly_stay_cnt = 0;
fly_rocket_cnt = 0;
start_bg_map_num = 0;
enemy_release_cnt = 0;
sound_bgm_num = 1;
stage_num = 0;
shot_total_cnt = 0;
bom_total_cnt = 0;
}
public function addPlayerObj(_arg1:Object):void{
p_obj_array.push(_arg1);
}
public function deletePlayerObj(_arg1:Object):void{
p_obj_array.splice(p_obj_array.indexOf(_arg1), 1);
}
public function miss():void{
scene = S_MISS;
ship_num--;
if (ship_num == 0){
miss_obj = new Miss(main_obj, container, "gameover");
} else {
miss_obj = new Miss(main_obj, container, "miss");
};
}
function mainLoop(_arg1:Event):void{
var _local2:int;
if (pause_flg){
enterframe_flg = false;
return;
};
_local2 = getTimer();
if (_local2 >= (prevProcessStep + MSEC)){
prevProcessStep = ((_local2)<=((prevProcessStep + MSEC) + MSEC)) ? (prevProcessStep + MSEC) : _local2;
if (fly_stay_cnt > 0){
fly_stay_cnt--;
};
enterframe_flg = true;
} else {
enterframe_flg = false;
};
}
}
}//package
Section 19
//Math2 (Math2)
package {
public class Math2 {
public static function getRandom(_arg1:uint):uint{
var _local2:uint;
_local2 = Math.floor((Math.random() * _arg1));
return (_local2);
}
}
}//package
Section 20
//Math2D (Math2D)
package {
public class Math2D {
public static function checkOverLine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:Number, _arg9:Number, _arg10:Number):Boolean{
if (_arg4 < _arg6){
if ((((_arg4 > _arg2)) || ((_arg6 < _arg2)))){
return (false);
};
} else {
if ((((_arg4 < _arg2)) || ((_arg6 > _arg2)))){
return (false);
};
};
if (_arg3 < _arg5){
if ((((_arg3 > _arg1)) && ((_arg5 < _arg1)))){
return (false);
};
} else {
if ((((_arg3 < _arg1)) || ((_arg5 > _arg1)))){
return (false);
};
};
if (_arg8 < _arg10){
if ((((_arg8 > _arg2)) || ((_arg10 < _arg2)))){
return (false);
};
} else {
if ((((_arg8 < _arg2)) || ((_arg10 > _arg2)))){
return (false);
};
};
if (_arg7 < _arg9){
if ((((_arg7 > _arg1)) || ((_arg9 < _arg1)))){
return (false);
};
} else {
if ((((_arg7 < _arg1)) || ((_arg9 > _arg1)))){
return (false);
};
};
return (true);
}
public static function getCrossPoint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:Number):Object{
var _local9:Object;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Number;
var _local15:Number;
var _local16:Number;
var _local17:Number;
var _local18:Number;
var _local19:Boolean;
var _local20:Number;
var _local21:Number;
_local9 = new Object();
_local10 = -((_arg4 - _arg2));
_local11 = (_arg3 - _arg1);
_local12 = ((-(_local10) * _arg3) - (_local11 * _arg4));
_local13 = -((_arg8 - _arg6));
_local14 = (_arg7 - _arg5);
_local15 = ((-(_local13) * _arg7) - (_local14 * _arg8));
_local16 = ((_local14 * _local10) - (_local11 * _local13));
if (_local16 == 0){
_local9.x = undefined;
return (_local9);
};
_local17 = (((_local15 * _local11) - (_local12 * _local14)) / _local16);
_local18 = (((_local13 * _local12) - (_local10 * _local15)) / _local16);
_local19 = checkOverLine(_local17, _local18, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8);
if (_local19){
_local9.x = _local17;
_local9.y = _local18;
_local20 = ((Math.atan2((_arg6 - _arg8), (_arg5 - _arg7)) / Math.PI) * 180);
_local21 = ((Math.atan2((_arg2 - _arg4), (_arg1 - _arg3)) / Math.PI) * 180);
_local9.r = (_local20 + (_local20 - _local21));
} else {
_local9.x = undefined;
};
return (_local9);
}
}
}//package
Section 21
//Miss (Miss)
package {
import flash.display.*;
import flash.events.*;
public class Miss {
var my_obj:Object;
var i:int;
var container:DisplayObjectContainer;
var stat:uint;
var cnt:int;// = 0
var main:Object;
var sp:Sprite;
var sp_fade:Sprite;
public function Miss(_arg1:Object, _arg2:DisplayObjectContainer, _arg3:String){
my_obj = this;
cnt = 0;
super();
container = _arg2;
main = _arg1;
sp = new Sprite();
container.addChild(sp);
sp_fade = new Sprite();
container.addChild(sp_fade);
sp_fade.graphics.lineStyle(0, 0);
sp_fade.graphics.beginFill(0);
sp_fade.graphics.drawRect(0, 0, 550, 400);
sp_fade.addEventListener(Event.ENTER_FRAME, mainLoop);
sp_fade.alpha = 0;
switch (_arg3){
case "miss":
stat = 1;
break;
case "gameover":
stat = 3;
LineString.drawString(sp, "GAMEOVER", 100, 150, 40, 20, 4, 0xFF0000);
break;
case "clear":
stat = 5;
break;
case "demo":
stat = 7;
break;
};
}
function mainLoop(_arg1:Event):void{
if (!main.enterframe_flg){
return;
};
switch (stat){
case 1:
cnt++;
if (cnt > 40){
stat = 2;
};
break;
case 2:
sp_fade.alpha = (sp_fade.alpha + 0.04);
if (sp_fade.alpha > 1){
sp_fade.alpha = 1;
main.clearAllGameObjects();
main.gameRestart();
deleteObj();
};
break;
case 3:
cnt++;
if (cnt > 60){
stat = 4;
};
break;
case 4:
sp_fade.alpha = (sp_fade.alpha + 0.04);
if (sp_fade.alpha > 1){
sp_fade.alpha = 1;
main.clearAllGameObjects();
main.setRanking();
deleteObj();
};
break;
case 5:
cnt++;
if (cnt > 30){
stat = 6;
};
break;
case 6:
sp_fade.alpha = (sp_fade.alpha + 0.04);
if (sp_fade.alpha > 1){
sp_fade.alpha = 1;
main.clearAllGameObjects();
main.setEnding();
deleteObj();
};
break;
case 7:
sp_fade.alpha = (sp_fade.alpha + 0.1);
if (sp_fade.alpha > 1){
sp_fade.alpha = 1;
main.clearAllGameObjects();
main.setTitle();
deleteObj();
};
break;
};
}
function deleteObj(){
sp.graphics.clear();
sp_fade.graphics.clear();
sp_fade.removeEventListener(Event.ENTER_FRAME, mainLoop);
container.removeChild(sp);
container.removeChild(sp_fade);
sp_fade = null;
sp = null;
my_obj = null;
}
}
}//package
Section 22
//Player (Player)
package {
import flash.display.*;
import flash.events.*;
import flash.media.*;
import flash.ui.*;
public class Player {
var explode_flg:Boolean;// = false
var px:Number;// = 275
var py:Number;// = 200
var bom_tgl_cnt:int;// = 0
var vUP:int;// = 0
var death_flg:Boolean;// = false
var vDOWN:int;// = 0
var container:DisplayObjectContainer;
var shot_flg:Boolean;// = false
var se_empty:Sound;
var demo_ptr:uint;// = 0
var fuel_empty_flg:Boolean;// = false
var hitsp:Sprite;
var fuel:Number;// = 300
var main:Object;
var shot_tgl_cnt:int;// = 0
var vx:Number;// = 0
var vy:Number;// = 0
var vRIGHT:int;// = 0
var speed:Number;// = 6
var add_cnt:uint;// = 0
var delete_flg:Boolean;// = false
var play_mode:uint;
var px_bak:Number;
var py_bak:Number;
var sp;
var muteki_cnt:uint;// = 60
var bom_flg:Boolean;// = false
var se_empty_channel:SoundChannel;
var i:int;
var my_obj:Object;
public var move_flg:Boolean;// = false
var sp2;
var vLEFT:int;// = 0
public function Player(_arg1:Object, _arg2:DisplayObjectContainer, _arg3:uint){
fuel_empty_flg = false;
explode_flg = false;
delete_flg = false;
px = 275;
py = 200;
px_bak = px;
py_bak = py;
vx = 0;
vy = 0;
vRIGHT = 0;
vLEFT = 0;
vUP = 0;
vDOWN = 0;
move_flg = false;
speed = 6;
muteki_cnt = 60;
death_flg = false;
shot_tgl_cnt = 0;
shot_flg = false;
bom_tgl_cnt = 0;
bom_flg = false;
my_obj = this;
fuel = 300;
add_cnt = 0;
demo_ptr = 0;
super();
container = _arg2;
play_mode = _arg3;
sp = new Sprite();
container.addChild(sp);
sp.stage.addEventListener(KeyboardEvent.KEY_UP, keyUpHandler);
sp.stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
sp.addEventListener(Event.ENTER_FRAME, mainLoop);
hitsp = new Sprite();
container.addChild(hitsp);
hitsp.graphics.lineStyle(0, 0, 0);
hitsp.graphics.beginFill(0, 0);
hitsp.graphics.drawRect(-4, -2, 8, 4);
main = _arg1;
sp.x = px;
sp.y = py;
hitsp.x = px;
hitsp.y = py;
Data.drawEnemy(sp, "player");
sp2 = new Sprite();
Data.drawEnemy(sp2, "player_f");
container.addChild(sp2);
se_empty = new Se_empty();
}
public function hit():void{
var _local1:Sound;
var _local2:Miss;
if (main.scene == main.S_GAME){
if (((!(death_flg)) && ((muteki_cnt == 0)))){
main.bgm1_obj.setStop();
main.bgm2_obj.setStop();
_local1 = new Se_breakPlayer();
_local1.play(0, 1);
main.entryHahen("player", px, py);
death_flg = true;
sp.graphics.clear();
sp2.graphics.clear();
if (play_mode == 1){
main.scene = main.S_DEMOEND;
_local2 = new Miss(main, container, "demo");
delete_flg = true;
} else {
main.miss();
};
};
};
}
function mainLoop(_arg1:Event):void{
var _local2:Object;
var _local3:PlayerV;
var _local4:PlayerBom;
if (!main.enterframe_flg){
return;
};
if (play_mode == 1){
px = Data.demo_data[demo_ptr][0];
py = Data.demo_data[demo_ptr][1];
shot_flg = Data.demo_data[demo_ptr][2];
bom_flg = Data.demo_data[demo_ptr][3];
demo_ptr++;
if (Data.demo_data.length == demo_ptr){
hit2();
};
};
if (death_flg){
} else {
if (main.scene == main.S_GAME){
fuel = (fuel - (0.2 + (main.loop_cnt * 0.02)));
if (fuel < 0){
fuel = 0;
};
if (fuel < 50){
if (!fuel_empty_flg){
se_empty_channel = se_empty.play(0, 10000);
fuel_empty_flg = true;
};
} else {
if (fuel_empty_flg){
se_empty_channel.stop();
fuel_empty_flg = false;
};
};
main.score_obj.dispFuel(Math.floor(fuel));
if (muteki_cnt == 0){
_local2 = main.hitCheckBg(Data.bg_data, px, py, px_bak, py_bak);
if (_local2.x != undefined){
hit();
} else {
_local2 = main.hitCheckBg(Data.bgt_data, px, py, px_bak, py_bak);
if (_local2.x != undefined){
hit();
};
};
} else {
muteki_cnt--;
sp.visible = ((muteki_cnt + 1) % 2);
};
if (shot_flg){
if ((((shot_tgl_cnt <= 0)) && ((main.shot_total_cnt < 3)))){
_local3 = new PlayerV(main, sp.parent, px, py);
shot_tgl_cnt = 1;
} else {
shot_tgl_cnt--;
};
};
if (bom_flg){
if ((((bom_tgl_cnt <= 0)) && ((main.bom_total_cnt < 3)))){
_local4 = new PlayerBom(main, sp.parent, px, py);
bom_tgl_cnt = 2;
} else {
bom_tgl_cnt--;
};
};
px_bak = px;
py_bak = py;
if (fuel == 0){
vx = (vRIGHT + vLEFT);
vy = (vy + 0.05);
if (vy > 1){
vy = 1;
};
} else {
vx = (vRIGHT + vLEFT);
vy = (vUP + vDOWN);
};
px = (px + (vx * speed));
py = (py + (vy * speed));
if (py < (20 + (sp.height / 2))){
py = (20 + (sp.height / 2));
};
if (py > (370 - (sp.height / 2))){
py = (370 - (sp.height / 2));
};
if (px < (sp.width / 2)){
px = (sp.width / 2);
};
if (px > (550 - (sp.width / 2))){
px = (550 - (sp.width / 2));
};
if (((!((vx == 0))) || (!((vy == 0))))){
move_flg = true;
} else {
move_flg = false;
};
sp2.x = (px - 10);
sp2.y = py;
sp2.width = (sp2.width * 1.2);
sp2.alpha = (sp2.alpha - 0.1);
if (sp2.width > 40){
sp2.width = 10;
sp2.alpha = 1;
};
if (add_cnt == 20){
main.addScore(10);
add_cnt = 0;
} else {
add_cnt++;
};
sp.x = px;
sp.y = py;
hitsp.x = px;
hitsp.y = py;
};
};
if (delete_flg){
deleteObj();
};
}
function keyUpHandler(_arg1:KeyboardEvent){
if (play_mode == 0){
switch (_arg1.keyCode){
case Keyboard.RIGHT:
vRIGHT = 0;
break;
case Keyboard.LEFT:
vLEFT = 0;
break;
case Keyboard.UP:
vUP = 0;
break;
case Keyboard.DOWN:
vDOWN = 0;
break;
case 90:
shot_flg = false;
break;
case 88:
bom_flg = false;
break;
case 65:
shot_flg = false;
bom_flg = false;
break;
};
};
}
public function setDelete():void{
delete_flg = true;
}
function drawGraphics2():void{
var _local1:uint;
var _local2:uint;
var _local3:Number;
var _local4:Boolean;
var _local5:String;
sp.graphics.clear();
_local1 = 1;
_local2 = 0xFF0000;
_local3 = 1;
_local4 = false;
_local5 = "none";
sp.graphics.lineStyle(_local1, _local2, _local3, _local4, _local5);
sp.graphics.drawCircle(0, 0, 10);
}
function deleteObj():void{
if (se_empty_channel != null){
se_empty_channel.stop();
};
sp.stage.removeEventListener(KeyboardEvent.KEY_UP, keyUpHandler);
sp.stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
sp.removeEventListener(Event.ENTER_FRAME, mainLoop);
sp.graphics.clear();
sp2.graphics.clear();
hitsp.graphics.clear();
container.removeChild(sp);
container.removeChild(sp2);
container.removeChild(hitsp);
sp = null;
sp2 = null;
hitsp = null;
my_obj = null;
}
function keyDownHandler(_arg1:KeyboardEvent){
if (play_mode == 0){
switch (_arg1.keyCode){
case Keyboard.RIGHT:
vRIGHT = 1;
break;
case Keyboard.LEFT:
vLEFT = -1;
break;
case Keyboard.UP:
vUP = -1;
break;
case Keyboard.DOWN:
vDOWN = 1;
break;
case 88:
if (!bom_flg){
bom_flg = true;
bom_tgl_cnt = 0;
};
break;
case 90:
if (!shot_flg){
shot_flg = true;
shot_tgl_cnt = 0;
};
break;
case 65:
if (!bom_flg){
bom_flg = true;
bom_tgl_cnt = 0;
};
if (!shot_flg){
shot_flg = true;
shot_tgl_cnt = 0;
};
break;
case 80:
main.setPause();
break;
};
} else {
hit2();
};
}
public function addFuel(_arg1:uint):void{
fuel = (fuel + _arg1);
if (fuel > 300){
fuel = 300;
};
}
public function hit2():void{
var _local1:Miss;
if (main.scene == main.S_GAME){
if (!death_flg){
main.bgm1_obj.setStop();
main.bgm2_obj.setStop();
death_flg = true;
sp.graphics.clear();
sp2.graphics.clear();
main.scene = main.S_DEMOEND;
_local1 = new Miss(main, container, "demo");
delete_flg = true;
};
};
}
}
}//package
Section 23
//PlayerBom (PlayerBom)
package {
import flash.display.*;
import flash.events.*;
import flash.media.*;
public class PlayerBom {
var bgm_obj:Sound;
var vx:Number;// = 12
var vy:Number;// = 0
var px:Number;// = 0
var explode_flg:Boolean;// = false
var myObject:Object;
var bgm_channel:SoundChannel;
var delete_flg:Boolean;// = false
var px_bak:Number;
var py:Number;// = 0
var container:DisplayObjectContainer;
var py_bak:Number;
var sp:Sprite;
var i:int;
var main:Object;
public function PlayerBom(_arg1:Object, _arg2:DisplayObjectContainer, _arg3:int, _arg4:int){
delete_flg = false;
px = 0;
py = 0;
px_bak = px;
py_bak = py;
vx = 12;
vy = 0;
explode_flg = false;
myObject = this;
super();
sp = new Sprite();
sp.y = -100;
container = _arg2;
container.addChildAt(sp, 0);
px = Number(_arg3);
py = Number(_arg4);
px_bak = px;
py_bak = py;
drawGraphics(sp);
main = _arg1;
main.addPlayerObj(myObject);
sp.addEventListener(Event.ENTER_FRAME, mainLoop);
main.bom_total_cnt++;
bgm_obj = new Se_bom();
bgm_channel = bgm_obj.play(0, 1);
}
public function deleteObj():void{
bgm_channel.stop();
main.bom_total_cnt--;
if (main.bom_total_cnt < 0){
main.bom_total_cnt = 0;
};
main.deletePlayerObj(myObject);
sp.graphics.clear();
sp.removeEventListener(Event.ENTER_FRAME, mainLoop);
container.removeChild(sp);
sp = null;
myObject = null;
}
function drawGraphics2():void{
var _local1:uint;
var _local2:uint;
var _local3:Number;
var _local4:Boolean;
var _local5:String;
sp.graphics.clear();
_local1 = 1;
_local2 = 35071;
_local3 = 1;
_local4 = false;
_local5 = "none";
sp.graphics.lineStyle(_local1, _local2, _local3, _local4, _local5);
sp.graphics.drawCircle(0, 0, 10);
}
public function setDelete():void{
delete_flg = true;
}
function drawGraphics(_arg1:Sprite):void{
var _local2:uint;
var _local3:Number;
_local2 = 35071;
_local3 = 1;
_arg1.graphics.beginFill(_local2);
_arg1.graphics.lineStyle(_local3, _local2);
_arg1.graphics.drawRect(-4, -2, 8, 4);
}
function mainLoop(_arg1:Event):void{
var _local2:Object;
if (!main.enterframe_flg){
return;
};
if (explode_flg){
px = (px - main.scroll_x);
sp.scaleX = (sp.scaleX * 1.2);
sp.scaleY = (sp.scaleY * 1.2);
sp.alpha = (sp.alpha - 0.08);
sp.x = px;
if (sp.alpha <= 0){
deleteObj();
return;
};
} else {
px_bak = px;
py_bak = py;
px = (px + (vx - main.scroll_x));
py = (py + vy);
vx = (vx * 0.97);
vy = (vy + 0.35);
if (px < 550){
_local2 = main.hitCheckBg(Data.bg_data, px, py, px_bak, py_bak);
if (_local2.x != undefined){
px = _local2.x;
py = _local2.y;
drawGraphics2();
explode_flg = true;
} else {
_local2 = main.hitCheckBg(Data.bgt_data, px, py, px_bak, py_bak);
if (_local2.x != undefined){
px = _local2.x;
py = _local2.y;
drawGraphics2();
explode_flg = true;
};
};
if (!explode_flg){
i = 0;
while (i < main.e_obj_array.length) {
if (sp.hitTestObject(main.e_obj_array[i].sp)){
px = main.e_obj_array[i].px;
main.e_obj_array[i].hit();
drawGraphics2();
explode_flg = true;
break;
};
i++;
};
};
i = 0;
while (i < main.r_obj_array.length) {
if (sp.hitTestObject(main.r_obj_array[i].sp)){
px = main.r_obj_array[i].px;
main.r_obj_array[i].hit();
drawGraphics2();
explode_flg = true;
break;
};
i++;
};
};
};
sp.x = px;
sp.y = py;
if ((((((px > 550)) || ((py_bak > 400)))) || (delete_flg))){
deleteObj();
};
}
}
}//package
Section 24
//PlayerV (PlayerV)
package {
import flash.display.*;
import flash.events.*;
public class PlayerV {
var vx:Number;// = 1
var vy:Number;// = 0
var px:Number;// = 0
var py:Number;// = 0
var explode_flg:Boolean;// = false
var myObject:Object;
var speed:Number;// = 40
var delete_flg:Boolean;// = false
var px_bak:Number;
var py_bak:Number;
var container:DisplayObjectContainer;
var res:Object;
var sp:Sprite;
var i:int;
var main:Object;
public function PlayerV(_arg1:Object, _arg2:DisplayObjectContainer, _arg3:int, _arg4:int){
px = 0;
py = 0;
px_bak = px;
py_bak = py;
vx = 1;
vy = 0;
speed = 40;
explode_flg = false;
delete_flg = false;
myObject = this;
super();
sp = new Sprite();
sp.y = -100;
container = _arg2;
container.addChild(sp);
px = Number(_arg3);
py = Number(_arg4);
drawGraphics(sp);
main = _arg1;
main.addPlayerObj(myObject);
sp.addEventListener(Event.ENTER_FRAME, mainLoop);
main.shot_total_cnt++;
}
function deleteObj():void{
main.shot_total_cnt--;
if (main.shot_total_cnt < 0){
main.shot_total_cnt = 0;
};
sp.removeEventListener(Event.ENTER_FRAME, mainLoop);
main.deletePlayerObj(myObject);
sp.graphics.clear();
container.removeChild(sp);
sp = null;
myObject = null;
}
function hit():void{
vx = Math.cos(((res.r * Math.PI) / 180));
vy = Math.sin(((res.r * Math.PI) / 180));
if ((((Math.abs(vy) < 0.8)) && ((vx > 0)))){
vy = (vy * 0.5);
px = (res.x + vx);
py = (res.y + vy);
} else {
px = res.x;
py = res.y;
drawGraphics2();
explode_flg = true;
};
}
function drawGraphics2():void{
var _local1:uint;
var _local2:uint;
var _local3:Number;
var _local4:Boolean;
var _local5:String;
sp.graphics.clear();
_local1 = 1;
_local2 = 35071;
_local3 = 1;
_local4 = false;
_local5 = "none";
sp.graphics.lineStyle(_local1, _local2, _local3, _local4, _local5);
sp.graphics.drawCircle(0, 0, 10);
}
public function setDelete():void{
delete_flg = true;
}
function drawGraphics(_arg1:Sprite):void{
var _local2:uint;
var _local3:Number;
_local2 = 35071;
_local3 = 1;
_arg1.graphics.beginFill(_local2);
_arg1.graphics.lineStyle(_local3, _local2);
_arg1.graphics.drawRect(-4, -2, 8, 4);
_arg1.graphics.endFill();
_arg1.graphics.lineStyle(0, 0, 0);
_arg1.graphics.beginFill(0, 0);
_arg1.graphics.drawRect(-4, -2, 24, 8);
}
function mainLoop(_arg1:Event):void{
if (!main.enterframe_flg){
return;
};
if (explode_flg){
px = (px - main.scroll_x);
sp.scaleX = (sp.scaleX * 1.2);
sp.scaleY = (sp.scaleY * 1.2);
sp.alpha = (sp.alpha - 0.08);
sp.x = px;
if (sp.alpha <= 0){
deleteObj();
return;
};
} else {
px_bak = px;
py_bak = py;
px = (px + ((vx * speed) - main.scroll_x));
py = (py + (vy * speed));
if (px < 550){
res = main.hitCheckBg(Data.bg_data, px, py, px_bak, py_bak);
if (res.x != undefined){
hit();
} else {
res = main.hitCheckBg(Data.bgt_data, px, py, px_bak, py_bak);
if (res.x != undefined){
hit();
};
};
};
if (!explode_flg){
i = 0;
while (i < main.e_obj_array.length) {
if (sp.hitTestObject(main.e_obj_array[i].sp)){
px = main.e_obj_array[i].px;
main.e_obj_array[i].hit();
drawGraphics2();
explode_flg = true;
break;
};
i++;
};
i = 0;
while (i < main.r_obj_array.length) {
if (sp.hitTestObject(main.r_obj_array[i].sp)){
px = main.r_obj_array[i].px;
main.r_obj_array[i].hit();
drawGraphics2();
explode_flg = true;
break;
};
i++;
};
};
};
sp.x = px;
sp.y = py;
if ((((px > 550)) || (delete_flg))){
px = 550;
deleteObj();
};
}
}
}//package
Section 25
//Ranking (Ranking)
package {
import flash.display.*;
import flash.events.*;
public class Ranking extends LineString {
var sp_list:Array;
var stay_cnt:int;// = 0
var container:DisplayObjectContainer;
var sp_t:Sprite;
var run_mode:String;
var sp_if:Sprite;
var cnt:int;// = 0
var my_obj:Object;
var main:Object;
var sp_stars:Array;
public function Ranking(_arg1:Object, _arg2:DisplayObjectContainer, _arg3:Array, _arg4:int, _arg5:String){
var _local6:*;
var _local7:int;
var _local8:uint;
var _local9:int;
var _local10:int;
var _local11:int;
var _local12:uint;
var _local13:uint;
var _local14:Star;
var _local15:*;
var _local16:Sprite;
sp_list = new Array();
sp_stars = new Array();
my_obj = this;
cnt = 0;
stay_cnt = 0;
super();
main = _arg1;
container = _arg2;
run_mode = _arg5;
sp_if = new Sprite();
drawString(sp_if, "- SCORE RANKING -", 70, 60, 20, 10, 4, 0xFF0000);
_local9 = 130;
_local10 = 100;
_local11 = 25;
_local12 = 0xFFFF00;
_local13 = 8978431;
drawString(sp_if, "1ST PTS", _local9, _local10, 10, 10, 4, _local12);
drawString(sp_if, "2ND PTS", _local9, (_local10 + (_local11 * 1)), 10, 10, 4, _local12);
drawString(sp_if, "3RD PTS", _local9, (_local10 + (_local11 * 2)), 10, 10, 4, _local12);
drawString(sp_if, "4TH PTS", _local9, (_local10 + (_local11 * 3)), 10, 10, 4, _local13);
drawString(sp_if, "5TH PTS", _local9, (_local10 + (_local11 * 4)), 10, 10, 4, _local13);
drawString(sp_if, "6TH PTS", _local9, (_local10 + (_local11 * 5)), 10, 10, 4, _local13);
drawString(sp_if, "7TH PTS", _local9, (_local10 + (_local11 * 6)), 10, 10, 4, _local13);
drawString(sp_if, "8TH PTS", _local9, (_local10 + (_local11 * 7)), 10, 10, 4, _local13);
drawString(sp_if, "9TH PTS", _local9, (_local10 + (_local11 * 8)), 10, 10, 4, _local13);
drawString(sp_if, "10TH PTS", _local9, (_local10 + (_local11 * 9)), 10, 10, 4, _local13);
_local6 = 0;
while (_local6 < 200) {
_local14 = new Star(main, container);
sp_stars.push(_local14);
_local6++;
};
_local7 = 0;
while (_local7 < 10) {
_local15 = (_local10 + (_local11 * _local7));
_local6 = 0;
while (_local6 < 7) {
_local16 = new Sprite();
sp_list.push(_local16);
container.addChild(_local16);
_local16.x = ((_local9 + 210) - (_local6 * 14));
_local16.y = _local15;
_local6++;
};
_local7++;
};
dispScore(_arg3[0], 0, _local12);
dispScore(_arg3[1], 7, _local12);
dispScore(_arg3[2], 14, _local12);
dispScore(_arg3[3], 21, _local13);
dispScore(_arg3[4], 28, _local13);
dispScore(_arg3[5], 35, _local13);
dispScore(_arg3[6], 42, _local13);
dispScore(_arg3[7], 49, _local13);
dispScore(_arg3[8], 56, _local13);
dispScore(_arg3[9], 63, _local13);
sp_t = new Sprite();
_local8 = 0;
sp_t.graphics.beginFill(_local8);
sp_t.graphics.lineStyle(0, _local8);
sp_t.graphics.drawRect(0, 0, 300, 12);
sp_t.x = _local9;
if (_arg4 == -1){
sp_t.y = 1000;
} else {
sp_t.y = (_local10 + (_local11 * _arg4));
};
container.addChild(sp_if);
container.addChild(sp_t);
sp_t.addEventListener(Event.ENTER_FRAME, mainLoop);
sp_t.stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
}
function deleteObj():void{
var _local1:int;
_local1 = 0;
while (_local1 < sp_list.length) {
sp_list[_local1].graphics.clear();
container.removeChild(sp_list[_local1]);
sp_list[_local1] = null;
_local1++;
};
_local1 = 0;
while (_local1 < sp_stars.length) {
sp_stars[_local1].setDelete();
sp_stars[_local1] = null;
_local1++;
};
sp_if.graphics.clear();
container.removeChild(sp_if);
sp_if = null;
sp_t.graphics.clear();
sp_t.stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
sp_t.removeEventListener(Event.ENTER_FRAME, mainLoop);
container.removeChild(sp_t);
sp_t = null;
my_obj = null;
}
public function getRandom(_arg1:uint):uint{
var _local2:uint;
_local2 = Math.floor((Math.random() * _arg1));
return (_local2);
}
public function dispScore(_arg1:uint, _arg2:uint, _arg3:uint):void{
var _local4:int;
var _local5:int;
_local4 = 0;
while (_local4 < 7) {
sp_list[_arg2].graphics.clear();
_local5 = (Math.floor((_arg1 / Math.pow(10, _local4))) % 10);
if ((((_local5 == 0)) && ((Math.pow(10, _local4) > _arg1)))){
} else {
drawChar(sp_list[_arg2], String(_local5), 0, 0, 10, 10, _arg3);
};
_arg2++;
_local4++;
};
}
function keyDownHandler(_arg1:KeyboardEvent):void{
if (run_mode == "title"){
main.setTitle();
deleteObj();
};
}
function mainLoop(_arg1:Event):void{
var _local2:Table;
if (!main.enterframe_flg){
return;
};
if (cnt <= 0){
sp_t.visible = !(sp_t.visible);
cnt = 2;
} else {
cnt--;
};
if (stay_cnt == 180){
if (run_mode == "title"){
_local2 = new Table(main, container);
} else {
main.setTitle();
};
deleteObj();
} else {
stay_cnt++;
};
}
}
}//package
Section 26
//Rock (Rock)
package {
import flash.display.*;
import flash.events.*;
import flash.media.*;
public class Rock {
public var vy:Number;
public var px;
public var py;
var r:uint;
var delete_flg:Boolean;// = false
public var vx;
var container:DisplayObjectContainer;
var r_speed:uint;
public var sp:Sprite;
var my_obj:Object;
var i:int;
var fix_flg:Boolean;
var main:Object;
var life:int;// = 1
var my_score;// = 10
public function Rock(_arg1:Object, _arg2:DisplayObjectContainer, _arg3:Number, _arg4:Number, _arg5:uint, _arg6:Boolean){
my_obj = this;
delete_flg = false;
life = 1;
my_score = 10;
super();
container = _arg2;
main = _arg1;
sp = new Sprite();
r = (_arg5 / 2);
px = _arg3;
py = _arg4;
fix_flg = _arg6;
if (!fix_flg){
r_speed = main.getRandom(5);
vx = (-(main.getRandom(5)) + 2);
vy = 0;
container.addChild(sp);
Data.drawEnemy(sp, "rock");
};
sp.x = 1000;
sp.addEventListener(Event.ENTER_FRAME, mainLoop);
}
function deleteObj():void{
main.deleteRockObj(my_obj);
sp.removeEventListener(Event.ENTER_FRAME, mainLoop);
if (!fix_flg){
sp.graphics.clear();
container.removeChild(sp);
};
sp = null;
my_obj = null;
}
public function hit():void{
var _local1:Sound;
if (!fix_flg){
life--;
if (life == 0){
_local1 = new Se_breakRock();
_local1.play(0, 1);
main.entryHahen("rock", px, py);
delete_flg = true;
};
main.addScore(my_score);
};
}
public function hitRock(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{
var _local5:*;
if (!fix_flg){
px = _arg1;
py = _arg2;
_local5 = Math.sqrt(((vx * vx) + (vy * vy)));
vx = (-(_arg3) * _local5);
vy = (-(_arg4) * _local5);
};
}
function hitCheckRock(){
var _local1:Number;
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:*;
i = 0;
while (i < main.r_obj_array.length) {
if (main.r_obj_array[i] != my_obj){
_local1 = (px - main.r_obj_array[i].px);
_local2 = (py - main.r_obj_array[i].py);
_local3 = ((_local1 * _local1) + (_local2 * _local2));
_local4 = (r + main.r_obj_array[i].r);
if (_local3 < Math.pow(_local4, 2)){
_local5 = Math.atan2(_local2, _local1);
_local6 = Math.cos(_local5);
_local7 = Math.sin(_local5);
_local8 = (px - (_local6 * _local4));
_local9 = (py - (_local7 * _local4));
main.r_obj_array[i].hitRock(_local8, _local9, _local6, _local7);
if (!fix_flg){
_local10 = Math.sqrt(((vx * vx) + (vy * vy)));
vx = (_local6 * _local10);
vy = (_local7 * _local10);
};
};
};
i++;
};
}
public function setDelete():void{
delete_flg = true;
}
function mainLoop(_arg1:Event):void{
if (!main.enterframe_flg){
return;
};
if (!delete_flg){
hitCheckRock();
if (fix_flg){
} else {
px = (px + vx);
py = (py + vy);
vx = (vx - 0.1);
if (vx < -5){
vx = -5;
};
sp.rotation = (sp.rotation - r_speed);
if (px < 550){
if (sp.hitTestObject(main.player_obj.hitsp)){
main.player_obj.hit();
};
};
};
px = (px - main.scroll_x);
sp.x = px;
sp.y = py;
if (px < 0){
delete_flg = true;
};
} else {
deleteObj();
};
}
}
}//package
Section 27
//Score (Score)
package {
import flash.display.*;
import flash.events.*;
public class Score extends LineString {
var sp_list:Array;
var sp_1p:Sprite;
var sp_myship:Sprite;
var container:DisplayObjectContainer;
var my_obj:Object;
var cnt:int;// = 0
var sp_fuel_bar:Sprite;
var main:Object;
var sp_map:Sprite;
var sp_if:Sprite;
public function Score(_arg1:Object, _arg2:DisplayObjectContainer){
var _local3:*;
var _local4:int;
var _local5:uint;
var _local6:uint;
var _local7:uint;
var _local8:uint;
var _local9:uint;
var _local10:uint;
var _local11:Sprite;
sp_list = new Array();
my_obj = this;
cnt = 0;
super();
main = _arg1;
container = _arg2;
_local3 = 0;
while (_local3 < 7) {
_local11 = new Sprite();
sp_list.push(_local11);
container.addChild(_local11);
_local11.x = (170 - (_local3 * 14));
_local11.y = 10;
_local3++;
};
_local3 = 0;
while (_local3 < 7) {
_local11 = new Sprite();
sp_list.push(_local11);
container.addChild(_local11);
_local11.x = (500 - (_local3 * 14));
_local11.y = 10;
_local3++;
};
dispScore(main.score);
dispHighScore(main.high_score);
sp_if = new Sprite();
sp_myship = new Sprite();
container.addChild(sp_myship);
sp_myship.x = 10;
sp_myship.y = 388;
sp_myship.scaleX = 0.5;
sp_myship.scaleY = 0.5;
dispMyship();
_local5 = main.loop_cnt;
if (_local5 > 6){
_local5 = 6;
};
_local3 = 0;
while (_local3 < _local5) {
_local11 = new Sprite();
sp_list.push(_local11);
container.addChild(_local11);
Data.drawEnemy(_local11, "flag");
_local11.x = (530 - (_local3 * 17));
_local11.y = 395;
_local3++;
};
sp_1p = new Sprite();
drawString(sp_1p, "1UP", 30, 10, 10, 10, 4, 0xFFFFFF);
container.addChild(sp_1p);
sp_1p.addEventListener(Event.ENTER_FRAME, mainLoop);
drawString(sp_if, "HIGH SCORE", 270, 10, 10, 10, 4, 0xFFFFFF);
_local6 = 0xFFFF00;
sp_if.graphics.lineStyle(1, _local6);
_local7 = 25;
_local8 = 39;
_local9 = 70;
_local10 = ((550 - (70 * 6)) / 2);
sp_if.graphics.moveTo(_local10, _local7);
sp_if.graphics.lineTo((_local10 + (_local9 * 6)), _local7);
sp_if.graphics.lineTo((_local10 + (_local9 * 6)), _local8);
sp_if.graphics.lineTo(_local10, _local8);
sp_if.graphics.lineTo(_local10, _local7);
_local3 = 1;
while (_local3 <= 5) {
sp_if.graphics.moveTo((_local10 + (_local9 * _local3)), _local7);
sp_if.graphics.lineTo((_local10 + (_local9 * _local3)), _local8);
_local3++;
};
drawString(sp_if, "1ST", (_local10 + 15), (_local7 + 3), 10, 8, 2, _local6);
drawString(sp_if, "2ND", ((_local10 + (_local9 * 1)) + 15), (_local7 + 3), 10, 8, 2, _local6);
drawString(sp_if, "3RD", ((_local10 + (_local9 * 2)) + 15), (_local7 + 3), 10, 8, 2, _local6);
drawString(sp_if, "4TH", ((_local10 + (_local9 * 3)) + 15), (_local7 + 3), 10, 8, 2, _local6);
drawString(sp_if, "BASE", ((_local10 + (_local9 * 4)) + 10), (_local7 + 3), 10, 8, 2, _local6);
drawString(sp_if, "CORE", ((_local10 + (_local9 * 5)) + 10), (_local7 + 3), 10, 8, 2, _local6);
sp_map = new Sprite();
container.addChild(sp_map);
sp_map.graphics.beginFill(0xFF0000, 1);
sp_map.graphics.lineStyle(0, 0, 0);
sp_map.graphics.drawRect(0, 0, _local9, 14);
sp_map.graphics.endFill();
sp_map.x = _local10;
sp_map.y = _local7;
sp_fuel_bar = new Sprite();
container.addChild(sp_fuel_bar);
sp_fuel_bar.graphics.beginFill(0xFF9900, 1);
sp_fuel_bar.graphics.lineStyle(0, 0, 0);
sp_fuel_bar.graphics.drawRect(0, 0, 300, 10);
sp_fuel_bar.graphics.endFill();
sp_fuel_bar.x = 130;
sp_fuel_bar.y = 385;
sp_if.graphics.lineStyle(1, _local6);
sp_if.graphics.drawRect(130, 385, 300, 10);
drawString(sp_if, "FUEL", 80, 385, 10, 10, 2, _local6);
_arg2.addChild(sp_if);
dispMap((Math.floor((main.start_bg_map_num / 8)) + 1));
}
public function deleteObj():void{
var _local1:int;
sp_1p.removeEventListener(Event.ENTER_FRAME, mainLoop);
sp_1p.graphics.clear();
container.removeChild(sp_1p);
sp_1p = null;
sp_if.graphics.clear();
container.removeChild(sp_if);
sp_if = null;
sp_fuel_bar.graphics.clear();
container.removeChild(sp_fuel_bar);
sp_fuel_bar = null;
sp_map.graphics.clear();
container.removeChild(sp_map);
sp_map = null;
sp_myship.graphics.clear();
container.removeChild(sp_myship);
sp_myship = null;
_local1 = 0;
while (_local1 < sp_list.length) {
sp_list[_local1].graphics.clear();
container.removeChild(sp_list[_local1]);
sp_list[_local1] = null;
_local1++;
};
my_obj = null;
}
public function dispHighScore(_arg1:uint):void{
var _local2:int;
var _local3:int;
_local2 = 0;
while (_local2 < 7) {
sp_list[(_local2 + 7)].graphics.clear();
_local3 = (Math.floor((_arg1 / Math.pow(10, _local2))) % 10);
drawChar(sp_list[(_local2 + 7)], String(_local3), 0, 0, 10, 10, 0xFF0000);
_local2++;
};
}
public function dispMap(_arg1:uint):void{
sp_map.width = (_arg1 * 70);
}
public function dispScore(_arg1:uint):void{
var _local2:int;
var _local3:int;
_local2 = 0;
while (_local2 < 7) {
sp_list[_local2].graphics.clear();
_local3 = (Math.floor((_arg1 / Math.pow(10, _local2))) % 10);
drawChar(sp_list[_local2], String(_local3), 0, 0, 10, 10, 0xFF0000);
_local2++;
};
}
public function dispMyship():void{
var _local1:*;
var _local2:int;
var _local3:*;
sp_myship.graphics.clear();
_local1 = 0;
while (_local1 < (main.ship_num - 1)) {
_local2 = (_local1 * 45);
sp_myship.graphics.lineStyle(1, 0xFFFFFF);
sp_myship.graphics.moveTo((Data.player_ship[0][0] + _local2), Data.player_ship[0][1]);
_local3 = 1;
while (_local3 < Data.player_ship.length) {
sp_myship.graphics.lineTo((Data.player_ship[_local3][0] + _local2), Data.player_ship[_local3][1]);
_local3++;
};
_local1++;
};
}
public function dispFuel(_arg1:uint):void{
sp_fuel_bar.width = _arg1;
}
function mainLoop(_arg1:Event):void{
if (!main.enterframe_flg){
return;
};
if (cnt == 10){
sp_1p.visible = !(sp_1p.visible);
cnt = 0;
} else {
cnt++;
};
}
}
}//package
Section 28
//Se_1up (Se_1up)
package {
import flash.media.*;
public dynamic class Se_1up extends Sound {
}
}//package
Section 29
//Se_bom (Se_bom)
package {
import flash.media.*;
public dynamic class Se_bom extends Sound {
}
}//package
Section 30
//Se_break (Se_break)
package {
import flash.media.*;
public dynamic class Se_break extends Sound {
}
}//package
Section 31
//Se_breakPlayer (Se_breakPlayer)
package {
import flash.media.*;
public dynamic class Se_breakPlayer extends Sound {
}
}//package
Section 32
//Se_breakRock (Se_breakRock)
package {
import flash.media.*;
public dynamic class Se_breakRock extends Sound {
}
}//package
Section 33
//Se_count (Se_count)
package {
import flash.media.*;
public dynamic class Se_count extends Sound {
}
}//package
Section 34
//Se_count_end (Se_count_end)
package {
import flash.media.*;
public dynamic class Se_count_end extends Sound {
}
}//package
Section 35
//Se_empty (Se_empty)
package {
import flash.media.*;
public dynamic class Se_empty extends Sound {
}
}//package
Section 36
//Se_getFuel (Se_getFuel)
package {
import flash.media.*;
public dynamic class Se_getFuel extends Sound {
}
}//package
Section 37
//SoundBgm (SoundBgm)
package {
import flash.display.*;
import flash.events.*;
import flash.media.*;
public class SoundBgm {
const STOP:uint = 4;
const FADE_IN:uint = 1;
const FADE_OUT:uint = 2;
const PLAY:uint = 3;
public var bgm_obj:Sound;
public var bgm_channel:SoundChannel;
public var stat:uint;
var sp:Sprite;
public var bgm_trans:SoundTransform;
var my_num:uint;
public var v:Number;
var main:Object;
var pausePosition:int;
public function SoundBgm(_arg1:Object, _arg2:uint){
sp = new Sprite();
sp.addEventListener(Event.ENTER_FRAME, mainLoop);
my_num = _arg2;
stat = STOP;
main = _arg1;
}
function setFadeIn(){
stat = FADE_IN;
}
function setBgm(_arg1:uint){
switch (_arg1){
case 1:
bgm_obj = new Bgm_stg1();
break;
case 2:
bgm_obj = new Bgm_stg2();
break;
case 3:
bgm_obj = new Bgm_stg3();
break;
case 4:
bgm_obj = new Bgm_stg4();
break;
case 5:
bgm_obj = new Bgm_stg5();
break;
case 6:
bgm_obj = new Bgm_stg6();
break;
};
bgm_channel = bgm_obj.play(0, 100);
bgm_trans = bgm_channel.soundTransform;
bgm_trans.volume = 0;
bgm_channel.soundTransform = bgm_trans;
v = 0;
stat = FADE_IN;
}
function setStop(){
if (((!((bgm_channel == null))) && (!((stat == STOP))))){
bgm_channel.stop();
stat = STOP;
v = 0;
};
}
function setFadeOut(){
if (((!((bgm_channel == null))) && (!((stat == STOP))))){
stat = FADE_OUT;
};
}
function setPause(_arg1:Boolean):void{
if (((!((bgm_channel == null))) && (!((stat == STOP))))){
if (_arg1){
pausePosition = bgm_channel.position;
bgm_channel.stop();
} else {
bgm_channel = bgm_obj.play(0, 100);
};
};
}
function mainLoop(_arg1:Event):void{
if (!main.enterframe_flg){
return;
};
switch (stat){
case FADE_IN:
if (v < 1){
v = (v + 0.01);
if (v >= 1){
v = 1;
stat = PLAY;
};
bgm_trans.volume = v;
bgm_channel.soundTransform = bgm_trans;
};
break;
case FADE_OUT:
if (v > 0){
v = (v - 0.01);
if (v <= 0){
v = 0;
bgm_channel.stop();
stat = STOP;
};
bgm_trans.volume = v;
bgm_channel.soundTransform = bgm_trans;
};
break;
};
}
}
}//package
Section 38
//Star (Star)
package {
import flash.display.*;
import flash.events.*;
public class Star {
var a;
var container:DisplayObjectContainer;
var py:Number;
var delete_flg:Boolean;// = false
var px;
var main:Object;
var ad:Number;
var sp:Sprite;
public function Star(_arg1:Object, _arg2:DisplayObjectContainer){
var _local3:uint;
delete_flg = false;
super();
sp = new Sprite();
container = _arg2;
container.addChild(sp);
_local3 = (Math.random() * 0x666666);
sp.graphics.beginFill(_local3);
sp.graphics.lineStyle(0, _local3);
sp.graphics.drawRect(0, 0, 1, 1);
sp.x = getRandom(550);
sp.y = getRandom(400);
main = _arg1;
sp.addEventListener(Event.ENTER_FRAME, mainLoop);
a = Math.random();
ad = (Math.random() / 20);
}
public function getRandom(_arg1:uint):uint{
var _local2:uint;
_local2 = Math.floor((Math.random() * _arg1));
return (_local2);
}
function mainLoop(_arg1:Event):void{
a = (a + ad);
if ((((a >= 1)) || ((a <= 0)))){
ad = -(ad);
};
sp.alpha = a;
if (delete_flg){
deleteObj();
};
}
function deleteObj():void{
sp.removeEventListener(Event.ENTER_FRAME, mainLoop);
sp.graphics.clear();
container.removeChild(sp);
sp = null;
}
public function setDelete():void{
delete_flg = true;
}
}
}//package
Section 39
//Table (Table)
package {
import flash.display.*;
import flash.events.*;
public class Table extends LineString {
var sp_list:Array;
var stay_cnt:int;// = 0
var container:DisplayObjectContainer;
var sp_t:Sprite;
var run_mode:String;
var sp_if:Sprite;
var cnt:int;// = 0
var my_obj:Object;
var mask_sprite:Sprite;
var main:Object;
var sp_stars:Array;
public function Table(_arg1:Object, _arg2:DisplayObjectContainer){
var _local3:*;
var _local4:int;
var _local5:uint;
var _local6:uint;
var _local7:Sprite;
var _local8:int;
var _local9:int;
var _local10:int;
var _local11:uint;
var _local12:Star;
sp_list = new Array();
sp_stars = new Array();
my_obj = this;
cnt = 0;
stay_cnt = 0;
super();
trace("table");
main = _arg1;
container = _arg2;
sp_if = new Sprite();
_local6 = 100;
drawString(sp_if, "- SCORE TABLE -", 80, 30, 20, 10, 4, 0xFFFF00);
_local7 = new Sprite();
Data.drawEnemy(_local7, "rocket");
_local7.y = _local6;
sp_list.push(_local7);
_local7 = new Sprite();
Data.drawEnemy(_local7, "rocket");
_local7.y = (_local6 + 50);
sp_list.push(_local7);
_local7 = new Sprite();
Data.drawEnemy(_local7, "rocket_f");
_local7.y = (_local6 + 50);
sp_list.push(_local7);
_local7 = new Sprite();
Data.drawEnemy(_local7, "ufo");
_local7.y = (_local6 + 80);
sp_list.push(_local7);
_local7 = new Sprite();
Data.drawEnemy(_local7, "fuel");
_local7.y = (_local6 + 150);
sp_list.push(_local7);
_local7 = new Sprite();
Data.drawEnemy(_local7, "core");
_local7.y = (_local6 + 185);
sp_list.push(_local7);
_local7 = new Sprite();
Data.drawEnemy(_local7, "tank");
_local7.y = (_local6 + 250);
sp_list.push(_local7);
_local3 = 0;
while (_local3 < sp_list.length) {
sp_list[_local3].x = 170;
container.addChild(sp_list[_local3]);
_local3++;
};
_local8 = 220;
_local9 = 80;
_local10 = 50;
_local11 = 0xFFFFFF;
drawString(sp_if, "・・・ 50 PTS", _local8, _local9, 10, 10, 4, _local11);
drawString(sp_if, "・・・ 80 PTS", _local8, (_local9 + (_local10 * 1)), 10, 10, 4, _local11);
drawString(sp_if, "・・・ 100 PTS", _local8, (_local9 + (_local10 * 2)), 10, 10, 4, _local11);
drawString(sp_if, "・・・ 150 PTS", _local8, (_local9 + (_local10 * 3)), 10, 10, 4, _local11);
drawString(sp_if, "・・・ 800 PTS", _local8, (_local9 + (_local10 * 4)), 10, 10, 4, _local11);
drawString(sp_if, "・・・ MISTERY", _local8, (_local9 + (_local10 * 5)), 10, 10, 4, _local11);
_local3 = 0;
while (_local3 < 200) {
_local12 = new Star(main, container);
sp_stars.push(_local12);
_local3++;
};
sp_t = new Sprite();
container.addChild(sp_if);
container.addChild(sp_t);
sp_t.addEventListener(Event.ENTER_FRAME, mainLoop);
sp_t.stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
}
function keyDownHandler(_arg1:KeyboardEvent):void{
stay_cnt = 180;
}
public function deleteObj():void{
var _local1:int;
sp_if.graphics.clear();
container.removeChild(sp_if);
sp_if = null;
sp_t.graphics.clear();
sp_t.removeEventListener(Event.ENTER_FRAME, mainLoop);
sp_t.stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
container.removeChild(sp_t);
sp_t = null;
_local1 = 0;
while (_local1 < sp_list.length) {
sp_list[_local1].graphics.clear();
container.removeChild(sp_list[_local1]);
sp_list[_local1] = null;
_local1++;
};
_local1 = 0;
while (_local1 < sp_stars.length) {
sp_stars[_local1].setDelete();
_local1++;
};
my_obj = null;
}
public function getRandom(_arg1:uint):uint{
var _local2:uint;
_local2 = Math.floor((Math.random() * _arg1));
return (_local2);
}
function mainLoop(_arg1:Event):void{
if (!main.enterframe_flg){
return;
};
if (stay_cnt >= 180){
main.setDemo();
deleteObj();
} else {
stay_cnt++;
};
}
}
}//package
Section 40
//Title (Title)
package {
import flash.display.*;
import flash.events.*;
public class Title extends LineString {
var my_obj:Object;
var cnt:int;// = 0
var container:DisplayObjectContainer;
var main:Object;
var sp:Sprite;
var sp_fade:Sprite;
var sp_stars:Array;
public function Title(_arg1:Object, _arg2:DisplayObjectContainer){
var _local3:int;
var _local4:uint;
var _local5:uint;
var _local6:uint;
var _local7:Star;
cnt = 0;
sp_stars = new Array();
super();
main = _arg1;
container = _arg2;
sp = new Sprite();
container.addChild(sp);
_local3 = 0;
while (_local3 < 200) {
_local7 = new Star(main, container);
sp_stars.push(_local7);
_local3++;
};
drawString(sp, "--THE HISTORY OF THE SHOOTING GAMES--", 15, 10, 10, 10, 4, 0xFF00FF);
drawString(sp, "PLAY", 250, 80, 10, 10, 4, 0xFFFF00);
drawString(sp, "-SCRXXX AS3-", 120, 110, 20, 10, 4, 0xFFFF);
drawString(sp, "HOW FAR CAN YOU INVADE", 120, 180, 10, 10, 4, 0xAA0000);
drawString(sp, "SCRAMBLE SYSTEM?", 170, 210, 10, 10, 4, 0xAA0000);
_local4 = 0xCC00;
_local5 = 280;
_local6 = 120;
drawString(sp, "CONTROL [CURSOR KEY]", _local6, _local5, 10, 10, 4, _local4);
drawString(sp, "SHOT [ Z KEY ]", _local6, (_local5 + 20), 10, 10, 4, _local4);
drawString(sp, "BOM [ X KEY ]", _local6, (_local5 + 40), 10, 10, 4, _local4);
drawString(sp, "SHOT & BOM [ A KEY ]", _local6, (_local5 + 60), 10, 10, 4, _local4);
drawString(sp, "[C] 2007 NEKOGAMES", 140, 380, 10, 10, 4, 0xFFFFFF);
sp.stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
sp_fade = new Sprite();
_arg2.addChild(sp_fade);
sp_fade.graphics.lineStyle(0, 0);
sp_fade.graphics.beginFill(0);
sp_fade.graphics.drawRect(0, 0, 550, 400);
sp_fade.addEventListener(Event.ENTER_FRAME, mainLoop);
sp_fade.alpha = 1;
}
function mainLoop(_arg1:Event):void{
var _local2:Ranking;
if (!main.enterframe_flg){
return;
};
sp_fade.alpha = (sp_fade.alpha - 0.05);
if (sp_fade.alpha <= 0){
sp_fade.alpha = 0;
};
if (cnt >= 180){
_local2 = new Ranking(main, container, main.highscore_list, -1, "title");
deleteObj();
} else {
cnt++;
};
}
function keyDownHandler(_arg1:KeyboardEvent):void{
if (sp_fade.alpha <= 0){
deleteObj();
main.gameStart(0);
};
}
public function deleteObj():void{
var _local1:int;
_local1 = 0;
while (_local1 < sp_stars.length) {
sp_stars[_local1].setDelete();
_local1++;
};
sp.graphics.clear();
sp.stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
container.removeChild(sp);
sp = null;
sp_fade.graphics.clear();
sp_fade.removeEventListener(Event.ENTER_FRAME, mainLoop);
container.removeChild(sp_fade);
sp_fade = null;
my_obj = null;
}
}
}//package