Frame 2
if (this.getBytesTotal() <= this.getBytesLoaded()) {
this.gotoAndPlay(11);
}
Frame 3
LoadingBar._visible = false;
this.onEnterFrame = function () {
var _local2 = this.getBytesTotal();
var _local4 = this.getBytesLoaded();
this.LoadingBar.Bar._xscale = (_local4 * 100) / _local2;
this.LoadingBar._visible = true;
if (_local2 <= _local4) {
var _local3;
_local3 = new Sound();
_local3.setVolume(0);
this.LoadingBar._visible = false;
this.gotoAndPlay(11);
delete this.onEnterFrame;
}
};
stop();
Frame 11
var snd;
snd = new Sound();
snd.stop();
snd.setVolume(100);
delete snd;
Frame 13
var app = (new jp.bambooshootdesign.app.thundervector.ThunderVector());
app.init();
var gm = jp.bambooshootdesign.app.thundervector.sys.SysInfo.__get__GameMode();
gm.setRankingMode();
this.onEnterFrame = function () {
app.move();
};
fscommand ("showmenu ", false);
stop();
Symbol 1236 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.ThunderVector] Frame 0
class jp.bambooshootdesign.app.thundervector.ThunderVector
{
var m_mode, m_flowObject;
function ThunderVector () {
m_mode = "";
}
function init() {
var _local2;
jp.bambooshootdesign.util.MovieClipFactory.init();
jp.bambooshootdesign.util.MovieClipFactory.append(_root, jp.bambooshootdesign.app.thundervector.sys.Screen.OT_TOP_NUM);
_local2 = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_GAME, "NoMaskMC", "MASK");
jp.bambooshootdesign.util.MovieClipFactory.append(_local2.dummy, jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SCREEN_NUM);
_local2._visible = true;
_local2 = jp.bambooshootdesign.util.MovieClipFactory.get(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SCREEN);
jp.bambooshootdesign.util.MovieClipFactory.append(_local2, jp.bambooshootdesign.app.thundervector.sys.Screen.OT_GAME_NUM);
jp.bambooshootdesign.util.MovieClipFactory.reset();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.initFirst();
}
function move() {
var _local2;
var _local3;
_local2 = m_mode;
do {
_local3 = false;
switch (_local2) {
case "" :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.initFirst();
_local2 = "SW_Logo";
_local3 = true;
break;
case "SW_Logo" :
m_flowObject = new jp.bambooshootdesign.app.thundervector.flow.PublisherLogo();
_local2 = "SW_Logo_Loop";
_local3 = true;
break;
case "SW_Logo_Loop" :
if (m_flowObject.move()) {
m_flowObject.destroy();
_local2 = "BAMBOO_Logo";
}
break;
case "BAMBOO_Logo" :
m_flowObject = new jp.bambooshootdesign.app.thundervector.flow.MakerLogo();
_local2 = "BAMBOO_Logo_Loop";
_local3 = true;
break;
case "BAMBOO_Logo_Loop" :
if (m_flowObject.move()) {
m_flowObject.destroy();
_local2 = "Title";
}
break;
case "Title" :
m_flowObject = new jp.bambooshootdesign.app.thundervector.flow.Title();
_local2 = "Title_Loop";
_local3 = true;
break;
case "Title_Loop" :
if (m_flowObject.move()) {
if (m_flowObject.getResult() == "continue") {
_local2 = "InitContinue";
} else {
_local2 = "InitLoop";
}
m_flowObject.destroy();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.initGame();
}
break;
case "InitLoop" :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.initGameLoop();
_local2 = "StageMovie";
_local3 = true;
break;
case "InitContinue" :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.continueGameLoop();
_local2 = "StageMovie";
_local3 = true;
break;
case "StageMovie" :
m_flowObject = new jp.bambooshootdesign.app.thundervector.flow.StageMovie();
_local2 = "StageMovie_Loop";
_local3 = true;
break;
case "StageMovie_Loop" :
if (m_flowObject.move()) {
if (jp.bambooshootdesign.app.thundervector.sys.SysInfo.getStageNum() == 4) {
_local2 = "GameClear";
} else {
_local2 = "GameMain";
}
m_flowObject.destroy();
}
break;
case "GameMain" :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.initStage();
m_flowObject = new jp.bambooshootdesign.app.thundervector.flow.GameMain();
_local2 = "GameMain_Loop";
_local3 = true;
break;
case "GameMain_Loop" :
if (m_flowObject.move()) {
var _local4;
switch (m_flowObject.getResult()) {
case "Next" :
_local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getStageNum();
if (_local4 < 3) {
_local2 = "StageMovie";
jp.bambooshootdesign.app.thundervector.sys.SysInfo.clearStage();
} else if (_local4 == 3) {
_local2 = "GameMain";
jp.bambooshootdesign.app.thundervector.sys.SysInfo.clearStage();
} else {
_local2 = "StageMovie";
}
break;
case "GameOver" :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.gameOver();
_local2 = "GameOver";
break;
case "End" :
_local2 = "Title";
}
m_flowObject.destroy();
}
break;
case "GameOver" :
m_flowObject = new jp.bambooshootdesign.app.thundervector.flow.GameOver();
_local2 = "GameOver_Loop";
_local3 = true;
break;
case "GameOver_Loop" :
if (m_flowObject.move()) {
_local2 = "Title";
m_flowObject.destroy();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.endGame();
}
break;
case "GameClear" :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.clearStageLast();
m_flowObject = new jp.bambooshootdesign.app.thundervector.flow.GameClear();
_local2 = "GameClear_Loop";
_local3 = true;
break;
case "GameClear_Loop" :
if (!m_flowObject.move()) {
break;
}
_local2 = "InitLoop";
m_flowObject.destroy();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.incLoop();
}
} while (_local3);
m_mode = _local2;
}
}
Symbol 1237 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.flow.Flow] Frame 0
class jp.bambooshootdesign.app.thundervector.flow.Flow
{
var m_result;
function Flow () {
m_result = "";
}
function move() {
return(false);
}
function destroy() {
}
function getResult() {
return(m_result);
}
function event(id) {
}
}
Symbol 1238 MovieClip [__Packages.jp.bambooshootdesign.util.MovieClipFactory] Frame 0
class jp.bambooshootdesign.util.MovieClipFactory
{
static var m_idx, m_depthList, m_mcList;
function MovieClipFactory () {
}
static function init() {
m_idx = 0;
m_depthList = [];
m_mcList = [];
}
static function append(mc, idx) {
var _local1 = 0;
while (_local1 < idx) {
mc.createEmptyMovieClip("mcf" + _local1, _local1);
m_mcList.push(mc["mcf" + _local1]);
m_depthList.push(0);
_local1++;
}
m_idx = m_idx + idx;
}
static function reset() {
var _local1 = 0;
while (_local1 < m_idx) {
m_depthList[_local1] = 0;
_local1++;
}
}
static function get(mcidx) {
return(m_mcList[mcidx]);
}
static function create(mcidx, idname, name) {
var _local2;
var _local4;
if (name == undefined) {
name = "mcfo";
}
_local4 = m_depthList[mcidx];
name = name + _local4;
m_mcList[mcidx].attachMovie(idname, name, _local4);
_local2 = m_mcList[mcidx][name];
_local2._visible = false;
if (_local2 == undefined) {
trace((("MovieClipFactory.create error: " + mcidx) + ":") + idname);
}
m_depthList[mcidx]++;
return(_local2);
}
}
Symbol 1239 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.sys.Screen] Frame 0
class jp.bambooshootdesign.app.thundervector.sys.Screen
{
function Screen () {
}
static var WIDTH = 640;
static var HEIGHT = 480;
static var GAME_WIDTH = 740;
static var GAME_HEIGHT = 480;
static var GAME_SLIDE_WIDTH = 100;
static var OT_GAME = 0;
static var OT_SYSTEM = 1;
static var OT_UTIL = 2;
static var OT_TOP_NUM = 3;
static var OT_SCREEN = 3;
static var OT_SCREEN_NUM = 1;
static var OT_BACKGROUND = 4;
static var OT_BGSTAR = 5;
static var OT_BGBACK = 5;
static var OT_ENEMY = 6;
static var OT_BGFRONT = 7;
static var OT_BULLET = 8;
static var OT_PLAYER = 9;
static var OT_GAME_NUM = 6;
}
Symbol 1240 MovieClip [__Packages.jp.bambooshootdesign.sys.WorkList] Frame 0
class jp.bambooshootdesign.sys.WorkList
{
var m_list;
function WorkList () {
m_list = new jp.bambooshootdesign.util.List();
}
function append(obj) {
return(m_list.push(obj));
}
function cut(obj) {
obj.cut();
}
function callMove() {
var _local2 = m_list.getFirst();
var _local4 = [];
var _local3;
while (!m_list.isLast(_local2)) {
if (!_local2.m_data.move()) {
_local4.push(_local2);
}
_local2 = _local2.m_next;
}
_local3 = _local4.length - 1;
while (_local3 >= 0) {
_local4[_local3].m_data.destroy();
_local3--;
}
}
function callCtrlAndDisp() {
var _local2 = m_list.getFirst();
var _local4 = [];
var _local3;
while (!m_list.isLast(_local2)) {
if (!_local2.m_data.ctrlAndDisp()) {
_local4.push(_local2);
}
_local2 = _local2.m_next;
}
_local3 = _local4.length - 1;
while (_local3 >= 0) {
_local4[_local3].m_data.destroy();
_local3--;
}
}
function callDisp() {
var _local2 = m_list.getFirst();
while (!m_list.isLast(_local2)) {
_local2.m_data.disp();
_local2 = _local2.m_next;
}
}
function callDestroy() {
var _local2 = m_list.getFirst();
while (!m_list.isLast(_local2)) {
_local2.m_data.destroy();
_local2 = m_list.getFirst();
}
}
}
Symbol 1241 MovieClip [__Packages.jp.bambooshootdesign.util.List] Frame 0
class jp.bambooshootdesign.util.List
{
var m_top, m_last;
function List () {
m_top = new jp.bambooshootdesign.util.ListItem(undefined);
m_last = new jp.bambooshootdesign.util.ListItem(undefined);
m_top.m_next = m_last;
m_last.m_prev = m_top;
}
function push(data) {
var _local3;
var _local2;
_local2 = new jp.bambooshootdesign.util.ListItem(data);
_local3 = m_last.m_prev;
m_last.m_prev = _local2;
_local3.m_next = _local2;
_local2.m_prev = _local3;
_local2.m_next = m_last;
return(_local2);
}
function pop() {
var _local2;
var _local3;
_local2 = m_last.m_prev;
_local2.m_prev.m_next = m_last;
m_last.m_prev = _local2.m_prev;
_local3 = _local2.get();
return(_local3);
}
function unshift(data) {
var _local3;
var _local2;
_local2 = new jp.bambooshootdesign.util.ListItem(data);
_local3 = m_top.m_next;
m_top.m_next = _local2;
_local3.m_prev = _local2;
_local2.m_prev = m_top;
_local2.m_next = _local3;
return(_local2);
}
function shift() {
var _local2;
var _local3;
_local2 = m_top.m_next;
_local2.m_next.m_prev = m_top;
m_top.m_next = _local2.m_next;
_local3 = _local2.get();
return(_local3);
}
function cut(data) {
data.cut();
}
function getFirst() {
return(m_top.m_next);
}
function isLast(data) {
return(data == m_last);
}
}
Symbol 1242 MovieClip [__Packages.jp.bambooshootdesign.util.ListItem] Frame 0
class jp.bambooshootdesign.util.ListItem
{
var m_prev, m_next, m_data;
function ListItem (data) {
m_prev = undefined;
m_next = undefined;
m_data = data;
}
function get() {
return(m_data);
}
function cut() {
m_prev.m_next = m_next;
m_next.m_prev = m_prev;
}
}
Symbol 1243 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.sys.Player] Frame 0
class jp.bambooshootdesign.app.thundervector.sys.Player
{
var m_bulletNormalLevel, m_bulletLaserLevel, m_bulletType, m_force, m_x, m_y, m_slope, m_hitTime, m_hit, m_maxDamage, m_boostSpeed, m_boostCount, m_boostGage, m_boostMode, m_boostMaxCount, m_screenScale, m_bulletTime, m_laser, m_isBomb, m_bombCount, m_lock, m_action, m_actionCount, m_mc;
function Player () {
}
function initParam() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.__set__PlayerWeaponNormalLevel(0);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.__set__PlayerWeaponLaserLevel(0);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.__set__PlayerWeaponType(BT_NORMAL);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.__set__PlayerForce(FORCE_MAX);
}
function saveParam() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.__set__PlayerWeaponNormalLevel(m_bulletNormalLevel);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.__set__PlayerWeaponLaserLevel(m_bulletLaserLevel);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.__set__PlayerWeaponType(m_bulletType);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.__set__PlayerForce(m_force);
}
function init() {
m_x = 0;
m_y = 0;
m_slope = 0;
m_force = jp.bambooshootdesign.app.thundervector.sys.SysInfo.PlayerForce;
m_hitTime = 0;
m_hit = false;
m_maxDamage = 0;
m_boostSpeed = 1000;
m_boostCount = 0;
m_boostGage = BOOST_MAX;
m_boostMode = BOOST_NONE;
m_boostMaxCount = 0;
m_screenScale = 100;
m_bulletType = jp.bambooshootdesign.app.thundervector.sys.SysInfo.PlayerWeaponType;
m_bulletNormalLevel = jp.bambooshootdesign.app.thundervector.sys.SysInfo.PlayerWeaponNormalLevel;
m_bulletLaserLevel = jp.bambooshootdesign.app.thundervector.sys.SysInfo.PlayerWeaponLaserLevel;
m_bulletTime = 0;
m_laser = undefined;
m_isBomb = false;
m_bombCount = 0;
m_lock = true;
m_action = -1;
m_actionCount = 0;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_PLAYER, "Player", "PC");
m_mc.Booster._visible = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getStageNum() == 1;
}
function move() {
var _local2;
if (m_action >= 0) {
action();
return(undefined);
}
_local2 = getKeyCode();
if ((_local2 & LEFT) != 0) {
m_x = m_x - 10;
if (m_x < 0) {
m_x = 0;
}
if (m_slope > 0) {
m_slope = m_slope - 300;
} else {
m_slope = m_slope - 100;
}
if (m_slope < -1000) {
m_slope = -1000;
}
}
if ((_local2 & RIGHT) != 0) {
m_x = m_x + 10;
if (m_x > jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH) {
m_x = jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH;
}
if (m_slope < 0) {
m_slope = m_slope + 300;
} else {
m_slope = m_slope + 100;
}
if (m_slope > 1000) {
m_slope = 1000;
}
}
if (((_local2 & LEFT) == 0) && ((_local2 & RIGHT) == 0)) {
if (m_slope > 0) {
m_slope = m_slope - 50;
if (m_slope < 0) {
m_slope = 0;
}
} else if (m_slope < 0) {
m_slope = m_slope + 50;
if (m_slope > 0) {
m_slope = 0;
}
}
}
if ((_local2 & UP) != 0) {
fastBoost();
}
if ((_local2 & DOWN) != 0) {
slowBoost();
}
updateSpeed();
updateBomb((_local2 & BOMB) != 0);
updateBullet((_local2 & BULLET) != 0);
m_hit = false;
m_maxDamage = 0;
if (m_hitTime > 0) {
m_hitTime--;
}
if (m_boostMaxCount > 0) {
m_boostMaxCount--;
}
}
function hit(hp) {
if (m_maxDamage < hp) {
m_maxDamage = hp;
}
}
function ctrl() {
if (m_action < 0) {
if (m_maxDamage > 0) {
m_force = m_force - m_maxDamage;
if (m_force <= 0) {
m_force = 0;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.stop();
if (m_laser != undefined) {
m_laser.cancel();
m_laser = undefined;
}
setAction("Destroy");
} else {
m_hitTime = DEFENSE_TIME;
m_hit = true;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Defense");
}
}
}
}
function disp() {
var _local5;
_local5 = Math.floor(16 + ((m_slope * 15) / 1000));
m_mc.Player.gotoAndStop(_local5);
m_mc.Booster.gotoAndStop(_local5);
if (m_hitTime > 0) {
m_mc.Force.gotoAndStop((DEFENSE_TIME - m_hitTime) + 2);
m_mc.Force._visible = true;
} else {
m_mc.Force._visible = false;
}
if (m_boostMaxCount > 0) {
m_mc.BoostMax.gotoAndStop((BOOSTMAX_TIME - m_boostMaxCount) + 2);
m_mc.BoostMax._visible = true;
} else {
m_mc.BoostMax._visible = false;
}
var _local6;
_local6 = (m_x / jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH) * jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_SLIDE_WIDTH;
if (m_boostMode == BOOST_NONE) {
m_mc.BoostEffect._visible = false;
var _local4 = jp.bambooshootdesign.util.MovieClipFactory.get(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SCREEN);
_local4._x = -_local6;
_local4._y = 0;
_local4._xscale = (_local4._yscale = 100);
} else {
var _local4 = jp.bambooshootdesign.util.MovieClipFactory.get(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SCREEN);
var _local3;
var _local2;
var _local7;
if (m_boostCount < BOOST_START_TIME) {
_local3 = (40 / BOOST_ACCEL_TIME) * m_boostCount;
} else if (m_boostCount < BOOST_ACTION_TIME) {
_local3 = 40;
} else if (m_boostCount < BOOST_END_TIME) {
_local3 = ((BOOST_END_TIME - m_boostCount) / BOOST_ACCEL_TIME) * 40;
} else {
_local3 = 0;
}
if (m_boostMode == BOOST_FAST) {
_local2 = 100 - (_local3 / 5);
_local7 = 0;
} else if (m_boostMode == BOOST_SLOW) {
_local2 = 100 + (_local3 / 5);
_local7 = 180;
}
_local4._xscale = (_local4._yscale = _local2);
_local4._y = (m_y * (100 - _local2)) / 100;
_local4._x = (((1 + ((m_x - (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH / 2)) / (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH / 2))) * ((jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH * (100 - _local2)) / 100)) / 2) - ((_local6 * _local2) / 100);
m_screenScale = _local2;
if (m_boostCount == 1) {
m_mc.BoostEffect.gotoAndPlay(2);
m_mc.BoostEffect._rotation = _local7;
}
m_mc.BoostEffect._visible = true;
m_mc.BoostEffect.gotoAndStop(1 + m_boostCount);
}
m_mc._x = m_x;
m_mc._y = m_y;
}
function destroy() {
m_mc.removeMovieClip();
}
function setPosition(x, y) {
m_x = x;
m_y = y;
}
function getPosition() {
return({x:m_x, y:m_y});
}
function getHP() {
return(m_force);
}
function isActive() {
return((m_hitTime == 0) && (m_force > 0));
}
function isAlive() {
return(m_force > 0);
}
function fastBoost() {
if ((m_boostMode == BOOST_NONE) && (m_boostGage == BOOST_MAX)) {
m_boostCount = 0;
m_boostMode = BOOST_FAST;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MyBoost");
} else if (m_boostMode == BOOST_SLOW) {
if (m_boostCount < BOOST_START_TIME) {
m_boostCount = BOOST_END_TIME - m_boostCount;
} else if (m_boostCount < BOOST_ACTION_TIME) {
m_boostCount = BOOST_ACTION_TIME;
}
}
}
function slowBoost() {
if ((m_boostMode == BOOST_NONE) && (m_boostGage == BOOST_MAX)) {
m_boostCount = 0;
m_boostMode = BOOST_SLOW;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MyBoost");
} else if (m_boostMode == BOOST_FAST) {
if (m_boostCount < BOOST_START_TIME) {
m_boostCount = BOOST_END_TIME - m_boostCount;
} else if (m_boostCount < BOOST_ACTION_TIME) {
m_boostCount = BOOST_ACTION_TIME;
}
}
}
function updateSpeed() {
if (m_boostMode != BOOST_NONE) {
if (m_boostCount < BOOST_START_TIME) {
if (m_boostMode == BOOST_FAST) {
m_boostSpeed = BOOST_NORMAL_SPEED + ((BOOST_FAST_SPEED / BOOST_ACCEL_TIME) * m_boostCount);
} else if (m_boostMode == BOOST_SLOW) {
m_boostSpeed = BOOST_NORMAL_SPEED + ((BOOST_SLOW_SPEED / BOOST_ACCEL_TIME) * m_boostCount);
}
} else if (m_boostCount < BOOST_ACTION_TIME) {
if (m_boostMode == BOOST_FAST) {
m_boostSpeed = BOOST_NORMAL_SPEED + BOOST_FAST_SPEED;
} else if (m_boostMode == BOOST_SLOW) {
m_boostSpeed = BOOST_NORMAL_SPEED + BOOST_SLOW_SPEED;
}
} else if (m_boostCount < BOOST_END_TIME) {
var _local2 = BOOST_END_TIME - m_boostCount;
if (m_boostMode == BOOST_FAST) {
m_boostSpeed = BOOST_NORMAL_SPEED + ((BOOST_FAST_SPEED * _local2) / BOOST_ACCEL_TIME);
} else if (m_boostMode == BOOST_SLOW) {
m_boostSpeed = BOOST_NORMAL_SPEED + ((BOOST_SLOW_SPEED * _local2) / BOOST_ACCEL_TIME);
}
} else {
m_boostSpeed = BOOST_NORMAL_SPEED;
m_boostGage = 0;
m_boostMode = BOOST_NONE;
}
m_boostCount++;
} else if (m_boostGage < BOOST_MAX) {
m_boostGage = m_boostGage + BOOST_INC;
if (m_boostGage >= BOOST_MAX) {
m_boostGage = BOOST_MAX;
m_boostMaxCount = BOOSTMAX_TIME;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("BoostMax");
}
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.updateSpeed();
}
function clearBoost() {
m_boostGage = 0;
m_boostMode = BOOST_NONE;
m_boostSpeed = 1000;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.updateSpeed();
}
function calcSpeed(spd) {
return((spd * m_boostSpeed) / 1000);
}
function getBoost() {
return(m_boostGage);
}
function getScale() {
return(m_screenScale);
}
function isBoost() {
return(m_boostMode != BOOST_NONE);
}
function getBoostPercent() {
return((m_boostCount / BOOST_END_TIME) * 100);
}
function updateBomb(isBomb) {
if (m_isBomb) {
m_bombCount = m_bombCount - jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate();
if (m_bombCount <= 0) {
m_isBomb = false;
}
} else if ((m_force > FORCE_BOMB) && (isBomb)) {
m_force = m_force - FORCE_BOMB;
m_bombCount = BT_BOMB_TIME;
m_isBomb = true;
new jp.bambooshootdesign.app.thundervector.enemy.PlayerBomb(BT_BOMB_TIME, 4);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Bomb");
}
}
function isBomb() {
return(m_isBomb);
}
function updateBullet(isShoot) {
if (isShoot && (!m_isBomb)) {
if (m_bulletType == BT_NORMAL) {
if (m_bulletTime <= 0) {
if (m_bulletNormalLevel == 0) {
new jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(90), BT_NORMAL_SPEED, 20);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MyShot");
} else if (m_bulletNormalLevel == 1) {
new jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet(m_x - 6, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(90), BT_NORMAL_SPEED, 15);
new jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet(m_x + 6, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(90), BT_NORMAL_SPEED, 15);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MyShot");
} else if (m_bulletNormalLevel == 2) {
new jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(90), BT_NORMAL_SPEED, 20);
new jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(80), BT_NORMAL_SPEED, 10);
new jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(100), BT_NORMAL_SPEED, 10);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MyShot");
} else if (m_bulletNormalLevel == 3) {
new jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet(m_x - 6, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(90), BT_NORMAL_SPEED, 15);
new jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet(m_x + 6, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(90), BT_NORMAL_SPEED, 15);
new jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(80), BT_NORMAL_SPEED, 10);
new jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(100), BT_NORMAL_SPEED, 10);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MyShot");
} else if (m_bulletNormalLevel == 4) {
new jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(90), BT_NORMAL_SPEED, 20);
new jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(80), BT_NORMAL_SPEED, 15);
new jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(100), BT_NORMAL_SPEED, 15);
new jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(70), BT_NORMAL_SPEED, 10);
new jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(110), BT_NORMAL_SPEED, 10);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MyShot");
}
m_bulletTime = BT_NORMAL_WAIT;
}
} else if (m_bulletType == BT_LASER) {
if (m_bulletTime <= 0) {
if (m_bulletLaserLevel == 0) {
m_laser = new jp.bambooshootdesign.app.thundervector.enemy.PlayerLaserBullet(1, 8, BT_LASER_CHARGE_TIME, BT_LASER_TOTAL_TIME);
} else if (m_bulletLaserLevel == 1) {
m_laser = new jp.bambooshootdesign.app.thundervector.enemy.PlayerLaserBullet(2, 12, BT_LASER_CHARGE_TIME, BT_LASER_TOTAL_TIME);
} else if (m_bulletLaserLevel == 2) {
m_laser = new jp.bambooshootdesign.app.thundervector.enemy.PlayerLaserBullet(3, 16, BT_LASER_CHARGE_TIME, BT_LASER_TOTAL_TIME);
} else if (m_bulletLaserLevel == 3) {
m_laser = new jp.bambooshootdesign.app.thundervector.enemy.PlayerLaserBullet(4, 20, BT_LASER_CHARGE_TIME, BT_LASER_TOTAL_TIME);
} else if (m_bulletLaserLevel == 4) {
m_laser = new jp.bambooshootdesign.app.thundervector.enemy.PlayerLaserBullet(5, 24, BT_LASER_CHARGE_TIME, BT_LASER_TOTAL_TIME);
}
m_bulletTime = BT_LASER_WAIT;
}
}
}
m_bulletTime = m_bulletTime - jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate();
}
function detach() {
m_laser = undefined;
}
function getWeaponType() {
return(m_bulletType);
}
function getWeaponLevel() {
if (m_bulletType == BT_NORMAL) {
return(m_bulletNormalLevel);
}
if (m_bulletType == BT_LASER) {
return(m_bulletLaserLevel);
}
return(0);
}
function getPowerUpItem(type) {
switch (type) {
case jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL :
if (m_bulletType == BT_NORMAL) {
if (m_bulletNormalLevel < BT_LEVEL_MAX) {
m_bulletNormalLevel++;
}
} else {
if (m_laser != undefined) {
m_laser.cancel();
m_laser = undefined;
}
m_bulletType = BT_NORMAL;
m_bulletTime = BT_NORMAL_WAIT;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(1000);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("PowerUp");
break;
case jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER :
if (m_bulletType == BT_LASER) {
if (m_bulletLaserLevel < BT_LEVEL_MAX) {
m_bulletLaserLevel++;
}
} else {
m_bulletType = BT_LASER;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(1000);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("PowerUp");
break;
case jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_FORCE :
m_force = m_force + FORCE_RECOVER;
if (m_force > FORCE_MAX) {
m_force = FORCE_MAX;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Recovery");
break;
case jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BOOST :
m_boostGage = BOOST_MAX;
m_boostMaxCount = BOOSTMAX_TIME;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("BoostMax");
}
}
function getScoreItem(type) {
switch (type) {
case jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100 :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(100);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("ScoreItem");
break;
case jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000 :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(1000);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("ScoreItem");
break;
case jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_10000 :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10000);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("ScoreItem");
}
}
function setAction(act) {
switch (act) {
case "Lock" :
m_lock = true;
break;
case "Unlock" :
m_lock = false;
break;
case "Come" :
m_action = ACTION_COME;
m_actionCount = 0;
break;
case "Leave" :
m_action = ACTION_LEAVE;
m_actionCount = 0;
break;
case "Destroy" :
m_action = ACTION_DESTROY;
m_actionCount = 0;
break;
case "Show" :
m_mc._visible = true;
break;
case "Hide" :
m_mc._visible = false;
}
}
function action() {
switch (m_action) {
case ACTION_DESTROY :
destroyAction();
break;
case ACTION_LEAVE :
leaveAction();
break;
case ACTION_COME :
comeAction();
}
}
function isLock() {
return(m_lock || (m_action >= 0));
}
function comeAction() {
var _local2;
var _local3;
if (m_actionCount == 0) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Fly");
}
m_actionCount = m_actionCount + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate();
if (m_actionCount > 2000) {
m_actionCount = 2000;
}
_local2 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle((m_actionCount * 180) / 2000);
m_x = (((Math.cos(_local2) + 1) * 100) * ((2000 - m_actionCount) / 2000)) + 370;
m_y = (((-Math.sin(_local2)) * 200) * ((2000 - m_actionCount) / 2000)) + 440;
m_mc._xscale = (m_mc._yscale = 100 + (((2000 - m_actionCount) * 100) / 2000));
m_slope = ((2000 - m_actionCount) * -1000) / 2000;
if (m_actionCount >= 2000) {
m_action = -1;
}
}
function leaveAction() {
var _local2;
if (m_actionCount == 0) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Fly");
}
m_actionCount = m_actionCount + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate();
_local2 = m_actionCount / 1000;
m_y = 440 - (((400 * _local2) * _local2) / 2);
if (m_y < -100) {
m_y = -100;
}
}
function destroyAction() {
if ((m_actionCount % EXPLOSION_SPAN) == 0) {
new jp.bambooshootdesign.app.thundervector.enemy.ExplosionPlayer((m_x + (Math.random() * 32)) - 16, (m_y + (Math.random() * 32)) - 16, 10);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
}
if (m_actionCount == EXPLOSION_TIME) {
new jp.bambooshootdesign.app.thundervector.enemy.Fade({start:0, end:100, fadeTime:500, time:2000}, 0);
}
if (m_actionCount == EXPLOSION_TIME2) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event({event:{id:"GameOver"}}, undefined);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.stopAll();
}
m_actionCount++;
}
function getKeyCode() {
var _local2 = 0;
if (!m_lock) {
if (Key.isDown(37)) {
_local2 = _local2 | LEFT;
}
if (Key.isDown(39)) {
_local2 = _local2 | RIGHT;
}
if (Key.isDown(38)) {
_local2 = _local2 | UP;
}
if (Key.isDown(40)) {
_local2 = _local2 | DOWN;
}
if (Key.isDown(32)) {
_local2 = _local2 | BULLET;
}
if (Key.isDown(90)) {
_local2 = _local2 | BOMB;
}
}
if (jp.bambooshootdesign.app.thundervector.sys.SysInfo.Debug.isActive()) {
if (Key.isDown(96)) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.setLevel(0);
}
if (Key.isDown(97)) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.setLevel(1);
}
if (Key.isDown(98)) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.setLevel(2);
}
if (Key.isDown(99)) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.setLevel(3);
}
if (Key.isDown(100)) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.setLevel(4);
}
if (Key.isDown(101)) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.setLevel(5);
}
if (Key.isDown(102)) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.setLevel(6);
}
if (Key.isDown(103)) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.setLevel(7);
}
if (Key.isDown(104)) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.setLevel(8);
}
if (Key.isDown(105)) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.setLevel(9);
}
if (Key.isDown(80)) {
if (m_bulletType == BT_NORMAL) {
m_bulletNormalLevel = m_bulletNormalLevel + ((m_bulletNormalLevel >= 4) ? 0 : 1);
} else {
m_bulletLaserLevel = m_bulletLaserLevel + ((m_bulletLaserLevel >= 4) ? 0 : 1);
}
}
if (Key.isDown(68)) {
if (m_bulletType == BT_NORMAL) {
m_bulletNormalLevel = m_bulletNormalLevel - ((m_bulletNormalLevel <= 0) ? 0 : 1);
} else {
m_bulletLaserLevel = m_bulletLaserLevel - ((m_bulletLaserLevel <= 0) ? 0 : 1);
}
}
if (Key.isDown(86)) {
m_bulletType = (m_bulletType = BT_NORMAL);
}
if (Key.isDown(76)) {
m_bulletType = (m_bulletType = BT_LASER);
}
if (Key.isDown(70)) {
m_force = FORCE_MAX;
}
if (Key.isDown(66)) {
m_boostGage = BOOST_MAX;
}
if (Key.isDown(67)) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.forceDestroy();
}
}
return(_local2);
}
static var LEFT = 1;
static var RIGHT = 2;
static var UP = 4;
static var DOWN = 8;
static var BULLET = 16;
static var BOMB = 32;
static var BT_NORMAL = 0;
static var BT_LASER = 1;
static var BOOST_NONE = 0;
static var BOOST_SLOW = 1;
static var BOOST_FAST = 2;
static var BT_NORMAL_SPEED = 18;
static var BT_NORMAL_WAIT = 250;
static var BT_LASER_WAIT = 3100;
static var BT_LASER_CHARGE_TIME = 1000;
static var BT_LASER_TOTAL_TIME = 3000;
static var BT_BOMB_TIME = 1500;
static var BT_LEVEL_MAX = 4;
static var FORCE_MAX = 100;
static var FORCE_DAMAGE = 20;
static var FORCE_BOMB = 15;
static var FORCE_RECOVER = 20;
static var BOOST_MAX = 300;
static var BOOST_INC = 1;
static var BOOST_ACCEL_TIME = 20;
static var BOOST_START_TIME = 20;
static var BOOST_ACTION_TIME = 130;
static var BOOST_END_TIME = 150;
static var BOOST_NORMAL_SPEED = 1000;
static var BOOST_FAST_SPEED = 1000;
static var BOOST_SLOW_SPEED = -500;
static var DEFENSE_TIME = 30;
static var BOOSTMAX_TIME = 20;
static var ACTION_DESTROY = 1;
static var ACTION_LEAVE = 2;
static var ACTION_COME = 3;
static var EXPLOSION_SPAN = 6;
static var EXPLOSION_TIME = 100;
static var EXPLOSION_TIME2 = 130;
}
Symbol 1244 MovieClip [__Packages.jp.bambooshootdesign.sys.WorkItem] Frame 0
class jp.bambooshootdesign.sys.WorkItem
{
function WorkItem () {
}
function init() {
}
function reset() {
}
function move() {
return(true);
}
function ctrl() {
return(true);
}
function disp() {
}
function ctrlAndDisp() {
return(true);
}
}
Symbol 1245 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Enemy] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Enemy extends jp.bambooshootdesign.sys.WorkItem
{
var m_hitBullet, m_forceDestroy, m_hp;
function Enemy () {
super();
m_hitBullet = -1;
m_forceDestroy = false;
}
function getX() {
return(0);
}
function getY() {
return(0);
}
function getHP() {
return(0);
}
function hit(hp) {
}
function isActive() {
return(false);
}
function clearHitBullet() {
m_hitBullet = -1;
}
function hitBullet(bulletNum) {
m_hitBullet = bulletNum;
}
function isSameBullet(bulletNum) {
return(m_hitBullet == bulletNum);
}
function forceDestroy() {
m_forceDestroy = true;
m_hp = 0;
}
static var EM_ENEMY = 0;
static var EM_POWERUP = 1;
static var EM_MAX = 2;
}
Symbol 1246 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.PlayerLaserBullet] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.PlayerLaserBullet extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_level, m_count, m_parent, m_chargeTime, m_laserTime, m_mcLaser, m_mcAcc, m_x, m_y, m_wl, m_bg, m_accSeID, m_laserSeID, m_hitLaser;
function PlayerLaserBullet (level, damage, chargeTime, laserTime) {
super();
var _local3;
m_w = 0;
m_h = 800;
m_hp = damage;
m_level = level;
m_count = 0;
m_parent = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player;
m_chargeTime = chargeTime;
m_laserTime = laserTime;
m_mcLaser = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BULLET, ("PlayerLaserP" + level) + "MC", "PL");
m_mcLaser.stop();
m_mcAcc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BULLET, "PlayerLaserAccMC", "PLA");
m_mcAcc.stop();
_local3 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getPosition();
m_x = _local3.x;
m_y = _local3.y - (m_mcLaser._height / 2);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_bg = undefined;
m_accSeID = jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MyLaserCharge");
m_laserSeID = -1;
m_hitLaser = true;
}
function move() {
var _local2;
_local2 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getPosition();
m_x = _local2.x;
m_y = _local2.y - (m_mcLaser._height / 2);
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate();
if ((m_laserSeID == -1) && (m_count >= m_chargeTime)) {
m_laserSeID = jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MyLaser");
}
if (m_laserSeID != -1) {
m_hitLaser = !m_hitLaser;
if (m_hitLaser) {
if (m_bg != undefined) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bg);
}
m_bg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_PLAYER);
} else {
if (m_bg != undefined) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bg);
}
m_bg = undefined;
}
m_w = m_mcLaser._width;
}
if (m_count >= m_laserTime) {
detach();
return(false);
}
return(true);
}
function ctrlAndDisp() {
var _local2;
if (m_count < m_chargeTime) {
_local2 = Math.floor((m_count * 46) / m_chargeTime) + 1;
} else {
_local2 = (46 + Math.floor(((m_count - m_chargeTime) * 154) / (m_laserTime - m_chargeTime))) + 1;
}
m_mcAcc._x = m_x;
m_mcAcc._y = m_y + (m_mcLaser._height / 2);
m_mcAcc._visible = true;
m_mcAcc.gotoAndStop(_local2);
if (m_count >= m_chargeTime) {
m_mcLaser._x = m_x;
m_mcLaser._y = m_y;
m_mcLaser._visible = true;
m_mcLaser.gotoAndStop(_local2 - 46);
}
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
if (m_bg != undefined) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bg);
delete m_bg;
}
m_mcAcc.removeMovieClip();
m_mcLaser.removeMovieClip();
}
function getArea() {
return({m_x:m_x, m_y:m_y, m_w:m_w / 2, m_h:m_h / 2});
}
function getHP() {
return(m_hp);
}
function hit(hp) {
}
function isActive() {
return(true);
}
function getNumber() {
return(m_mcLaser.getDepth());
}
function cancel() {
m_count = m_laserTime;
m_parent = undefined;
stopSE();
}
function detach() {
if (m_parent != undefined) {
m_parent.detach();
}
stopSE();
}
function stopSE() {
if (m_accSeID != -1) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.stopSE(m_accSeID);
}
if (m_laserSeID != -1) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.stopSE(m_laserSeID);
}
}
}
Symbol 1247 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Bullet] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Bullet
{
function Bullet () {
}
static var BT_PLAYER = 0;
static var BT_ENEMY = 1;
static var BT_ENEMY_ALIVE = 2;
static var BT_MAX = 3;
}
Symbol 1248 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.PlayerBomb] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.PlayerBomb extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_time, m_count, m_mcCenter, m_mcLine, m_angle, m_x, m_y, m_wl, m_bg;
function PlayerBomb (time, damage) {
super();
var _local4;
m_w = 1600;
m_h = 1600;
m_hp = 10;
m_time = time;
m_count = 0;
m_mcCenter = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BULLET, "PlayerBombCenterMC", "PBC");
m_mcCenter.stop();
m_mcLine = [];
var _local3 = 0;
while (_local3 < 4) {
m_mcLine.push(jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BULLET, "PlayerBombLineMC", "PBL"));
_local3++;
}
m_angle = [];
_local3 = 0;
while (_local3 < 8) {
m_angle.push(-80 + (_local3 * 22.8571428571429));
_local3++;
}
_local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getPosition();
m_x = _local4.x;
m_y = _local4.y;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_bg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_PLAYER);
}
function move() {
var _local2;
_local2 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getPosition();
m_x = _local2.x;
m_y = _local2.y;
m_time = m_time - jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate();
m_count++;
return(m_time > 0);
}
function ctrlAndDisp() {
m_mcCenter._x = m_x;
m_mcCenter._y = m_y;
m_mcCenter._visible = true;
m_mcCenter.gotoAndStop(m_count);
var _local4 = m_count & 1;
var _local3 = m_mcLine.length - 1;
while (_local3 >= 0) {
var _local2 = m_mcLine[_local3];
_local2._x = m_x;
_local2._y = m_y;
_local2._rotation = (m_angle[_local4] + (Math.random() * 20)) - 10;
_local2._visible = true;
_local2.gotoAndStop(m_count);
_local4 = _local4 + 2;
_local3--;
}
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bg);
delete m_wl;
delete m_bg;
m_mcCenter.removeMovieClip();
var _local2 = m_mcLine.length - 1;
while (_local2 >= 0) {
m_mcLine[_local2].removeMovieClip();
_local2--;
}
}
function getArea() {
return({m_x:m_x, m_y:m_y, m_w:m_w / 2, m_h:m_h / 2});
}
function getHP() {
return(m_hp);
}
function hit(hp) {
}
function isActive() {
return(true);
}
function getNumber() {
return(m_mcCenter.getDepth());
}
}
Symbol 1249 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.PlayerNormalBullet extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_x, m_y, m_w, m_h, m_hp, m_area, m_speed, m_angle, m_xadd, m_yadd, m_count, m_mc, m_wl, m_bg;
function PlayerNormalBullet (x, y, angle, speed, damage) {
super();
m_x = x;
m_y = y;
m_w = 8;
m_h = 8;
m_hp = damage;
m_area = {m_x:m_x, m_y:m_y, m_w:m_w / 2, m_h:m_h / 2};
m_speed = speed;
m_angle = angle;
m_xadd = Math.cos(m_angle) * m_speed;
m_yadd = (-Math.sin(m_angle)) * m_speed;
var _local4;
var _local3;
_local3 = 0;
if (m_yadd != 0) {
if (m_yadd < 0) {
_local3 = Math.floor((((-m_y) - 40) / m_yadd) + 1);
} else {
_local3 = Math.floor((((jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT + 40) - m_y) / m_yadd) + 1);
}
}
if (m_xadd != 0) {
if (m_xadd < 0) {
_local4 = Math.floor(((-m_x) / m_xadd) + 1);
} else {
_local4 = Math.floor(((jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH - m_x) / m_xadd) + 1);
}
if (_local3 > _local4) {
_local3 = _local4;
}
}
m_count = _local3;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BULLET, "PlayerNormalBulletMC", "PNB");
m_mc._visible = true;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_bg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_PLAYER);
}
function move() {
m_x = m_x + m_xadd;
m_y = m_y + m_yadd;
m_count--;
return(m_count > 0);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bg);
delete m_wl;
delete m_bg;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
m_hp = 0;
}
function isActive() {
return(m_hp > 0);
}
function getNumber() {
return(m_mc.getDepth());
}
}
Symbol 1250 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.util.Util] Frame 0
class jp.bambooshootdesign.app.thundervector.util.Util
{
function Util () {
}
static function getPlayerAngle(x, y) {
var _local1 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getPosition();
return(Math.atan2(y - _local1.y, _local1.x - x));
}
static function getPlayerAngleAdd(x, y, angle) {
var _local1 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getPosition();
return(Math.atan2(y - _local1.y, _local1.x - x) + ((Math.PI * angle) / 180));
}
static function getAngle(angle) {
return((Math.PI * angle) / 180);
}
static function hormingAngle(nowAngle, newAngle, maxAngle) {
var _local1;
_local1 = (nowAngle - newAngle) % getAngle(360);
if (_local1 < 0) {
_local1 = _local1 + getAngle(360);
}
if (_local1 > getAngle(180)) {
_local1 = (((getAngle(360) - _local1) > maxAngle) ? (maxAngle) : (getAngle(360) - _local1));
} else {
_local1 = ((_local1 > maxAngle) ? (-maxAngle) : (-_local1));
}
nowAngle = nowAngle + _local1;
return(nowAngle);
}
}
Symbol 1251 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_x, m_y, m_w, m_h, m_type, m_hit, m_speed, m_count, m_area, m_mc, m_eg, m_wl;
function PowerUpItem (x, y, type) {
super();
m_x = x;
m_y = y;
m_w = 48;
m_h = 36;
m_type = type;
m_hit = false;
m_speed = SPEED / 1000;
m_count = 0;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "PowerUpItemMC", "PowerUpItem");
m_mc.gotoAndStop(m_type + 1);
m_mc.powerup.box.stop();
m_mc._visible = true;
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_POWERUP);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
}
function move() {
m_count++;
m_y = m_y + (jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed() * m_speed);
return(m_y < 700);
}
function ctrlAndDisp() {
if (m_hit) {
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_mc.powerup.box.gotoAndStop((m_count % m_mc.powerup.box._totalframes) + 1);
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_eg;
delete m_wl;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getPowerUpItem(m_type);
m_hit = true;
}
function isActive() {
return(m_hit > 0);
}
static function create() {
return(new jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem());
}
static var PUI_BT_NORMAL = 0;
static var PUI_BT_LASER = 1;
static var PUI_BOOST = 2;
static var PUI_FORCE = 3;
static var SPEED = 75;
}
Symbol 1252 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.ScoreItem] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.ScoreItem extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_x, m_y, m_w, m_h, m_type, m_hit, m_speed, m_area, m_sx, m_sy, m_xspeed, m_yspeed, m_yacc, m_count, m_mc, m_eg, m_wl;
function ScoreItem (x, y, type) {
super();
m_x = x;
m_y = y;
m_w = 48;
m_h = 32;
m_type = type;
m_hit = false;
m_speed = SPEED / 1000;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_sx = x;
m_sy = y;
m_xspeed = (Math.random() * 20) - 10;
m_yspeed = -10;
m_yacc = 150;
m_count = 0;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "ScoreItemMC", "ScoreItem");
m_mc.gotoAndStop(m_type + 1);
m_mc._visible = true;
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_POWERUP);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
}
function move() {
m_count = m_count + (jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed() / 1000);
m_x = m_sx + (m_count * m_xspeed);
m_y = (m_sy + (m_yspeed * m_count)) + (((m_yacc * m_count) * m_count) / 2);
return(m_y < 700);
}
function ctrlAndDisp() {
if (m_hit) {
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_eg;
delete m_wl;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getScoreItem(m_type);
m_hit = true;
}
function isActive() {
return(m_hit > 0);
}
static function create() {
return(new jp.bambooshootdesign.app.thundervector.enemy.ScoreItem());
}
static var SI_100 = 0;
static var SI_1000 = 1;
static var SI_10000 = 2;
static var SPEED = 75;
}
Symbol 1253 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.ExplosionPlayer] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.ExplosionPlayer extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_mc, m_count, m_x, m_y, m_size, m_wl;
function ExplosionPlayer (x, y, size) {
super();
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BULLET, "ExplosionMC", "Explosion");
m_mc._x = x;
m_mc._y = y;
m_mc._xscale = size;
m_mc._yscale = size;
m_mc._visible = true;
m_count = 0;
m_x = x;
m_y = y;
m_size = size;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
}
function move() {
m_count++;
m_mc.gotoAndStop(m_count);
return(m_mc._totalframes > m_count);
}
function ctrlAndDisp() {
m_mc._yscale = (jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y) * m_size) / 100;
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
m_mc.removeMovieClip();
}
}
Symbol 1254 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Fade] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Fade extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_count, m_param, m_mc, m_wl;
function Fade (param, count) {
super();
m_count = count;
m_param = param;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SYSTEM, "FadeMC", "Fade");
m_mc._width = jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH;
m_mc._height = jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT;
m_mc._x = jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH / 2;
m_mc._y = jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT / 2;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
}
function move() {
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(m_param.time <= m_param.time);
}
function ctrlAndDisp() {
if (m_param.fadeTime < m_count) {
m_mc._alpha = m_param.end;
} else {
m_mc._alpha = m_param.start + (((m_param.end - m_param.start) * m_count) / m_param.fadeTime);
}
m_mc._visible = true;
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
m_mc.removeMovieClip();
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Fade(param, count));
}
}
Symbol 1255 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.sys.Collision] Frame 0
class jp.bambooshootdesign.app.thundervector.sys.Collision
{
var m_enemyMap, m_bulletMap, m_bulletCount;
function Collision () {
}
function init() {
m_enemyMap = new jp.bambooshootdesign.app.thundervector.sys.CollisionMap(8, 8);
m_enemyMap.setSize(jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH, jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT);
m_bulletMap = new jp.bambooshootdesign.app.thundervector.sys.CollisionMap(8, 8);
m_bulletMap.setSize(jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH, jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT);
}
function reset() {
m_enemyMap.reset();
}
function appendEnemy(x1, y1, x2, y2, obj) {
obj.clearHitBullet();
m_enemyMap.append(x1, y1, x2, y2, obj);
}
function check() {
playerAttackToEnemy();
powerupToPlayer();
m_bulletCount = 0;
if (jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.isBomb()) {
bombToEnemyBullet();
} else {
enemyAttackToPlayer();
}
}
function playerAttackToEnemy() {
var _local25;
var _local7;
var _local16;
var _local3;
var _local5;
var _local9;
var _local11;
var _local2;
var _local18;
var _local17;
var _local14;
var _local15;
var _local13;
var _local12;
var _local24;
var _local23;
var _local21;
var _local20;
var _local8;
var _local10;
var _local6;
var _local4;
var _local19 = 0;
_local25 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.get(jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_PLAYER);
_local16 = _local25.getFirst();
var _local26;
var _local22;
_local26 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getScale();
_local22 = (-440 * (100 - _local26)) / 100;
while (!_local25.isLast(_local16)) {
_local5 = _local16.get();
_local11 = _local5.getArea();
_local9 = _local5.getNumber();
_local14 = _local11.m_y - _local11.m_h;
_local15 = _local11.m_y + _local11.m_h;
if (_local15 < _local22) {
_local16 = _local16.m_next;
continue;
}
if (_local14 < _local22) {
_local14 = _local22;
}
_local18 = _local11.m_x - _local11.m_w;
_local17 = _local11.m_x + _local11.m_w;
_local24 = m_enemyMap.calcX(_local18);
_local23 = m_enemyMap.calcX(_local17);
_local21 = m_enemyMap.calcY(_local14);
_local20 = m_enemyMap.calcY(_local15);
_local8 = false;
_local10 = _local24;
while (_local10 <= _local23) {
_local6 = _local21;
while (_local6 <= _local20) {
_local7 = m_enemyMap.get(_local10, _local6);
_local4 = _local7.length - 1;
while (_local4 >= 0) {
_local3 = _local7[_local4];
if (!_local3.isActive()) {
} else if (_local3.isSameBullet(_local9)) {
} else {
_local19++;
_local2 = _local3.getArea();
if ((((_local18 < (_local2.m_x + _local2.m_w)) && (_local17 > (_local2.m_x - _local2.m_w))) && (_local14 < (_local2.m_y + _local2.m_h))) && (_local15 > (_local2.m_y - _local2.m_h))) {
_local13 = _local5.getHP();
_local12 = _local3.getHP();
_local3.hit(_local13);
_local5.hit(_local12);
_local3.hitBullet(_local9);
if (!_local5.isActive()) {
_local8 = true;
break;
}
}
}
_local4--;
}
if (_local8) {
break;
}
_local6++;
}
if (_local8) {
break;
}
_local10++;
}
_local16 = _local16.m_next;
}
if (jp.bambooshootdesign.app.thundervector.sys.SysInfo.Debug.isActive()) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Debug.output("Collision Check:" + _local19);
}
}
function enemyAttackToPlayer() {
if (jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.isActive()) {
var _local8;
var _local3;
var _local2;
var _local10;
var _local7;
var _local6;
var _local9;
var _local5;
var _local4;
_local9 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getPosition();
_local5 = _local9.x;
_local4 = _local9.y;
_local8 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.get(jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY);
_local3 = _local8.getFirst();
while (!_local8.isLast(_local3)) {
m_bulletCount++;
_local2 = _local3.get().getArea();
if (((_local2.m_y - _local2.m_h) < _local4) && ((_local2.m_y + _local2.m_h) > _local4)) {
if (((_local2.m_x - _local2.m_w) < _local5) && ((_local2.m_x + _local2.m_w) > _local5)) {
_local7 = _local3.get().getHP();
_local6 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getHP();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.hit(_local7);
_local3.get().hit(_local6);
}
}
_local3 = _local3.m_next;
}
}
}
function powerupToPlayer() {
var _local6;
var _local1;
var _local5;
var _local2;
var _local4;
var _local3;
if (jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.isAlive()) {
_local6 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getPosition();
_local4 = _local6.x;
_local3 = _local6.y;
_local5 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.get(jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_POWERUP);
_local2 = _local5.getFirst();
while (!_local5.isLast(_local2)) {
_local1 = _local2.get().getArea();
if (((_local1.m_y - _local1.m_h) < _local3) && ((_local1.m_y + _local1.m_h) > _local3)) {
if (((_local1.m_x - _local1.m_w) < _local4) && ((_local1.m_x + _local1.m_w) > _local4)) {
_local2.get().hit();
}
}
_local2 = _local2.m_next;
}
}
}
function bombToEnemyBullet() {
var _local2;
var _local1;
_local2 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.get(jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY_ALIVE);
_local1 = _local2.getFirst();
while (!_local2.isLast(_local1)) {
_local1.get().hit();
_local1 = _local1.m_next;
}
}
function forceDestroy() {
var _local3;
var _local2;
_local3 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.get(jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
_local2 = _local3.getFirst();
while (!_local3.isLast(_local2)) {
_local2.get().forceDestroy();
_local2 = _local2.m_next;
}
bombToEnemyBullet();
}
function disp() {
if (jp.bambooshootdesign.app.thundervector.sys.SysInfo.Debug.isActive()) {
m_enemyMap.disp("Enemy");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Debug.output("CollisionEnemyBullet: " + m_bulletCount);
}
}
function destroy() {
delete m_enemyMap;
delete m_bulletMap;
}
static var COL_NONE = 0;
static var COL_PLAYER = 1;
static var COL_ENEMY = 2;
}
Symbol 1256 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.sys.CollisionMap] Frame 0
class jp.bambooshootdesign.app.thundervector.sys.CollisionMap
{
var m_xdiv, m_ydiv, m_map, m_count, m_w, m_h, m_partW, m_partH;
function CollisionMap (xdiv, ydiv) {
m_xdiv = xdiv;
m_ydiv = ydiv;
m_map = [];
m_count = 0;
setSize(640, 480);
}
function reset() {
var _local4;
var _local2;
var _local3;
m_map = [];
_local4 = m_xdiv - 1;
while (_local4 >= 0) {
_local3 = [];
_local2 = m_ydiv - 1;
while (_local2 >= 0) {
_local3.push([]);
_local2--;
}
m_map.push(_local3);
_local4--;
}
m_count = 0;
}
function setSize(w, h) {
m_w = w;
m_h = h;
m_partW = m_w / m_xdiv;
m_partH = m_h / m_ydiv;
}
function get(x, y) {
return(m_map[x][y]);
}
function append(x1, y1, x2, y2, obj) {
var _local3;
var _local2;
x1 = calcX(x1);
x2 = calcX(x2);
y1 = calcY(y1);
y2 = calcY(y2);
_local3 = x1;
while (_local3 <= x2) {
_local2 = y1;
while (_local2 <= y2) {
m_map[_local3][_local2].push(obj);
m_count++;
_local2++;
}
_local3++;
}
}
function calcX(x1) {
if (x1 < 0) {
x1 = 0;
}
if (x1 >= m_w) {
x1 = m_w - 1;
}
return(Math.floor(x1 / m_partW));
}
function calcY(y1) {
if (y1 < 0) {
y1 = 0;
}
if (y1 >= m_h) {
y1 = m_h - 1;
}
return(Math.floor(y1 / m_partH));
}
function disp(name) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Debug.output((("CollisionMap " + name) + " Num:") + m_count);
}
}
Symbol 1257 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.sys.SceneGraph] Frame 0
class jp.bambooshootdesign.app.thundervector.sys.SceneGraph
{
var m_scenePos, m_activeList, m_time, m_waitTime, m_waitEvent, m_encountEvent, m_labelList, m_parent, m_isStop, m_frameCount, m_isFrame, m_sceneList;
function SceneGraph () {
}
function init() {
m_scenePos = 0;
m_activeList = [];
m_time = 0;
m_waitTime = 0;
m_waitEvent = undefined;
m_encountEvent = undefined;
m_labelList = {};
m_parent = undefined;
m_isStop = false;
m_frameCount = 0;
m_isFrame = false;
}
function setParent(parent) {
m_parent = parent;
}
function setScene(sceneList) {
m_sceneList = sceneList;
}
function move() {
var _local2;
var _local3;
var _local4;
if (m_isStop) {
return(undefined);
}
if (((m_waitEvent != undefined) && (m_waitEvent == m_encountEvent)) || ((m_waitEvent == undefined) && (m_time >= m_waitTime))) {
if (m_waitEvent != undefined) {
m_waitEvent = undefined;
m_time = 0;
} else {
m_time = m_time - m_waitTime;
}
while (m_scenePos < m_sceneList.length) {
_local2 = m_sceneList[m_scenePos++];
if (_local2.type == "WAIT") {
m_waitTime = _local2.time;
m_waitEvent = undefined;
break;
}
if (_local2.type == "WAITEVENT") {
m_encountEvent = undefined;
m_waitEvent = _local2.id;
break;
}
if (_local2.type == "LABEL") {
m_labelList[_local2.name] = m_scenePos;
} else if (_local2.type == "LOOP") {
if (_local2.name == undefined) {
m_scenePos = 0;
} else {
m_scenePos = m_labelList[_local2.name];
}
} else if (_local2.type == "SENDEVENT") {
m_parent.event(_local2.id);
} else if (_local2.type == "LEVEL") {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.setLevelWithLoop(_local2.level, _local2.loop);
} else if (_local2.type == "PLAYER") {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.setAction(_local2.action);
} else if (_local2.type == "FRAME") {
if (_local2.flag == "ON") {
m_isFrame = true;
} else {
m_isFrame = false;
}
} else {
m_activeList.push({scene:_local2, time:0, count:0});
}
}
}
_local3 = m_activeList.length - 1;
while (_local3 >= 0) {
_local2 = m_activeList[_local3];
if (_local2.scene.type == "ENEMY") {
_local4 = enemy(_local2);
} else if (_local2.scene.type == "SOUND") {
_local4 = sound(_local2);
}
if (_local4) {
m_activeList.splice(_local3, 1);
}
_local3--;
}
m_time = m_time + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
if (m_isFrame) {
m_frameCount++;
}
}
function destroy() {
}
function stop() {
m_isStop = true;
}
function clearActiveList() {
m_activeList = [];
}
function getFrame() {
return(m_frameCount);
}
function enemy(obj) {
var _local7;
if (obj.time >= obj.scene.interval) {
var _local5;
var _local2;
_local5 = {};
for (_local2 in obj.scene.param) {
_local5[_local2] = obj.scene.param[_local2];
}
if (obj.scene.inc != undefined) {
for (_local2 in obj.scene.inc) {
_local5[_local2] = _local5[_local2] + (obj.scene.inc[_local2] * obj.count);
}
}
if (obj.scene.random != undefined) {
for (_local2 in obj.scene.random) {
var _local4;
var _local6;
var _local3;
_local4 = obj.scene.random[_local2].min;
_local6 = obj.scene.random[_local2].max;
_local3 = (Math.random() * (_local6 - _local4)) + _local4;
if (obj.scene.random[_local2].neg != undefined) {
if (Math.random() < 0.5) {
_local3 = -_local3;
}
}
_local5[_local2] = _local3;
}
}
_local5.count = obj.count;
_local7 = jp.bambooshootdesign.app.thundervector.sys.EnemyFactory.create(obj.scene.id, _local5, obj.time - obj.scene.interval);
obj.time = obj.time - obj.scene.interval;
obj.count++;
}
obj.time = obj.time + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(obj.count >= obj.scene.count);
}
function sound(obj) {
if (obj.scene.action == "PlayMusic") {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playMusic(obj.scene.id);
} else if (obj.scene.action == "FadeOut") {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.fadeOutMusic(obj.scene.time);
}
return(true);
}
function event(param, enemy) {
if (param.event == undefined) {
return(undefined);
}
switch (param.event.id) {
case "BossDestroy" :
m_encountEvent = param.event.id;
break;
case "StageResult" :
m_encountEvent = param.event.id;
break;
case "StageEnd" :
m_encountEvent = param.event.id;
break;
case "PowerUp" :
if (param.count == param.event.count) {
new jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem(enemy.getX(), enemy.getY(), param.event.type);
}
break;
case "Score" :
if (param.count == param.event.count) {
new jp.bambooshootdesign.app.thundervector.enemy.ScoreItem(enemy.getX(), enemy.getY(), param.event.type);
}
break;
case "GameOver" :
m_parent.event("GameOver");
break;
case "BonusEnemy" :
jp.bambooshootdesign.app.thundervector.sys.EnemyFactory.create("BonusEnemy", {x:0, y:100}, 0);
}
}
}
Symbol 1258 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.sys.EnemyFactory] Frame 0
class jp.bambooshootdesign.app.thundervector.sys.EnemyFactory
{
function EnemyFactory () {
}
static function create(id, param, count) {
return(jp.bambooshootdesign.app.thundervector.enemy[id].create(param, count));
}
}
Symbol 1259 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.EnemyList] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.EnemyList
{
function EnemyList () {
}
}
Symbol 1260 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Explosion] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Explosion extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_mc, m_count, m_x, m_y, m_size, m_wl;
function Explosion (x, y, size) {
super();
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "ExplosionMC", "Explosion");
m_mc._x = x;
m_mc._y = y;
m_mc._xscale = size;
m_mc._yscale = size;
m_mc._visible = true;
m_count = 0;
m_x = x;
m_y = y;
m_size = size;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
}
function move() {
m_count++;
m_mc.gotoAndStop(m_count);
return(m_mc._totalframes > m_count);
}
function ctrlAndDisp() {
m_mc._yscale = (jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y) * m_size) / 100;
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
m_mc.removeMovieClip();
}
static function create() {
return(new jp.bambooshootdesign.app.thundervector.enemy.Explosion());
}
}
Symbol 1261 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.StageBackGround] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.StageBackGround extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_count, m_mc, m_x, m_y, m_param, m_wl;
function StageBackGround (param) {
super();
m_count = 0;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BACKGROUND, ("Stage" + param.stage) + "BackGroundMC", "BackGround");
m_x = (-(m_mc._width - jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH)) / 2;
m_y = 0;
m_param = param;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
}
function move() {
var _local2 = m_mc;
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_y = ((jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT + 50) - _local2._height) + ((m_count / m_param.time) * (_local2._height - (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT + 50)));
if (m_y > -40) {
m_y = -40;
}
return(true);
}
function ctrlAndDisp() {
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._visible = true;
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
m_mc.removeMovieClip();
}
static function create(param) {
return(new jp.bambooshootdesign.app.thundervector.enemy.StageBackGround(param));
}
}
Symbol 1262 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.BackGroundStar] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.BackGroundStar extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_objList, m_wl;
function BackGroundStar () {
super();
if (!jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.Quality) {
return;
}
m_objList = [];
var _local4 = 0;
while (_local4 < 16) {
var _local3 = {};
_local3.x = Math.random() * jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH;
_local3.y = Math.random() * 1000;
_local3.speed = ((Math.random() * 10) + 5) / jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate();
_local3.mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BGSTAR, "BackGroundStarMC", "BGS");
_local3.mc._visible = true;
m_objList.push(_local3);
_local4++;
}
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
}
function move() {
var _local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
var _local3 = 0;
while (_local3 < 16) {
var _local2 = m_objList[_local3];
_local2.y = _local2.y + (_local2.speed * _local4);
if (_local2.y > 1000) {
_local2.x = Math.random() * jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH;
_local2.y = _local2.y - 1100;
}
_local3++;
}
return(true);
}
function ctrlAndDisp() {
var _local3 = 0;
while (_local3 < 16) {
var _local2 = m_objList[_local3];
_local2.mc._x = _local2.x;
_local2.mc._y = _local2.y;
_local3++;
}
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
var _local2 = 0;
while (_local2 < 16) {
m_objList[_local2].mc.removeMovieClip();
_local2++;
}
}
static function create() {
return(new jp.bambooshootdesign.app.thundervector.enemy.BackGroundStar());
}
}
Symbol 1263 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Danger] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Danger extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_count, m_soundCount, m_mc, m_wl;
function Danger (param, count) {
super();
m_count = count;
m_soundCount = count + SOUND_TIME;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SYSTEM, "DangerMC", "Danger");
m_mc._x = jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH / 2;
m_mc._y = jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT / 2;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
}
function move() {
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
if (m_count < 3000) {
m_soundCount = m_soundCount + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
if (m_soundCount >= SOUND_TIME) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Danger");
m_soundCount = m_soundCount - SOUND_TIME;
}
return(true);
}
return(false);
}
function ctrlAndDisp() {
m_mc.gotoAndStop(Math.floor(((m_count % 1000) * m_mc._totalframes) / 1000) + 1);
m_mc._visible = true;
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
m_mc.removeMovieClip();
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Danger(param, count));
}
static var SOUND_TIME = 1000;
}
Symbol 1264 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.StageResult] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.StageResult extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_count, m_status, m_param, m_score, m_combo, m_comboMag, m_timeBonus, m_totalScore, m_strScore, m_strCombo, m_strComboMag, m_strTimeBonus, m_strTotalScore, m_updateScore, m_updateCombo, m_updateComboMag, m_updateTimeBonus, m_updateTotalScore, m_isListener, m_mc, m_wl, m_isFinish;
function StageResult (param, count) {
super();
m_count = 0;
m_status = 0;
m_param = param;
var _local8;
var _local3;
var _local7;
var _local6;
var _local5;
_local8 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.getFrame();
_local3 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getFrameRate();
_local7 = ((param.minute * 60) * _local3) + (param.second * _local3);
_local6 = Math.abs(_local8 - _local7);
if (_local6 > (param.range * _local3)) {
_local6 = param.range * _local3;
}
if (_local8 > _local7) {
_local5 = (1 - (_local6 / (param.range * _local3))) * TIME_BONUS;
} else {
_local5 = (1 + ((_local6 / (param.range * _local3)) * 2)) * TIME_BONUS;
}
_local5 = Math.floor(_local5 / 100) * 100;
m_score = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getStageScore();
m_combo = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getMaxComboCount();
m_comboMag = COMBO_MAG_BASE + (jp.bambooshootdesign.app.thundervector.sys.SysInfo.getMaxComboCount() * COMBO_MAG);
m_timeBonus = _local5;
m_totalScore = (jp.bambooshootdesign.app.thundervector.sys.SysInfo.getScore() + (m_combo * m_comboMag)) + m_timeBonus;
if (m_totalScore >= jp.bambooshootdesign.app.thundervector.sys.SysInfo.MAX_SCORE) {
m_totalScore = jp.bambooshootdesign.app.thundervector.sys.SysInfo.MAX_SCORE;
}
m_strScore = "";
m_strCombo = "";
m_strComboMag = "";
m_strTimeBonus = "";
m_strTotalScore = "";
m_updateScore = false;
m_updateCombo = false;
m_updateComboMag = false;
m_updateTimeBonus = false;
m_updateTotalScore = false;
m_isListener = false;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SYSTEM, "StageResultMC", "StageResult");
m_mc._x = jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH / 2;
m_mc._y = jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT / 2;
m_mc._visible = true;
m_mc.gotoAndStop(1);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
}
function move() {
var _local2 = true;
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate();
m_updateScore = false;
m_updateCombo = false;
m_updateComboMag = false;
m_updateTimeBonus = false;
m_updateTotalScore = false;
switch (m_status) {
case 0 :
m_isFinish = false;
Key.addListener(this);
Mouse.addListener(this);
m_isListener = true;
m_status++;
break;
case 1 :
if ((m_count > TITLE_TIME) || (m_isFinish)) {
m_count = m_count - TITLE_TIME;
m_status = m_status + 9;
m_mc.gotoAndStop("Score");
}
break;
case 10 :
if ((Number(m_strScore) == m_score) || (m_isFinish)) {
m_count = 0;
m_status++;
m_strScore = String(m_score);
} else {
m_strScore = updateNumber(m_score, m_strScore);
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("ScoreCount");
m_updateScore = true;
break;
case 11 :
if ((m_count > WAIT_TIME) || (m_isFinish)) {
m_count = 0;
m_status = m_status + 9;
m_mc.gotoAndStop("Combo");
}
break;
case 20 :
if (((Number(m_strCombo) == m_combo) && (Number(m_strComboMag) == m_comboMag)) || (m_isFinish)) {
m_count = 0;
m_status++;
m_strCombo = String(m_combo);
m_strComboMag = String(m_comboMag);
} else {
if (Number(m_strCombo) != m_combo) {
m_strCombo = updateNumber(m_combo, m_strCombo);
}
if (Number(m_strComboMag) != m_comboMag) {
m_strComboMag = updateNumber(m_comboMag, m_strComboMag);
}
}
m_updateCombo = true;
m_updateComboMag = true;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("ScoreCount");
break;
case 21 :
if ((m_count > WAIT_TIME) || (m_isFinish)) {
m_count = 0;
m_status = m_status + 9;
m_mc.gotoAndStop("TimeBonus");
}
break;
case 30 :
if ((Number(m_strTimeBonus) == m_timeBonus) || (m_isFinish)) {
m_count = 0;
m_status++;
m_strTimeBonus = String(m_timeBonus);
} else {
m_strTimeBonus = updateNumber(m_timeBonus, m_strTimeBonus);
}
m_updateTimeBonus = true;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("ScoreCount");
break;
case 31 :
if ((m_count > WAIT_TIME) || (m_isFinish)) {
m_count = 0;
m_status = m_status + 9;
m_mc.gotoAndStop("TotalScore");
}
break;
case 40 :
if ((Number(m_strTotalScore) == m_totalScore) || (m_isFinish)) {
m_count = 0;
m_status++;
m_strTotalScore = String(m_totalScore);
} else {
m_strTotalScore = updateNumber(m_totalScore, m_strTotalScore);
}
m_updateTotalScore = true;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("ScoreCount");
break;
case 41 :
if ((m_count > WAIT_TIME) || (m_isFinish)) {
m_count = 0;
m_status = m_status + 9;
m_isFinish = false;
}
break;
case 50 :
if ((m_count > WAIT_TIME) || (m_isFinish)) {
Key.removeListener(this);
Mouse.removeListener(this);
m_isListener = false;
m_status++;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore((m_combo * m_comboMag) + m_timeBonus);
}
break;
case 51 :
}
return(_local2);
}
function ctrlAndDisp() {
if (m_updateScore) {
m_mc.score = m_strScore;
}
if (m_updateCombo) {
m_mc.combo = m_strCombo;
}
if (m_updateComboMag) {
m_mc.comboMag = m_strComboMag;
}
if (m_updateTimeBonus) {
m_mc.timeBonus = m_strTimeBonus;
}
if (m_updateTotalScore) {
m_mc.totalScore = m_strTotalScore;
}
m_mc._visible = true;
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
m_mc.removeMovieClip();
if (m_isListener) {
Key.removeListener(this);
Mouse.removeListener(this);
}
}
function onKeyDown() {
if (Key.isDown(13) || (Key.isDown(108))) {
m_isFinish = true;
}
}
function onKeyup() {
}
function onMouseDown() {
m_isFinish = true;
}
function onMouseMove() {
}
function onMouseUp() {
}
function onMouseWheel() {
}
function updateNumber(targetNum, nowStr) {
var _local5;
var _local4;
var _local8;
var _local3;
var _local1;
var _local2;
if (nowStr == "") {
_local5 = 0;
} else {
_local5 = Number(nowStr);
}
_local1 = nowStr.length;
if (_local1 > 0) {
_local4 = Math.pow(10, _local1 - 1);
_local8 = Math.floor(targetNum / _local4) % 10;
_local3 = Math.floor(_local5 / _local4) % 10;
if (_local8 > _local3) {
_local3++;
_local2 = _local3 + String(targetNum).substr((-_local1) + 1, _local1 - 1);
} else {
_local2 = "0" + String(targetNum).substr(-_local1, _local1);
}
} else {
_local2 = "0";
}
return(_local2);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.StageResult(param, count));
}
static var TITLE_TIME = 2000;
static var WAIT_TIME = 1000;
static var COMBO_MAG = 20;
static var COMBO_MAG_BASE = 100;
static var TIME_BONUS = 10000;
}
Symbol 1265 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Zako1] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Zako1 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_param, m_count, m_animeCount, m_status, m_shotCount, m_shotInterval, m_shotSpeed, m_shotNow, m_x, m_y, m_area, m_mc, m_eg, m_wl, m_enemyStatus, m_forceDestroy;
function Zako1 (param, count) {
super();
m_w = 36;
m_h = 36;
m_hp = 20;
m_param = param;
m_count = count;
m_animeCount = count;
m_status = 0;
var _local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_shotCount = SHOT_COUNT + _local4;
m_shotInterval = SHOT_TIME / m_shotCount;
m_shotSpeed = 100 * (1 + (_local4 * 0.25));
m_shotNow = 0;
m_x = param.x - MOVE_X;
m_y = START_Y;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "Zako1MC", "Zako1");
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
if (((param.event.id == "PowerUp") || (param.event.id == "Score")) && (param.count == param.event.count)) {
m_enemyStatus.setPowerUp();
m_mc.powerup._visible = true;
} else {
m_mc.powerup._visible = false;
}
}
function move() {
var _local2;
var _local3 = true;
do {
_local2 = false;
switch (m_status) {
case 0 :
if (m_count > MOVE_TIME) {
m_count = m_count - MOVE_TIME;
m_status++;
_local2 = true;
} else {
m_x = m_param.x - (MOVE_X - ((MOVE_X * m_count) / MOVE_TIME));
m_y = START_Y + ((MOVE_Y * m_count) / MOVE_TIME);
}
break;
case 1 :
if (m_count > m_shotInterval) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngle(m_x, m_y), m_shotSpeed, m_count - m_shotInterval);
m_count = m_count - m_shotInterval;
m_shotNow++;
if (m_shotNow >= m_shotCount) {
m_status++;
}
_local2 = true;
} else {
m_x = m_param.x;
m_y = START_Y + MOVE_Y;
}
break;
case 2 :
if (m_count > SHOT_WAIT) {
m_count = m_count - SHOT_WAIT;
m_status++;
_local2 = true;
} else {
m_x = m_param.x;
m_y = START_Y + MOVE_Y;
}
break;
case 3 :
if (m_count > MOVE_TIME) {
m_count = m_count - MOVE_TIME;
m_status++;
_local2 = true;
} else {
m_x = m_param.x + ((MOVE_X * m_count) / MOVE_TIME);
m_y = START_Y + (MOVE_Y - ((MOVE_Y * m_count) / MOVE_TIME));
}
break;
case 4 :
_local3 = false;
}
} while (_local2);
if (_local3) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_animeCount = m_animeCount + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local3);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
if (!m_forceDestroy) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, 15);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._visible = true;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_mc.gotoAndStop((Math.floor(m_animeCount / jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate()) % m_mc._totalframes) + 1);
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Zako1(param, count));
}
static var START_Y = -40;
static var MOVE_X = 75;
static var MOVE_Y = 200;
static var MOVE_TIME = 1000;
static var SHOT_TIME = 1500;
static var SHOT_WAIT = 250;
static var SHOT_COUNT = 3;
static var SCORE = 100;
}
Symbol 1266 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.sys.EnemyStatus] Frame 0
class jp.bambooshootdesign.app.thundervector.sys.EnemyStatus
{
var m_mc, m_color, m_hit, m_lastHit, m_powerup, m_normal;
function EnemyStatus (mc) {
m_mc = mc;
m_color = new Color(mc);
m_hit = false;
m_lastHit = false;
m_powerup = false;
m_normal = NORMAL;
}
function setPowerUp() {
m_powerup = true;
m_color.setTransform(POWERUP);
}
function setCustomColor(cust) {
m_normal = cust;
}
function clearCustomColor() {
m_normal = NORMAL;
}
function clear() {
m_hit = false;
}
function hit() {
m_hit = true;
}
function update() {
if (m_hit != m_lastHit) {
forceUpdate();
m_lastHit = m_hit;
}
m_hit = false;
}
function forceUpdate() {
if (m_hit) {
m_color.setTransform(HIT);
} else if (m_powerup) {
m_color.setTransform(POWERUP);
} else {
m_color.setTransform(m_normal);
}
}
function destroy() {
delete m_color;
}
static var NORMAL = {ra:100, rb:0, ga:100, gb:0, ba:100, bb:0, aa:100, ab:0};
static var POWERUP = {ra:100, rb:51, ga:100, gb:0, ba:100, bb:0, aa:100, ab:0};
static var HIT = {ra:100, rb:255, ga:100, gb:255, ba:100, bb:255, aa:100, ab:0};
}
Symbol 1267 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_x, m_y, m_angle, m_speed, m_w, m_h, m_hp, m_area, m_xadd, m_yadd, m_count, m_hitCount, move, m_mc, m_wl, m_bg, m_bag;
function EnemyBullet (x, y, angle, speed, count) {
super();
var _local6;
var _local5;
var _local4;
var _local3;
m_x = x;
m_y = y;
m_angle = angle;
m_speed = speed;
m_w = 16;
m_h = 16;
m_hp = 20;
m_area = {};
_local6 = count - jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_xadd = (Math.cos(m_angle) * m_speed) / 1000;
m_yadd = ((-Math.sin(m_angle)) * m_speed) / 1000;
m_x = m_x + (m_xadd * _local6);
m_y = m_y + (m_yadd * _local6);
_local4 = 0;
_local3 = -1;
if (m_yadd != 0) {
if (m_yadd < 0) {
_local4 = ((-m_y) - 40) / m_yadd;
} else {
_local4 = ((jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT + 0) - m_y) / m_yadd;
_local3 = Math.floor((((jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT - 70) - m_y) / m_yadd) + 1);
}
}
if (m_xadd != 0) {
if (m_xadd < 0) {
_local5 = (-m_x) / m_xadd;
} else {
_local5 = (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH - m_x) / m_xadd;
}
if (_local5 < _local3) {
_local3 = -1;
}
if (_local4 > _local5) {
_local4 = _local5;
}
}
if ((_local3 != -1) && (_local4 < _local3)) {
_local3 = -1;
}
m_count = _local4;
if (_local3 != -1) {
m_hitCount = _local4 - _local3;
move = moveCheck;
} else {
move = moveNoCheck;
}
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BULLET, "EnemyBulletMC", "EnemyBullet");
m_mc._visible = true;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_bg = undefined;
m_bag = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY_ALIVE);
}
function moveCheck() {
var _local2 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_x = m_x + (m_xadd * _local2);
m_y = m_y + (m_yadd * _local2);
m_count = m_count - _local2;
if (m_count <= m_hitCount) {
move = moveNoCheck;
m_bg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY);
return(m_count > 0);
}
return(true);
}
function moveNoCheck() {
var _local2 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_x = m_x + (m_xadd * _local2);
m_y = m_y + (m_yadd * _local2);
m_count = m_count - _local2;
return(m_count > 0);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
if (m_bg != undefined) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bg);
delete m_bg;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bag);
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
m_hp = 0;
}
function isActive() {
return(m_hp > 0);
}
}
Symbol 1268 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Zako2] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Zako2 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_param, m_count, m_animeCount, m_status, m_x, m_y, m_area, m_moveYTime, m_moveX, m_moveXTime, m_shotCount, m_shotInterval, m_shotDir, m_shotSpeed, m_shotNow, m_mc, m_eg, m_wl, m_enemyStatus, m_forceDestroy;
function Zako2 (param, count) {
super();
m_w = 36;
m_h = 36;
m_hp = 40;
m_param = param;
m_count = count;
m_animeCount = count;
m_status = 0;
var _local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_x = param.x;
m_y = START_Y;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_moveYTime = ((param.y - START_Y) / MOVE_SPEED) * 1000;
m_moveX = ((param.x > (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH / 2)) ? (-MOVE_SPEED) : (MOVE_SPEED));
m_moveXTime = ((Math.abs(param.x - (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH / 2)) + (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH / 2)) / MOVE_SPEED) * 1000;
m_shotCount = SHOT_COUNT + Math.floor(_local4 / 2);
m_shotInterval = m_moveXTime / (m_shotCount + 1);
m_shotDir = SHOT_DIR + ((_local4 & 1) * 2);
m_shotSpeed = 100 * (1 + (_local4 * 0.25));
m_shotNow = 0;
m_moveXTime = m_moveXTime - (m_shotInterval * m_shotCount);
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "Zako2MC", "Zako2");
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
if (((param.event.id == "PowerUp") || (param.event.id == "Score")) && (param.count == param.event.count)) {
m_enemyStatus.setPowerUp();
m_mc.powerup._visible = true;
} else {
m_mc.powerup._visible = false;
}
}
function move() {
var _local4;
var _local5 = true;
do {
_local4 = false;
switch (m_status) {
case 0 :
if (m_count > m_moveYTime) {
m_count = m_count - m_moveYTime;
m_status++;
m_y = m_param.y;
_local4 = true;
} else {
m_x = m_param.x;
m_y = START_Y + (((m_param.y - START_Y) * m_count) / m_moveYTime);
}
break;
case 1 :
if (m_count > m_shotInterval) {
var _local3;
m_x = m_param.x + (((m_shotInterval * (m_shotNow + 1)) * m_moveX) / 1000);
_local3 = ((-(m_shotDir - 1)) / 2) * 10;
var _local2 = m_shotDir;
while (_local2 > 0) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngleAdd(m_x, m_y, _local3), m_shotSpeed, m_count - m_shotInterval);
_local3 = _local3 + 10;
_local2--;
}
m_count = m_count - m_shotInterval;
m_shotNow++;
if (m_shotNow >= m_shotCount) {
m_status++;
}
_local4 = true;
} else {
m_x = m_param.x + (((m_count + (m_shotInterval * m_shotNow)) * m_moveX) / 1000);
}
break;
case 2 :
if (m_count > m_moveXTime) {
m_status++;
_local4 = true;
} else {
m_x = m_param.x + (((m_count + (m_shotInterval * m_shotNow)) * m_moveX) / 1000);
}
break;
case 3 :
_local5 = false;
}
} while (_local4);
if (_local5) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_animeCount = m_animeCount + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local5);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
if (!m_forceDestroy) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, 15);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._visible = true;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_mc.gotoAndStop((Math.floor(m_animeCount / jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate()) % m_mc._totalframes) + 1);
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Zako2(param, count));
}
static var START_Y = -40;
static var MOVE_SPEED = 100;
static var SHOT_COUNT = 1;
static var SHOT_DIR = 3;
static var SCORE = 100;
}
Symbol 1269 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Zako3] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Zako3 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_param, m_count, m_count2, m_status, m_x, m_y, m_mainAngle, m_shotAngle, m_area, m_moveY, m_moveX, m_shotCount, m_shotInterval, m_shotSpeed, m_shotNow, m_mc, m_eg, m_wl, m_enemyStatus, m_next, m_lastCount, m_shotOneNow, m_shotX, m_shotY, m_forceDestroy;
function Zako3 (param, count) {
super();
var _local4;
m_w = 128;
m_h = 96;
m_hp = 300;
m_param = param;
m_count = count;
m_count2 = 0;
m_status = 0;
_local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_x = param.x;
m_y = START_Y;
m_mainAngle = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(-90);
m_shotAngle = 0;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_moveY = param.y - START_Y;
m_moveX = ((param.dir >= 0) ? (MOVE_X) : (-MOVE_X));
m_shotCount = SHOT_COUNT + (_local4 * 2);
m_shotInterval = SHOT_TIME / m_shotCount;
m_shotSpeed = 100 * (1 + (_local4 * 0.25));
m_shotNow = 0;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "Zako3MC", "Zako3");
m_mc._visible = true;
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
if (((param.event.id == "PowerUp") || (param.event.id == "Score")) && (param.count == param.event.count)) {
m_enemyStatus.setPowerUp();
m_mc.powerup._visible = true;
} else {
m_mc.powerup._visible = false;
}
}
function move() {
var _local3;
var _local6 = true;
var _local2;
do {
_local3 = false;
switch (m_status) {
case 0 :
m_next = (ATTACK_RAD[m_shotNow] * MOVE_TIME) / 180;
m_status++;
_local3 = true;
break;
case 1 :
if (m_count > m_next) {
m_count2 = m_next;
m_count = m_count - m_next;
m_lastCount = 0;
if (m_shotNow == (ATTACK_RAD.length - 1)) {
m_status = 5;
} else {
m_status++;
}
_local3 = true;
_local2 = (m_next / MOVE_TIME) * 180;
} else {
_local2 = (m_count / MOVE_TIME) * 180;
}
m_mainAngle = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(((m_param.dir >= 0) ? (_local2 - 90) : ((-_local2) - 90)));
_local2 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(_local2 + 180);
m_x = m_param.x + (Math.cos(_local2) * m_moveX);
m_y = START_Y - (Math.sin(_local2) * (m_param.y - START_Y));
break;
case 2 :
if (m_count > DIR_TIME) {
m_count = m_count - DIR_TIME;
m_status++;
m_shotOneNow = 0;
_local3 = true;
_local2 = DIR_TIME - m_lastCount;
} else {
_local2 = m_count - m_lastCount;
m_lastCount = m_count;
}
var _local5;
var _local4;
_local5 = m_x + (Math.cos(m_mainAngle) * 34);
_local4 = m_y - (Math.sin(m_mainAngle) * 34);
_local2 = (_local2 * DIR_MAX) / DIR_TIME;
m_shotAngle = jp.bambooshootdesign.app.thundervector.util.Util.hormingAngle(m_mainAngle + m_shotAngle, jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngle(_local5, _local4), jp.bambooshootdesign.app.thundervector.util.Util.getAngle(_local2)) - m_mainAngle;
break;
case 3 :
m_shotX = (m_x + (Math.cos(m_mainAngle) * 28)) + (Math.cos(m_mainAngle + m_shotAngle) * 10);
m_shotY = (m_y - (Math.sin(m_mainAngle) * 28)) - (Math.sin(m_mainAngle + m_shotAngle) * 10);
m_status++;
_local3 = true;
break;
case 4 :
if (m_count > m_shotInterval) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet2(m_shotX, m_shotY, (m_mainAngle + m_shotAngle) + jp.bambooshootdesign.app.thundervector.util.Util.getAngle((Math.random() * 40) - 20), m_shotSpeed, m_count - m_shotInterval);
m_count = m_count - m_shotInterval;
m_shotOneNow++;
if (m_shotOneNow >= m_shotCount) {
m_lastCount = 0;
m_shotNow++;
m_count = m_count + m_count2;
m_status = m_status - 4;
}
_local3 = true;
}
break;
case 5 :
_local6 = false;
}
} while (_local3);
if (_local6) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local6);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
if (!m_forceDestroy) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, 30);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._rotation = 270 - (m_mainAngle / (Math.PI/180));
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_mc.shot._rotation = (-m_shotAngle) / (Math.PI/180);
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Zako3(param, count));
}
static var START_Y = -40;
static var MOVE_X = 200;
static var DIR_TIME = 1000;
static var DIR_MAX = 90;
static var SHOT_COUNT = 10;
static var SHOT_RAD = 10;
static var SHOT_TIME = 1000;
static var MOVE_TIME = 4000;
static var ATTACK_RAD = [45, 60, 90, 120, 135, 180];
static var SCORE = 500;
}
Symbol 1270 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet2] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet2 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_x, m_y, m_angle, m_speed, m_w, m_h, m_hp, m_area, m_xadd, m_yadd, m_count, m_hitCount, move, m_mc, m_wl, m_bg, m_bag;
function EnemyBullet2 (x, y, angle, speed, count) {
super();
var _local6;
var _local5;
var _local4;
var _local3;
m_x = x;
m_y = y;
m_angle = angle;
m_speed = speed;
m_w = 16;
m_h = 16;
m_hp = 20;
m_area = {};
_local6 = count - jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_xadd = (Math.cos(m_angle) * m_speed) / 1000;
m_yadd = ((-Math.sin(m_angle)) * m_speed) / 1000;
m_x = m_x + (m_xadd * _local6);
m_y = m_y + (m_yadd * _local6);
_local4 = 0;
_local3 = -1;
if (m_yadd != 0) {
if (m_yadd < 0) {
_local4 = ((-m_y) - 40) / m_yadd;
} else {
_local4 = ((jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT + 0) - m_y) / m_yadd;
_local3 = Math.floor((((jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT - 70) - m_y) / m_yadd) + 1);
}
}
if (m_xadd != 0) {
if (m_xadd < 0) {
_local5 = (-m_x) / m_xadd;
} else {
_local5 = (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH - m_x) / m_xadd;
}
if (_local5 < _local3) {
_local3 = -1;
}
if (_local4 > _local5) {
_local4 = _local5;
}
}
if ((_local3 != -1) && (_local4 < _local3)) {
_local3 = -1;
}
m_count = _local4;
if (_local3 != -1) {
m_hitCount = _local4 - _local3;
move = moveCheck;
} else {
move = moveNoCheck;
}
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BULLET, "EnemyBullet2MC", "EnemyBullet2");
m_mc._visible = true;
m_mc._rotation = (360 - (m_angle / (Math.PI/180))) + 90;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_bg = undefined;
m_bag = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY_ALIVE);
}
function moveCheck() {
var _local2 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_x = m_x + (m_xadd * _local2);
m_y = m_y + (m_yadd * _local2);
m_count = m_count - _local2;
if (m_count <= m_hitCount) {
move = moveNoCheck;
m_bg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY);
return(m_count > 0);
}
return(true);
}
function moveNoCheck() {
var _local2 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_x = m_x + (m_xadd * _local2);
m_y = m_y + (m_yadd * _local2);
m_count = m_count - _local2;
return(m_count > 0);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
if (m_bg != undefined) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bg);
delete m_bg;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bag);
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
m_hp = 0;
}
function isActive() {
return(m_hp > 0);
}
}
Symbol 1271 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Zako4] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Zako4 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_param, m_count, m_status, m_moveTime, m_bulletCount, m_shotCount, m_shotInterval, m_shotSpeed, m_shotNow, m_shotAngle, m_x, m_y, m_animeCount, m_area, m_mc, m_eg, m_wl, m_enemyStatus, m_forceDestroy;
function Zako4 (param, count) {
super();
var _local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_w = 146;
m_h = 82;
m_hp = 100;
m_param = param;
m_count = count;
m_status = 0;
m_moveTime = ((param.movey / MOVE_SPEED) * 1000) / 2;
m_bulletCount = (count - WARP_TIME) - m_moveTime;
m_shotCount = SHOT_COUNT + (_local4 * 2);
m_shotInterval = SHOT_TIME / m_shotCount;
m_shotSpeed = 100 * (1 + (_local4 * 0.25));
m_shotNow = 0;
m_shotAngle = 270;
m_x = param.x;
m_y = param.y;
m_animeCount = 1;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "Zako4MC", "Zako4");
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc.gra.gra);
if (((param.event.id == "PowerUp") || (param.event.id == "Score")) && (param.count == param.event.count)) {
m_enemyStatus.setPowerUp();
m_mc.gra.gra.powerup._visible = true;
} else {
m_mc.gra.gra.powerup._visible = false;
}
}
function move() {
var _local3;
var _local6 = true;
var _local2 = 0;
var _local4 = false;
do {
_local3 = false;
m_bulletCount = m_bulletCount + _local2;
m_count = m_count + _local2;
_local2 = 0;
if (m_bulletCount >= m_shotInterval) {
_local2 = m_bulletCount - m_shotInterval;
m_bulletCount = m_bulletCount - _local2;
m_count = m_count - _local2;
}
if (m_bulletCount >= m_shotInterval) {
m_bulletCount = m_bulletCount - m_shotInterval;
if (!(m_status === 2)) {
} else {
var _local5 = ((m_shotNow * SHOT_ANGLE) / (m_shotCount - 1)) - (SHOT_ANGLE / 2);
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(m_shotAngle + _local5), m_shotSpeed, m_bulletCount + _local2);
m_shotNow++;
}
}
switch (m_status) {
case 0 :
if (m_count >= WARP_TIME) {
m_animeCount = 20;
m_count = m_count - WARP_TIME;
m_status++;
_local3 = true;
} else {
m_animeCount = Math.floor(1 + ((m_count * 19) / WARP_TIME));
}
break;
case 1 :
if (m_count >= m_moveTime) {
m_y = m_param.y + (m_param.movey / 2);
m_shotAngle = jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngle(m_x, m_y) / (Math.PI/180);
m_count = m_count - m_moveTime;
m_status++;
_local3 = true;
} else {
m_y = m_param.y + ((m_count * (m_param.movey / 2)) / m_moveTime);
_local4 = true;
}
break;
case 2 :
if (m_count >= SHOT_TIME) {
m_y = m_param.y + (m_param.movey / 2);
m_count = m_count - SHOT_TIME;
m_status++;
_local3 = true;
} else {
m_y = m_param.y + (m_param.movey / 2);
_local4 = true;
}
break;
case 3 :
if (m_count >= m_moveTime) {
m_y = m_param.y + m_param.movey;
m_count = m_count - m_moveTime;
m_status++;
_local3 = true;
} else {
m_y = (m_param.y + (m_param.movey / 2)) + ((m_count * (m_param.movey / 2)) / m_moveTime);
_local4 = true;
}
break;
case 4 :
if (m_count >= WARP_TIME) {
m_count = m_count - WARP_TIME;
m_status++;
_local3 = true;
} else {
m_animeCount = Math.floor(21 + ((m_count * 19) / WARP_TIME));
}
break;
case 5 :
_local6 = false;
}
} while (_local3 || (_local2 > 0));
if (_local6 && (_local4)) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_bulletCount = m_bulletCount + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local6);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
if (!m_forceDestroy) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, 30);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._visible = true;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_mc.gotoAndStop(m_animeCount);
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Zako4(param, count));
}
static var MOVE_SPEED = 100;
static var SHOT_TIME = 2000;
static var SHOT_COUNT = 9;
static var SHOT_ANGLE = 90;
static var WARP_TIME = 500;
static var SCORE = 500;
}
Symbol 1272 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Zako5] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Zako5 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_param, m_count, m_bulletCount, m_status, m_moveTime, m_shotCount, m_shotInterval, m_shotSpeed, m_x, m_y, m_rot_base, m_rot, m_area, m_mc, m_eg, m_wl, m_enemyStatus, m_forceDestroy;
function Zako5 (param, count) {
super();
var _local6 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
var _local4;
var _local5;
m_w = 36;
m_h = 36;
m_hp = 20;
m_param = param;
m_count = count;
m_bulletCount = count;
m_status = 0;
_local4 = param.w;
_local5 = param.y - START_Y;
m_moveTime = (Math.sqrt((_local4 * _local4) + (_local5 * _local5)) * 1000) / MOVE_SPEED;
m_shotCount = SHOT_COUNT + _local6;
m_shotInterval = (m_moveTime * 2) / m_shotCount;
m_shotSpeed = 100 * (1 + (_local6 * 0.1));
m_x = param.x - param.w;
m_y = START_Y;
m_rot_base = (Math.atan2(-_local5, _local4) / (Math.PI/180)) + 90;
m_rot = m_rot_base;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "Zako5MC", "Zako5");
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
if (((param.event.id == "PowerUp") || (param.event.id == "Score")) && (param.count == param.event.count)) {
m_enemyStatus.setPowerUp();
m_mc.powerup._visible = true;
} else {
m_mc.powerup._visible = false;
}
}
function move() {
var _local3;
var _local4 = true;
var _local2 = 0;
do {
_local3 = false;
m_bulletCount = m_bulletCount + _local2;
m_count = m_count + _local2;
_local2 = 0;
if (m_bulletCount >= m_shotInterval) {
_local2 = m_bulletCount - m_shotInterval;
m_bulletCount = m_bulletCount - _local2;
m_count = m_count - _local2;
}
switch (m_status) {
case 0 :
if (m_count >= m_moveTime) {
m_count = m_count - m_moveTime;
m_status++;
_local3 = true;
} else {
m_x = (m_param.x - m_param.w) + ((m_count * m_param.w) / m_moveTime);
m_y = START_Y + (((m_param.y - START_Y) * m_count) / m_moveTime);
m_rot = -m_rot_base;
}
break;
case 1 :
if (m_count >= m_moveTime) {
m_count = m_count - m_moveTime;
m_status++;
_local3 = true;
} else {
m_x = m_param.x + ((m_count * m_param.w) / m_moveTime);
m_y = m_param.y - (((m_param.y - START_Y) * m_count) / m_moveTime);
m_rot = -(180 - m_rot_base);
}
break;
case 2 :
_local4 = false;
}
if (m_bulletCount >= m_shotInterval) {
m_bulletCount = m_bulletCount - m_shotInterval;
if (m_y > 0) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHorming(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(45), m_shotSpeed, m_bulletCount);
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHorming(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(135), m_shotSpeed, m_bulletCount);
}
}
} while (_local3 || (_local2 > 0));
if (_local4) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_bulletCount = m_bulletCount + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local4);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
if (!m_forceDestroy) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, 15);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._visible = true;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_mc._rotation = m_rot;
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Zako5(param, count));
}
static var START_Y = -40;
static var MOVE_SPEED = 150;
static var SHOT_WAIT = 250;
static var SHOT_COUNT = 2;
static var SCORE = 100;
}
Symbol 1273 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.EnemyHorming] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.EnemyHorming extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_x, m_y, m_angle, m_speed, m_w, m_h, m_hp, m_area, m_count, m_oldCount, m_nextCount, m_animeCount, m_status, m_mc, m_wl, m_bg, m_bag, m_xadd, m_yadd;
function EnemyHorming (x, y, angle, speed, count) {
super();
m_x = x;
m_y = y;
m_angle = angle;
m_speed = speed;
m_w = 16;
m_h = 16;
m_hp = 20;
m_area = {};
m_count = count;
m_oldCount = 0;
m_nextCount = HORMING_CHECK_START;
m_animeCount = 0;
m_status = 0;
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BULLET, "EnemyHormingMC", "EnemyHorming");
m_mc._visible = true;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_bg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY);
m_bag = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY_ALIVE);
}
function move() {
var _local2;
var _local4 = true;
do {
_local2 = false;
switch (m_status) {
case 0 :
m_angle = jp.bambooshootdesign.app.thundervector.util.Util.hormingAngle(m_angle, jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngle(m_x, m_y), HORMING_ANGLE);
if (m_nextCount >= HORMING_CHECK_END) {
m_status = m_status + 2;
} else {
m_status++;
}
m_xadd = (Math.cos(m_angle) * m_speed) / 1000;
m_yadd = ((-Math.sin(m_angle)) * m_speed) / 1000;
_local2 = true;
break;
case 1 :
var _local3;
if (m_count >= m_nextCount) {
_local3 = m_nextCount - m_oldCount;
m_count = m_count - m_nextCount;
m_oldCount = 0;
m_nextCount = m_nextCount + HORMING_CHECK_INC;
m_status--;
_local2 = true;
} else {
_local3 = m_count - m_oldCount;
m_oldCount = m_count;
}
m_x = m_x + (m_xadd * _local3);
m_y = m_y + (m_yadd * _local3);
break;
case 2 :
_local3 = m_count - m_oldCount;
m_oldCount = m_count;
m_x = m_x + (m_xadd * _local3);
m_y = m_y + (m_yadd * _local3);
}
} while (_local2);
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_animeCount++;
if ((((m_x < -10) || (m_x > (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH + 10))) || (m_y < -10)) || (m_y > (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT + 10))) {
return(false);
}
return(true);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_mc.gotoAndStop((m_animeCount % 3) + 1);
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bg);
delete m_bg;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bag);
delete m_bag;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
m_hp = 0;
}
function isActive() {
return(m_hp > 0);
}
static var HORMING_CHECK_START = 50;
static var HORMING_CHECK_END = 250;
static var HORMING_CHECK_INC = 25;
static var HORMING_ANGLE = 0.314159265358979;
}
Symbol 1274 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Zako6] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Zako6 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_param, m_count, m_animeCount, m_bulletCount, m_status, m_moveYTime, m_shotNow, m_moveNeg, m_x, m_y, m_area, m_mc, m_eg, m_wl, m_enemyStatus, m_laser, m_oldCount, m_forceDestroy;
function Zako6 (param, count) {
super();
var _local5 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_w = 70;
m_h = 70;
m_hp = 200;
m_param = param;
m_count = count;
m_animeCount = count;
m_bulletCount = count;
m_status = 0;
m_moveYTime = ((param.y - START_Y) * 1000) / MOVE_SPEED;
m_shotNow = 0;
m_moveNeg = 1;
m_x = param.x;
m_y = START_Y;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "Zako6MC", "Zako6");
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
if (((param.event.id == "PowerUp") || (param.event.id == "Score")) && (param.count == param.event.count)) {
m_enemyStatus.setPowerUp();
m_mc.powerup._visible = true;
} else {
m_mc.powerup._visible = false;
}
m_laser = undefined;
}
function move() {
var _local2;
var _local4 = true;
do {
_local2 = false;
switch (m_status) {
case 0 :
if (m_count > m_moveYTime) {
m_count = m_count - m_moveYTime;
m_oldCount = 0;
m_status++;
_local2 = true;
m_x = m_param.x;
m_y = START_Y + ((MOVE_SPEED * m_moveYTime) / 1000);
} else {
m_x = m_param.x;
m_y = START_Y + ((MOVE_SPEED * m_count) / 1000);
}
break;
case 1 :
if (m_shotNow < SHOT_COUNT) {
m_laser = new jp.bambooshootdesign.app.thundervector.enemy.EnemyLaser(this, 0, 0, LASER_CHARGE_TIME, LASER_SHOT_TIME, 0, 1);
}
m_status++;
_local2 = true;
break;
case 2 :
if (m_count > LASER_CHARGE_TIME) {
m_moveNeg = ((m_param.x < (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH / 2)) ? 1 : -1);
m_count = m_count - LASER_CHARGE_TIME;
m_oldCount = m_count;
m_shotNow++;
if (m_shotNow > SHOT_COUNT) {
m_status = m_status + 3;
} else {
m_status++;
}
_local2 = true;
}
break;
case 3 :
var _local3;
if (m_count > (LASER_SHOT_TIME - LASER_CHARGE_TIME)) {
_local3 = (LASER_SHOT_TIME - LASER_CHARGE_TIME) - m_oldCount;
m_count = m_count - (LASER_SHOT_TIME - LASER_CHARGE_TIME);
m_status++;
_local2 = true;
} else {
_local3 = m_count - m_oldCount;
}
m_x = m_x + (((MOVE_SPEED * _local3) / 1000) * m_moveNeg);
m_oldCount = m_count;
break;
case 4 :
if (m_count > LASER_WAIT_TIME) {
m_count = m_count - LASER_WAIT_TIME;
m_status = m_status - 3;
_local2 = true;
}
break;
case 5 :
if (m_count > m_moveYTime) {
m_count = m_count - m_moveYTime;
m_status++;
_local2 = true;
} else {
m_y = m_param.y - ((MOVE_SPEED * m_count) / 1000);
}
break;
case 6 :
_local4 = false;
}
} while (_local2);
if (_local4) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_animeCount = m_animeCount + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local4);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
if (!m_forceDestroy) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, 30);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
if (m_laser != undefined) {
m_laser.cancel();
m_laser = undefined;
}
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._visible = true;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_mc.gotoAndStop((Math.floor(m_animeCount / jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate()) % m_mc._totalframes) + 1);
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y - 20;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
function detach() {
m_laser = undefined;
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Zako6(param, count));
}
static var START_Y = -40;
static var MOVE_SPEED = 100;
static var LASER_CHARGE_TIME = 1000;
static var LASER_SHOT_TIME = 2000;
static var LASER_WAIT_TIME = 500;
static var SHOT_COUNT = 3;
static var SCORE = 200;
}
Symbol 1275 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.EnemyLaser] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.EnemyLaser extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_area, m_x, m_y, m_offx, m_offy, m_count, m_parent, m_time, m_shotWait, m_mcLaser, m_laserColor, m_mcAcc, m_accColor, m_wl, m_bg, m_accSeID, m_laserSeID;
function EnemyLaser (parent, offx, offy, chargeTime, totalTime, count, level) {
super();
m_w = 18;
m_h = 800;
m_hp = 20;
m_area = {};
m_x = parent.getX();
m_y = parent.getY();
m_offx = offx;
m_offy = offy;
m_count = count;
m_parent = parent;
m_time = totalTime;
m_shotWait = chargeTime;
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mcLaser = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BULLET, ("PlayerLaserP" + level) + "MC", "EL");
m_mcLaser.stop();
m_mcLaser._rotation = 180;
m_laserColor = new Color(m_mcLaser);
m_laserColor.setTransform({ra:100, rb:255, ga:100, gb:-130, ba:100, bb:-200, aa:100, ab:0});
m_mcAcc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BULLET, "EnemyLaserAccMC", "ELA");
m_accColor = new Color(m_mcAcc);
m_accColor.setTransform({ra:100, rb:255, ga:100, gb:-130, ba:100, bb:-200, aa:100, ab:0});
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_bg = undefined;
m_accSeID = jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("EnemyLaserCharge");
m_laserSeID = -1;
}
function move() {
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_x = m_parent.getX();
m_y = m_parent.getY();
if (m_count > m_shotWait) {
if (m_bg == undefined) {
m_bg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY);
m_laserSeID = jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("EnemyLaser");
}
}
if (m_count >= m_time) {
detach();
return(false);
}
return(true);
}
function ctrlAndDisp() {
var _local2;
if (m_count > m_shotWait) {
_local2 = m_mcLaser;
_local2._x = m_x + m_offx;
_local2._y = (m_y + m_offy) + (_local2._height / 2);
_local2._visible = true;
_local2.gotoAndStop(Math.floor(((m_count - m_shotWait) / (m_time - m_shotWait)) * _local2._totalframes) + 1);
}
_local2 = m_mcAcc;
_local2._x = m_x + m_offx;
_local2._y = m_y + m_offy;
_local2._rotation = 180;
_local2.gotoAndStop(Math.floor((m_count / m_shotWait) * 45) + 1);
_local2._visible = true;
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
if (m_bg != undefined) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bg);
delete m_bg;
}
delete m_laserColor;
delete m_accColor;
m_mcAcc.removeMovieClip();
m_mcLaser.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x + m_offx;
m_area.m_y = (m_y + (m_mcLaser._height / 2)) + m_offy;
m_area.m_w = m_mcLaser._width / 2;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
}
function isActive() {
return(m_hp > 0);
}
function cancel() {
m_count = m_time;
m_parent = undefined;
stopSE();
}
function detach() {
if (m_parent != undefined) {
m_parent.detach();
}
stopSE();
}
function stopSE() {
if (m_accSeID != -1) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.stopSE(m_accSeID);
}
if (m_laserSeID != -1) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.stopSE(m_laserSeID);
}
}
}
Symbol 1276 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Zako7] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Zako7 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_angle, m_speed, m_param, m_count, m_status, m_x, m_y, m_xadd, m_yadd, m_moveTime, m_shot1Count, m_shot1Now, m_shot2Count, m_shot2Interval, m_shot2Speed, m_shot2Now, m_shot3Count, m_shot3Speed, m_area, m_mc, m_eg, m_wl, m_enemyStatus, m_color, m_shotAngle, m_forceDestroy;
function Zako7 (param, count) {
super();
var _local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_w = 68;
m_h = 52;
m_hp = 200;
m_angle = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(param.angle);
m_speed = param.speed;
m_param = param;
m_count = count;
m_status = 0;
m_x = param.x;
m_y = START_Y;
m_xadd = (Math.cos(m_angle) * m_speed) / 1000;
m_yadd = ((-Math.sin(m_angle)) * m_speed) / 1000;
m_moveTime = (param.y - m_y) / m_yadd;
m_shot1Count = SHOT1_COUNT;
m_shot1Now = 0;
m_shot2Count = SHOT2_COUNT + (Math.floor(_local4 / 2) * 2);
m_shot2Interval = SHOT2_TIME / m_shot2Count;
m_shot2Speed = 100 * (1 + (_local4 * 0.25));
m_shot2Now = 0;
m_shot3Count = SHOT3_COUNT + (Math.floor(_local4 / 2) * 2);
m_shot3Speed = 100 * (1 + (_local4 * 0.25));
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "Zako7MC", "Zako7");
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
if (((param.event.id == "PowerUp") || (param.event.id == "Score")) && (param.count == param.event.count)) {
m_enemyStatus.setPowerUp();
m_mc.powerup._visible = true;
} else {
m_mc.powerup._visible = false;
}
m_color = {ra:100, rb:0, ga:100, gb:0, ba:100, bb:0, aa:100, ab:0};
m_enemyStatus.setCustomColor(m_color);
}
function move() {
var _local2;
var _local5 = true;
do {
_local2 = false;
switch (m_status) {
case 0 :
if (m_count >= m_moveTime) {
m_x = m_param.x + (m_xadd * m_moveTime);
m_y = START_Y + (m_yadd * m_moveTime);
m_count = m_count - m_moveTime;
m_status++;
_local2 = true;
} else {
m_x = m_param.x + (m_xadd * m_count);
m_y = START_Y + (m_yadd * m_count);
}
break;
case 1 :
if (m_shot1Now >= m_shot1Count) {
m_status = 4;
} else {
m_shot2Now = 0;
m_status++;
}
m_shotAngle = jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngle(m_x, m_y + 14);
_local2 = true;
break;
case 2 :
if (m_count > m_shot2Interval) {
m_count = m_count - m_shot2Interval;
var _local4;
_local4 = ((-SHOT2_RANGE) / 2) + ((m_shot2Now * SHOT2_RANGE) / (m_shot2Count - 1));
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x, m_y + 14, m_shotAngle + jp.bambooshootdesign.app.thundervector.util.Util.getAngle(_local4), m_shot2Speed, m_count);
m_shot2Now++;
if (m_shot2Now >= m_shot2Count) {
m_shot1Now++;
m_status++;
}
_local2 = true;
}
break;
case 3 :
if (m_count > WAIT_TIME_SHOT) {
m_count = m_count - WAIT_TIME_SHOT;
m_status = m_status - 2;
_local2 = true;
}
break;
case 4 :
if (m_count > BLINK_TIME) {
m_count = m_count - BLINK_TIME;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, 30);
var _local4 = jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngle(m_x, m_y) - jp.bambooshootdesign.app.thundervector.util.Util.getAngle(SHOT3_RANGE / 2);
var _local3 = m_shot3Count;
while (_local3 > 0) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x, m_y, _local4, m_shot3Speed, m_count);
_local4 = _local4 + jp.bambooshootdesign.app.thundervector.util.Util.getAngle(SHOT3_RANGE / (m_shot3Count - 1));
_local3--;
}
m_status++;
_local2 = true;
} else {
var _local3 = m_count % (BLINK_TIME / BLINK_COUNT);
if (_local3 > ((BLINK_TIME / BLINK_COUNT) / 2)) {
_local3 = (BLINK_TIME / BLINK_COUNT) - _local3;
}
m_color.rb = Math.floor((_local3 * 200) / ((BLINK_TIME / BLINK_COUNT) / 2));
}
break;
case 5 :
_local5 = false;
}
} while (_local2);
if (_local5) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local5);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
if (!m_forceDestroy) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, 20);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._visible = true;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_enemyStatus.forceUpdate();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Zako7(param, count));
}
static var START_Y = -40;
static var SHOT1_COUNT = 3;
static var SHOT2_TIME = 500;
static var SHOT2_COUNT = 3;
static var SHOT2_RANGE = 40;
static var SHOT3_COUNT = 9;
static var SHOT3_RANGE = 60;
static var WAIT_TIME_SHOT = 500;
static var BLINK_TIME = 2000;
static var BLINK_COUNT = 2.5;
static var SCORE = 500;
}
Symbol 1277 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Zako8] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Zako8 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_param, m_count, m_status, m_shotDir, m_shotSpeed, m_turnY, m_moveYTime, m_turnTime, m_x, m_y, m_area, m_mc, m_eg, m_wl, m_enemyStatus, m_forceDestroy;
function Zako8 (param, count) {
super();
var _local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_w = 50;
m_h = 28;
m_hp = 5;
m_param = param;
m_count = count;
m_status = 0;
m_shotDir = SHOT_DIR;
m_shotSpeed = 100 * (1 + (_local4 * 0.25));
m_turnY = Math.abs(param.rad);
m_moveYTime = (((param.y - m_turnY) - START_Y) * 1000) / MOVE_SPEED;
m_turnTime = ((((Math.PI * m_turnY) * 2) / 4) / MOVE_SPEED) * 1000;
m_x = param.x - param.rad;
m_y = START_Y;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "Zako8MC", "Zako8");
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
if (((param.event.id == "PowerUp") || (param.event.id == "Score")) && (param.count == param.event.count)) {
m_enemyStatus.setPowerUp();
m_mc.powerup._visible = true;
} else {
m_mc.powerup._visible = false;
}
}
function move() {
var _local2;
var _local6 = true;
do {
_local2 = false;
switch (m_status) {
case 0 :
if (m_count > m_moveYTime) {
m_count = m_count - m_moveYTime;
m_status++;
_local2 = true;
} else {
m_x = m_param.x - m_param.rad;
m_y = START_Y + ((MOVE_SPEED * m_count) / 1000);
}
break;
case 1 :
if (m_count > m_turnTime) {
m_x = m_param.x;
m_y = m_param.y;
m_count = m_count - m_turnTime;
m_status++;
_local2 = true;
} else {
var _local5 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(((m_count * 90) / m_turnTime) + 180);
m_x = m_param.x + (Math.cos(_local5) * m_param.rad);
m_y = (m_param.y - m_turnY) - (Math.sin(_local5) * m_turnY);
}
break;
case 2 :
var _local3;
var _local4;
_local4 = Math.floor((m_shotDir - 1) / 2) * -10;
_local3 = m_shotDir;
while (_local3 > 0) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngleAdd(m_x, m_y, _local4), m_shotSpeed, m_count);
_local4 = _local4 + 10;
_local3--;
}
m_status++;
_local2 = true;
break;
case 3 :
if (m_count > m_turnTime) {
m_count = m_count - m_turnTime;
m_status++;
_local2 = true;
} else {
var _local5 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(((m_count * 90) / m_turnTime) + 270);
m_x = m_param.x + (Math.cos(_local5) * m_param.rad);
m_y = (m_param.y - m_turnY) - (Math.sin(_local5) * m_turnY);
}
break;
case 4 :
if (m_count > m_moveYTime) {
m_count = m_count - m_moveYTime;
m_status++;
_local2 = true;
} else {
m_x = m_param.x + m_param.rad;
m_y = (m_param.y - m_turnY) - ((MOVE_SPEED * m_count) / 1000);
}
break;
case 5 :
_local6 = false;
}
} while (_local2);
if (_local6) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local6);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
if (!m_forceDestroy) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, 15);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._visible = true;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Zako8(param, count));
}
static var START_Y = -40;
static var MOVE_SPEED = 150;
static var SHOT_DIR = 1;
static var SCORE = 100;
}
Symbol 1278 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Zako9] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Zako9 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_param, m_count, m_bulletCount, m_status, m_moveSpeed, m_turnY, m_moveYTime, m_turnDist, m_turnTime, m_shotInterval, m_shotSpeed, m_x, m_y, m_rot, m_area, m_mc, m_eg, m_wl, m_enemyStatus, m_forceDestroy;
function Zako9 (param, count) {
super();
var _local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_w = 50;
m_h = 28;
m_hp = 100;
m_param = param;
m_count = count;
m_bulletCount = count;
m_status = 0;
m_moveSpeed = m_param.speed;
m_turnY = Math.abs(param.rad);
m_moveYTime = (((param.y - m_turnY) - START_Y) * 1000) / m_moveSpeed;
m_turnDist = ((Math.PI * m_turnY) * 2) / 4;
m_turnTime = (m_turnDist / (m_moveSpeed - ((m_moveSpeed / 2) / 2))) * 1000;
m_shotInterval = SHOT_TIME - (_local4 * 60);
m_shotSpeed = 100 * (1 + (_local4 * 0.25));
m_x = param.x - param.rad;
m_y = START_Y;
m_rot = 0;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "Zako9MC", "Zako9");
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
if (((param.event.id == "PowerUp") || (param.event.id == "Score")) && (param.count == param.event.count)) {
m_enemyStatus.setPowerUp();
m_mc.powerup._visible = true;
} else {
m_mc.powerup._visible = false;
}
}
function move() {
var _local3;
var _local7 = true;
var _local2 = 0;
do {
_local3 = false;
m_bulletCount = m_bulletCount + _local2;
m_count = m_count + _local2;
_local2 = 0;
if (m_bulletCount >= m_shotInterval) {
_local2 = m_bulletCount - m_shotInterval;
m_bulletCount = m_bulletCount - _local2;
m_count = m_count - _local2;
}
switch (m_status) {
case 0 :
if (m_count > m_moveYTime) {
m_count = m_count - m_moveYTime;
m_status++;
_local3 = true;
m_x = m_param.x - m_param.rad;
m_y = START_Y + ((m_moveSpeed * m_moveYTime) / 1000);
} else {
m_x = m_param.x - m_param.rad;
m_y = START_Y + ((m_moveSpeed * m_count) / 1000);
}
break;
case 1 :
if (m_count > m_turnTime) {
m_x = m_param.x;
m_y = m_param.y;
m_count = m_count - m_turnTime;
m_status++;
_local3 = true;
} else {
var _local5 = ((-m_count) / m_turnTime) * (m_moveSpeed / 2);
var _local6 = ((m_moveSpeed * m_count) + ((_local5 * m_count) / 2)) / 1000;
var _local4 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(((_local6 / m_turnDist) * 90) + 180);
m_x = m_param.x + (Math.cos(_local4) * m_param.rad);
m_y = (m_param.y - m_turnY) - (Math.sin(_local4) * m_turnY);
m_rot = ((m_count * 90) / m_turnTime) * ((m_param.rad >= 0) ? -1 : 1);
}
break;
case 2 :
if (m_count > m_turnTime) {
m_x = m_param.x + m_param.rad;
m_y = m_param.y - m_turnY;
m_count = m_count - m_turnTime;
m_status++;
_local3 = true;
} else {
var _local5 = (m_count / m_turnTime) * (m_moveSpeed / 2);
var _local6 = (((m_moveSpeed / 2) * m_count) + ((_local5 * m_count) / 2)) / 1000;
var _local4 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(((_local6 / m_turnDist) * 90) + 270);
m_x = m_param.x + (Math.cos(_local4) * m_param.rad);
m_y = (m_param.y - m_turnY) - (Math.sin(_local4) * m_turnY);
m_rot = (((m_count * 90) / m_turnTime) + 90) * ((m_param.rad >= 0) ? -1 : 1);
}
break;
case 3 :
if (m_count > m_moveYTime) {
m_count = m_count - m_moveYTime;
m_status++;
_local3 = true;
} else {
m_x = m_param.x + m_param.rad;
m_y = (m_param.y - m_turnY) - ((m_moveSpeed * m_count) / 1000);
m_rot = 180;
}
break;
case 4 :
_local7 = false;
}
if (m_bulletCount >= m_shotInterval) {
m_bulletCount = m_bulletCount - m_shotInterval;
if (m_y > 0) {
switch (m_status) {
case 0 :
case 1 :
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngle(m_x, m_y), m_shotSpeed, m_bulletCount + _local2);
break;
case 2 :
case 3 :
new jp.bambooshootdesign.app.thundervector.enemy.EnemyMine(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngle(m_x, m_y), 90, m_bulletCount + _local2);
}
}
}
} while (_local3 || (_local2 > 0));
if (_local7) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_bulletCount = m_bulletCount + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local7);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
if (!m_forceDestroy) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, 15);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._rotation = m_rot;
m_mc._visible = true;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Zako9(param, count));
}
static var START_Y = -40;
static var SHOT_TIME = 1000;
static var SCORE = 200;
}
Symbol 1279 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.EnemyMine] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.EnemyMine extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_x, m_y, m_angle, m_speed, m_w, m_h, m_hp, m_xadd, m_yadd, m_area, m_count, m_shotCount, m_shotSpeed, m_mc, m_eg, m_wl, m_enemyStatus, m_forceDestroy, m_param;
function EnemyMine (x, y, angle, speed, count) {
super();
var _local3;
var _local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_x = x;
m_y = y;
m_angle = angle;
m_speed = speed;
m_w = 36;
m_h = 36;
m_hp = 20;
_local3 = count - jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_xadd = (Math.cos(m_angle) * m_speed) / 1000;
m_yadd = ((-Math.sin(m_angle)) * m_speed) / 1000;
m_x = m_x + (m_xadd * _local3);
m_y = m_y + (m_yadd * _local3);
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_count = (MOVE_TIME + ANIME_TIME) - _local3;
m_shotCount = SHOT_COUNT + _local4;
m_shotSpeed = 100 * (1 + (_local4 * 0.25));
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "EnemyMineMC", "EnemyMine");
m_mc.gotoAndStop(1);
m_mc.powerup._visible = false;
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
}
function move() {
var _local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
if (m_count < _local4) {
_local4 = m_count;
}
m_x = m_x + (m_xadd * _local4);
m_y = m_y + (m_yadd * _local4);
m_count = m_count - _local4;
if (m_count <= 0) {
var _local3;
_local3 = -90 - (SHOT_RANGE / 2);
var _local2 = m_shotCount;
while (_local2 > 0) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(_local3), m_shotSpeed, m_count);
_local3 = _local3 + (SHOT_RANGE / (m_shotCount - 1));
_local2--;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MineExplosion");
return(false);
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
m_enemyStatus.clear();
return(true);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
if (!m_forceDestroy) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, 15);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._visible = true;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
if (m_count < ANIME_TIME) {
var _local2 = m_mc;
_local2.gotoAndStop(_local2._totalframes - Math.floor((m_count * _local2._totalframes) / ANIME_TIME));
}
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
static var MOVE_TIME = 1000;
static var ANIME_TIME = 250;
static var SHOT_COUNT = 5;
static var SHOT_RANGE = 120;
static var SCORE = 100;
}
Symbol 1280 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Zako10] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Zako10 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_param, m_count, m_bulletCount, m_status, m_moveYTime, m_shotCount, m_shotInterval, m_shotNow, m_x, m_y, m_area, m_mc, m_eg, m_wl, m_enemyStatus, m_laser, m_oldCount, m_forceDestroy;
function Zako10 (param, count) {
super();
var _local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_w = 150;
m_h = 60;
m_hp = 500;
m_param = param;
m_count = count;
m_bulletCount = count;
m_status = 0;
m_moveYTime = ((param.y - START_Y) * 1000) / MOVE_SPEED;
m_shotCount = MINE_COUNT + _local4;
m_shotInterval = SHOT_TIME / m_shotCount;
m_shotNow = 0;
m_x = param.x;
m_y = START_Y;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "Zako10MC", "Zako10");
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
if (((param.event.id == "PowerUp") || (param.event.id == "Score")) && (param.count == param.event.count)) {
m_enemyStatus.setPowerUp();
m_mc.powerup._visible = true;
} else {
m_mc.powerup._visible = false;
}
m_laser = undefined;
}
function move() {
var _local2;
var _local10 = true;
do {
_local2 = false;
switch (m_status) {
case 0 :
if (m_count > m_moveYTime) {
m_count = m_count - m_moveYTime;
m_oldCount = 0;
m_status++;
_local2 = true;
m_x = m_param.x;
m_y = START_Y + ((MOVE_SPEED * m_moveYTime) / 1000);
} else {
m_x = m_param.x;
m_y = START_Y + ((MOVE_SPEED * m_count) / 1000);
}
break;
case 1 :
var _local8 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getPosition();
var _local3;
var _local9;
var _local6;
var _local7;
if (m_count > SEARCH_TIME) {
_local7 = SEARCH_TIME - m_oldCount;
m_count = m_count - SEARCH_TIME;
m_status++;
_local2 = true;
} else {
_local7 = m_count - m_oldCount;
}
_local3 = _local8.x - m_x;
_local9 = ((_local3 > 0) ? 1 : -1);
_local3 = Math.abs(_local3);
_local6 = (MOVE_SPEED * _local7) / 1000;
if (_local6 > _local3) {
_local6 = _local3;
}
m_x = m_x + (_local6 * _local9);
m_oldCount = m_count;
break;
case 2 :
m_laser = new jp.bambooshootdesign.app.thundervector.enemy.EnemyLaser(this, 0, 0, 1200, 3000, 0, 1);
m_status++;
_local2 = true;
break;
case 3 :
if (m_count >= m_shotInterval) {
m_count = m_count - m_shotInterval;
var _local5 = m_shotNow % 3;
var _local4 = MINE_POS[_local5];
new jp.bambooshootdesign.app.thundervector.enemy.EnemyMine(m_x - _local4, m_y - (_local4 / 4.25), jp.bambooshootdesign.app.thundervector.util.Util.getAngle(-90 - (_local5 * 10)), 90, m_count);
new jp.bambooshootdesign.app.thundervector.enemy.EnemyMine(m_x + _local4, m_y - (_local4 / 4.25), jp.bambooshootdesign.app.thundervector.util.Util.getAngle(-90 + (_local5 * 10)), 90, m_count);
m_shotNow++;
if (m_shotNow >= m_shotCount) {
m_status++;
}
}
break;
case 4 :
if (m_count > WAIT_TIME) {
m_count = m_count - WAIT_TIME;
m_status++;
_local2 = true;
}
break;
case 5 :
if (m_count > m_moveYTime) {
m_count = m_count - m_moveYTime;
m_oldCount = 0;
m_status++;
_local2 = true;
} else {
m_y = m_param.y - ((MOVE_SPEED * m_count) / 1000);
}
break;
case 6 :
_local10 = false;
}
} while (_local2);
if (_local10) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local10);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
if (!m_forceDestroy) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, 60);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
if (m_laser != undefined) {
m_laser.cancel();
m_laser = undefined;
}
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._visible = true;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y - 20;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
function detach() {
m_laser = undefined;
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Zako10(param, count));
}
static var START_Y = -40;
static var MOVE_SPEED = 75;
static var SEARCH_TIME = 2500;
static var MINE_COUNT = 3;
static var SHOT_TIME = 3000;
static var WAIT_TIME = 1000;
static var MINE_POS = [47, 57, 68];
static var SCORE = 1000;
}
Symbol 1281 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Rock] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Rock extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_x, m_y, m_w, m_h, m_hp, m_angle, m_speed, m_expSize, m_param, m_count, m_score, m_xadd, m_yadd, m_area, m_hitCount, move, m_mc, m_eg, m_wl, m_bg, m_enemyStatus, m_forceDestroy;
function Rock (param, count, w, h, hp, mcid, mcname, expSize, score) {
super();
var _local7;
var _local6;
var _local4;
var _local3;
var _local9 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_x = param.x;
m_y = ((param.y == undefined) ? (START_Y) : (param.y));
m_w = w;
m_h = h;
m_hp = hp;
m_angle = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(param.angle);
m_speed = param.speed;
m_expSize = expSize;
m_param = param;
m_count = count;
m_score = score;
_local7 = count - jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_xadd = (Math.cos(m_angle) * m_speed) / 1000;
m_yadd = ((-Math.sin(m_angle)) * m_speed) / 1000;
m_x = m_x + (m_xadd * _local7);
m_y = m_y + (m_yadd * _local7);
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
_local4 = 0;
_local3 = -1;
if (m_yadd != 0) {
if (m_yadd < 0) {
_local4 = ((-m_y) + START_Y) / m_yadd;
} else {
_local4 = ((jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT + 0) - m_y) / m_yadd;
_local3 = Math.floor((((jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT - 70) - m_y) / m_yadd) + 1);
}
}
if (m_xadd != 0) {
if (m_xadd < 0) {
_local6 = (-m_x) / m_xadd;
} else {
_local6 = (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH - m_x) / m_xadd;
}
if (_local6 < _local3) {
_local3 = -1;
}
if (_local4 > _local6) {
_local4 = _local6;
}
}
if ((_local3 != -1) && (_local4 < _local3)) {
_local3 = -1;
}
m_count = _local4;
if (_local3 != -1) {
m_hitCount = _local4 - _local3;
move = moveCheck;
} else {
move = moveNoCheck;
}
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, mcid, mcname);
m_mc._visible = true;
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_bg = undefined;
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
if ((param.event.id == "PowerUp") && (param.count == param.event.count)) {
m_enemyStatus.setPowerUp();
m_mc.powerup._visible = true;
} else {
m_mc.powerup._visible = false;
}
}
function moveCheck() {
var _local2 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_x = m_x + (m_xadd * _local2);
m_y = m_y + (m_yadd * _local2);
m_count = m_count - _local2;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
if (m_count <= m_hitCount) {
move = moveNoCheck;
m_bg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY);
return(m_count > 0);
}
return(true);
}
function moveNoCheck() {
var _local2 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_x = m_x + (m_xadd * _local2);
m_y = m_y + (m_yadd * _local2);
m_count = m_count - _local2;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
return(m_count > 0);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
if (!m_forceDestroy) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(m_score);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, m_expSize);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
delete m_eg;
if (m_bg != undefined) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_bg);
delete m_bg;
}
m_enemyStatus.destroy();
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(20);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
static var START_Y = -40;
}
Symbol 1282 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Rock1] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Rock1 extends jp.bambooshootdesign.app.thundervector.enemy.Rock
{
function Rock1 (param, count) {
super(param, count, 38, 30, 100, "Rock1MC", "Rock1", 15, SCORE);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Rock1(param, count));
}
static var SCORE = 200;
}
Symbol 1283 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Rock2] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Rock2 extends jp.bambooshootdesign.app.thundervector.enemy.Rock
{
function Rock2 (param, count) {
super(param, count, 50, 56, 200, "Rock2MC", "Rock2", 25, SCORE);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Rock2(param, count));
}
static var SCORE = 600;
}
Symbol 1284 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Rock3] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Rock3 extends jp.bambooshootdesign.app.thundervector.enemy.Rock
{
var m_hp, m_forceDestroy, m_param, m_y, m_w, m_x, m_expSize, m_mc, m_enemyStatus;
function Rock3 (param, count) {
super(param, count, 148, 136, 400, "Rock3MC", "Rock3", 40, SCORE);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
if (!m_forceDestroy) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
var _local2 = DIV_NUM;
while (_local2 > 0) {
new jp.bambooshootdesign.app.thundervector.enemy.Rock1({x:(m_x + ((Math.random() * m_w) / 2)) - (m_w / 4), y:(m_y + ((Math.random() * m_y) / 2)) - (m_y / 4), angle:(m_param.angle + (Math.random() * 30)) - 10, speed:m_param.speed + (Math.random() * 20)}, 0);
_local2--;
}
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, m_expSize);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_enemyStatus.update();
return(true);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Rock3(param, count));
}
static var DIV_NUM = 5;
static var SCORE = 1000;
}
Symbol 1285 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Hindrance] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Hindrance extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_x, m_y, m_w, m_h, m_hp, m_speed, m_param, m_count, m_area, m_hitCount, move, m_mc, m_eg, m_wl, m_bg;
function Hindrance (param, count) {
super();
var _local4;
var _local8;
var _local3;
var _local5;
m_x = param.x;
m_y = START_Y;
m_w = 542;
m_h = 68;
m_hp = 20;
m_speed = param.speed / 1000;
m_param = param;
m_count = count;
_local4 = count - jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_y = m_y + (m_speed * _local4);
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
_local3 = ((jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT + 0) - m_y) / m_speed;
_local5 = Math.floor((((jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT - 70) - m_y) / m_speed) + 1);
m_count = _local3;
m_hitCount = _local3 - _local5;
move = moveCheck;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "HindranceMC", "Hindrance");
m_mc._visible = true;
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_bg = undefined;
}
function moveCheck() {
var _local2 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_y = m_y + (m_speed * _local2);
m_count = m_count - _local2;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
if (m_count <= m_hitCount) {
move = moveNoCheck;
m_bg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY);
return(m_count > 0);
}
return(true);
}
function moveNoCheck() {
var _local2 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_y = m_y + (m_speed * _local2);
m_count = m_count - _local2;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
return(m_count > 0);
}
function ctrlAndDisp() {
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
delete m_eg;
if (m_bg != undefined) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_bg);
delete m_bg;
}
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(20);
}
function hit(hp) {
}
function isActive() {
return(true);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Hindrance(param, count));
}
static var START_Y = -40;
}
Symbol 1286 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Boss1] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Boss1 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_param, m_count, m_status, m_attackStatus, m_attackCount, m_active, m_x, m_y, m_area, m_shotCount, m_shotInterval, m_shotSpeed, m_shotNow, m_expInterval, m_expCount, m_expNow, m_mc, m_eg, m_wl, m_enemyStatus, m_laserLeft, m_laserRight;
function Boss1 (param, count) {
super();
var _local3;
m_w = 100;
m_h = 220;
m_hp = 2500;
m_param = param;
m_count = count;
m_status = 0;
m_attackStatus = 0;
m_attackCount = 0;
m_active = false;
_local3 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_x = START_X;
m_y = START_Y;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_shotCount = SHOT_COUNT + _local3;
m_shotInterval = SHOT_TIME / m_shotCount;
m_shotSpeed = 100 * (1 + (_local3 * 0.25));
m_shotNow = 0;
m_expInterval = EXP_TIME / EXP_COUNT;
m_expCount = EXP_COUNT;
m_expNow = 0;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "Boss1CenterMC", "Boss1");
m_mc._visible = true;
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
m_laserLeft = new jp.bambooshootdesign.app.thundervector.enemy.Boss1LaserBarrel(this, "Left");
m_laserRight = new jp.bambooshootdesign.app.thundervector.enemy.Boss1LaserBarrel(this, "Right");
}
function move() {
var _local2;
var _local7 = true;
var _local8;
do {
_local2 = false;
switch (m_status) {
case 0 :
if (m_count > IN_TIME) {
m_count = m_count - IN_TIME;
m_attackStatus = 1;
m_attackCount = m_count;
m_count = m_count + (MOVE_TIME / 2);
m_status++;
m_laserLeft.command("go");
m_laserRight.command("go");
m_active = true;
_local2 = true;
} else {
m_x = START_X;
m_y = START_Y + ((m_count / IN_TIME) * IN_MOVE_Y);
}
break;
case 1 :
if (m_count > MOVE_TIME) {
m_count = m_count - MOVE_TIME;
m_status++;
_local2 = true;
} else {
m_x = (START_X + (MOVE_X / 2)) - ((m_count / MOVE_TIME) * MOVE_X);
m_y = START_Y + IN_MOVE_Y;
if (m_hp <= 0) {
m_status = 3;
_local2 = true;
}
}
break;
case 2 :
if (m_count > MOVE_TIME) {
m_count = m_count - MOVE_TIME;
m_status--;
_local2 = true;
} else {
m_x = (START_X - (MOVE_X / 2)) + ((m_count / MOVE_TIME) * MOVE_X);
m_y = START_Y + IN_MOVE_Y;
if (m_hp <= 0) {
m_status = 3;
_local2 = true;
}
}
break;
case 3 :
m_laserLeft.command("destroy");
m_laserRight.command("destroy");
m_status = 4;
m_attackStatus = 3;
m_count = 0;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.forceDestroy();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.clearActiveList();
_local2 = true;
case 4 :
if (m_count > m_expInterval) {
m_count = m_count - m_expInterval;
m_expNow++;
if (m_expCount <= m_expNow) {
new jp.bambooshootdesign.app.thundervector.enemy.ExplosionBoss(m_x, m_y, 200);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("BigExplosion");
m_status = 5;
_local2 = true;
} else {
new jp.bambooshootdesign.app.thundervector.enemy.Explosion((m_x + (Math.random() * m_w)) - (m_w / 2), (m_y + (Math.random() * m_h)) - (m_h / 2), 15 + (Math.random() * 10));
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion", 70);
}
}
break;
case 5 :
m_laserLeft.command("fin");
m_laserRight.command("fin");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
m_status = 6;
_local2 = true;
break;
case 6 :
_local7 = false;
}
} while (_local2);
do {
_local2 = false;
switch (m_attackStatus) {
case 0 :
break;
case 1 :
if (m_attackCount >= m_shotInterval) {
m_attackCount = m_attackCount - m_shotInterval;
var _local4;
var _local6;
var _local5;
_local4 = ((-(SHOT_DIR - 1)) / 2) * 15;
_local6 = m_x;
_local5 = m_y + 100;
var _local3 = SHOT_DIR;
while (_local3 > 0) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(_local6, _local5, jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngleAdd(_local6, _local5, _local4), m_shotSpeed, m_attackCount);
_local4 = _local4 + 15;
_local3--;
}
m_shotNow++;
if (m_shotNow >= m_shotCount) {
m_attackStatus++;
}
_local2 = true;
}
break;
case 2 :
if (m_attackCount < SHOT_WAIT) {
break;
}
m_attackCount = m_attackCount - SHOT_WAIT;
m_shotNow = 0;
m_attackStatus--;
_local2 = true;
m_laserLeft.command("attack");
m_laserRight.command("attack");
}
} while (_local2);
if (m_active) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_attackCount = m_attackCount + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local7);
}
function ctrlAndDisp() {
m_mc._x = m_x;
m_mc._y = m_y;
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Boss1(param, count));
}
static var START_X = 370;
static var START_Y = -150;
static var IN_MOVE_Y = 200;
static var IN_TIME = 5000;
static var MOVE_TIME = 6000;
static var MOVE_X = 400;
static var SHOT_DIR = 5;
static var SHOT_COUNT = 3;
static var SHOT_TIME = 3000;
static var SHOT_RAD = 20;
static var SHOT_WAIT = 3000;
static var EXP_TIME = 3000;
static var EXP_COUNT = 40;
static var SCORE = 10000;
}
Symbol 1287 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Boss1LaserBarrel] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Boss1LaserBarrel extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_count, m_status, m_type, m_parent, m_active, m_destroyed, m_command, m_expInterval, m_expCount, m_expNow, m_laser, m_x, m_y, m_area, m_mc, m_eg, m_wl, m_enemyStatus;
function Boss1LaserBarrel (parent, type) {
super();
var _local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_w = 70;
m_h = 200;
m_hp = 1500;
m_count = 0;
m_status = 0;
m_type = type;
m_parent = parent;
m_active = false;
m_destroyed = false;
m_command = "";
m_expInterval = EXP_TIME / EXP_COUNT;
m_expCount = EXP_COUNT;
m_expNow = 0;
m_laser = undefined;
m_x = parent.getX() + ((m_type == "Left") ? -100 : 100);
m_y = parent.getY();
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, ("Boss1" + type) + "MC", "Boss1LB");
m_mc._visible = true;
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
}
function move() {
var _local2;
var _local3 = true;
var _local4;
do {
_local2 = false;
switch (m_status) {
case 0 :
m_active = false;
if (m_command != "") {
m_status = 1;
}
break;
case 1 :
m_active = true;
if (m_hp <= 0) {
m_status = 3;
_local2 = true;
} else {
switch (m_command) {
case "attack" :
m_status = 2;
break;
case "destroy" :
m_status = 4;
}
m_command = "";
}
break;
case 2 :
m_laser = new jp.bambooshootdesign.app.thundervector.enemy.EnemyLaser(this, ((m_type == "Left") ? 10 : -10), 90, 1200, 3000, 0, 5);
m_status = 1;
_local2 = true;
break;
case 3 :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
m_status = 4;
_local2 = true;
break;
case 4 :
if (m_laser != undefined) {
m_laser.cancel();
m_laser = undefined;
}
m_status = 5;
m_count = 0;
m_active = false;
_local2 = true;
break;
case 5 :
if (m_count > m_expInterval) {
m_count = m_count - m_expInterval;
m_expNow++;
if (m_expCount <= m_expNow) {
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, 60);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion", 150);
m_status = 6;
m_destroyed = true;
_local2 = true;
} else {
new jp.bambooshootdesign.app.thundervector.enemy.Explosion((m_x + (Math.random() * m_w)) - (m_w / 2), (m_y + (Math.random() * m_h)) - (m_h / 2), 15 + (Math.random() * 10));
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion", 70);
}
}
break;
case 6 :
if (m_command == "fin") {
m_status = 7;
_local2 = true;
}
m_command = "";
break;
case 7 :
_local3 = false;
}
m_x = m_parent.getX() + ((m_type == "Left") ? -100 : 100);
m_y = m_parent.getY();
} while (_local2);
if (m_active) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local3);
}
function ctrlAndDisp() {
if (m_destroyed) {
m_mc._visible = false;
} else {
m_mc._x = m_x;
m_mc._y = m_y;
}
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
function command(cmd) {
m_command = cmd;
}
function detach() {
m_laser = undefined;
}
static var EXP_TIME = 2000;
static var EXP_COUNT = 20;
static var SCORE = 5000;
}
Symbol 1288 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.ExplosionBoss] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.ExplosionBoss extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_mc, m_count, m_x, m_y, m_size, m_wl;
function ExplosionBoss (x, y, size) {
super();
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "ExplosionBossMC", "ExplosionBoss");
m_mc._x = x;
m_mc._y = y;
m_mc._xscale = size;
m_mc._yscale = size;
m_mc._visible = true;
m_count = 0;
m_x = x;
m_y = y;
m_size = size;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
}
function move() {
m_count++;
m_mc.gotoAndStop(m_count);
return(m_mc._totalframes > m_count);
}
function ctrlAndDisp() {
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
m_mc.removeMovieClip();
}
static function create() {
return(new jp.bambooshootdesign.app.thundervector.enemy.ExplosionBoss());
}
}
Symbol 1289 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Boss2] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Boss2 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_y_dev, m_hp, m_param, m_count, m_status, m_attackStatus, m_attackCount1, m_attackCount2, m_active, m_x, m_y, m_area, m_st1LaserTime, m_st1LaserLevel, m_st1Shot1Count, m_st1Shot1Interval, m_st1Shot1Speed, m_st1Shot2Count, m_st1Shot2Interval, m_st1Shot2Speed, m_st1Shot3Count, m_st1Shot3Interval, m_st1Shot3Speed, m_st2LaserTime, m_st2LaserLevel, m_st2Shot1Count, m_st2Shot1Interval, m_st2Shot1Speed, m_st2Shot2Count, m_st2Shot2Interval, m_st2Shot2Speed, m_expInterval, m_expCount, m_expNow, m_mc, m_eg, m_wl, m_enemyStatus, m_colList, m_statusNext, m_countNext, m_laser, m_shot3Now, m_shot1Now, m_shot2Now;
function Boss2 (param, count) {
super();
var _local6;
m_w = PART1_WIDTH;
m_h = PART1_HEIGHT;
m_y_dev = PART1_Y_DEV;
m_hp = HP_MAX;
m_param = param;
m_count = count;
m_status = 0;
m_attackStatus = 0;
m_attackCount1 = 0;
m_attackCount2 = 0;
m_active = false;
_local6 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_x = START_X;
m_y = START_Y;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_st1LaserTime = 3000;
m_st1LaserLevel = 3;
m_st1Shot1Count = ST1_SHOT1_COUNT + _local6;
m_st1Shot1Interval = ST1_SHOT1_TIME / m_st1Shot1Count;
m_st1Shot1Speed = 100 * (1 + (_local6 * 0.25));
m_st1Shot2Count = ST1_SHOT2_COUNT + _local6;
m_st1Shot2Interval = ST1_SHOT2_TIME / m_st1Shot2Count;
m_st1Shot2Speed = 100 * (1 + (_local6 * 0.15));
m_st1Shot3Count = ST1_SHOT3_COUNT + _local6;
m_st1Shot3Interval = ST1_SHOT3_TIME / m_st1Shot3Count;
m_st1Shot3Speed = 100 * (1 + (_local6 * 0.25));
m_st2LaserTime = 3000;
m_st2LaserLevel = 4;
m_st2Shot1Count = ST2_SHOT1_COUNT + (_local6 * 2);
m_st2Shot1Interval = ST2_SHOT1_TIME / m_st2Shot1Count;
m_st2Shot1Speed = 100 * (1 + (_local6 * 0.15));
m_st2Shot2Count = ST2_SHOT2_COUNT + (_local6 * 2);
m_st2Shot2Interval = ST2_SHOT2_TIME / m_st2Shot2Count;
m_st2Shot2Speed = 100 * (1 + (_local6 * 0.2));
m_expInterval = EXP_TIME / EXP_COUNT;
m_expCount = EXP_COUNT;
m_expNow = 0;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "Boss2MC", "Boss2");
m_mc.gotoAndStop(1);
m_mc._visible = true;
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
m_colList = [];
var _local5;
_local5 = [];
var _local4 = 0;
while (_local4 < HITAREA_1.length) {
var _local3 = HITAREA_1[_local4];
_local5.push(new jp.bambooshootdesign.app.thundervector.enemy.CollisionProxy(this, _local3[0], _local3[1], _local3[2], _local3[3]));
_local4++;
}
m_colList.push(_local5);
_local5 = [];
_local4 = 0;
while (_local4 < HITAREA_2.length) {
var _local3 = HITAREA_2[_local4];
_local5.push(new jp.bambooshootdesign.app.thundervector.enemy.CollisionProxy(this, _local3[0], _local3[1], _local3[2], _local3[3]));
_local4++;
}
m_colList.push(_local5);
}
function move() {
var _local2;
var _local12 = true;
var _local13;
do {
_local2 = false;
switch (m_status) {
case 0 :
if (m_count > IN_TIME) {
m_count = m_count - IN_TIME;
m_attackStatus = 10;
m_attackCount1 = m_count;
m_attackCount2 = m_count;
m_count = m_count + (MOVE_TIME / 2);
m_status++;
m_active = true;
_local2 = true;
} else {
m_x = START_X;
m_y = START_Y + ((m_count / IN_TIME) * IN_MOVE_Y);
}
break;
case 1 :
if (m_count > MOVE_TIME) {
m_count = m_count - MOVE_TIME;
m_status++;
_local2 = true;
} else {
m_x = (START_X + (MOVE_X / 2)) - ((m_count / MOVE_TIME) * MOVE_X);
m_y = START_Y + IN_MOVE_Y;
if (m_hp <= HP_NEXT) {
m_statusNext = 0;
m_countNext = m_count;
m_status = 3;
_local2 = true;
}
}
break;
case 2 :
if (m_count > MOVE_TIME) {
m_count = m_count - MOVE_TIME;
m_status--;
_local2 = true;
} else {
m_x = (START_X - (MOVE_X / 2)) + ((m_count / MOVE_TIME) * MOVE_X);
m_y = START_Y + IN_MOVE_Y;
if (m_hp <= HP_NEXT) {
m_statusNext = 1;
m_countNext = m_count;
m_status = 3;
_local2 = true;
}
}
break;
case 3 :
m_status = 4;
m_attackStatus = 0;
m_count = 0;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE_1);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
m_active = false;
if (m_laser != undefined) {
m_laser.cancel();
}
_local2 = true;
case 4 :
if (m_count > m_expInterval) {
var _local5;
var _local4;
var _local3;
var _local10;
var _local9;
m_count = m_count - m_expInterval;
m_expNow++;
_local3 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(Math.random() * 360);
_local5 = m_x + (Math.cos(_local3) * (((Math.random() * m_w) / 4) + (m_w / 4)));
_local4 = m_y - (Math.sin(_local3) * (((Math.random() * m_h) / 4) + (m_h / 4)));
if (m_expCount <= (m_expNow + 3)) {
_local10 = 50;
_local9 = 150;
if (m_expCount <= m_expNow) {
m_status = 5;
}
} else {
_local10 = 15 + (Math.random() * 10);
_local9 = 100;
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(_local5, _local4, _local10);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion", _local9);
_local2 = true;
}
break;
case 5 :
if (m_statusNext == 0) {
m_status = 6;
} else {
m_status = 7;
}
m_count = m_countNext;
m_mc.gotoAndStop(2);
m_attackStatus = 20;
m_attackCount1 = 0;
m_attackCount2 = 0;
m_active = true;
m_w = PART2_WIDTH;
m_h = PART2_HEIGHT;
m_y_dev = PART2_Y_DEV;
m_area.m_w = PART2_WIDTH / 2;
m_area.m_h = PART2_HEIGHT / 2;
_local2 = true;
break;
case 6 :
if (m_count > MOVE_TIME) {
m_count = m_count - MOVE_TIME;
m_status++;
_local2 = true;
} else {
m_x = (START_X + (MOVE_X / 2)) - ((m_count / MOVE_TIME) * MOVE_X);
m_y = START_Y + IN_MOVE_Y;
if (m_hp <= 0) {
m_status = 8;
_local2 = true;
}
}
break;
case 7 :
if (m_count > MOVE_TIME) {
m_count = m_count - MOVE_TIME;
m_status--;
_local2 = true;
} else {
m_x = (START_X - (MOVE_X / 2)) + ((m_count / MOVE_TIME) * MOVE_X);
m_y = START_Y + IN_MOVE_Y;
if (m_hp <= 0) {
m_status = 8;
_local2 = true;
}
}
break;
case 8 :
m_status = 9;
m_attackStatus = 0;
m_count = 0;
m_expNow = 0;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE_2);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.forceDestroy();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.clearActiveList();
if (m_laser != undefined) {
m_laser.cancel();
}
m_active = false;
_local2 = true;
break;
case 9 :
if (m_count > m_expInterval) {
m_count = m_count - m_expInterval;
m_expNow++;
var _local3 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(Math.random() * 360);
var _local5 = m_x + (Math.cos(_local3) * ((Math.random() * m_w) / 2));
var _local4 = m_y - (Math.sin(_local3) * ((Math.random() * m_h) / 2));
if (m_expCount <= m_expNow) {
new jp.bambooshootdesign.app.thundervector.enemy.ExplosionBoss(m_x, m_y, 200);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("BigExplosion");
m_status = 10;
} else {
var _local10 = 15 + (Math.random() * 10);
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(_local5, _local4, _local10);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
}
_local2 = true;
}
break;
case 10 :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
m_status = 11;
_local2 = true;
break;
case 11 :
_local12 = false;
}
} while (_local2);
do {
_local2 = false;
switch (m_attackStatus) {
case 0 :
break;
case 10 :
m_attackStatus++;
m_shot3Now = 0;
_local2 = true;
break;
case 11 :
m_shot1Now = 0;
m_shot2Now = 0;
m_attackStatus++;
_local2 = true;
break;
case 12 :
m_laser = new jp.bambooshootdesign.app.thundervector.enemy.EnemyLaser(this, 0, 30, 1200, m_st1LaserTime, 0, m_st1LaserLevel);
m_attackStatus++;
break;
case 13 :
if ((m_attackCount1 >= m_st1Shot1Interval) && (m_shot1Now < m_st1Shot1Count)) {
m_attackCount1 = m_attackCount1 - m_st1Shot1Interval;
var _local5 = 72 + ((m_shot1Now * 72) / (m_st1Shot1Count - 1));
var _local4 = 110 - ((m_shot1Now * 48) / (m_st1Shot1Count - 1));
var _local3 = 10 + ((m_shot1Now * 30) / (m_st1Shot1Count - 1));
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x - _local5, m_y + _local4, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(-90 - _local3), m_st1Shot1Speed, m_attackCount1);
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x + _local5, m_y + _local4, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(-90 + _local3), m_st1Shot1Speed, m_attackCount1);
m_shot1Now++;
_local2 = true;
}
if ((m_attackCount2 >= m_st1Shot2Interval) && (m_shot2Now < m_st1Shot2Count)) {
m_attackCount2 = m_attackCount2 - m_st1Shot2Interval;
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHormingLaser(m_x - 170, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle((180 - (ST1_SHOT2_RAD / 2)) + ((m_shot2Now * ST1_SHOT2_RAD) / (m_st1Shot2Count - 1))), m_st1Shot2Speed, m_attackCount2);
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHormingLaser(m_x + 170, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle((0 + (ST1_SHOT2_RAD / 2)) - ((m_shot2Now * ST1_SHOT2_RAD) / (m_st1Shot2Count - 1))), m_st1Shot2Speed, m_attackCount2);
m_shot2Now++;
_local2 = true;
}
if ((m_shot1Now >= m_st1Shot1Count) && (m_shot2Now >= m_st1Shot2Count)) {
m_attackStatus++;
_local2 = true;
}
break;
case 14 :
m_shot3Now++;
if (m_shot3Now >= ST1_ST1_COUNT) {
m_attackStatus++;
m_shot1Now = 0;
} else {
m_attackStatus = m_attackStatus - 3;
}
_local2 = true;
break;
case 15 :
if (m_attackCount1 >= ST1_SHOT2_WAIT) {
m_attackCount1 = m_attackCount1 - ST1_SHOT2_WAIT;
m_attackStatus++;
_local2 = true;
}
break;
case 16 :
if (m_attackCount1 >= m_st1Shot3Interval) {
var _local7;
var _local8;
m_attackCount1 = m_attackCount1 - m_st1Shot1Interval;
_local7 = ST1_SHOT3_DIR + (((m_shot3Now & 1) == 0) ? (m_shot1Now) : (m_st1Shot3Count - m_shot1Now));
var _local3 = (ST1_SHOT3_RAD / 2) - 90;
_local8 = ST1_SHOT3_RAD / (_local7 - 1);
var _local6 = _local7;
while (_local6 > 0) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(_local3), m_st1Shot3Speed, m_attackCount1);
_local3 = _local3 - _local8;
_local6--;
}
m_shot1Now++;
if (m_shot1Now >= m_st1Shot3Count) {
m_attackStatus++;
}
_local2 = true;
}
break;
case 17 :
if (m_attackCount1 >= ST1_SHOT3_WAIT) {
m_attackCount1 = m_attackCount1 - ST1_SHOT3_WAIT;
m_attackStatus++;
_local2 = true;
}
break;
case 18 :
m_shot3Now++;
if (m_shot3Now >= ST1_ST2_COUNT) {
m_attackStatus = m_attackStatus - 8;
m_attackCount2 = m_attackCount1;
} else {
m_attackStatus = m_attackStatus - 2;
m_shot1Now = 0;
}
_local2 = true;
break;
case 20 :
m_shot1Now = 0;
m_attackStatus++;
_local2 = true;
break;
case 21 :
m_laser = new jp.bambooshootdesign.app.thundervector.enemy.EnemyLaser(this, 0, 30, 1200, m_st2LaserTime, 0, m_st2LaserLevel);
m_attackStatus++;
_local2 = true;
break;
case 22 :
if (m_attackCount1 >= m_st2Shot1Interval) {
m_attackCount1 = m_attackCount1 - m_st2Shot1Interval;
var _local6 = m_st2Shot1Count / 3;
var _local5 = 90;
var _local4 = 0;
var _local3 = (ST1_SHOT2_RAD / (m_st2Shot1Count - 1)) * m_shot1Now;
if ((m_shot1Now & 1) == 0) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHormingLaser(m_x - _local5, m_y + _local4, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(-90 - (_local3 + 45)), m_st2Shot1Speed, m_attackCount1);
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHorming(m_x + _local5, m_y + _local4, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(-90 - (_local3 + 45)), m_st2Shot2Speed, m_attackCount1);
} else {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHormingLaser(m_x + _local5, m_y + _local4, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(-90 + (_local3 + 45)), m_st2Shot1Speed, m_attackCount1);
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHorming(m_x - _local5, m_y + _local4, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(-90 - (_local3 + 45)), m_st2Shot2Speed, m_attackCount1);
}
m_shot1Now++;
if (m_shot1Now >= m_st2Shot1Count) {
m_attackStatus++;
}
}
break;
case 23 :
m_attackStatus = 20;
_local2 = true;
}
} while (_local2);
if (m_active) {
var _local11;
_local11 = m_colList[((m_status < 5) ? 0 : 1)];
var _local6 = _local11.length - 1;
while (_local6 >= 0) {
_local11[_local6].appendEnemy(m_x, m_y);
_local6--;
}
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_attackCount1 = m_attackCount1 + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_attackCount2 = m_attackCount2 + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local12);
}
function ctrlAndDisp() {
m_mc._x = m_x;
m_mc._y = m_y;
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y + m_y_dev;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
function detach() {
m_laser = undefined;
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Boss2(param, count));
}
static var START_X = 370;
static var START_Y = -150;
static var IN_MOVE_Y = 200;
static var IN_TIME = 5000;
static var MOVE_TIME = 6000;
static var MOVE_X = 400;
static var ST1_SHOT1_COUNT = 10;
static var ST1_SHOT1_TIME = 3500;
static var ST1_SHOT2_COUNT = 1;
static var ST1_SHOT2_TIME = 3500;
static var ST1_SHOT2_RAD = 90;
static var ST1_SHOT2_WAIT = 500;
static var ST1_SHOT3_COUNT = 4;
static var ST1_SHOT3_TIME = 6000;
static var ST1_SHOT3_DIR = 3;
static var ST1_SHOT3_RAD = 90;
static var ST1_SHOT3_WAIT = 1000;
static var ST1_ST1_COUNT = 3;
static var ST1_ST2_COUNT = 5;
static var ST2_SHOT1_COUNT = 3;
static var ST2_SHOT1_TIME = 3500;
static var ST2_SHOT1_RAD = 45;
static var ST2_SHOT2_COUNT = 3;
static var ST2_SHOT2_TIME = 3500;
static var ST2_SHOT2_RAD = 45;
static var EXP_TIME = 3000;
static var EXP_COUNT = 40;
static var HP_MAX = 10000;
static var HP_NEXT = 4000;
static var PART1_WIDTH = 348;
static var PART1_HEIGHT = 286;
static var PART1_Y_DEV = 0;
static var PART2_WIDTH = 234;
static var PART2_HEIGHT = 178;
static var PART2_Y_DEV = -12;
static var SCORE_1 = 10000;
static var SCORE_2 = 10000;
static var HITAREA_1 = [[348, 92, 0, -14], [138, 48, -94, 56], [116, 20, -90, 90], [74, 22, -87, 111], [40, 20, -75, 132], [138, 48, 94, 56], [116, 20, 90, 90], [74, 22, 87, 111], [40, 20, 75, 132], [50, 28, 0, 46], [340, 32, 0, -76], [270, 32, 0, -108], [154, 20, 0, -134]];
static var HITAREA_2 = [[50, 160, 0, -20], [36, 170, -43, -9], [28, 140, -75, -12], [28, 72, -103, -20], [36, 170, 43, -9], [28, 140, 75, -12], [28, 72, 103, -20]];
}
Symbol 1290 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.CollisionProxy] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.CollisionProxy extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_enemy, m_area, m_xd, m_yd;
function CollisionProxy (enemy, w, h, xd, yd) {
super();
m_enemy = enemy;
m_area = {};
m_area.m_x = 0;
m_area.m_y = 0;
m_area.m_w = w / 2;
m_area.m_h = h / 2;
m_xd = xd;
m_yd = yd;
}
function getArea() {
m_area.m_x = m_enemy.getX() + m_xd;
m_area.m_y = m_enemy.getY() + m_yd;
return(m_area);
}
function getHP() {
return(m_enemy.getHP());
}
function hit(hp) {
m_enemy.hit(hp);
}
function isActive() {
return(m_enemy.isActive());
}
function getX() {
return(m_enemy.getX());
}
function getY() {
return(m_enemy.getY());
}
function hitBullet(bulletNum) {
m_enemy.hitBullet(bulletNum);
}
function isSameBullet(bulletNum) {
return(m_enemy.isSameBullet(bulletNum));
}
function appendEnemy(x, y) {
var _local3;
var _local2;
x = x + m_xd;
y = y + m_yd;
_local3 = m_area.m_w;
_local2 = m_area.m_h;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(x - _local3, y - _local2, x + _local3, y + _local2, this);
m_enemy.clearHitBullet();
}
}
Symbol 1291 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.EnemyHormingLaser] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.EnemyHormingLaser extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_ox, m_oy, m_x, m_y, m_angle, m_speed, m_speedLaser, m_w, m_h, m_hp, m_count, m_area, m_mc, m_wl, m_bg, m_bag;
function EnemyHormingLaser (x, y, angle, speed, count) {
super();
m_ox = x;
m_oy = y;
m_x = x;
m_y = y;
m_angle = angle;
m_speed = speed;
m_speedLaser = speed * 2;
m_w = 16;
m_h = 16;
m_hp = 20;
m_count = count;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BULLET, "EnemyHormingMC", "EnemyHorming");
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_bg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY);
m_bag = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY_ALIVE);
}
function move() {
var _local2;
var _local4;
var _local3;
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
if (m_count >= STOP_TIME) {
_local2 = STOP_TIME;
} else {
_local2 = m_count;
}
_local4 = ((-_local2) / STOP_TIME) * m_speed;
_local3 = ((m_speed * _local2) + ((_local4 * _local2) / 2)) / 1000;
m_x = m_ox + (Math.cos(m_angle) * _local3);
m_y = m_oy - (Math.sin(m_angle) * _local3);
if (m_count >= STOP_TIME) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHormingLaserMain(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngle(m_x, m_y), m_speedLaser, m_count - STOP_TIME);
return(false);
}
return(true);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_mc._visible = true;
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bg);
delete m_bg;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bag);
delete m_bag;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
m_hp = 0;
}
function isActive() {
return(m_hp > 0);
}
static var STOP_TIME = 1000;
}
Symbol 1292 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.EnemyHormingLaserMain] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.EnemyHormingLaserMain extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_x, m_y, m_angle, m_speed, m_w, m_h, m_hp, m_count, m_xadd, m_yadd, m_hitCount, move, m_area, m_mc, m_wl, m_bg, m_bag;
function EnemyHormingLaserMain (x, y, angle, speed, count) {
super();
var _local6;
var _local4;
var _local3;
var _local5;
m_x = x;
m_y = y;
m_angle = angle;
m_speed = speed;
m_w = 16;
m_h = 16;
m_hp = 20;
m_count = count;
_local6 = count - jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_xadd = (Math.cos(m_angle) * m_speed) / 1000;
m_yadd = ((-Math.sin(m_angle)) * m_speed) / 1000;
m_x = m_x + (m_xadd * _local6);
m_y = m_y + (m_yadd * _local6);
_local4 = 0;
_local3 = -1;
if (m_yadd != 0) {
if (m_yadd < 0) {
_local4 = ((-m_y) - 40) / m_yadd;
} else {
_local4 = ((jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT + 0) - m_y) / m_yadd;
_local3 = Math.floor((((jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT - 70) - m_y) / m_yadd) + 1);
}
}
if (m_xadd != 0) {
if (m_xadd < 0) {
_local5 = (-m_x) / m_xadd;
} else {
_local5 = (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH - m_x) / m_xadd;
}
if (_local5 < _local3) {
_local3 = -1;
}
if (_local4 > _local5) {
_local4 = _local5;
}
}
if ((_local3 != -1) && (_local4 < _local3)) {
_local3 = -1;
}
m_count = _local4;
if (_local3 != -1) {
m_hitCount = _local4 - _local3;
move = moveCheck;
} else {
move = moveNoCheck;
}
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BULLET, "EnemyHormingLaserMC", "EnemyHormingLaser");
m_mc._visible = true;
m_mc._rotation = (360 - (m_angle / (Math.PI/180))) + 90;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_bg = undefined;
m_bag = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY_ALIVE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("EnemyHormingLaser");
}
function moveCheck() {
var _local2 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_x = m_x + (m_xadd * _local2);
m_y = m_y + (m_yadd * _local2);
m_count = m_count - _local2;
if (m_count <= m_hitCount) {
move = moveNoCheck;
m_bg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY);
return(m_count > 0);
}
return(true);
}
function moveNoCheck() {
var _local2 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_x = m_x + (m_xadd * _local2);
m_y = m_y + (m_yadd * _local2);
m_count = m_count - _local2;
return(m_count > 0);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
if (m_bg != undefined) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bg);
delete m_bg;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bag);
delete m_bag;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
m_hp = 0;
}
function isActive() {
return(m_hp > 0);
}
}
Symbol 1293 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Boss3] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Boss3 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_param, m_count, m_status, m_attackStatus, m_attackCount1, m_attackCount2, m_attackCount3, m_active, m_x, m_y, m_area, m_expInterval, m_expCount, m_expNow, m_st1LaserTime, m_st1LaserLevel, m_st1LaserCount, m_st1Shot1Count, m_st1Shot1Loop, m_st1Shot1Interval, m_st1Shot1Speed, m_st1Shot2Count, m_st1Shot2Loop, m_st1Shot2Interval, m_st1Shot2Speed, m_st1Shot3Count, m_st1Shot3Interval, m_st1Shot3Speed, m_st2Shot1Count, m_st2Shot1Interval, m_st2Shot1Speed, m_mc, m_eg, m_wl, m_enemyStatus, m_colData, m_laserLeft, m_laserRight, m_shot1Now, m_shot2Now, m_shot3Now, m_shot1Shift;
function Boss3 (param, count) {
super();
var _local6 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_w = 100;
m_h = 220;
m_hp = HP_MAX;
m_param = param;
m_count = count;
m_status = 0;
m_attackStatus = 0;
m_attackCount1 = 0;
m_attackCount2 = 0;
m_attackCount3 = 0;
m_active = false;
m_x = START_X;
m_y = START_Y;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_expInterval = EXP_TIME / EXP_COUNT;
m_expCount = EXP_COUNT;
m_expNow = 0;
m_st1LaserTime = ST1_LASER_TIME;
m_st1LaserLevel = ST1_LASER_LEVEL;
m_st1LaserCount = ST1_LASER_COUNT;
m_st1Shot1Count = ST1_SHOT1_COUNT;
m_st1Shot1Loop = ST1_SHOT1_LOOP;
m_st1Shot1Interval = ST1_ATTACK_TIME / ((m_st1Shot1Count * m_st1Shot1Loop) + 1);
m_st1Shot1Speed = 100 * (1 + (_local6 * 0.25));
m_st1Shot2Count = ST1_SHOT2_COUNT;
m_st1Shot2Loop = ST1_SHOT2_LOOP;
m_st1Shot2Interval = ST1_ATTACK_TIME / m_st1Shot2Loop;
m_st1Shot2Speed = 100 * (1 + (_local6 * 0.15));
m_st1Shot3Count = ST1_SHOT3_COUNT + _local6;
m_st1Shot3Interval = ST1_ATTACK_TIME / m_st1Shot3Count;
m_st1Shot3Speed = 100 * (1 + (_local6 * 0.2));
m_st2Shot1Count = ST2_SHOT1_COUNT;
m_st2Shot1Interval = ST2_SHOT1_TIME - (_local6 * 25);
m_st2Shot1Speed = 100 * (1 + (_local6 * 0.25));
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "Boss3MC", "Boss3");
m_mc._visible = true;
m_mc.gotoAndStop(1);
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
var _local5;
_local5 = [];
var _local4 = 0;
while (_local4 < HITAREA.length) {
var _local3 = HITAREA[_local4];
_local5.push(new jp.bambooshootdesign.app.thundervector.enemy.CollisionProxy(this, _local3[0], _local3[1], _local3[2], _local3[3]));
_local4++;
}
m_colData = _local5;
}
function move() {
var _local2;
var _local16 = true;
var _local19;
do {
_local2 = false;
switch (m_status) {
case 0 :
if (m_count > IN_TIME) {
m_count = m_count - IN_TIME;
m_attackStatus = 100;
m_attackCount1 = m_count;
m_count = m_count + (MOVE_TIME / 2);
m_status++;
m_active = true;
_local2 = true;
} else {
m_x = START_X;
m_y = START_Y + ((m_count / IN_TIME) * IN_MOVE_Y);
}
break;
case 1 :
if (m_hp <= HP_NEXT) {
if (m_laserLeft != undefined) {
m_laserLeft.cancel();
m_laserLeft = undefined;
}
if (m_laserRight != undefined) {
m_laserRight.cancel();
m_laserRight = undefined;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE_1);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
m_active = false;
m_attackStatus = 0;
m_count = 0;
m_status++;
_local2 = true;
}
break;
case 2 :
if (m_count > m_expInterval) {
m_count = m_count - m_expInterval;
m_expNow++;
if (m_expCount <= m_expNow) {
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x - 120, m_y + 25, 60);
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x + 120, m_y + 25, 60);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion", 150);
m_status = 5;
_local2 = true;
} else {
var _local15;
var _local14;
if ((m_expNow % 2) == 0) {
_local15 = -160 + (Math.random() * 80);
_local14 = -100 + (Math.random() * 250);
} else {
_local15 = 80 + (Math.random() * 80);
_local14 = -100 + (Math.random() * 250);
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x + _local15, m_y + _local14, 15 + (Math.random() * 10));
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
}
}
break;
case 5 :
m_mc.gotoAndStop(2);
m_count = m_count + (MOVE_TIME / 2);
m_attackStatus = 200;
m_attackCount1 = 0;
m_active = true;
m_status++;
_local2 = true;
break;
case 6 :
if (m_count > MOVE_TIME) {
m_count = m_count - MOVE_TIME;
m_status++;
_local2 = true;
} else {
m_x = (START_X + (MOVE_X / 2)) - ((m_count / MOVE_TIME) * MOVE_X);
m_y = START_Y + IN_MOVE_Y;
if (m_hp <= 0) {
m_status = 10;
_local2 = true;
}
}
break;
case 7 :
if (m_count > MOVE_TIME) {
m_count = m_count - MOVE_TIME;
m_status--;
_local2 = true;
} else {
m_x = (START_X - (MOVE_X / 2)) + ((m_count / MOVE_TIME) * MOVE_X);
m_y = START_Y + IN_MOVE_Y;
if (m_hp <= 0) {
m_status = 10;
_local2 = true;
}
}
break;
case 10 :
m_status++;
m_attackStatus = 0;
m_count = 0;
m_expNow = 0;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE_2);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.forceDestroy();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.clearActiveList();
_local2 = true;
case 11 :
if (m_count > m_expInterval) {
m_count = m_count - m_expInterval;
m_expNow++;
if (m_expCount <= m_expNow) {
new jp.bambooshootdesign.app.thundervector.enemy.ExplosionBoss(m_x, m_y, 200);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("BigExplosion");
m_status = 12;
_local2 = true;
} else {
new jp.bambooshootdesign.app.thundervector.enemy.Explosion((m_x + (Math.random() * m_w)) - (m_w / 2), (m_y + (Math.random() * m_h)) - (m_h / 2), 15 + (Math.random() * 10));
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
}
}
break;
case 12 :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
m_status++;
_local2 = true;
break;
case 13 :
_local16 = false;
}
} while (_local2);
do {
_local2 = false;
switch (m_attackStatus) {
case 0 :
break;
case 100 :
m_attackStatus = m_attackStatus + 30;
_local2 = true;
break;
case 130 :
m_shot1Now = 0;
m_shot2Now = 0;
m_shot3Now = 0;
m_shot1Shift = 0;
m_attackCount2 = m_attackCount1;
m_attackCount3 = m_attackCount1 + ST1_LASER_TIME;
m_attackStatus++;
_local2 = true;
break;
case 131 :
if ((m_attackCount3 >= m_st1LaserTime) && (m_shot3Now < m_st1LaserCount)) {
m_attackCount3 = m_attackCount3 - m_st1LaserTime;
m_laserLeft = new jp.bambooshootdesign.app.thundervector.enemy.EnemyLaser(this, -120, 120, 1200, m_st1LaserTime, m_attackCount3, m_st1LaserLevel);
m_laserRight = new jp.bambooshootdesign.app.thundervector.enemy.EnemyLaser(this, 120, 120, 1200, m_st1LaserTime, m_attackCount3, m_st1LaserLevel);
m_shot3Now++;
_local2 = true;
}
if ((m_attackCount1 >= m_st1Shot1Interval) && (m_shot1Now < ((m_st1Shot1Count * m_st1Shot1Loop) + 1))) {
m_attackCount1 = m_attackCount1 - m_st1Shot1Interval;
if ((m_shot1Now % m_st1Shot1Count) == 0) {
m_shot1Shift = (Math.random() * ST1_SHOT1_ATTACK_SHIFT) - (ST1_SHOT1_ATTACK_SHIFT / 2);
}
if ((Math.floor(m_shot1Now / m_st1Shot1Count) % 2) == 0) {
var _local15 = ((((m_shot1Now % m_st1Shot1Count) * ST1_SHOT1_ATTACK_WIDTH) / m_st1Shot1Count) - (ST1_SHOT1_ATTACK_WIDTH / 2)) + m_shot1Shift;
} else {
var _local15 = ((((m_st1Shot1Count - (m_shot1Now % m_st1Shot1Count)) * ST1_SHOT1_ATTACK_WIDTH) / m_st1Shot1Count) - (ST1_SHOT1_ATTACK_WIDTH / 2)) + m_shot1Shift;
}
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x + _local15, m_y + ST1_SHOT1_ATTACK_Y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(-90), m_st1Shot1Speed, m_attackCount1);
m_shot1Now++;
_local2 = true;
}
if ((m_shot3Now >= m_st1LaserCount) && (m_shot1Now >= ((m_st1Shot1Count * m_st1Shot1Loop) + 1))) {
m_attackStatus++;
}
break;
case 132 :
if (m_attackCount1 >= ST1_WAIT_TIME) {
m_attackCount1 = m_attackCount1 - ST1_WAIT_TIME;
m_attackStatus = m_attackStatus + 8;
_local2 = true;
}
break;
case 140 :
m_shot1Now = 0;
m_shot2Now = 0;
m_shot3Now = 0;
m_attackCount2 = m_attackCount1 + m_st1Shot3Interval;
m_attackCount3 = m_attackCount1 + ST1_LASER_TIME;
m_attackCount1 = m_attackCount1 + m_st1Shot2Interval;
m_attackStatus++;
_local2 = true;
break;
case 141 :
if ((m_attackCount3 >= m_st1LaserTime) && (m_shot3Now < m_st1LaserCount)) {
m_attackCount3 = m_attackCount3 - m_st1LaserTime;
m_laserLeft = new jp.bambooshootdesign.app.thundervector.enemy.EnemyLaser(this, -120, 120, 1200, m_st1LaserTime, m_attackCount3, m_st1LaserLevel);
m_laserRight = new jp.bambooshootdesign.app.thundervector.enemy.EnemyLaser(this, 120, 120, 1200, m_st1LaserTime, m_attackCount3, m_st1LaserLevel);
m_shot3Now++;
_local2 = true;
}
if ((m_attackCount1 >= m_st1Shot2Interval) && (m_shot1Now < m_st1Shot2Loop)) {
m_attackCount1 = m_attackCount1 - m_st1Shot2Interval;
var _local13 = m_st1Shot2Count;
while (_local13 > 0) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHorming((m_x + ((ST1_SHOT2_ATTACK_WIDTH / (m_st1Shot2Count - 1)) * (_local13 - 1))) - (ST1_SHOT2_ATTACK_WIDTH / 2), m_y + ST1_SHOT2_ATTACK_Y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(-90), m_st1Shot2Speed, m_attackCount1);
_local13--;
}
m_shot1Now++;
_local2 = true;
}
if ((m_attackCount2 >= m_st1Shot3Interval) && (m_shot2Now < m_st1Shot3Count)) {
m_attackCount2 = m_attackCount2 - m_st1Shot3Interval;
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHormingLaser((m_x - 170) + ((m_shot2Now * 30) / (m_st1Shot3Count - 1)), (m_y + 80) - ((m_shot2Now * 120) / (m_st1Shot3Count - 1)), jp.bambooshootdesign.app.thundervector.util.Util.getAngle(150), m_st1Shot3Speed, m_attackCount2);
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHormingLaser((m_x + 170) - ((m_shot2Now * 30) / (m_st1Shot3Count - 1)), (m_y + 80) - ((m_shot2Now * 120) / (m_st1Shot3Count - 1)), jp.bambooshootdesign.app.thundervector.util.Util.getAngle(30), m_st1Shot3Speed, m_attackCount2);
m_shot2Now++;
_local2 = true;
}
if (((m_shot3Now >= m_st1LaserCount) && (m_shot1Now >= m_st1Shot2Loop)) && (m_shot2Now >= m_st1Shot3Count)) {
m_attackCount1 = m_attackCount1 - m_st1Shot2Interval;
m_attackStatus++;
_local2 = true;
}
break;
case 142 :
if (m_attackCount1 >= ST1_WAIT_TIME) {
m_attackCount1 = m_attackCount1 - ST1_WAIT_TIME;
m_attackStatus = m_attackStatus - 12;
_local2 = true;
}
break;
case 200 :
m_shot1Now = 0;
m_attackStatus++;
_local2 = true;
break;
case 201 :
if (m_attackCount1 < m_st2Shot1Interval) {
break;
}
var _local5;
var _local3;
m_attackCount1 = m_attackCount1 - m_st2Shot1Interval;
_local5 = ST2_SHOT1_RAD[m_shot1Now % ST2_SHOT1_RAD.length];
_local3 = _local5.length - 1;
while (_local3 >= 0) {
var _local10;
var _local9;
var _local11;
_local10 = Math.cos(jp.bambooshootdesign.app.thundervector.util.Util.getAngle(_local5[_local3][0]));
_local9 = Math.sin(jp.bambooshootdesign.app.thundervector.util.Util.getAngle(_local5[_local3][0]));
_local11 = (ST2_SHOT1_ATTACK_WIDTH * _local5[_local3][1]) / 1000;
var _local13 = m_st2Shot1Count - 1;
while (_local13 >= 0) {
var _local6;
var _local4;
var _local7;
var _local8;
_local6 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(-90 + _local5[_local3][0]);
_local4 = ((_local13 > ((m_st2Shot1Count - 1) / 2)) ? ((m_st2Shot1Count - 1) - _local13) : (_local13));
_local4 = (_local4 / ((m_st2Shot1Count - 1) / 2)) * ST2_SHOT1_ATTACK_DIST;
_local7 = Math.cos(_local6) * _local4;
_local8 = (-Math.sin(_local6)) * _local4;
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet3(((m_x + ((((ST2_SHOT1_ATTACK_WIDTH / (m_st2Shot1Count - 1)) * _local13) - (ST2_SHOT1_ATTACK_WIDTH / 2)) * _local10)) + _local11) + _local7, ((m_y + ATTACK_Y) - ((((ST2_SHOT1_ATTACK_HEIGHT / (m_st2Shot1Count - 1)) * _local13) - (ST2_SHOT1_ATTACK_HEIGHT / 2)) * _local9)) + _local8, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(-90 + _local5[_local3][0]), m_st2Shot1Speed, m_attackCount1);
_local13--;
}
_local3--;
}
var _local12 = (ST2_SHOT2_RAD / (ST2_SHOT2_DIR - 1)) - (ST2_SHOT2_RAD / 2);
var _local13 = ST2_SHOT2_DIR;
while (_local13 > 0) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x, m_y + ATTACK_Y, jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngleAdd(m_x, m_y + ATTACK_Y, _local12), m_st2Shot1Speed, m_attackCount1);
_local12 = _local12 + (ST2_SHOT2_RAD / (ST2_SHOT2_DIR - 1));
_local13--;
}
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHormingLaser(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(150), m_st1Shot3Speed, m_attackCount1);
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHormingLaser(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle(30), m_st1Shot3Speed, m_attackCount1);
m_shot1Now++;
}
} while (_local2);
if (m_active) {
var _local17;
var _local18;
_local17 = m_colData;
if (m_status >= 5) {
_local18 = 3;
} else {
_local18 = _local17.length - 1;
}
_local13 = _local18;
while (_local13 >= 0) {
_local17[_local13].appendEnemy(m_x, m_y);
_local13--;
}
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_attackCount1 = m_attackCount1 + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_attackCount2 = m_attackCount2 + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_attackCount3 = m_attackCount3 + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local16);
}
function ctrlAndDisp() {
m_mc._x = m_x;
m_mc._y = m_y;
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
function detach() {
m_laserLeft = undefined;
m_laserRight = undefined;
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.Boss3(param, count));
}
static var START_X = 370;
static var START_Y = -150;
static var IN_MOVE_Y = 200;
static var IN_TIME = 5000;
static var MOVE_TIME = 9000;
static var MOVE_X = 400;
static var ST1_LASER_TIME = 3000;
static var ST1_LASER_LEVEL = 3;
static var ST1_LASER_COUNT = 2;
static var ST1_SHOT1_COUNT = 6;
static var ST1_SHOT1_LOOP = 5;
static var ST1_SHOT1_ATTACK_Y = 75;
static var ST1_SHOT1_ATTACK_WIDTH = 150;
static var ST1_SHOT1_ATTACK_SHIFT = 20;
static var ST1_SHOT2_COUNT = 3;
static var ST1_SHOT2_LOOP = 8;
static var ST1_SHOT2_ATTACK_WIDTH = 150;
static var ST1_SHOT2_ATTACK_Y = 75;
static var ST1_SHOT3_COUNT = 5;
static var ST1_ATTACK_TIME = 6000;
static var ST1_WAIT_TIME = 0;
static var ST2_SHOT1_TIME = 1200;
static var ST2_SHOT1_COUNT = 5;
static var ST2_SHOT1_ATTACK_WIDTH = 100;
static var ST2_SHOT1_ATTACK_HEIGHT = 100;
static var ST2_SHOT1_ATTACK_DIST = 50;
static var ST2_SHOT2_RAD = 110;
static var ST2_SHOT2_DIR = 8;
static var ST2_SHOT1_RAD = [[[15, 500], [-15, -500]], [[30, 750], [0, 0], [-30, -750]], [[40, 500], [10, 250], [-10, -250], [-40, -500]], [[50, 500], [25, 350], [0, 0], [-25, -350], [-50, -500]], []];
static var ATTACK_X = 160;
static var ATTACK_Y = 75;
static var EXP_TIME = 3000;
static var EXP_COUNT = 40;
static var SCORE_1 = 15000;
static var SCORE_2 = 15000;
static var HP_MAX = 10000;
static var HP_NEXT = 4000;
static var HITAREA = [[56, 12, 0, 76], [112, 12, 0, 64], [136, 16, 0, 50], [164, 128, 0, -22], [46, 20, -115, 140], [60, 20, -120, 120], [76, 20, -124, 100], [86, 20, -127, 80], [22, 90, -153, 25], [60, 220, -112, -40], [46, 20, 115, 140], [60, 20, 120, 120], [76, 20, 124, 100], [86, 20, 127, 80], [22, 90, 153, 25], [60, 220, 112, -40], [164, 64, 0, -118]];
}
Symbol 1294 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet3] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet3 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_x, m_y, m_angle, m_speed, m_w, m_h, m_hp, m_area, m_xadd, m_yadd, m_count, m_hitCount, move, m_mc, m_wl, m_bg, m_bag;
function EnemyBullet3 (x, y, angle, speed, count) {
super();
var _local6;
var _local5;
var _local4;
var _local3;
m_x = x;
m_y = y;
m_angle = angle;
m_speed = speed;
m_w = 16;
m_h = 16;
m_hp = 20;
m_area = {};
_local6 = count - jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_xadd = (Math.cos(m_angle) * m_speed) / 1000;
m_yadd = ((-Math.sin(m_angle)) * m_speed) / 1000;
m_x = m_x + (m_xadd * _local6);
m_y = m_y + (m_yadd * _local6);
_local4 = 0;
_local3 = -1;
if (m_yadd != 0) {
if (m_yadd < 0) {
_local4 = ((-m_y) - 40) / m_yadd;
} else {
_local4 = ((jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT + 0) - m_y) / m_yadd;
_local3 = Math.floor((((jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_HEIGHT - 70) - m_y) / m_yadd) + 1);
}
}
if (m_xadd != 0) {
if (m_xadd < 0) {
_local5 = (-m_x) / m_xadd;
} else {
_local5 = (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH - m_x) / m_xadd;
}
if (_local5 < _local3) {
_local3 = -1;
}
if (_local4 > _local5) {
_local4 = _local5;
}
}
if ((_local3 != -1) && (_local4 < _local3)) {
_local3 = -1;
}
m_count = _local4;
if (_local3 != -1) {
m_hitCount = _local4 - _local3;
move = moveCheck;
} else {
move = moveNoCheck;
}
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BULLET, "EnemyBullet3MC", "EnemyBullet3");
m_mc._visible = true;
m_mc._rotation = (360 - (m_angle / (Math.PI/180))) + 90;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_bg = undefined;
m_bag = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY_ALIVE);
}
function moveCheck() {
var _local2 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_x = m_x + (m_xadd * _local2);
m_y = m_y + (m_yadd * _local2);
m_count = m_count - _local2;
if (m_count <= m_hitCount) {
move = moveNoCheck;
m_bg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_ENEMY);
return(m_count > 0);
}
return(true);
}
function moveNoCheck() {
var _local2 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_x = m_x + (m_xadd * _local2);
m_y = m_y + (m_yadd * _local2);
m_count = m_count - _local2;
return(m_count > 0);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
if (m_bg != undefined) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bg);
delete m_bg;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.cut(m_bag);
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
m_hp = 0;
}
function isActive() {
return(m_hp > 0);
}
}
Symbol 1295 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.BossLast] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.BossLast extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_param, m_count, m_attackStatus, m_attackCount, m_status, m_zakoStatus, m_zakoCount, m_zakoNow, m_zakoGroup, m_active, m_x, m_y, m_area, m_shotDir, m_shotSpeed, m_expInterval, m_expCount, m_expNow, m_attackMuzzle, m_mcBody, m_mcDamage, m_eg, m_wl, m_enemyStatus, m_colData, m_shot1Now;
function BossLast (param, count) {
super();
var _local7;
m_w = 576;
m_h = 200;
m_hp = 10000;
m_param = param;
m_count = count;
m_attackStatus = 0;
m_attackCount = 0;
m_status = 0;
m_zakoStatus = 0;
m_zakoCount = 0;
m_zakoNow = 0;
m_zakoGroup = 0;
m_active = false;
_local7 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_x = START_X;
m_y = START_Y;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_shotDir = SHOT_DIR + _local7;
m_shotSpeed = 100 * (1 + (_local7 * 0.2));
m_expInterval = EXP_TIME / EXP_COUNT;
m_expCount = EXP_COUNT;
m_expNow = 0;
m_attackMuzzle = [];
var _local4 = 0;
while (_local4 < ATTACK_POS.length) {
var _local5 = ATTACK_POS[_local4];
m_attackMuzzle.push(new jp.bambooshootdesign.app.thundervector.enemy.BossLastMuzzle(this, _local5.x, _local5.y));
_local4++;
}
m_mcBody = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "BossLastBodyMC", "BossLastBody");
m_mcBody._visible = true;
m_mcDamage = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "BossLastDamageMC", "BossDamageBody");
m_mcDamage._visible = true;
m_mcBody._x = (m_mcDamage._x = m_x);
m_mcBody._y = (m_mcDamage._y = m_y);
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mcDamage);
var _local6;
_local6 = [];
_local4 = 0;
while (_local4 < HITAREA.length) {
var _local3 = HITAREA[_local4];
_local6.push(new jp.bambooshootdesign.app.thundervector.enemy.CollisionProxy(this, _local3[0], _local3[1], _local3[2], _local3[3]));
_local4++;
}
m_colData = _local6;
}
function move() {
var _local2;
var _local11 = true;
var _local12;
do {
_local2 = false;
switch (m_status) {
case 0 :
if (m_count >= START_WAIT) {
sendCommand("Attack");
m_active = true;
m_count = m_count - START_WAIT;
m_status++;
m_zakoStatus = 1;
m_zakoCount = m_count;
m_attackStatus = 10;
m_attackCount = SHOT_WAIT;
_local2 = true;
}
break;
case 1 :
if (m_hp <= 0) {
sendCommand("Destroy");
m_active = false;
m_attackStatus = 0;
m_status = 100;
_local2 = true;
}
break;
case 100 :
m_status++;
m_zakoStatus = 0;
m_count = 0;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.forceDestroy();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.clearActiveList();
_local2 = true;
case 101 :
if (m_count > m_expInterval) {
m_count = m_count - m_expInterval;
m_expNow++;
if (m_expCount <= m_expNow) {
new jp.bambooshootdesign.app.thundervector.enemy.ExplosionBoss(m_x, m_y - 200, 200);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("BigExplosion");
m_status++;
_local2 = true;
} else {
new jp.bambooshootdesign.app.thundervector.enemy.Explosion((m_x + (Math.random() * m_w)) - (m_w / 2), ((m_y + (Math.random() * m_h)) - (m_h / 2)) - 200, 15 + (Math.random() * 10));
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
}
}
break;
case 102 :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
m_status++;
_local2 = true;
break;
case 103 :
_local11 = false;
}
} while (_local2);
do {
_local2 = false;
switch (m_attackStatus) {
case 0 :
break;
case 10 :
m_shot1Now = 0;
m_attackStatus++;
_local2 = true;
break;
case 11 :
if (m_attackCount >= SHOT_WAIT) {
m_attackCount = m_attackCount - SHOT_WAIT;
var _local5;
var _local4;
var _local3;
var _local7;
var _local6;
_local4 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle((SHOT_RAD / 2) - 90);
_local7 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(SHOT_RAD / (m_shotDir - 1));
_local3 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle((SHOTPOS_RAD / 2) - 90);
_local6 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(SHOTPOS_RAD / (m_shotDir - 1));
_local5 = m_shotDir;
while (_local5 > 0) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x + (Math.cos(_local3) * 200), (m_y - 260) - (Math.sin(_local3) * 200), _local4, m_shotSpeed, m_attackCount);
_local4 = _local4 - _local7;
_local3 = _local3 - _local6;
_local5--;
}
m_shot1Now++;
if (m_shot1Now >= SHOT_COUNT) {
m_attackStatus = m_attackStatus + 9;
}
_local2 = true;
}
break;
case 20 :
sendCommand("Sync");
m_attackStatus++;
_local2 = true;
break;
case 21 :
if (checkSync()) {
sendCommand("Laser");
m_attackStatus++;
m_shot1Now = 0;
m_attackCount = 0;
_local2 = true;
}
break;
case 22 :
if (m_attackCount <= ALL_ATTACK_INTERVAL) {
break;
}
m_attackCount = m_attackCount - ALL_ATTACK_INTERVAL;
var _local4 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle((((SHOT_RAD / 2) - 90) + (Math.random() * 10)) - 5);
var _local7 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(SHOT_RAD / (m_shotDir - 1));
var _local3 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle((SHOTPOS_RAD / 2) - 90);
var _local6 = jp.bambooshootdesign.app.thundervector.util.Util.getAngle(SHOTPOS_RAD / (m_shotDir - 1));
var _local5 = m_shotDir;
while (_local5 > 0) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x + (Math.cos(_local3) * 200), (m_y - 260) - (Math.sin(_local3) * 200), _local4, m_shotSpeed, m_attackCount);
_local4 = _local4 - _local7;
_local3 = _local3 - _local6;
_local5--;
}
m_shot1Now++;
if (m_shot1Now >= ALL_ATTACK_COUNT) {
m_attackStatus = 10;
}
_local2 = true;
}
} while (_local2);
do {
_local2 = false;
switch (m_zakoStatus) {
case 0 :
break;
case 1 :
if (m_zakoCount >= ENEMY_INTERVAL) {
m_zakoCount = m_zakoCount - ENEMY_INTERVAL;
new jp.bambooshootdesign.app.thundervector.enemy.BossLastZako2({x:(((m_zakoGroup % 2) == 0) ? 0 : (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH)), y:240}, m_zakoCount);
m_zakoNow++;
if (m_zakoNow >= ENEMY_COUNT) {
m_zakoGroup++;
m_zakoStatus++;
}
_local2 = true;
}
break;
case 2 :
if (m_zakoCount < ENEMY_WAIT) {
break;
}
m_zakoCount = m_zakoCount - ENEMY_WAIT;
m_zakoNow = 0;
m_zakoStatus--;
_local2 = true;
}
} while (_local2);
if (m_active) {
var _local8 = m_colData;
_local5 = _local8.length - 1;
while (_local5 >= 0) {
_local8[_local5].appendEnemy(m_x, m_y);
_local5--;
}
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_zakoCount = m_zakoCount + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_attackCount = m_attackCount + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local11);
}
function ctrlAndDisp() {
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mcBody.removeMovieClip();
m_mcDamage.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
function sendCommand(cmd) {
var _local2 = m_attackMuzzle.length - 1;
while (_local2 >= 0) {
m_attackMuzzle[_local2].command(cmd);
_local2--;
}
}
function checkSync() {
var _local4 = true;
var _local2 = m_attackMuzzle.length - 1;
while (_local2 >= 0) {
var _local3 = m_attackMuzzle[_local2].checkSync();
_local4 = _local4 & m_attackMuzzle[_local2].checkSync();
_local2--;
}
return(_local4);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.BossLast(param, count));
}
static var START_X = jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH / 2;
static var START_Y = 240;
static var SHOT_DIR = 10;
static var SHOT_RAD = 80;
static var SHOT_WAIT = 3000;
static var SHOTPOS_RAD = 90;
static var SHOT_COUNT = 5;
static var EXP_TIME = 6000;
static var EXP_COUNT = 80;
static var SCORE = 50000;
static var ATTACK_POS = [{x:-182, y:-184}, {x:-114, y:-165}, {x:114, y:-165}, {x:182, y:-184}];
static var HITAREA = [[580, 80, 0, -260], [566, 30, 0, -205], [520, 30, 0, -175], [430, 20, 0, -150], [360, 20, 0, -130], [270, 20, 0, -110], [180, 12, 0, -94]];
static var START_WAIT = 8000;
static var ENEMY_INTERVAL = 2000;
static var ENEMY_COUNT = 5;
static var ENEMY_WAIT = 5000;
static var ALL_ATTACK_INTERVAL = 500;
static var ALL_ATTACK_COUNT = 6;
}
Symbol 1296 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.BossLastMuzzle] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.BossLastMuzzle extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_count, m_status, m_parent, m_active, m_destroyed, m_command, m_x, m_y, m_area, m_mineCount, m_mineSpeed, m_hormingCount, m_hormingSpeed, m_hormingLaserCount, m_hormingLaserSpeed, m_wl, m_laser, m_shotCount, m_shotInterval, m_shotNow;
function BossLastMuzzle (parent, x, y) {
super();
var _local3 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_w = 32;
m_h = 32;
m_hp = 100;
m_count = 0;
m_status = 0;
m_parent = parent;
m_active = false;
m_destroyed = false;
m_command = "";
m_x = parent.getX() + x;
m_y = parent.getY() + y;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_mineCount = MINE_COUNT + Math.floor(0.25 * _local3);
m_mineSpeed = 90;
m_hormingCount = HORMING_COUNT + Math.floor(0.5 * _local3);
m_hormingSpeed = 100 * (1 + (0.15 * _local3));
m_hormingLaserCount = HORMINGLASER_COUNT + Math.floor(0.5 * _local3);
m_hormingLaserSpeed = 100 * (1 + (0.2 * _local3));
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_laser = undefined;
}
function move() {
var _local2;
var _local3 = true;
var _local4;
if (m_command == "Destroy") {
m_status = 0;
if (m_laser != undefined) {
m_laser.cancel();
m_laser = undefined;
}
}
do {
_local2 = false;
switch (m_status) {
case 0 :
if (m_command != "") {
switch (m_command) {
case "Attack" :
m_status = 10;
m_count = 0;
break;
case "Destroy" :
m_status = 5;
break;
case "Laser" :
m_status = 20;
m_count = 0;
break;
case "Mine" :
m_status = 30;
m_count = 0;
break;
case "Horming" :
m_status = 40;
m_count = 0;
break;
case "HormingLaser" :
m_status = 50;
m_count = 0;
}
m_command = "";
_local2 = true;
}
break;
case 10 :
if (m_command == "") {
switch (Math.floor(Math.random() * 4)) {
case 0 :
m_status = 20;
break;
case 1 :
m_status = 30;
break;
case 2 :
m_status = 40;
break;
case 3 :
m_status = 50;
}
} else {
if (m_command == "Sync") {
m_status = 0;
}
m_command = "";
}
_local2 = true;
break;
case 20 :
m_laser = new jp.bambooshootdesign.app.thundervector.enemy.EnemyLaser(this, 0, 0, LASER_CHARGE_TIME, LASER_TIME, m_count, LASER_LEVEL);
m_status++;
_local2 = true;
break;
case 21 :
if (m_count >= LASER_WAIT) {
m_count = m_count - LASER_WAIT;
m_status = 10;
_local2 = true;
}
break;
case 30 :
m_shotCount = m_mineCount;
m_shotInterval = MINE_TIME / m_mineCount;
m_shotNow = 0;
m_status++;
_local2 = true;
break;
case 31 :
if (m_count > m_shotInterval) {
m_count = m_count - m_shotInterval;
new jp.bambooshootdesign.app.thundervector.enemy.EnemyMine(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngle(m_x, m_y), m_mineSpeed, m_count);
m_shotNow++;
if (m_shotNow >= m_shotCount) {
m_status++;
}
_local2 = true;
}
break;
case 32 :
if (m_count >= MINE_WAIT) {
m_count = m_count - MINE_WAIT;
m_status = 10;
_local2 = true;
}
break;
case 40 :
m_shotCount = m_hormingCount;
m_shotInterval = HORMING_TIME / m_hormingCount;
m_shotNow = 0;
m_status++;
_local2 = true;
break;
case 41 :
if (m_count > m_shotInterval) {
m_count = m_count - m_shotInterval;
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHorming(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngle(m_x, m_y), m_hormingSpeed, m_count);
m_shotNow++;
if (m_shotNow >= m_shotCount) {
m_status++;
}
_local2 = true;
}
break;
case 42 :
if (m_count >= HORMING_WAIT) {
m_count = m_count - HORMING_WAIT;
m_status = 10;
_local2 = true;
}
break;
case 50 :
m_shotCount = m_hormingLaserCount;
m_shotInterval = HORMINGLASER_TIME / m_hormingLaserCount;
m_shotNow = 0;
m_status++;
_local2 = true;
break;
case 51 :
if (m_count > m_shotInterval) {
m_count = m_count - m_shotInterval;
new jp.bambooshootdesign.app.thundervector.enemy.EnemyHormingLaser(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getAngle((90 + (HORMINGLASER_RAD / 2)) - ((m_shotNow * HORMINGLASER_RAD) / (HORMINGLASER_COUNT - 1))), m_hormingLaserSpeed, m_count);
m_shotNow++;
if (m_shotNow >= m_shotCount) {
m_status++;
}
_local2 = true;
}
break;
case 52 :
if (m_count >= HORMINGLASER_WAIT) {
m_count = m_count - HORMINGLASER_WAIT;
m_status = 10;
_local2 = true;
}
break;
case 5 :
if (m_laser != undefined) {
m_laser.cancel();
m_laser = undefined;
}
_local3 = false;
}
} while (_local2);
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local3);
}
function ctrlAndDisp() {
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
function detach() {
m_laser = undefined;
}
function command(cmd) {
m_command = cmd;
}
function checkSync() {
return(m_status == 0);
}
static var LASER_CHARGE_TIME = 1000;
static var LASER_TIME = 2000;
static var LASER_LEVEL = 2;
static var LASER_WAIT = 2500;
static var MINE_COUNT = 1;
static var MINE_TIME = 2000;
static var MINE_WAIT = 1000;
static var HORMING_COUNT = 2;
static var HORMING_TIME = 2000;
static var HORMING_WAIT = 750;
static var HORMINGLASER_COUNT = 4;
static var HORMINGLASER_TIME = 2000;
static var HORMINGLASER_WAIT = 500;
static var HORMINGLASER_RAD = 60;
}
Symbol 1297 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.BossLastZako2] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.BossLastZako2 extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_param, m_count, m_animeCount, m_status, m_x, m_y, m_area, m_moveX, m_moveXTime, m_shotCount, m_shotInterval, m_shotDir, m_shotSpeed, m_shotNow, m_mc, m_eg, m_wl, m_enemyStatus, m_forceDestroy;
function BossLastZako2 (param, count) {
super();
var _local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_w = 36;
m_h = 36;
m_hp = 40;
m_param = param;
m_count = count;
m_animeCount = count;
m_status = 0;
m_x = param.x;
m_y = param.y;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_moveX = ((param.x > (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH / 2)) ? (-MOVE_SPEED) : (MOVE_SPEED));
m_moveXTime = ((Math.abs(param.x - (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH / 2)) + (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH / 2)) / MOVE_SPEED) * 1000;
m_shotCount = SHOT_COUNT + Math.floor(_local4 / 2);
m_shotInterval = m_moveXTime / (m_shotCount + 1);
m_shotDir = SHOT_DIR + ((_local4 & 1) * 2);
m_shotSpeed = 100 * (1 + (_local4 * 0.25));
m_shotNow = 0;
m_moveXTime = m_moveXTime - (m_shotInterval * m_shotCount);
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "Zako2MC", "Zako2");
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
if ((param.event.id == "PowerUp") && (param.count == param.event.count)) {
m_enemyStatus.setPowerUp();
m_mc.powerup._visible = true;
} else {
m_mc.powerup._visible = false;
}
}
function move() {
var _local4;
var _local5 = true;
do {
_local4 = false;
switch (m_status) {
case 0 :
if (m_count > m_shotInterval) {
var _local3;
m_x = m_param.x + (((m_shotInterval * (m_shotNow + 1)) * m_moveX) / 1000);
_local3 = ((-(m_shotDir - 1)) / 2) * 10;
var _local2 = m_shotDir;
while (_local2 > 0) {
new jp.bambooshootdesign.app.thundervector.enemy.EnemyBullet(m_x, m_y, jp.bambooshootdesign.app.thundervector.util.Util.getPlayerAngleAdd(m_x, m_y, _local3), m_shotSpeed, m_count - m_shotInterval);
_local3 = _local3 + 10;
_local2--;
}
m_count = m_count - m_shotInterval;
m_shotNow++;
if (m_shotNow >= m_shotCount) {
m_status++;
}
_local4 = true;
} else {
m_x = m_param.x + (((m_count + (m_shotInterval * m_shotNow)) * m_moveX) / 1000);
}
break;
case 1 :
if (m_count > m_moveXTime) {
m_status++;
_local4 = true;
} else {
m_x = m_param.x + (((m_count + (m_shotInterval * m_shotNow)) * m_moveX) / 1000);
}
break;
case 2 :
_local5 = false;
}
} while (_local4);
if (_local5) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_animeCount = m_animeCount + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local5);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
if (!m_forceDestroy) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, 15);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._visible = true;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_mc.gotoAndStop((Math.floor(m_animeCount / jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate()) % m_mc._totalframes) + 1);
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
static var MOVE_SPEED = 100;
static var SHOT_COUNT = 1;
static var SHOT_DIR = 3;
static var SCORE = 100;
}
Symbol 1298 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.BonusEnemy] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.BonusEnemy extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_w, m_h, m_hp, m_param, m_count, m_animeCount, m_status, m_x, m_y, m_area, m_moveX, m_moveXTime, m_shotCount, m_shotInterval, m_shotDir, m_shotSpeed, m_shotNow, m_mc, m_eg, m_wl, m_enemyStatus, m_forceDestroy;
function BonusEnemy (param, count) {
super();
var _local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLevel();
m_w = 36;
m_h = 36;
m_hp = 100;
m_param = param;
m_count = count;
m_animeCount = count;
m_status = 0;
m_x = param.x;
m_y = param.y;
m_area = {};
m_area.m_x = m_x;
m_area.m_y = m_y;
m_area.m_w = m_w / 2;
m_area.m_h = m_h / 2;
m_moveX = ((param.x > (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH / 2)) ? (-MOVE_SPEED) : (MOVE_SPEED));
m_moveXTime = ((Math.abs(param.x - (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH / 2)) + (jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH / 2)) / MOVE_SPEED) * 1000;
m_shotCount = SHOT_COUNT + Math.floor(_local4 / 2);
m_shotInterval = m_moveXTime / (m_shotCount + 1);
m_shotDir = SHOT_DIR + ((_local4 & 1) * 2);
m_shotSpeed = 100 * (1 + (_local4 * 0.25));
m_shotNow = 0;
m_moveXTime = m_moveXTime - (m_shotInterval * m_shotCount);
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_ENEMY, "BonusEnemyMC", "BonusEnemy");
m_eg = jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.append(this, jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_ENEMY);
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_enemyStatus = new jp.bambooshootdesign.app.thundervector.sys.EnemyStatus(m_mc);
if ((param.event.id == "PowerUp") && (param.count == param.event.count)) {
m_enemyStatus.setPowerUp();
m_mc.powerup._visible = true;
} else {
m_mc.powerup._visible = false;
}
}
function move() {
var _local2;
var _local3 = true;
do {
_local2 = false;
switch (m_status) {
case 0 :
if (m_count > m_shotInterval) {
var _local4;
m_x = m_param.x + (((m_shotInterval * (m_shotNow + 1)) * m_moveX) / 1000);
m_count = m_count - m_shotInterval;
m_shotNow++;
if (m_shotNow >= m_shotCount) {
m_status++;
}
_local2 = true;
} else {
m_x = m_param.x + (((m_count + (m_shotInterval * m_shotNow)) * m_moveX) / 1000);
}
break;
case 1 :
if (m_count > m_moveXTime) {
m_status++;
_local2 = true;
} else {
m_x = m_param.x + (((m_count + (m_shotInterval * m_shotNow)) * m_moveX) / 1000);
}
break;
case 2 :
_local3 = false;
}
} while (_local2);
if (_local3) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.appendEnemy(m_x - (m_w / 2), m_y - (m_h / 2), m_x + (m_w / 2), m_y + (m_h / 2), this);
}
m_enemyStatus.clear();
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
m_animeCount = m_animeCount + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getSpeed();
return(_local3);
}
function ctrlAndDisp() {
if (m_hp <= 0) {
if (!m_forceDestroy) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(SCORE);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addCombo();
}
new jp.bambooshootdesign.app.thundervector.enemy.Explosion(m_x, m_y, 15);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("Explosion");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.event(m_param, this);
return(false);
}
m_mc._x = m_x;
m_mc._y = m_y;
m_mc._visible = true;
m_mc._yscale = jp.bambooshootdesign.app.thundervector.sys.SysInfo.calcScale(m_y);
m_mc.gotoAndStop((Math.floor(m_animeCount / jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate()) % m_mc._totalframes) + 1);
m_enemyStatus.update();
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.cut(m_eg);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
m_enemyStatus.destroy();
delete m_eg;
delete m_wl;
delete m_enemyStatus;
m_mc.removeMovieClip();
}
function getArea() {
m_area.m_x = m_x;
m_area.m_y = m_y;
return(m_area);
}
function getHP() {
return(m_hp);
}
function hit(hp) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.addScore(10);
m_hp = m_hp - hp;
m_enemyStatus.hit();
}
function isActive() {
return(m_hp > 0);
}
function getX() {
return(m_x);
}
function getY() {
return(m_y);
}
static function create(param, count) {
return(new jp.bambooshootdesign.app.thundervector.enemy.BonusEnemy(param, count));
}
static var MOVE_SPEED = 50;
static var SHOT_COUNT = 1;
static var SHOT_DIR = 3;
static var SCORE = 5000;
}
Symbol 1299 MovieClip [__Packages.jp.bambooshootdesign.sys.Group] Frame 0
class jp.bambooshootdesign.sys.Group
{
var m_list, m_num;
function Group () {
init();
}
function init(num) {
m_list = [];
m_num = num;
}
function reset() {
var _local2;
_local2 = 0;
while (_local2 < m_num) {
m_list[_local2] = new jp.bambooshootdesign.util.List();
_local2++;
}
}
function append(obj, idx) {
return(m_list[idx].push(obj));
}
function get(idx) {
return(m_list[idx]);
}
function cut(obj) {
obj.cut();
}
}
Symbol 1300 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.sys.Debug] Frame 0
class jp.bambooshootdesign.app.thundervector.sys.Debug
{
var m_mc, m_active, m_visible, m_str;
function Debug () {
}
function init(x, y) {
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SYSTEM, "DebugMC", "Debug");
m_mc._x = x;
m_mc._y = y;
m_active = false;
m_visible = false;
m_str = "";
}
function reset() {
if (m_active) {
m_str = "";
}
}
function setActive(active) {
if (active) {
output = activeOutput;
disp = activeDisp;
} else {
output = undefined;
disp = noDisp;
}
m_active = active;
}
function setVisible(visible) {
m_visible = visible;
}
function activeOutput(str) {
m_str = m_str + (str + newline);
}
function activeDisp() {
m_mc.str = m_str;
m_mc._visible = m_visible;
}
function noDisp() {
m_mc._visible = m_visible;
}
function output() {
}
function disp() {
}
function destroy() {
m_mc.removeMovieClip();
}
function isActive() {
return(m_active);
}
}
Symbol 1301 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.sys.Status] Frame 0
class jp.bambooshootdesign.app.thundervector.sys.Status
{
var m_score, m_comboNum, m_comboTime, m_boost, m_force, m_count, m_weaponType, m_weaponLevel, m_mc, m_boostColor, m_boostColorTransUse, m_boostColorTransMax, m_boostColorTransCharge, m_ttNum, m_ttCnt, m_ttCntMax, m_ttX, m_ttUse;
function Status () {
}
function init() {
m_score = -1;
m_comboNum = -1;
m_comboTime = -1;
m_boost = -1;
m_force = -1;
m_count = -1;
m_weaponType = -1;
m_weaponLevel = -1;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SYSTEM, "SysInfoMC", "SysInfo");
m_mc.SysInfo.ComboNumAnime._visible = false;
m_mc.SysInfo.ComboNumAnime.stop();
m_mc.SysInfo.ComboAnime._visible = false;
m_mc.SysInfo.ComboAnime.stop();
m_mc.SysInfo.ComboNumAnime.ComboNum.combo = 0;
m_boostColor = new Color(m_mc.SysInfo.BoostBar);
m_boostColorTransUse = {ra:100, rb:0, ga:100, gb:0, ba:100, bb:0, aa:100, ab:0};
m_boostColorTransMax = {ra:100, rb:0, ga:100, gb:0, ba:100, bb:0, aa:100, ab:0};
m_boostColorTransCharge = {ra:100, rb:-50, ga:100, gb:-50, ba:100, bb:-50, aa:100, ab:0};
m_ttNum = -1;
m_ttCnt = 0;
m_ttCntMax = 0;
m_ttX = 0;
m_ttUse = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getStageNum() == 0;
m_mc.SysInfo.Tutorial._visible = m_ttUse;
m_mc.SysInfo.Tutorial.T_Text.stop();
}
function move() {
if (!m_ttUse) {
return(undefined);
}
m_ttCnt = m_ttCnt + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate();
if (m_ttCnt >= m_ttCntMax) {
m_ttNum++;
if (m_ttNum >= m_mc.SysInfo.Tutorial.T_Text._totalframes) {
m_ttNum = 0;
}
m_mc.SysInfo.Tutorial.T_Text.gotoAndStop(m_ttNum + 1);
m_ttCntMax = ((m_mc.SysInfo.Tutorial.T_Text._width + 330) / TT_SPEED) * 1000;
m_ttCnt = 0;
}
m_ttX = (m_ttCnt / 1000) * TT_SPEED;
}
function ctrl() {
}
function disp() {
var _local2 = m_mc.SysInfo;
var _local10;
var _local8;
var _local4;
var _local9;
var _local6;
var _local7;
_local10 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getScore();
if (_local10 != m_score) {
var _local5;
_local5 = "0000000000" + String(_local10);
_local5 = _local5.substr(_local5.length - 10, 10);
_local2.score = _local5;
m_score = _local10;
}
_local8 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getComboTime();
if (_local8 != m_comboTime) {
_local2.ComboBar._rotation = -91 + ((_local8 / jp.bambooshootdesign.app.thundervector.sys.SysInfo.COMBO_TIME) * 91);
m_comboTime = _local8;
}
_local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getBoost();
if (_local4 != m_boost) {
_local2.BoostBar._rotation = -91 + ((_local4 / jp.bambooshootdesign.app.thundervector.sys.Player.BOOST_MAX) * 91);
m_boost = _local4;
m_boostColor.setTransform(((_local4 == jp.bambooshootdesign.app.thundervector.sys.Player.BOOST_MAX) ? (m_boostColorTransMax) : (m_boostColorTransCharge)));
} else if (jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.isBoost()) {
var _local3 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getBoostPercent();
_local2.BoostBar._rotation = ((-_local3) / 100) * 91;
_local3 = _local3 % 20;
m_boostColorTransUse.rb = (m_boostColorTransUse.gb = (m_boostColorTransUse.bb = (((_local3 >= 10) ? (20 - _local3) : (_local3)) * 255) / 10));
m_boostColor.setTransform(m_boostColorTransUse);
}
_local9 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getForce();
if (_local9 != m_force) {
_local2.ForceBar._rotation = -91 + ((_local9 / jp.bambooshootdesign.app.thundervector.sys.Player.FORCE_MAX) * 91);
m_force = _local9;
}
if (jp.bambooshootdesign.app.thundervector.sys.SysInfo.isCombo()) {
_local2.ComboAnime._visible = true;
_local2.ComboAnime.gotoAndPlay(1);
_local2.ComboNumAnime._visible = true;
_local2.ComboNumAnime.ComboNum.combo = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getComboCount();
_local2.ComboNumAnime.gotoAndPlay(1);
m_count = jp.bambooshootdesign.app.thundervector.sys.SysInfo.COMBO_TIME;
} else {
m_count = m_count - jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate();
if (m_count <= 0) {
_local2.ComboAnime._visible = false;
_local2.ComboNumAnime._visible = false;
}
}
_local6 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getWeaponType();
_local7 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.getWeaponLevel();
if (m_weaponType != _local6) {
if (_local6 == jp.bambooshootdesign.app.thundervector.sys.Player.BT_NORMAL) {
_local2.Weapon.gotoAndStop(1);
} else {
_local2.Weapon.gotoAndStop(2);
}
m_weaponType = _local6;
m_weaponLevel = -1;
}
if (m_weaponLevel != _local7) {
_local2.Weapon.Level.gotoAndStop(_local7 + 1);
m_weaponLevel = _local7;
}
if (m_ttUse) {
_local2.Tutorial.T_Text._x = 330 - m_ttX;
}
m_mc._visible = true;
}
function destroy() {
delete m_boostColor;
delete m_boostColorTransUse;
delete m_boostColorTransMax;
delete m_boostColorTransCharge;
m_mc.removeMovieClip();
}
static var TT_SPEED = 50;
}
Symbol 1302 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.sys.SoundManager] Frame 0
class jp.bambooshootdesign.app.thundervector.sys.SoundManager
{
var m_mc, m_seList, m_music, m_cnt, m_fadeCount, m_fadeTime, m_seIndex, m_musicData, m_musicIndex;
function SoundManager () {
m_mc = _root.createEmptyMovieClip("Sounds", 10000);
m_seList = [];
m_music = undefined;
m_cnt = 0;
m_fadeCount = 0;
m_fadeTime = 0;
m_seList = [];
var _local3 = 0;
while (_local3 < 7) {
m_seList.push(undefined);
_local3++;
}
m_seIndex = 0;
m_music = undefined;
m_musicData = undefined;
m_musicIndex = 0;
}
function playSE(sename, vol) {
var _local2;
var _local6;
var _local4;
var _local5;
var _local3;
if (!jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.Se) {
return(undefined);
}
if (vol == undefined) {
vol = 100;
}
_local2 = m_seList[m_seIndex];
freeSound(_local2);
_local3 = m_cnt;
_local6 = "snd" + _local3;
_local2 = m_mc.createEmptyMovieClip(_local6, _local3);
_local2.seid = _local3;
_local5 = jp.bambooshootdesign.app.thundervector.sys.SoundResource.getSEInfo(sename);
_local4 = new Sound(_local2);
_local4.attachSound(_local5.id);
_local4.setVolume((vol * _local5.vol) / 100);
_local4.start();
_local2.snd = _local4;
_local2.vol = _local5.vol;
m_cnt++;
m_seList[m_seIndex] = _local2;
m_seIndex++;
if (m_seIndex >= m_seList.length) {
m_seIndex = 0;
}
return(_local3);
}
function playMusic(musicname) {
var _local2;
var _local3;
var _local4;
freeSound(m_music);
if (!jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.Bgm) {
return(undefined);
}
_local3 = "msc" + m_cnt;
_local2 = m_mc.createEmptyMovieClip(_local3, m_cnt);
_local4 = new Sound(_local2);
_local2.snd = _local4;
_local2.volume = 100;
m_cnt++;
m_music = _local2;
m_musicIndex = 0;
m_musicData = jp.bambooshootdesign.app.thundervector.sys.SoundResource.getMusicData(musicname);
playMusicOne();
}
function playMusicOne() {
var _local3;
var _local2 = m_music.snd;
if (m_musicData.length <= m_musicIndex) {
return(undefined);
}
_local3 = m_musicData[m_musicIndex];
_local2.attachSound(_local3.id);
if (_local3.loop != 0) {
_local2.start(0, _local3.loop);
_local2.onSoundComplete = playNextSound;
} else {
_local2.start(0, 99999);
}
_local2.setVolume(m_music.volume);
m_musicIndex++;
}
function setVolume(id, vol) {
var _local2;
for (var _local5 in m_seList) {
_local2 = m_seList[_local5];
if (_local2.seid == id) {
_local2.snd.setVolume((vol * _local2.vol) / 100);
break;
}
}
}
function setMusicVolume(vol) {
m_music.volume = vol;
m_music.snd.setVolume(m_music.volume);
}
function stopSE(id) {
var _local2;
for (var _local4 in m_seList) {
_local2 = m_seList[_local4];
if (_local2.seid == id) {
freeSound(_local2);
m_seList[_local4] = undefined;
break;
}
}
}
function stopMusic() {
if (m_music != undefined) {
freeSound(m_music);
m_music = undefined;
}
m_fadeTime = 0;
m_fadeCount = 0;
}
function stopAll() {
var _local3;
var _local4;
var _local2 = m_seList.length - 1;
while (_local2 >= 0) {
_local3 = m_seList[_local2];
freeSound(_local3);
_local2--;
}
stopMusic();
_local4 = new Sound();
_local4.stop();
}
function move() {
if (m_fadeTime != 0) {
m_fadeCount = m_fadeCount + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate();
if (m_fadeCount >= m_fadeTime) {
freeSound(m_music);
m_music = undefined;
m_fadeTime = 0;
m_fadeCount = 0;
} else {
m_music.volume = 100 - ((m_fadeCount * 100) / m_fadeTime);
m_music.snd.setVolume(m_music.volume);
}
}
}
function fadeOutMusic(time) {
m_fadeTime = time;
m_fadeCount = 0;
}
function freeSound(mc) {
if (mc != undefined) {
mc.snd.onSoundComplete = undefined;
mc.snd.stop();
delete mc.snd;
mc.removeMovieClip();
}
}
static function playNextSound() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playMusicOne();
}
}
Symbol 1303 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.sys.SoundResource] Frame 0
class jp.bambooshootdesign.app.thundervector.sys.SoundResource
{
function SoundResource () {
}
static function getSEInfo(name) {
return(SeResource[name]);
}
static function getMusicData(name) {
return(MusicResource[name]);
}
static var SeResource = {PowerUp:{id:"SE_PowerUp", vol:50}, BoostMax:{id:"SE_BoostMax", vol:50}, Recovery:{id:"SE_PowerUp", vol:50}, Defense:{id:"SE_Defense", vol:30}, MyBoost:{id:"SE_MyBoost", vol:20}, MyShot:{id:"SE_MyShot", vol:10}, MyLaser:{id:"SE_MyLaser", vol:15}, MyLaserCharge:{id:"SE_MyLaserCharge", vol:30}, Bomb:{id:"SE_Bomb", vol:50}, Fly:{id:"SE_Fly", vol:30}, ScoreItem:{id:"SE_ScoreItem", vol:20}, Emergency:{id:"SE_Emagency", Vol:30}, EnemyHormingLaser:{id:"SE_EnemyHormingLaser", vol:15}, EnemyLaserCharge:{id:"SE_EnemyLaserCharge", vol:25}, EnemyLaser:{id:"SE_EnemyLaser", vol:25}, EnemyShot:{id:"SE_EnemyShot", vol:30}, Explosion:{id:"SE_Explosion", vol:20}, BigExplosion:{id:"SE_BigExplosion", vol:100}, MineExplosion:{id:"SE_MineExplosion", vol:20}, ScoreCount:{id:"SE_ScoreCount", vol:40}, MoveMenu:{id:"SE_MoveMenu", vol:30}, SelectMenu:{id:"SE_SelectMenu", vol:30}, Danger:{id:"SE_Danger", vol:30}, End:{}};
static var MusicResource = {Stage1:[{id:"MUSIC_Stage1", length:0, loop:0}], Stage2:[{id:"MUSIC_Stage2", length:0, loop:0}], Stage3:[{id:"MUSIC_Stage3", length:0, loop:0}], Stage4:[{id:"MUSIC_Stage4", length:0, loop:0}], Boss:[{id:"MUSIC_BossCaution", length:9600, loop:1}, {id:"MUSIC_BossMain", length:0, loop:0}], LastBoss:[{id:"MUSIC_LastBossCaution", length:9600, loop:1}, {id:"MUSIC_LastBossMain", length:0, loop:0}], StageOpening1:[{id:"BGM_StageOpening1", length:0, loop:1}], StageOpening2:[{id:"BGM_StageOpening2", length:0, loop:1}], StageOpening3:[{id:"BGM_StageOpening3", length:0, loop:1}], StageOpening4:[{id:"BGM_StageOpening4", length:0, loop:1}], Ending:[{id:"BGM_Ending", length:0, loop:1}], GameOver:[{id:"BGM_GameOver", length:0, loop:1}], End:[]};
}
Symbol 1304 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.sys.Option] Frame 0
class jp.bambooshootdesign.app.thundervector.sys.Option
{
var m_hiScore, m_quality, m_bgm, m_se;
function Option () {
m_hiScore = 0;
HiScore = (10000);
Quality = (true);
Bgm = (true);
Se = (true);
}
function load() {
var _local2;
_local2 = SharedObject.getLocal("TV");
if (_local2.data.Quality == undefined) {
_local2.data.Quality = true;
}
if (_local2.data.Bgm == undefined) {
_local2.data.Bgm = true;
}
if (_local2.data.Se == undefined) {
_local2.data.Se = true;
}
if (_local2.data.HiScore == undefined) {
_local2.data.HiScore = 10000;
}
Quality = (_local2.data.Quality);
Bgm = (_local2.data.Bgm);
Se = (_local2.data.Se);
HiScore = (_local2.data.HiScore);
}
function save() {
var _local2;
_local2 = SharedObject.getLocal("TV");
_local2.data.Quality = Quality;
_local2.data.Bgm = Bgm;
_local2.data.Se = Se;
_local2.data.HiScore = HiScore;
_local2.flush(256);
}
function setNormalQuality() {
_quality = "HIGH";
}
function setGameQuality() {
_quality = (m_quality ? "MEDIUM" : "LOW");
}
function get HiScore() {
return(m_hiScore);
}
function get Quality() {
return(m_quality);
}
function get Bgm() {
return(m_bgm);
}
function get Se() {
return(m_se);
}
function set HiScore(score) {
if (m_hiScore < score) {
m_hiScore = score;
}
//return(HiScore);
}
function set Quality(quality) {
m_quality = quality;
//return(Quality);
}
function set Bgm(bgm) {
m_bgm = bgm;
//return(Bgm);
}
function set Se(se) {
m_se = se;
//return(Se);
}
}
Symbol 1305 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.sys.GameMode] Frame 0
class jp.bambooshootdesign.app.thundervector.sys.GameMode
{
var m_mode;
function GameMode () {
m_mode = GM_NORMAL;
}
function setRankingMode() {
m_mode = GM_RANKING;
}
function setNormalMode() {
m_mode = GM_NORMAL;
}
function isRankingMode() {
return(m_mode == GM_RANKING);
}
function isNormalMode() {
return(m_mode == GM_NORMAL);
}
static var GM_NORMAL = 1;
static var GM_RANKING = 2;
}
Symbol 1306 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.sys.SysInfo] Frame 0
class jp.bambooshootdesign.app.thundervector.sys.SysInfo
{
static var m_scoreHi, m_lastLoop, m_lastStage, m_currentSpeed, m_isPauseKeyDown, m_isPause, m_mcPause, m_stage, m_scoreStage, m_scoreTotal, m_hitNum, m_hitTime, m_hitMax, m_isCombo, m_maxComboTotal, m_maxCombo, m_loop, m_level, m_playerForce, m_playerWeaponNormalLevel, m_playerWeaponLaserLevel, m_playerWeaponType;
function SysInfo () {
}
static function initFirst() {
Option.load();
m_scoreHi = 0;
m_lastLoop = -1;
m_lastStage = -1;
}
static function initGame() {
clearScore();
initLoop();
initLevel();
initStageNum();
Player.initParam();
initMaxComboTotal();
}
static function initGameLoop() {
initStageNum();
initMaxComboHistory();
}
static function continueGameLoop() {
continueLoop();
continueStageNum();
initMaxComboHistory();
}
static function initStage() {
initCombo();
clearStageScore();
m_currentSpeed = 0;
m_isPauseKeyDown = true;
m_isPause = false;
m_mcPause = undefined;
}
static function clearStage() {
updateMaxComboHistory();
incStageNum();
updateScore();
Player.saveParam();
}
static function clearStageLast() {
updateMaxComboHistory();
updateMaxComboTotal();
updateScore();
Player.saveParam();
m_currentSpeed = 0;
}
static function gameOver() {
updateMaxComboHistory();
}
static function endGame() {
saveLoop();
saveStageNum();
Option.HiScore = getScore();
Option.save();
}
static function reset() {
}
static function move() {
checkPause();
if (!isPause()) {
updateCombo();
}
}
static function disp() {
if (Debug.isActive()) {
var _local1;
var _local2;
Debug.output("Level: " + getLevel());
_local1 = SceneGraph.getFrame();
_local2 = getFrameRate();
Debug.output(((((((Math.floor(_local1 / (_local2 * 60)) + ":") + (Math.floor(_local1 / _local2) % 60)) + ":") + (_local1 % _local2)) + " (") + _local1) + ")");
}
}
static function checkPause() {
if (!Player.isLock()) {
var _local1 = Key.isDown(13);
if ((m_isPauseKeyDown ^ _local1) & (!m_isPauseKeyDown)) {
m_isPause = !m_isPause;
if (m_mcPause != undefined) {
m_mcPause.removeMovieClip();
m_mcPause = undefined;
}
if (m_isPause) {
m_mcPause = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SYSTEM, "PauseMC", "Pause");
m_mcPause._x = jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH / 2;
m_mcPause._y = jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT / 2;
m_mcPause._visible = true;
}
}
m_isPauseKeyDown = _local1;
}
}
static function isPause() {
return(m_isPause);
}
static function initStageNum() {
m_stage = 0;
}
static function getStageNum() {
return(m_stage);
}
static function incStageNum() {
m_stage++;
}
static function continueStageNum() {
m_stage = m_lastStage;
}
static function saveStageNum() {
if (m_stage > 3) {
m_lastStage = 3;
} else {
m_lastStage = m_stage;
}
}
static function setScore(score) {
m_scoreStage = score;
}
static function addScore(score) {
m_scoreStage = m_scoreStage + score;
}
static function getScore() {
if ((m_scoreTotal + m_scoreStage) > MAX_SCORE) {
return(MAX_SCORE);
}
return(m_scoreTotal + m_scoreStage);
}
static function getStageScore() {
return(m_scoreStage);
}
static function clearScore() {
m_scoreTotal = 0;
m_scoreStage = 0;
}
static function clearStageScore() {
m_scoreStage = 0;
}
static function updateScore() {
m_scoreTotal = m_scoreTotal + m_scoreStage;
if (m_scoreTotal > MAX_SCORE) {
m_scoreTotal = MAX_SCORE;
}
m_scoreStage = 0;
}
static function initCombo() {
m_hitNum = 0;
m_hitTime = 0;
m_hitMax = 0;
m_isCombo = false;
}
static function updateCombo() {
if (m_hitTime > 0) {
m_hitTime = m_hitTime - getRate();
if (m_hitTime <= 0) {
if (m_hitMax < m_hitNum) {
m_hitMax = m_hitNum;
}
m_hitTime = 0;
m_hitNum = 0;
}
}
}
static function addCombo() {
m_hitNum++;
if (COMBO_MAX < m_hitNum) {
m_hitNum = COMBO_MAX;
}
m_hitTime = COMBO_TIME;
m_isCombo = true;
if ((m_hitNum != 0) && ((m_hitNum % COMBO_BONUM_NUM) == 0)) {
SceneGraph.event({event:{id:"BonusEnemy"}}, undefined);
}
}
static function getComboTime() {
return(m_hitTime);
}
static function isCombo() {
var _local1 = m_isCombo;
m_isCombo = false;
return(_local1);
}
static function getComboCount() {
return(m_hitNum);
}
static function getMaxComboCount() {
return(m_hitMax);
}
static function initMaxComboTotal() {
m_maxComboTotal = 0;
}
static function initMaxComboHistory() {
m_maxCombo = [];
}
static function updateMaxComboHistory() {
var _local2 = getStageNum();
var _local1 = getMaxComboCount();
m_maxCombo[_local2] = _local1;
}
static function updateMaxComboTotal() {
var _local4 = getMaxComboHistory();
var _local3 = 0;
var _local1 = _local4.length - 1;
while (_local1 >= 0) {
var _local2 = _local4[_local1];
if ((_local2 != undefined) && (_local3 < _local2)) {
_local3 = _local2;
}
_local1--;
}
if (m_maxComboTotal < _local3) {
m_maxComboTotal = _local3;
}
}
static function getMaxComboHistory() {
return(m_maxCombo);
}
static function getMaxComboTotal() {
return(m_maxComboTotal);
}
static function clearBoost() {
Player.clearBoost();
}
static function calcSpeed(spd) {
return(Player.calcSpeed(spd));
}
static function getBoost() {
return(Player.getBoost());
}
static function updateSpeed() {
m_currentSpeed = Player.calcSpeed(getRate());
}
static function setSpeed(speed) {
m_currentSpeed = speed;
}
static function getSpeed() {
return(m_currentSpeed);
}
static function getForce() {
return(Player.getHP());
}
static function getRate() {
return(1000 / getFrameRate());
}
static function getFrameRate() {
return(30);
}
static function calcScale(y) {
if (y < 0) {
y = 0;
}
if (y > 480) {
y = 480;
}
return(70 + (y / 16));
}
static function initLoop() {
m_loop = 1;
}
static function incLoop() {
m_loop++;
}
static function getLoop() {
return(m_loop);
}
static function continueLoop() {
m_loop = m_lastLoop;
}
static function saveLoop() {
m_lastLoop = m_loop;
}
static function initLevel() {
m_level = 0;
}
static function getLevel() {
return(m_level);
}
static function setLevel(lv) {
m_level = lv;
}
static function incLevel() {
m_level++;
}
static function setLevelWithLoop(lv, loop) {
var _local1 = m_loop;
if (_local1 > LOOP_MAX) {
_local1 = LOOP_MAX;
}
if (_local1 == loop) {
m_level = lv;
}
}
static function isContinue() {
return((m_lastLoop >= 0) && (m_lastStage >= 0));
}
static function get PlayerForce() {
return(m_playerForce);
}
static function get PlayerWeaponNormalLevel() {
return(m_playerWeaponNormalLevel);
}
static function get PlayerWeaponLaserLevel() {
return(m_playerWeaponLaserLevel);
}
static function get PlayerWeaponType() {
return(m_playerWeaponType);
}
static function set PlayerForce(playerForce) {
m_playerForce = playerForce;
//return(PlayerForce);
}
static function set PlayerWeaponNormalLevel(playerWeaponLevel) {
m_playerWeaponNormalLevel = playerWeaponLevel;
//return(PlayerWeaponNormalLevel);
}
static function set PlayerWeaponLaserLevel(playerWeaponLevel) {
m_playerWeaponLaserLevel = playerWeaponLevel;
//return(PlayerWeaponLaserLevel);
}
static function set PlayerWeaponType(playerWeaponType) {
m_playerWeaponType = playerWeaponType;
//return(PlayerWeaponType);
}
static function get WorkList() {
return(m_WorkList);
}
static function get Collision() {
return(m_Collision);
}
static function get SceneGraph() {
return(m_SceneGraph);
}
static function get EnemyGroup() {
return(m_EnemyGroup);
}
static function get BulletGroup() {
return(m_BulletGroup);
}
static function get Debug() {
return(m_Debug);
}
static function get Player() {
return(m_Player);
}
static function get SoundManager() {
return(m_SoundManager);
}
static function get Status() {
return(m_Status);
}
static function get Option() {
return(m_Option);
}
static function get GameMode() {
return(m_GameMode);
}
static var m_WorkList = new jp.bambooshootdesign.sys.WorkList();
static var m_Player = new jp.bambooshootdesign.app.thundervector.sys.Player();
static var m_Collision = new jp.bambooshootdesign.app.thundervector.sys.Collision();
static var m_SceneGraph = new jp.bambooshootdesign.app.thundervector.sys.SceneGraph();
static var m_EnemyGroup = new jp.bambooshootdesign.sys.Group();
static var m_BulletGroup = new jp.bambooshootdesign.sys.Group();
static var m_Debug = new jp.bambooshootdesign.app.thundervector.sys.Debug();
static var m_Status = new jp.bambooshootdesign.app.thundervector.sys.Status();
static var m_SoundManager = new jp.bambooshootdesign.app.thundervector.sys.SoundManager();
static var m_Option = new jp.bambooshootdesign.app.thundervector.sys.Option();
static var m_GameMode = new jp.bambooshootdesign.app.thundervector.sys.GameMode();
static var COMBO_TIME = 2000;
static var COMBO_MAX = 99;
static var COMBO_BONUM_NUM = 20;
static var LOOP_MAX = 6;
static var MAX_SCORE = 9999999990;
}
Symbol 1307 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.flow.PublisherLogo] Frame 0
class jp.bambooshootdesign.app.thundervector.flow.PublisherLogo extends jp.bambooshootdesign.app.thundervector.flow.Flow
{
var m_result;
function PublisherLogo () {
super();
m_result = "";
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.init();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.setNormalQuality();
new jp.bambooshootdesign.app.thundervector.enemy.ShockwaveLogo(this);
}
function move() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callMove();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callCtrlAndDisp();
return(m_result != "");
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callDestroy();
}
function event(id) {
m_result = id;
}
}
Symbol 1308 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.ShockwaveLogo] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.ShockwaveLogo extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_parent, m_mc, m_wl;
function ShockwaveLogo (parent) {
super();
m_parent = parent;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SYSTEM, "ShockwaveLogoMC", "ShockwaveLogo");
m_mc._x = jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH / 2;
m_mc._y = jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT / 2;
m_mc.gotoAndPlay(1);
m_mc._visible = true;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
}
function move() {
if (m_mc._currentframe >= m_mc._totalframes) {
m_parent.event("Next");
return(false);
}
return(true);
}
function ctrlAndDisp() {
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
m_mc.removeMovieClip();
}
}
Symbol 1309 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.flow.MakerLogo] Frame 0
class jp.bambooshootdesign.app.thundervector.flow.MakerLogo extends jp.bambooshootdesign.app.thundervector.flow.Flow
{
var m_result;
function MakerLogo () {
super();
m_result = "";
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.init();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.setNormalQuality();
new jp.bambooshootdesign.app.thundervector.enemy.BambooLogo(this);
}
function move() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callMove();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callCtrlAndDisp();
return(m_result != "");
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callDestroy();
}
function event(id) {
m_result = id;
}
}
Symbol 1310 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.BambooLogo] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.BambooLogo extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_parent, m_skip, m_mc, m_wl;
function BambooLogo (parent) {
super();
m_parent = parent;
m_skip = false;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SYSTEM, "BambooLogoMC", "BambooLogo");
m_mc._x = jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH / 2;
m_mc._y = jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT / 2;
m_mc.gotoAndPlay(1);
m_mc._visible = true;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
Key.addListener(this);
Mouse.addListener(this);
}
function move() {
if ((m_mc._currentframe >= m_mc._totalframes) || (m_skip)) {
m_parent.event("Next");
return(false);
}
return(true);
}
function ctrlAndDisp() {
return(true);
}
function destroy() {
Key.removeListener(this);
Mouse.removeListener(this);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
m_mc.removeMovieClip();
}
function onKeyDown() {
m_skip = true;
}
function onKeyup() {
}
function onMouseDown() {
m_skip = true;
}
function onMouseMove() {
}
function onMouseUp() {
}
function onMouseWheel() {
}
}
Symbol 1311 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.flow.Title] Frame 0
class jp.bambooshootdesign.app.thundervector.flow.Title extends jp.bambooshootdesign.app.thundervector.flow.Flow
{
var m_result;
function Title () {
super();
m_result = "";
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.init();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.setNormalQuality();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.setSpeed(jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate());
new jp.bambooshootdesign.app.thundervector.enemy.TitleMenu(this);
}
function move() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.move();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callMove();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callCtrlAndDisp();
return(m_result != "");
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callDestroy();
}
function event(id) {
m_result = id;
}
}
Symbol 1312 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.TitleMenu] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.TitleMenu extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_parent, m_result, m_mode, m_count, m_mcMenu, m_mcCursor, m_mcFade, m_wl, m_isContinue, m_curMenuIdx, m_titleMenuIdx, m_optionMenuIdx, m_storyMenuIdx, m_manualMenuIdx, m_option, m_checkMouseClick, m_checkMouseMove, m_keyAction, m_nextMenuIdx, m_btnMcList;
function TitleMenu (parent) {
super();
m_parent = parent;
m_result = "";
m_mode = FADE_IN;
m_count = 0;
var _local3 = jp.bambooshootdesign.util.MovieClipFactory.get(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SCREEN);
_local3._x = 0;
var _local4;
_local4 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.Quality;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.Quality = true;
new jp.bambooshootdesign.app.thundervector.enemy.TitleBackGround();
new jp.bambooshootdesign.app.thundervector.enemy.BackGroundStar();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.Quality = _local4;
m_mcMenu = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SYSTEM, "TitleMC", "Title");
m_mcMenu._x = jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH / 2;
m_mcMenu._y = jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT / 2;
m_mcMenu.gotoAndStop(1);
m_mcMenu._visible = true;
m_mcCursor = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SYSTEM, "CursorMC", "Cursor");
m_mcCursor._visible = false;
m_mcFade = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SYSTEM, "FadeMC", "Fade");
m_mcFade._x = jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH / 2;
m_mcFade._y = jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT / 2;
m_mcFade._width = jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH;
m_mcFade._height = jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT;
m_mcFade._visible = false;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
Key.addListener(this);
Mouse.addListener(this);
m_isContinue = jp.bambooshootdesign.app.thundervector.sys.SysInfo.isContinue();
m_curMenuIdx = TITLE;
initMenu(m_curMenuIdx);
m_titleMenuIdx = 0;
m_optionMenuIdx = 0;
m_storyMenuIdx = 0;
m_manualMenuIdx = 0;
m_option = {};
m_option.Quality = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.Quality;
m_option.Bgm = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.Bgm;
m_option.Se = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.Se;
m_checkMouseClick = false;
m_checkMouseMove = false;
m_keyAction = -1;
}
function move() {
switch (m_mode) {
case FADE_IN :
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate();
if (m_count >= FADE_TIME) {
m_mode = FADE_NONE;
m_count = 0;
}
break;
case FADE_OUT :
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate();
if (m_count >= FADE_TIME) {
if (m_nextMenuIdx == START) {
m_parent.event("next");
} else if (m_nextMenuIdx == CONTINUE) {
m_parent.event("continue");
} else {
m_curMenuIdx = m_nextMenuIdx;
m_mcMenu.gotoAndStop(m_curMenuIdx + 1);
initMenu(m_nextMenuIdx);
m_mode = FADE_IN;
}
m_count = 0;
}
break;
case FADE_NONE :
if (m_count == 0) {
m_checkMouseMove = true;
}
m_count = m_count + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getRate();
switch (m_curMenuIdx) {
case TITLE :
moveTitle();
break;
case OPTION :
moveOption();
break;
case STORY :
moveStory();
break;
case MANUAL :
moveManual();
}
if (m_mode == FADE_NONE) {
break;
}
hideCursor();
}
m_checkMouseClick = false;
m_checkMouseMove = false;
m_keyAction = -1;
return(true);
}
function moveTitle() {
var _local6 = -1;
if (m_checkMouseMove || (m_checkMouseClick)) {
var _local2;
var _local5;
var _local4;
var _local3;
_local4 = m_mcMenu._xmouse;
_local3 = m_mcMenu._ymouse;
_local5 = -1;
_local2 = m_btnMcList.length - 1;
while (_local2 >= 0) {
if (hitCheck(_local2, _local4, _local3)) {
showCursor(_local4, _local3);
_local5 = _local2;
break;
}
_local2--;
}
if (_local5 != -1) {
if (m_checkMouseClick) {
if ((!m_isContinue) && (_local2 >= TITLE_CONTINUE)) {
_local6 = _local5 + 1;
} else {
_local6 = _local5;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("SelectMenu");
} else if (m_titleMenuIdx != _local5) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MoveMenu");
}
m_titleMenuIdx = _local5;
} else {
hideCursor();
}
}
if (m_keyAction != -1) {
if (m_keyAction == KEY_DOWN) {
m_titleMenuIdx++;
if (m_titleMenuIdx > ((TITLE_MAX - (m_isContinue ? 0 : 1)) - (jp.bambooshootdesign.app.thundervector.sys.SysInfo.GameMode.isRankingMode() ? 0 : 1))) {
m_titleMenuIdx = 0;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MoveMenu");
} else if (m_keyAction == KEY_UP) {
m_titleMenuIdx--;
if (m_titleMenuIdx < 0) {
m_titleMenuIdx = (TITLE_MAX - (m_isContinue ? 0 : 1)) - (jp.bambooshootdesign.app.thundervector.sys.SysInfo.GameMode.isRankingMode() ? 0 : 1);
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MoveMenu");
} else if (m_keyAction == KEY_ENTER) {
if ((!m_isContinue) && (m_titleMenuIdx >= TITLE_CONTINUE)) {
_local6 = m_titleMenuIdx + 1;
} else {
_local6 = m_titleMenuIdx;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("SelectMenu");
}
hideCursor();
}
if (_local6 != -1) {
switch (_local6) {
case TITLE_START :
m_nextMenuIdx = START;
break;
case TITLE_CONTINUE :
m_nextMenuIdx = CONTINUE;
break;
case TITLE_OPTION :
m_nextMenuIdx = OPTION;
break;
case TITLE_STORY :
m_nextMenuIdx = STORY;
break;
case TITLE_MANUAL :
m_nextMenuIdx = MANUAL;
break;
case TITLE_RANKING :
var _local7 = new jp.bambooshootdesign.app.thundervector.highscore.ThunderVectorHighscore();
_local7.connectHighscore(com.shockwave.sys.HighscoreSystem.FT_VIEW);
_local6 = -1;
}
if (_local6 != -1) {
m_mode = FADE_OUT;
m_count = 0;
}
}
}
function moveOption() {
var _local8 = -1;
if (m_checkMouseMove || (m_checkMouseClick)) {
var _local2;
var _local4;
var _local3;
var _local7 = false;
_local4 = m_mcMenu.Option._xmouse;
_local3 = m_mcMenu.Option._ymouse;
_local2 = m_btnMcList.length - 1;
while (_local2 >= 0) {
var _local9 = m_btnMcList[_local2];
if (_local9.type == "switch") {
var _local5;
var _local6;
_local5 = updateBtn(_local9.onmc, _local4, _local3);
_local6 = updateBtn(_local9.offmc, _local4, _local3);
if (_local5 || (_local6)) {
if (m_optionMenuIdx != _local2) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MoveMenu");
}
m_optionMenuIdx = _local2;
showCursor2(_local4, _local3);
_local7 = true;
}
if (m_checkMouseClick) {
if (_local5) {
m_option[_local9.name] = true;
_local9.onmc.select.gotoAndStop(1);
_local9.offmc.select.gotoAndStop(2);
changeOption(_local9.name, true);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MoveMenu");
} else if (_local6) {
m_option[_local9.name] = false;
_local9.onmc.select.gotoAndStop(2);
_local9.offmc.select.gotoAndStop(1);
changeOption(_local9.name, false);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MoveMenu");
}
}
} else if (_local9.type == "menu") {
if (hitCheckMC(_local9.menumc, _local4, _local3)) {
if (m_checkMouseClick) {
_local8 = _local2;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("SelectMenu");
} else {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MoveMenu");
}
m_optionMenuIdx = _local2;
showCursor2(_local4, _local3);
_local7 = true;
}
}
_local2--;
}
if (!_local7) {
hideCursor();
}
}
if (m_keyAction != -1) {
if (m_keyAction == KEY_DOWN) {
m_optionMenuIdx++;
if (m_optionMenuIdx > OPTION_BACK) {
m_optionMenuIdx = 0;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MoveMenu");
} else if (m_keyAction == KEY_UP) {
m_optionMenuIdx--;
if (m_optionMenuIdx < 0) {
m_optionMenuIdx = OPTION_BACK;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MoveMenu");
} else if (m_optionMenuIdx == OPTION_BACK) {
if (m_keyAction == KEY_ENTER) {
_local8 = m_titleMenuIdx;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("SelectMenu");
}
} else {
var _local9 = m_btnMcList[m_optionMenuIdx];
var _local10;
_local10 = !m_option[_local9.name];
m_option[_local9.name] = _local10;
_local9.onmc.select.gotoAndStop((_local10 ? 1 : 2));
_local9.offmc.select.gotoAndStop((_local10 ? 2 : 1));
changeOption(_local9.name, _local10);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MoveMenu");
}
hideCursor();
}
if (_local8 != -1) {
m_nextMenuIdx = TITLE;
m_mode = FADE_OUT;
m_count = 0;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.save();
}
}
function moveManual() {
var _local5 = -1;
if (m_checkMouseMove || (m_checkMouseClick)) {
var _local2;
var _local4;
var _local3;
var _local6 = false;
_local4 = m_mcMenu.Manual._xmouse;
_local3 = m_mcMenu.Manual._ymouse;
_local2 = m_btnMcList.length - 1;
while (_local2 >= 0) {
if (hitCheck(_local2, _local4, _local3)) {
if (m_checkMouseClick) {
_local5 = _local2;
}
m_manualMenuIdx = _local2;
showCursor2(_local4, _local3);
_local6 = true;
}
_local2--;
}
if (!_local6) {
hideCursor();
}
}
if (m_keyAction != -1) {
if (m_keyAction == KEY_ENTER) {
_local5 = m_manualMenuIdx;
}
}
if (_local5 != -1) {
m_nextMenuIdx = TITLE;
m_mode = FADE_OUT;
m_count = 0;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("SelectMenu");
}
}
function moveStory() {
var _local5 = -1;
if (m_checkMouseMove || (m_checkMouseClick)) {
var _local2;
var _local4;
var _local3;
var _local6 = false;
_local4 = m_mcMenu.Story._xmouse;
_local3 = m_mcMenu.Story._ymouse;
_local2 = m_btnMcList.length - 1;
while (_local2 >= 0) {
if (hitCheck(_local2, _local4, _local3)) {
if (m_checkMouseClick) {
_local5 = _local2;
}
m_storyMenuIdx = _local2;
showCursor2(_local4, _local3);
_local6 = true;
}
_local2--;
}
if (!_local6) {
hideCursor();
}
}
if (m_keyAction != -1) {
if (m_keyAction == KEY_ENTER) {
_local5 = m_storyMenuIdx;
}
}
if (_local5 != -1) {
m_nextMenuIdx = TITLE;
m_mode = FADE_OUT;
m_count = 0;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("SelectMenu");
}
}
function ctrlAndDisp() {
switch (m_mode) {
case FADE_IN :
m_mcFade._alpha = 100 - ((m_count * 100) / FADE_TIME);
m_mcFade._visible = true;
break;
case FADE_OUT :
m_mcFade._alpha = (m_count * 100) / FADE_TIME;
m_mcFade._visible = true;
break;
case FADE_NONE :
m_mcFade._visible = false;
}
switch (m_curMenuIdx) {
case TITLE :
m_mcMenu.Select._x = m_btnMcList[m_titleMenuIdx]._x;
m_mcMenu.Select._y = m_btnMcList[m_titleMenuIdx]._y;
break;
case OPTION :
var _local3 = m_btnMcList[m_optionMenuIdx].menumc;
var _local2 = {x:_local3._x, y:_local3._y};
m_mcMenu.Option.localToGlobal(_local2);
m_mcMenu.globalToLocal(_local2);
m_mcMenu.Select._x = _local2.x;
m_mcMenu.Select._y = _local2.y;
break;
case STORY :
_local3 = m_btnMcList[m_storyMenuIdx];
_local2 = {x:_local3._x, y:_local3._y};
m_mcMenu.Manual.localToGlobal(_local2);
m_mcMenu.globalToLocal(_local2);
m_mcMenu.Select._x = _local2.x;
m_mcMenu.Select._y = _local2.y;
break;
case MANUAL :
_local3 = m_btnMcList[m_manualMenuIdx];
_local2 = {x:_local3._x, y:_local3._y};
m_mcMenu.Manual.localToGlobal(_local2);
m_mcMenu.globalToLocal(_local2);
m_mcMenu.Select._x = _local2.x;
m_mcMenu.Select._y = _local2.y;
}
return(true);
}
function destroy() {
Key.removeListener(this);
Mouse.removeListener(this);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
m_mcFade.removeMovieClip();
m_mcMenu.removeMovieClip();
}
function onKeyDown() {
var _local2 = Key.getCode();
if (_local2 == 38) {
m_keyAction = KEY_UP;
}
if (_local2 == 40) {
m_keyAction = KEY_DOWN;
}
if ((_local2 == 37) || (_local2 == 39)) {
m_keyAction = KEY_CHANGE;
}
if ((_local2 == 13) || (_local2 == 108)) {
m_keyAction = KEY_ENTER;
}
}
function onKeyup() {
}
function onMouseDown() {
m_checkMouseClick = true;
}
function onMouseMove() {
m_checkMouseMove = true;
}
function onMouseUp() {
}
function onMouseWheel() {
}
function initMenu(idx) {
var _local5;
m_btnMcList = [];
switch (idx) {
case TITLE :
_local5 = m_mcMenu;
m_btnMcList.push(_local5.startBtn);
if (m_isContinue) {
var _local6 = new Color(_local5.continueBtn);
var _local4 = {};
_local4.ra = (_local4.ga = (_local4.ba = (_local4.aa = 100)));
_local4.rb = (_local4.gb = (_local4.bb = (_local4.ab = 0)));
_local6.setTransform(_local4);
m_btnMcList.push(_local5.continueBtn);
} else {
var _local6 = new Color(_local5.continueBtn);
var _local4 = {};
_local4.ra = (_local4.ga = (_local4.ba = 50));
_local4.aa = 100;
_local4.rb = (_local4.gb = (_local4.bb = (_local4.ab = 0)));
_local6.setTransform(_local4);
}
m_btnMcList.push(_local5.optionBtn);
m_btnMcList.push(_local5.storyBtn);
m_btnMcList.push(_local5.manualBtn);
if (jp.bambooshootdesign.app.thundervector.sys.SysInfo.GameMode.isRankingMode()) {
m_btnMcList.push(_local5.rankingBtn);
} else {
_local5.rankingBtn._visible = false;
}
_local5.HiScore = jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.HiScore;
break;
case OPTION :
_local5 = m_mcMenu.Option;
m_btnMcList.push({type:"switch", name:"Quality", menumc:_local5.qualityMenu, onmc:_local5.qualityHiBtn, offmc:_local5.qualityLowBtn});
m_btnMcList.push({type:"switch", name:"Bgm", menumc:_local5.bgmMenu, onmc:_local5.bgmOnBtn, offmc:_local5.bgmOffBtn});
m_btnMcList.push({type:"switch", name:"Se", menumc:_local5.seMenu, onmc:_local5.seOnBtn, offmc:_local5.seOffBtn});
m_btnMcList.push({type:"menu", name:"Back", menumc:_local5.backBtn, mc:_local5.backBtn});
var _local3 = m_btnMcList.length - 1;
while (_local3 >= 0) {
var _local2 = m_btnMcList[_local3];
if (_local2.type == "switch") {
_local2.onmc.roll._visible = false;
_local2.offmc.roll._visible = false;
_local2.onmc.select.gotoAndStop((m_option[_local2.name] ? 1 : 2));
_local2.offmc.select.gotoAndStop((m_option[_local2.name] ? 2 : 1));
}
_local3--;
}
break;
case STORY :
_local5 = m_mcMenu.Story;
m_btnMcList.push(_local5.backBtn);
break;
case MANUAL :
_local5 = m_mcMenu.Manual;
m_btnMcList.push(_local5.backBtn);
}
}
function changeOption(opt, onoff) {
switch (opt) {
case "Quality" :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.Quality = onoff;
break;
case "Bgm" :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.Bgm = onoff;
break;
case "Se" :
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.Se = onoff;
}
}
function hitCheck(btnIdx, x, y) {
var _local2 = m_btnMcList[btnIdx];
return(hitCheckMC(_local2, x, y));
}
function updateBtn(mc, x, y) {
var _local2 = hitCheckMC(mc, x, y);
mc.roll._visible = _local2;
return(_local2);
}
function hitCheckMC(mcb, x, y) {
if (((((mcb._x - (mcb._width / 2)) <= x) && ((mcb._x + (mcb._width / 2)) >= x)) && ((mcb._y - (mcb._height / 2)) <= y)) && ((mcb._y + (mcb._height / 2)) >= y)) {
return(true);
}
return(false);
}
function showCursor(x, y) {
var _local2 = m_mcCursor;
_local2._x = (jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH / 2) + x;
_local2._y = (jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT / 2) + y;
_local2._visible = true;
Mouse.hide();
}
function showCursor2(x, y) {
var _local2 = m_mcCursor;
_local2._x = x;
_local2._y = y;
_local2._visible = true;
Mouse.hide();
}
function hideCursor() {
var _local2 = m_mcCursor;
_local2._visible = false;
Mouse.show();
}
static var TITLE = 0;
static var OPTION = 1;
static var STORY = 2;
static var MANUAL = 3;
static var RANKING = 4;
static var START = -1;
static var CONTINUE = -2;
static var TITLE_START = 0;
static var TITLE_CONTINUE = 1;
static var TITLE_OPTION = 2;
static var TITLE_STORY = 3;
static var TITLE_MANUAL = 4;
static var TITLE_RANKING = 5;
static var TITLE_MAX = 5;
static var OPTION_QUALITY = 0;
static var OPTION_BGM = 1;
static var OPTION_SE = 2;
static var OPTION_BACK = 3;
static var MANUAL_BACK = 0;
static var FADE_NONE = 0;
static var FADE_IN = 1;
static var FADE_OUT = 2;
static var FADE_TIME = 500;
static var KEY_DOWN = 1;
static var KEY_UP = 2;
static var KEY_ENTER = 3;
static var KEY_CHANGE = 4;
}
Symbol 1313 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.TitleBackGround] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.TitleBackGround extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_mc, m_wl;
function TitleBackGround () {
super();
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_BACKGROUND, "Stage1BackGroundMC", "BackGround");
m_mc._visible = true;
m_mc._x = -85;
m_mc._y = -1098;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
}
function move() {
return(true);
}
function ctrlAndDisp() {
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
m_mc.removeMovieClip();
}
}
Symbol 1314 MovieClip [__Packages.com.shockwave.sys.HighscoreSystem] Frame 0
class com.shockwave.sys.HighscoreSystem
{
var m_GameID, m_ScoreData, m_GameTitle, m_ScoreDes, m_PassWord;
function HighscoreSystem () {
m_GameID = "";
m_ScoreData = 0;
m_GameTitle = "";
m_ScoreDes = "";
m_PassWord = "";
}
function setScore(score) {
m_ScoreData = score;
}
function connectHighscore(FunctionType) {
var _local4;
var _local2;
var _local3;
_local4 = (((((((("GameID=" + m_GameID) + ",FunctionType=") + FunctionType) + ",Score=") + m_ScoreData) + ",Title1=") + m_GameTitle) + ",ScoreDes=") + m_ScoreDes;
_local2 = encrypt(_local4);
_local3 = System.capabilities.playerType;
if ((_local3 == "PlugIn") || (_local3 == "ActiveX")) {
getURL (("JavaScript:openHiscore('/content/highscores/hs-connector.html?" + _local2) + "');");
} else {
getURL ("http://jp.shockwave.com/content/highscores/hs-connector.html?" + _local2);
}
}
function connectHighscoreTest(FunctionType) {
var _local3;
var _local2;
_local3 = (((((((("GameID=" + m_GameID) + ",FunctionType=") + FunctionType) + ",Score=") + m_ScoreData) + ",Title1=") + m_GameTitle) + ",ScoreDes=") + m_ScoreDes;
_local2 = encrypt(_local3);
return(_local2);
}
function encrypt(myText) {
var _local6 = "";
var _local3 = 0;
var _local5;
var _local7;
var _local2 = 0;
while (_local2 <= m_PassWord.length) {
if (_local2 == m_PassWord.length) {
_local3 = _local3 + 0;
} else {
_local3 = _local3 + m_PassWord.substr(_local2, 1).charCodeAt(0);
}
_local2++;
}
_local2 = 0;
while (_local2 <= myText.length) {
if (_local2 == myText.length) {
_local3 = _local3 + 0;
break;
}
_local5 = myText.substr(_local2, 1).charCodeAt(0) + _local3;
_local6 = _local6 + (_local5 + "_");
_local2++;
}
_local7 = _local6.substr(0, _local6.length - 1);
return(_local7);
}
static var FT_VIEW = "view";
static var FT_SUBMIT = "submit";
}
Symbol 1315 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.highscore.ThunderVectorHighscore] Frame 0
class jp.bambooshootdesign.app.thundervector.highscore.ThunderVectorHighscore extends com.shockwave.sys.HighscoreSystem
{
var m_GameID, m_GameTitle, m_ScoreDes, m_PassWord, m_ScoreData;
function ThunderVectorHighscore () {
super();
m_GameID = "thunder";
m_GameTitle = "Thunder Vector";
m_ScoreDes = "points";
m_PassWord = "shockwave";
m_ScoreData = 0;
}
}
Symbol 1316 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.flow.StageMovie] Frame 0
class jp.bambooshootdesign.app.thundervector.flow.StageMovie extends jp.bambooshootdesign.app.thundervector.flow.Flow
{
var m_result;
function StageMovie () {
super();
m_result = "";
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.init();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.setGameQuality();
new jp.bambooshootdesign.app.thundervector.enemy.Movie(jp.bambooshootdesign.app.thundervector.sys.SysInfo.getStageNum(), this);
}
function move() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callMove();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callCtrlAndDisp();
return(m_result != "");
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callDestroy();
stopAllSounds();
}
function event(id) {
m_result = id;
}
}
Symbol 1317 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.Movie] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.Movie extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_end, m_parent, m_sound, m_mc, m_wl, m_isFinish;
function Movie (stage, parent) {
super();
var _local3 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getLoop();
m_end = MovieFrame[stage].end;
m_parent = parent;
m_sound = {};
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SYSTEM, "MovieMC", "Movie");
m_mc.snd = this;
m_mc._x = jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH / 2;
m_mc._y = jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT / 2;
m_mc.gotoAndPlay(MovieFrame[stage].start);
if (_local3 > 1) {
m_mc.loopNum.text = _local3;
} else {
m_mc.loop._visible = false;
m_mc.loopNum._visible = false;
}
m_mc._visible = true;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_isFinish = false;
Key.addListener(this);
Mouse.addListener(this);
}
function move() {
var _local2 = m_mc._currentframe != m_end;
if ((!_local2) || (m_isFinish)) {
m_parent.event("Next");
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.stopAll();
} else {
updateSound();
}
return(_local2);
}
function ctrlAndDisp() {
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
m_mc.removeMovieClip();
Key.removeListener(this);
Mouse.removeListener(this);
}
function onKeyDown() {
if (Key.isDown(13) || (Key.isDown(108))) {
m_isFinish = true;
}
}
function onKeyup() {
}
function onMouseDown() {
m_isFinish = true;
}
function onMouseMove() {
}
function onMouseUp() {
}
function onMouseWheel() {
}
function playSound(id) {
var _local2 = {};
_local2.seid = jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE(id);
_local2.frame = -1;
m_sound[id] = _local2;
}
function playMusic(id) {
var _local2 = {};
_local2.seid = -1;
_local2.frame = -1;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playMusic(id);
m_sound[id] = _local2;
}
function fadeSound(id, start, end, frame) {
var _local2 = m_sound[id];
_local2.start = start;
_local2.end = end;
_local2.startFrame = m_mc._currentFrame;
_local2.frame = frame;
}
function updateSound() {
var _local4;
var _local3;
var _local2;
for (_local4 in m_sound) {
_local2 = m_sound[_local4];
if (_local2.frame != -1) {
_local3 = Math.floor(_local2.start + (((m_mc._currentframe - _local2.startFrame) * (_local2.end - _local2.start)) / _local2.frame));
if (_local3 < 0) {
_local3 = 0;
}
if (_local2.seid != -1) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.setVolume(_local2.seid, _local3);
} else {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.setMusicVolume(_local3);
}
}
}
}
static var MovieFrame = [{start:2, end:171}, {start:181, end:310}, {start:321, end:440}, {start:451, end:541}, {start:551, end:700}, {}];
}
Symbol 1318 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.flow.GameMain] Frame 0
class jp.bambooshootdesign.app.thundervector.flow.GameMain extends jp.bambooshootdesign.app.thundervector.flow.Flow
{
var m_result;
function GameMain () {
super();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.init();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.setPosition(jp.bambooshootdesign.app.thundervector.sys.Screen.GAME_WIDTH / 2, 440);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.init();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.init(8, 8);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Status.init();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.init();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.setParent(this);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.setScene(jp.bambooshootdesign.app.thundervector.data.Stage.get(jp.bambooshootdesign.app.thundervector.sys.SysInfo.getStageNum() + 1));
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.init(jp.bambooshootdesign.app.thundervector.enemy.Enemy.EM_MAX);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.EnemyGroup.reset();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.init(jp.bambooshootdesign.app.thundervector.enemy.Bullet.BT_MAX);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.BulletGroup.reset();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.setGameQuality();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Debug.init(0, jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Debug.setActive(false);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Debug.setVisible(false);
}
function move() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Debug.reset();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.reset();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.move();
if (!jp.bambooshootdesign.app.thundervector.sys.SysInfo.isPause()) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.move();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.move();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.move();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callMove();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Status.move();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.check();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.ctrl();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callCtrlAndDisp();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.disp();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Status.disp();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.disp();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.disp();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Debug.disp();
}
if (jp.bambooshootdesign.app.thundervector.sys.SysInfo.Debug.isActive()) {
if (Key.isDown(49 + jp.bambooshootdesign.app.thundervector.sys.SysInfo.getStageNum())) {
m_result = "Next";
}
}
return(m_result != "");
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Debug.destroy();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SceneGraph.destroy();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Status.destroy();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Collision.destroy();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Player.destroy();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callDestroy();
stopAllSounds();
}
function event(id) {
m_result = id;
}
}
Symbol 1319 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.data.Stage] Frame 0
class jp.bambooshootdesign.app.thundervector.data.Stage
{
function Stage () {
}
static function get(stage) {
var _local1;
switch (stage) {
case 1 :
_local1 = jp.bambooshootdesign.app.thundervector.data.Stage1.Data;
break;
case 2 :
_local1 = jp.bambooshootdesign.app.thundervector.data.Stage2.Data;
break;
case 3 :
_local1 = jp.bambooshootdesign.app.thundervector.data.Stage3.Data;
break;
case 4 :
_local1 = jp.bambooshootdesign.app.thundervector.data.Stage4.Data;
break;
case 5 :
_local1 = jp.bambooshootdesign.app.thundervector.data.StageLast.Data;
}
return(_local1);
}
}
Symbol 1320 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.data.Stage1] Frame 0
class jp.bambooshootdesign.app.thundervector.data.Stage1
{
function Stage1 () {
}
static function get Data() {
return(stagedata);
}
static var stagedata = [{type:"LEVEL", loop:1, level:2}, {type:"LEVEL", loop:2, level:5}, {type:"LEVEL", loop:3, level:6}, {type:"LEVEL", loop:4, level:7}, {type:"LEVEL", loop:5, level:8}, {type:"LEVEL", loop:6, level:9}, {type:"LABEL", name:"START"}, {type:"SOUND", action:"PlayMusic", id:"Stage1"}, {type:"PLAYER", action:"Come"}, {type:"WAIT", time:50}, {type:"ENEMY", id:"StageBackGround", count:1, interval:0, param:{stage:1, time:120000}}, {type:"ENEMY", id:"BackGroundStar", count:1, interval:0}, {type:"PLAYER", action:"Show"}, {type:"WAIT", time:1950}, {type:"PLAYER", action:"Unlock"}, {type:"FRAME", flag:"ON"}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:270, y:250, rad:64, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:3}}, inc:{}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:450, y:250, rad:-64, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:3}}, inc:{}}, {type:"WAIT", time:5500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:450, y:250, rad:-64, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:3}}, inc:{}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:270, y:250, rad:64, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:3}}, inc:{}}, {type:"WAIT", time:5500}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako2", count:4, interval:1000, param:{x:150, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:3}}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako2", count:4, interval:1000, param:{x:570, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:3}}}, {type:"WAIT", time:10000}, {type:"ENEMY", id:"Zako1", count:4, interval:1000, param:{x:575, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:3}}, inc:{x:-100}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako1", count:4, interval:1000, param:{x:145, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:3}}, inc:{x:100}}, {type:"WAIT", time:5000}, {type:"WAIT", time:1500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:270, y:250, rad:64, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:3}}, inc:{}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:450, y:250, rad:-64, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:3}}, inc:{}}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:350, y:200, dir:-1, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:0}}}, {type:"WAIT", time:6000}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:450, y:250, rad:-64, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:3}}, inc:{}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:270, y:250, rad:64, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:3}}, inc:{}}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:370, y:200, dir:1, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:0}}}, {type:"WAIT", time:6000}, {type:"ENEMY", id:"Zako1", count:3, interval:1000, param:{x:575, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:-100}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako1", count:3, interval:1000, param:{x:145, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:100}}, {type:"WAIT", time:3000}, {type:"ENEMY", id:"Zako2", count:3, interval:1000, param:{x:150, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako2", count:3, interval:1000, param:{x:570, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}}, {type:"WAIT", time:3000}, {type:"WAIT", time:1500}, {type:"ENEMY", id:"Zako2", count:3, interval:2000, param:{x:150, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}}, {type:"WAIT", time:1000}, {type:"ENEMY", id:"Zako2", count:3, interval:2000, param:{x:570, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}}, {type:"ENEMY", id:"Zako3", count:1, interval:4000, param:{x:350, y:200, dir:-1, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_FORCE, count:0}}}, {type:"WAIT", time:10000}, {type:"ENEMY", id:"Zako1", count:3, interval:1000, param:{x:575, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:-100}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako1", count:3, interval:1000, param:{x:145, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:100}}, {type:"ENEMY", id:"Zako3", count:1, interval:4000, param:{x:370, y:200, dir:1, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:0}}}, {type:"WAIT", time:5000}, {type:"ENEMY", id:"Zako8", count:7, interval:1000, param:{x:100, y:250, rad:64, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:6}}, inc:{x:50}}, {type:"ENEMY", id:"Zako8", count:7, interval:1000, param:{x:620, y:250, rad:-64, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:6}}, inc:{x:-50}}, {type:"WAIT", time:3500}, {type:"ENEMY", id:"Zako4", count:2, interval:4000, param:{x:150, y:50, movey:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:1}}, inc:{}}, {type:"ENEMY", id:"Zako4", count:2, interval:4000, param:{x:570, y:50, movey:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:1}}, inc:{}}, {type:"WAIT", time:4000}, {type:"ENEMY", id:"Zako1", count:5, interval:1000, param:{x:145, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:4}}, inc:{x:100}}, {type:"WAIT", time:5000}, {type:"ENEMY", id:"Zako1", count:5, interval:1000, param:{x:575, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:4}}, inc:{x:-100}}, {type:"WAIT", time:2500}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:150, y:50, movey:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:0}}, inc:{}}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:570, y:50, movey:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:0}}, inc:{}}, {type:"WAIT", time:8000}, {type:"SOUND", action:"FadeOut", time:2000}, {type:"WAIT", time:3000}, {type:"ENEMY", id:"Danger", count:1, interval:0, param:{}}, {type:"WAIT", time:4500}, {type:"SOUND", action:"PlayMusic", id:"Boss"}, {type:"ENEMY", id:"Boss1", count:1, interval:0, param:{event:{id:"BossDestroy"}}}, {type:"WAITEVENT", id:"BossDestroy"}, {type:"FRAME", flag:"OFF"}, {type:"PLAYER", action:"Lock"}, {type:"WAIT", time:2000}, {type:"SOUND", action:"FadeOut", time:2000}, {type:"WAIT", time:2000}, {type:"PLAYER", action:"Leave"}, {type:"WAIT", time:3000}, {type:"PLAYER", action:"Hide"}, {type:"ENEMY", id:"StageResult", count:1, interval:0, param:{minute:2, second:30, range:60, event:{id:"StageEnd"}}}, {type:"WAITEVENT", id:"StageEnd"}, {type:"ENEMY", id:"Fade", count:1, interval:0, param:{start:0, end:100, fadeTime:500, time:1000}}, {type:"WAIT", time:500}, {type:"SENDEVENT", id:"Next"}, {type:"WAIT", time:1000000}, {type:"LOOP", name:"START"}];
}
Symbol 1321 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.data.Stage2] Frame 0
class jp.bambooshootdesign.app.thundervector.data.Stage2
{
function Stage2 () {
}
static function get Data() {
return(stagedata);
}
static var stagedata = [{type:"LEVEL", loop:1, level:3}, {type:"LEVEL", loop:2, level:5}, {type:"LEVEL", loop:3, level:6}, {type:"LEVEL", loop:4, level:7}, {type:"LEVEL", loop:5, level:8}, {type:"LEVEL", loop:6, level:9}, {type:"LABEL", name:"START"}, {type:"SOUND", action:"PlayMusic", id:"Stage2"}, {type:"PLAYER", action:"Come"}, {type:"WAIT", time:50}, {type:"ENEMY", id:"StageBackGround", count:1, interval:0, param:{stage:2, time:120000}}, {type:"ENEMY", id:"BackGroundStar", count:1, interval:0}, {type:"PLAYER", action:"Show"}, {type:"WAIT", time:1950}, {type:"PLAYER", action:"Unlock"}, {type:"FRAME", flag:"ON"}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:170, y:250, rad:96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:3}}, inc:{}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:550, y:250, rad:-96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:3}}, inc:{}}, {type:"WAIT", time:5500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:550, y:250, rad:-96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:3}}, inc:{}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:170, y:250, rad:96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:3}}, inc:{}}, {type:"WAIT", time:5500}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:270, y:250, rad:64, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:3}}, inc:{}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:450, y:250, rad:64, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:3}}, inc:{}}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:250, y:50, movey:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:0}}, inc:{}}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:470, y:50, movey:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:0}}, inc:{}}, {type:"WAIT", time:1000}, {type:"ENEMY", id:"Zako2", count:3, interval:1000, param:{x:150, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako2", count:3, interval:1000, param:{x:570, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}}, {type:"WAIT", time:4000}, {type:"WAIT", time:4000}, {type:"ENEMY", id:"Zako5", count:2, interval:2000, param:{x:360, y:240, w:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:1}}, random:{x:{min:100, max:640}, y:{min:150, max:250}, w:{min:-150, max:150}}}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:360, y:200, dir:-1, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:0}}}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:370, y:200, dir:1, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:0}}}, {type:"WAIT", time:6000}, {type:"ENEMY", id:"Zako5", count:2, interval:2000, param:{x:370, y:240, w:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:1}}, random:{x:{min:100, max:640}, y:{min:150, max:250}, w:{min:-150, max:150}}}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:270, y:200, dir:1, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_FORCE, count:0}}}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:460, y:200, dir:-1, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BOOST, count:0}}}, {type:"WAIT", time:6000}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako9", count:3, interval:2000, param:{x:200, y:250, rad:150, speed:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:20}}, {type:"WAIT", time:1000}, {type:"ENEMY", id:"Zako9", count:3, interval:2000, param:{x:520, y:250, rad:-150, speed:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:-20}}, {type:"WAIT", time:5000}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:250, y:50, movey:200, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BOOST, count:0}}, inc:{}}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:470, y:50, movey:200, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_FORCE, count:0}}, inc:{}}, {type:"WAIT", time:4000}, {type:"ENEMY", id:"Zako9", count:3, interval:2000, param:{x:520, y:250, rad:-150, speed:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:-20}}, {type:"WAIT", time:1000}, {type:"ENEMY", id:"Zako9", count:3, interval:2000, param:{x:200, y:250, rad:150, speed:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:20}}, {type:"WAIT", time:5000}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako2", count:3, interval:2000, param:{x:150, y:200, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:2}}}, {type:"WAIT", time:1000}, {type:"ENEMY", id:"Zako2", count:3, interval:2000, param:{x:570, y:200, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:2}}}, {type:"ENEMY", id:"Zako5", count:5, interval:1000, param:{x:360, y:240, w:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:4}}, random:{x:{min:100, max:640}, y:{min:150, max:250}, w:{min:-150, max:150}}}, {type:"WAIT", time:5000}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:250, y:50, movey:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:0}}, inc:{}}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:470, y:50, movey:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:0}}, inc:{}}, {type:"WAIT", time:4000}, {type:"ENEMY", id:"Zako2", count:3, interval:2000, param:{x:570, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}}, {type:"WAIT", time:1000}, {type:"ENEMY", id:"Zako2", count:3, interval:2000, param:{x:150, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}}, {type:"ENEMY", id:"Zako5", count:5, interval:1000, param:{x:360, y:240, w:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:4}}, random:{x:{min:100, max:640}, y:{min:150, max:250}, w:{min:-150, max:150}}}, {type:"WAIT", time:5000}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako6", count:1, interval:1000, param:{x:100, y:50, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:0}}, inc:{}}, {type:"ENEMY", id:"Zako6", count:1, interval:1000, param:{x:620, y:50, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:0}}, inc:{}}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako6", count:1, interval:1000, param:{x:150, y:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:0}}, inc:{}}, {type:"ENEMY", id:"Zako6", count:1, interval:1000, param:{x:570, y:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:0}}, inc:{}}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako10", count:1, interval:1000, param:{x:370, y:100, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_10000, count:0}}, inc:{}}, {type:"WAIT", time:5000}, {type:"WAIT", time:2000}, {type:"SOUND", action:"FadeOut", time:2000}, {type:"WAIT", time:3000}, {type:"ENEMY", id:"Danger", count:1, interval:0, param:{}}, {type:"WAIT", time:4500}, {type:"SOUND", action:"PlayMusic", id:"Boss"}, {type:"ENEMY", id:"Boss2", count:1, interval:0, param:{event:{id:"BossDestroy"}}}, {type:"WAITEVENT", id:"BossDestroy"}, {type:"FRAME", flag:"OFF"}, {type:"PLAYER", action:"Lock"}, {type:"SOUND", action:"FadeOut", time:2000}, {type:"WAIT", time:3000}, {type:"PLAYER", action:"Leave"}, {type:"WAIT", time:3000}, {type:"PLAYER", action:"Hide"}, {type:"ENEMY", id:"StageResult", count:1, interval:0, param:{minute:2, second:30, range:60, event:{id:"StageEnd"}}}, {type:"WAITEVENT", id:"StageEnd"}, {type:"ENEMY", id:"Fade", count:1, interval:0, param:{start:0, end:100, fadeTime:500, time:1000}}, {type:"WAIT", time:500}, {type:"SENDEVENT", id:"Next"}, {type:"WAIT", time:1000000}, {type:"LOOP", name:"START"}];
}
Symbol 1322 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.data.Stage3] Frame 0
class jp.bambooshootdesign.app.thundervector.data.Stage3
{
function Stage3 () {
}
static function get Data() {
return(stagedata);
}
static var stagedata = [{type:"LEVEL", loop:1, level:4}, {type:"LEVEL", loop:2, level:5}, {type:"LEVEL", loop:3, level:6}, {type:"LEVEL", loop:4, level:7}, {type:"LEVEL", loop:5, level:8}, {type:"LEVEL", loop:6, level:9}, {type:"LABEL", name:"START"}, {type:"SOUND", action:"PlayMusic", id:"Stage3"}, {type:"PLAYER", action:"Come"}, {type:"WAIT", time:50}, {type:"ENEMY", id:"StageBackGround", count:1, interval:0, param:{stage:3, time:120000}}, {type:"ENEMY", id:"BackGroundStar", count:1, interval:0}, {type:"PLAYER", action:"Show"}, {type:"WAIT", time:1950}, {type:"PLAYER", action:"Unlock"}, {type:"FRAME", flag:"ON"}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Rock1", count:500, interval:2000, param:{x:80, angle:-70, speed:80, event:{}}, random:{x:{min:0, max:740}, angle:{min:225, max:335}, speed:{min:70, max:90}}}, {type:"ENEMY", id:"Rock2", count:500, interval:4000, param:{x:170, angle:-80, speed:60, event:{}}, random:{x:{min:0, max:740}, angle:{min:225, max:335}, speed:{min:70, max:90}}}, {type:"ENEMY", id:"Rock3", count:11, interval:6000, param:{x:350, angle:-110, speed:40, event:{}}, random:{x:{min:0, max:740}, angle:{min:225, max:335}, speed:{min:70, max:90}}}, {type:"ENEMY", id:"Zako7", count:12, interval:7000, param:{x:450, y:200, angle:-80, speed:80, event:{}}, random:{x:{min:250, max:470}, angle:{min:230, max:320}, speed:{min:70, max:90}}}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:270, y:250, rad:96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:3}}, inc:{}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:450, y:250, rad:-96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:3}}, inc:{}}, {type:"WAIT", time:5500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:550, y:250, rad:-96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:3}}, inc:{}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:170, y:250, rad:96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:3}}, inc:{}}, {type:"WAIT", time:5500}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:270, y:250, rad:96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:3}}, inc:{}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:450, y:250, rad:-96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:3}}, inc:{}}, {type:"WAIT", time:5500}, {type:"ENEMY", id:"Zako2", count:4, interval:1000, param:{x:150, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:3}}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako2", count:4, interval:1000, param:{x:570, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:3}}}, {type:"WAIT", time:10000}, {type:"ENEMY", id:"Zako1", count:4, interval:1000, param:{x:575, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:3}}, inc:{x:-100}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako1", count:4, interval:1000, param:{x:145, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:3}}, inc:{x:100}}, {type:"WAIT", time:5000}, {type:"WAIT", time:1500}, {type:"ENEMY", id:"Zako5", count:2, interval:2000, param:{x:360, y:240, w:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:1}}, random:{x:{min:100, max:640}, y:{min:150, max:250}, w:{min:-150, max:150}}}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:360, y:200, dir:-1, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:0}}}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:370, y:200, dir:1, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:0}}}, {type:"WAIT", time:6000}, {type:"ENEMY", id:"Zako5", count:2, interval:2000, param:{x:370, y:240, w:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:1}}, random:{x:{min:100, max:640}, y:{min:150, max:250}, w:{min:-150, max:150}}}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:270, y:200, dir:1, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BOOST, count:0}}}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:460, y:200, dir:-1, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_FORCE, count:0}}}, {type:"WAIT", time:6000}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako9", count:3, interval:2000, param:{x:200, y:250, rad:150, speed:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:20}}, {type:"WAIT", time:1000}, {type:"ENEMY", id:"Zako9", count:3, interval:2000, param:{x:520, y:250, rad:-150, speed:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:-20}}, {type:"WAIT", time:5000}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:250, y:50, movey:200, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BOOST, count:4}}, inc:{}}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:470, y:50, movey:200, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_FORCE, count:4}}, inc:{}}, {type:"WAIT", time:4000}, {type:"ENEMY", id:"Zako9", count:3, interval:2000, param:{x:520, y:250, rad:-150, speed:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:-20}}, {type:"WAIT", time:1000}, {type:"ENEMY", id:"Zako9", count:3, interval:2000, param:{x:200, y:250, rad:150, speed:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:20}}, {type:"WAIT", time:5000}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako8", count:7, interval:1000, param:{x:100, y:250, rad:64, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:6}}, inc:{x:50}}, {type:"ENEMY", id:"Zako8", count:7, interval:1000, param:{x:620, y:250, rad:-64, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:6}}, inc:{x:-50}}, {type:"WAIT", time:3500}, {type:"ENEMY", id:"Zako4", count:2, interval:4000, param:{x:150, y:50, movey:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:1}}, inc:{}}, {type:"ENEMY", id:"Zako4", count:2, interval:4000, param:{x:570, y:50, movey:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_1000, count:1}}, inc:{}}, {type:"WAIT", time:4000}, {type:"ENEMY", id:"Zako1", count:5, interval:1000, param:{x:145, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:4}}, inc:{x:100}}, {type:"WAIT", time:5000}, {type:"ENEMY", id:"Zako1", count:5, interval:1000, param:{x:575, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:4}}, inc:{x:-100}}, {type:"WAIT", time:2500}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:150, y:50, movey:200, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BOOST, count:0}}, inc:{}}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:570, y:50, movey:200, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_FORCE, count:0}}, inc:{}}, {type:"WAIT", time:8000}, {type:"SOUND", action:"FadeOut", time:2000}, {type:"WAIT", time:3000}, {type:"ENEMY", id:"Danger", count:1, interval:0, param:{}}, {type:"WAIT", time:4500}, {type:"SOUND", action:"PlayMusic", id:"Boss"}, {type:"ENEMY", id:"Boss3", count:1, interval:0, param:{event:{id:"BossDestroy"}}}, {type:"WAITEVENT", id:"BossDestroy"}, {type:"FRAME", flag:"OFF"}, {type:"PLAYER", action:"Lock"}, {type:"SOUND", action:"FadeOut", time:2000}, {type:"WAIT", time:3000}, {type:"PLAYER", action:"Leave"}, {type:"WAIT", time:3000}, {type:"PLAYER", action:"Hide"}, {type:"ENEMY", id:"StageResult", count:1, interval:0, param:{minute:2, second:30, range:60, event:{id:"StageEnd"}}}, {type:"WAITEVENT", id:"StageEnd"}, {type:"ENEMY", id:"Fade", count:1, interval:0, param:{start:0, end:100, fadeTime:500, time:1000}}, {type:"WAIT", time:500}, {type:"SENDEVENT", id:"Next"}, {type:"WAIT", time:1000000}, {type:"LOOP", name:"START"}];
}
Symbol 1323 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.data.Stage4] Frame 0
class jp.bambooshootdesign.app.thundervector.data.Stage4
{
function Stage4 () {
}
static function get Data() {
return(stagedata);
}
static var stagedata = [{type:"LEVEL", loop:1, level:4}, {type:"LEVEL", loop:2, level:5}, {type:"LEVEL", loop:3, level:6}, {type:"LEVEL", loop:4, level:7}, {type:"LEVEL", loop:5, level:8}, {type:"LEVEL", loop:6, level:9}, {type:"LABEL", name:"START"}, {type:"SOUND", action:"PlayMusic", id:"Stage4"}, {type:"PLAYER", action:"Come"}, {type:"WAIT", time:50}, {type:"ENEMY", id:"StageBackGround", count:1, interval:0, param:{stage:4, time:120000}}, {type:"ENEMY", id:"BackGroundStar", count:1, interval:0}, {type:"PLAYER", action:"Show"}, {type:"WAIT", time:1950}, {type:"PLAYER", action:"Unlock"}, {type:"FRAME", flag:"ON"}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:270, y:250, rad:96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:3}}, inc:{}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:450, y:250, rad:-96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:3}}, inc:{}}, {type:"WAIT", time:4500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:300, y:250, rad:96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:3}}, inc:{}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:420, y:250, rad:-96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:3}}, inc:{}}, {type:"WAIT", time:4500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:550, y:250, rad:-96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:3}}, inc:{}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:170, y:250, rad:96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:3}}, inc:{}}, {type:"WAIT", time:4500}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako2", count:4, interval:1000, param:{x:150, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:3}}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Hindrance", count:1, interval:1000, param:{x:270, speed:200}}, {type:"ENEMY", id:"Zako2", count:4, interval:1000, param:{x:570, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:3}}}, {type:"WAIT", time:4500}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:250, y:50, movey:200, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BOOST, count:0}}, inc:{}}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:470, y:50, movey:200, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_FORCE, count:0}}, inc:{}}, {type:"ENEMY", id:"Zako1", count:4, interval:1000, param:{x:575, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:3}}, inc:{x:-100}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Hindrance", count:1, interval:1000, param:{x:470, speed:200}}, {type:"ENEMY", id:"Zako1", count:4, interval:1000, param:{x:145, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:3}}, inc:{x:100}}, {type:"WAIT", time:4500}, {type:"WAIT", time:1500}, {type:"ENEMY", id:"Zako9", count:3, interval:2000, param:{x:200, y:250, rad:150, speed:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:20}}, {type:"WAIT", time:1000}, {type:"ENEMY", id:"Hindrance", count:1, interval:1000, param:{x:270, speed:200}}, {type:"ENEMY", id:"Zako9", count:3, interval:2000, param:{x:520, y:250, rad:-150, speed:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:-20}}, {type:"WAIT", time:5000}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:360, y:200, dir:-1, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BOOST, count:0}}}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:370, y:200, dir:1, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_FORCE, count:0}}}, {type:"WAIT", time:6000}, {type:"ENEMY", id:"Zako9", count:3, interval:2000, param:{x:520, y:250, rad:-150, speed:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:-20}}, {type:"WAIT", time:1000}, {type:"ENEMY", id:"Hindrance", count:1, interval:1000, param:{x:470, speed:200}}, {type:"ENEMY", id:"Zako9", count:3, interval:2000, param:{x:200, y:250, rad:150, speed:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:20}}, {type:"WAIT", time:5000}, {type:"ENEMY", id:"Hindrance", count:1, interval:1000, param:{x:270, speed:200}}, {type:"ENEMY", id:"Zako2", count:4, interval:1000, param:{x:570, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:3}}}, {type:"WAIT", time:4500}, {type:"ENEMY", id:"Hindrance", count:1, interval:1000, param:{x:470, speed:200}}, {type:"ENEMY", id:"Zako2", count:4, interval:1000, param:{x:150, y:200, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:3}}}, {type:"WAIT", time:4500}, {type:"ENEMY", id:"Zako9", count:3, interval:2000, param:{x:200, y:250, rad:150, speed:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:20}}, {type:"WAIT", time:1000}, {type:"ENEMY", id:"Hindrance", count:1, interval:1000, param:{x:270, speed:200}}, {type:"ENEMY", id:"Zako5", count:3, interval:2000, param:{x:360, y:240, w:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, random:{x:{min:100, max:640}, y:{min:150, max:250}, w:{min:-150, max:150}}}, {type:"WAIT", time:5000}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:250, y:50, movey:200, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_FORCE, count:0}}, inc:{}}, {type:"ENEMY", id:"Zako4", count:1, interval:4000, param:{x:470, y:50, movey:200, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BOOST, count:0}}, inc:{}}, {type:"WAIT", time:4000}, {type:"ENEMY", id:"Zako9", count:3, interval:2000, param:{x:520, y:250, rad:-150, speed:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, inc:{x:-20}}, {type:"WAIT", time:1000}, {type:"ENEMY", id:"Hindrance", count:1, interval:1000, param:{x:470, speed:200}}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:360, y:200, dir:-1, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BOOST, count:0}}}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:370, y:200, dir:1, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_FORCE, count:0}}}, {type:"ENEMY", id:"Zako5", count:3, interval:2000, param:{x:360, y:240, w:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:2}}, random:{x:{min:100, max:640}, y:{min:150, max:250}, w:{min:-150, max:150}}}, {type:"WAIT", time:5000}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Hindrance", count:1, interval:1000, param:{x:470, speed:200}}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:270, y:250, rad:96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:3}}, inc:{x:80}}, {type:"ENEMY", id:"Zako6", count:1, interval:1000, param:{x:100, y:50, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:0}}, inc:{}}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Hindrance", count:1, interval:1000, param:{x:270, speed:200}}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:450, y:250, rad:-96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:3}}, inc:{x:-80}}, {type:"ENEMY", id:"Zako6", count:1, interval:1000, param:{x:620, y:50, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:0}}, inc:{}}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:360, y:200, dir:-1, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_FORCE, count:0}}}, {type:"ENEMY", id:"Zako3", count:1, interval:1000, param:{x:370, y:200, dir:1, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BOOST, count:0}}}, {type:"WAIT", time:4000}, {type:"ENEMY", id:"Zako6", count:1, interval:1000, param:{x:100, y:50, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:0}}, inc:{}}, {type:"ENEMY", id:"Zako6", count:1, interval:1000, param:{x:620, y:50, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:0}}, inc:{}}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Hindrance", count:1, interval:1000, param:{x:270, speed:200}}, {type:"ENEMY", id:"Zako6", count:1, interval:1000, param:{x:150, y:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:0}}, inc:{}}, {type:"ENEMY", id:"Zako6", count:1, interval:1000, param:{x:570, y:150, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_100, count:0}}, inc:{}}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Hindrance", count:1, interval:1000, param:{x:470, speed:200}}, {type:"ENEMY", id:"Zako10", count:1, interval:1000, param:{x:370, y:100, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_10000, count:0}}, inc:{}}, {type:"WAIT", time:4000}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:270, y:250, rad:96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_NORMAL, count:3}}, inc:{}}, {type:"WAIT", time:500}, {type:"ENEMY", id:"Zako8", count:4, interval:1000, param:{x:450, y:250, rad:-96, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_BT_LASER, count:3}}, inc:{}}, {type:"WAIT", time:4000}, {type:"ENEMY", id:"Hindrance", count:1, interval:1000, param:{x:270, speed:200}}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Hindrance", count:1, interval:1000, param:{x:470, speed:200}}, {type:"WAIT", time:2000}, {type:"ENEMY", id:"Zako10", count:1, interval:1000, param:{x:270, y:100, event:{id:"Score", type:jp.bambooshootdesign.app.thundervector.enemy.ScoreItem.SI_10000, count:0}}, inc:{}}, {type:"ENEMY", id:"Zako10", count:1, interval:1000, param:{x:450, y:100, event:{id:"PowerUp", type:jp.bambooshootdesign.app.thundervector.enemy.PowerUpItem.PUI_FORCE, count:0}}, inc:{}}, {type:"WAIT", time:2000}, {type:"WAIT", time:8000}, {type:"SOUND", action:"FadeOut", time:2000}, {type:"WAIT", time:3000}, {type:"PLAYER", action:"Lock"}, {type:"FRAME", flag:"OFF"}, {type:"WAIT", time:1000}, {type:"PLAYER", action:"Leave"}, {type:"WAIT", time:3000}, {type:"PLAYER", action:"Hide"}, {type:"ENEMY", id:"StageResult", count:1, interval:0, param:{minute:2, second:30, range:60, event:{id:"StageEnd"}}}, {type:"WAITEVENT", id:"StageEnd"}, {type:"ENEMY", id:"Fade", count:1, interval:0, param:{start:0, end:100, fadeTime:500, time:1000}}, {type:"WAIT", time:500}, {type:"SENDEVENT", id:"Next"}, {type:"WAIT", time:1000000}, {type:"LOOP", name:"START"}];
}
Symbol 1324 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.data.StageLast] Frame 0
class jp.bambooshootdesign.app.thundervector.data.StageLast
{
function StageLast () {
}
static function get Data() {
return(stagedata);
}
static var stagedata = [{type:"LEVEL", loop:1, level:4}, {type:"LEVEL", loop:2, level:5}, {type:"LEVEL", loop:3, level:6}, {type:"LEVEL", loop:4, level:7}, {type:"LEVEL", loop:5, level:8}, {type:"LEVEL", loop:6, level:9}, {type:"ENEMY", id:"StageBackGround", count:1, interval:0, param:{stage:5, time:1}}, {type:"LABEL", name:"START"}, {type:"SOUND", action:"PlayMusic", id:"LastBoss"}, {type:"PLAYER", action:"Show"}, {type:"ENEMY", id:"BossLast", count:1, interval:0, param:{event:{id:"BossDestroy"}}}, {type:"ENEMY", id:"Fade", count:1, interval:0, param:{start:100, end:0, fadeTime:2500, time:3000}}, {type:"WAIT", time:3000}, {type:"PLAYER", action:"Unlock"}, {type:"FRAME", flag:"ON"}, {type:"ENEMY", id:"Danger", count:1, interval:0, param:{}}, {type:"WAIT", time:4500}, {type:"WAITEVENT", id:"BossDestroy"}, {type:"FRAME", flag:"OFF"}, {type:"PLAYER", action:"Lock"}, {type:"SOUND", action:"FadeOut", time:2000}, {type:"WAIT", time:3000}, {type:"PLAYER", action:"Leave"}, {type:"WAIT", time:3000}, {type:"PLAYER", action:"Hide"}, {type:"ENEMY", id:"StageResult", count:1, interval:0, param:{minute:2, second:30, range:60, event:{id:"StageEnd"}}}, {type:"WAITEVENT", id:"StageEnd"}, {type:"ENEMY", id:"Fade", count:1, interval:0, param:{start:0, end:100, fadeTime:500, time:1000}}, {type:"WAIT", time:500}, {type:"SENDEVENT", id:"Next"}, {type:"WAIT", time:1000000}, {type:"LOOP", name:"START"}];
}
Symbol 1325 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.flow.GameOver] Frame 0
class jp.bambooshootdesign.app.thundervector.flow.GameOver extends jp.bambooshootdesign.app.thundervector.flow.Flow
{
var m_result;
function GameOver () {
super();
m_result = "";
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.init();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.setNormalQuality();
new jp.bambooshootdesign.app.thundervector.enemy.GameResult(this);
}
function move() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callMove();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callCtrlAndDisp();
return(m_result != "");
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callDestroy();
}
function event(id) {
m_result = id;
}
}
Symbol 1326 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.GameResult] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.GameResult extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_parent, m_mc, m_mcCursor, m_wl, m_mode, m_menuIdx, m_count, m_checkMouseMove, m_checkMouseClick, m_keyAction, m_btnMcList;
function GameResult (parent) {
super();
m_parent = parent;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SYSTEM, "GameOverMC", "GameOver");
m_mc._x = jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH / 2;
m_mc._y = jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT / 2;
m_mc.gotoAndPlay(1);
m_mc._visible = true;
m_mc.data.TotalScore = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getScore();
m_mcCursor = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SYSTEM, "CursorMC", "Cursor");
m_mcCursor._visible = false;
var _local6 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getMaxComboHistory();
var _local5 = 0;
var _local7 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getMaxComboTotal();
var _local3 = _local6.length - 1;
while (_local3 >= 0) {
var _local4 = _local6[_local3];
if ((_local4 != undefined) && (_local5 < _local4)) {
_local5 = _local4;
}
_local3--;
}
if (_local7 > _local5) {
_local5 = _local7;
}
m_mc.data.MaxCombo = _local5;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
m_mode = MODE_FADEIN;
m_menuIdx = MENU_TITLE;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playMusic("GameOver");
}
function move() {
switch (m_mode) {
case MODE_FADEIN :
if (m_mc._currentframe == MC_FRAME) {
if (jp.bambooshootdesign.app.thundervector.sys.SysInfo.GameMode.isRankingMode()) {
m_mc.gotoAndPlay(MC_RANKING_START);
m_mode = MODE_RANKING_IN;
} else {
m_mc.play();
m_mode = MODE_NORMAL_END;
}
}
break;
case MODE_NORMAL_END :
if (m_mc._currentframe == MC_NORMAL_END) {
m_parent.event("Next");
return(false);
}
break;
case MODE_RANKING_IN :
if (m_mc._currentframe == MC_RANKING_MENU) {
m_mode = MODE_RANKING_MENU;
initMenu();
Key.addListener(this);
Mouse.addListener(this);
m_count = 0;
}
case MODE_RANKING_MENU :
if (m_count == 1) {
m_checkMouseMove = true;
}
if (moveMenu()) {
m_mc.play();
m_mode = MODE_RANKING_OUT;
Key.removeListener(this);
Mouse.removeListener(this);
}
break;
case MODE_RANKING_OUT :
if (m_mc._currentframe < m_mc._totalframes) {
break;
}
m_parent.event("Next");
return(false);
}
m_checkMouseClick = false;
m_checkMouseMove = false;
m_keyAction = -1;
m_count++;
return(true);
}
function moveMenu() {
var _local6 = -1;
if (m_checkMouseMove || (m_checkMouseClick)) {
var _local2;
var _local5;
var _local4;
var _local3;
_local4 = m_mc._xmouse;
_local3 = m_mc._ymouse;
_local5 = -1;
_local2 = m_btnMcList.length - 1;
while (_local2 >= 0) {
if (hitCheck(_local2, _local4, _local3)) {
_local5 = _local2;
showCursor(_local4, _local3);
break;
}
_local2--;
}
if (_local5 != -1) {
if (m_checkMouseClick) {
_local6 = _local5;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("SelectMenu");
} else if (m_menuIdx != _local5) {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MoveMenu");
}
m_menuIdx = _local5;
} else {
hideCursor();
}
}
if (m_keyAction != -1) {
if (m_keyAction == KEY_DOWN) {
m_menuIdx++;
if (m_menuIdx > MENU_MAX) {
m_menuIdx = 0;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MoveMenu");
} else if (m_keyAction == KEY_UP) {
m_menuIdx--;
if (m_menuIdx < 0) {
m_menuIdx = MENU_MAX;
}
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("MoveMenu");
} else if (m_keyAction == KEY_ENTER) {
_local6 = m_menuIdx;
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playSE("SelectMenu");
}
hideCursor();
}
if (_local6 != -1) {
switch (_local6) {
case MENU_TITLE :
return(true);
case MENU_TRANSMIT :
var _local7 = new jp.bambooshootdesign.app.thundervector.highscore.ThunderVectorHighscore();
_local7.setScore(jp.bambooshootdesign.app.thundervector.sys.SysInfo.getScore());
_local7.connectHighscore(com.shockwave.sys.HighscoreSystem.FT_SUBMIT);
}
}
return(false);
}
function ctrlAndDisp() {
m_mc.Select._x = m_btnMcList[m_menuIdx]._x;
m_mc.Select._y = m_btnMcList[m_menuIdx]._y;
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
m_mcCursor.removeMovieClip();
m_mc.removeMovieClip();
}
function onKeyDown() {
var _local2 = Key.getCode();
if (_local2 == 38) {
m_keyAction = KEY_UP;
}
if (_local2 == 40) {
m_keyAction = KEY_DOWN;
}
if ((_local2 == 13) || (_local2 == 108)) {
m_keyAction = KEY_ENTER;
}
}
function onKeyup() {
}
function onMouseDown() {
m_checkMouseClick = true;
}
function onMouseMove() {
m_checkMouseMove = true;
}
function onMouseUp() {
}
function onMouseWheel() {
}
function initMenu(idx) {
m_btnMcList = [];
m_btnMcList.push(m_mc.titleBtn);
m_btnMcList.push(m_mc.transmitBtn);
}
function hitCheck(btnIdx, x, y) {
var _local2 = m_btnMcList[btnIdx];
return(hitCheckMC(_local2, x, y));
}
function updateBtn(mc, x, y) {
var _local2 = hitCheckMC(mc, x, y);
mc.roll._visible = _local2;
return(_local2);
}
function hitCheckMC(mcb, x, y) {
if (((((mcb._x - (mcb._width / 2)) <= x) && ((mcb._x + (mcb._width / 2)) >= x)) && ((mcb._y - (mcb._height / 2)) <= y)) && ((mcb._y + (mcb._height / 2)) >= y)) {
return(true);
}
return(false);
}
function showCursor(x, y) {
var _local2 = m_mcCursor;
_local2._x = (jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH / 2) + x;
_local2._y = (jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT / 2) + y;
_local2._visible = true;
Mouse.hide();
}
function hideCursor() {
var _local2 = m_mcCursor;
_local2._visible = false;
Mouse.show();
}
static var KEY_DOWN = 1;
static var KEY_UP = 2;
static var KEY_ENTER = 3;
static var MODE_FADEIN = 1;
static var MODE_NORMAL_END = 2;
static var MODE_RANKING_IN = 3;
static var MODE_RANKING_MENU = 4;
static var MODE_RANKING_OUT = 5;
static var MENU_TITLE = 0;
static var MENU_TRANSMIT = 1;
static var MENU_MAX = 1;
static var MC_FRAME = 90;
static var MC_NORMAL_END = 100;
static var MC_RANKING_START = 101;
static var MC_RANKING_MENU = 111;
}
Symbol 1327 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.flow.GameClear] Frame 0
class jp.bambooshootdesign.app.thundervector.flow.GameClear extends jp.bambooshootdesign.app.thundervector.flow.Flow
{
var m_result;
function GameClear () {
super();
m_result = "";
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.init();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.Option.setNormalQuality();
new jp.bambooshootdesign.app.thundervector.enemy.GameComplete(this);
}
function move() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callMove();
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callCtrlAndDisp();
return(m_result != "");
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.callDestroy();
}
function event(id) {
m_result = id;
}
}
Symbol 1328 MovieClip [__Packages.jp.bambooshootdesign.app.thundervector.enemy.GameComplete] Frame 0
class jp.bambooshootdesign.app.thundervector.enemy.GameComplete extends jp.bambooshootdesign.app.thundervector.enemy.Enemy
{
var m_parent, m_mc, m_wl;
function GameComplete (parent) {
super();
m_parent = parent;
m_mc = jp.bambooshootdesign.util.MovieClipFactory.create(jp.bambooshootdesign.app.thundervector.sys.Screen.OT_SYSTEM, "GameClearMC", "GameOver");
m_mc._x = jp.bambooshootdesign.app.thundervector.sys.Screen.WIDTH / 2;
m_mc._y = jp.bambooshootdesign.app.thundervector.sys.Screen.HEIGHT / 2;
m_mc.gotoAndPlay(1);
m_mc._visible = true;
m_mc.TotalScore = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getScore();
var _local6 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getMaxComboHistory();
var _local5 = 0;
var _local7 = jp.bambooshootdesign.app.thundervector.sys.SysInfo.getMaxComboTotal();
var _local3 = _local6.length - 1;
while (_local3 >= 0) {
var _local4 = _local6[_local3];
if ((_local4 != undefined) && (_local5 < _local4)) {
_local5 = _local4;
}
_local3--;
}
if (_local7 > _local5) {
_local5 = _local7;
}
m_mc.MaxCombo = _local5;
m_wl = jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.append(this);
jp.bambooshootdesign.app.thundervector.sys.SysInfo.SoundManager.playMusic("GameOver");
}
function move() {
if (m_mc._currentframe >= m_mc._totalframes) {
m_parent.event("Next");
return(false);
}
return(true);
}
function ctrlAndDisp() {
return(true);
}
function destroy() {
jp.bambooshootdesign.app.thundervector.sys.SysInfo.WorkList.cut(m_wl);
delete m_wl;
m_mc.removeMovieClip();
}
}
Symbol 17 MovieClip [BambooLogoMC] Frame 61
stop();
Symbol 21 MovieClip [ShockwaveLogoMC] Frame 114
stop();
Symbol 149 MovieClip [DebugMC] Frame 1
stop();
Symbol 152 MovieClip [FPSMC] Frame 1
stop();
Symbol 205 MovieClip Frame 10
stop();
Symbol 210 MovieClip Frame 10
stop();
Symbol 323 MovieClip Frame 1
stop();
Symbol 323 MovieClip Frame 31
stop();
Symbol 383 MovieClip Frame 1
stop();
Symbol 383 MovieClip Frame 152
stop();
Symbol 386 MovieClip Frame 1
stop();
Symbol 386 MovieClip Frame 22
stop();
Symbol 393 MovieClip [PlayerBombCenterMC] Frame 47
stop();
Symbol 498 MovieClip [PlayerLaserAccMC] Frame 71
stop();
Symbol 501 MovieClip [PlayerLaserP1MC] Frame 155
stop();
Symbol 502 MovieClip [PlayerLaserP2MC] Frame 155
stop();
Symbol 503 MovieClip [PlayerLaserP3MC] Frame 155
stop();
Symbol 504 MovieClip [PlayerLaserP4MC] Frame 155
stop();
Symbol 505 MovieClip [PlayerLaserP5MC] Frame 155
stop();
Symbol 983 MovieClip [MovieMC] Frame 2
snd.playMusic("StageOpening1");
Symbol 983 MovieClip [MovieMC] Frame 91
snd.playSound("Fly");
Symbol 983 MovieClip [MovieMC] Frame 155
snd.fadeSound("StageOpening1", 100, 0, 15);
Symbol 983 MovieClip [MovieMC] Frame 181
snd.playMusic("StageOpening2");
Symbol 983 MovieClip [MovieMC] Frame 281
snd.playSound("Fly");
Symbol 983 MovieClip [MovieMC] Frame 301
snd.fadeSound("StageOpening2", 100, 0, 8);
snd.fadeSound("Fly", 100, 0, 8);
Symbol 983 MovieClip [MovieMC] Frame 321
snd.playMusic("StageOpening3");
Symbol 983 MovieClip [MovieMC] Frame 383
snd.playSound("Fly");
Symbol 983 MovieClip [MovieMC] Frame 433
snd.fadeSound("StageOpening3", 100, 0, 6);
Symbol 983 MovieClip [MovieMC] Frame 451
snd.playMusic("StageOpening4");
snd.playSound("Fly");
Symbol 983 MovieClip [MovieMC] Frame 532
snd.fadeSound("StageOpening4", 100, 0, 8);
Symbol 983 MovieClip [MovieMC] Frame 551
snd.playMusic("Ending");
Symbol 983 MovieClip [MovieMC] Frame 691
snd.fadeSound("Ending", 100, 0, 8);
Symbol 1005 MovieClip [GameOverMC] Frame 90
stop();
Symbol 1005 MovieClip [GameOverMC] Frame 100
stop();
Symbol 1005 MovieClip [GameOverMC] Frame 111
stop();
Symbol 1005 MovieClip [GameOverMC] Frame 121
stop();
Symbol 1033 MovieClip [ExplosionBossMC] Frame 61
stop();
Symbol 1073 MovieClip [EnemyLaserAccMC] Frame 49
stop();