Combined Code
movieClip 3 {
}
movieClip 4 adcore {
frame 1 {
if (_root.blockthebanners != 1) {
var adBox = adshell.createEmptyMovieClip('adBox', 1);
adshell.adBox._x = 1;
adshell.adBox._y = 0;
var CPMStarContentSpotID = '5009Q2B34B549';
System.security.allowDomain('server.cpmstar.com');
adBox.loadMovie('http://server.cpmstar.com/adviewas2.swf?contentspotid=' + CPMStarContentSpotID);
}
}
}
movieClip 6 {
}
movieClip 8 {
}
movieClip 11 {
}
movieClip 13 {
}
movieClip 15 {
}
movieClip 16 {
}
movieClip 17 {
}
movieClip 19 {
}
movieClip 21 {
}
movieClip 23 {
}
movieClip 25 {
}
movieClip 27 {
}
movieClip 29 {
}
movieClip 31 {
}
movieClip 32 dead_103 {
frame 44 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
frame 1 {
stop();
fscommand('fullscreen', 'false');
fscommand('allowscale', 'false');
fscommand('showmenu', 'false');
urla = _url;
gtfomycode_bitch_FUCKOFFSRSLY_DONTSTEALMYGAME = 'armorgames.com';
if (urla.indexOf(gtfomycode_bitch_FUCKOFFSRSLY_DONTSTEALMYGAME) != -1) {
_root.thisisArmor = 1;
} else {
_root.thisisArmor = 0;
}
if (_root.thisisArmor eq 0) {
getURL('http://www.kongregate.com/games_for_your_site', '_blank');
loadInd._visible = false;
ASDASDASD._visible = false;
}
_root.percentage_loaded_rough = 0;
gameloaded = 0;
Mouse.show();
onEnterFrame = function () {
loading = _root.getBytesLoaded() / _root.getBytesTotal();
_root.percentage_loaded_rough = loading * 100;
if (_root.percentage_loaded_rough > 99.90000000000001) {
_root.percentage_loaded_rough = 100;
}
gogogo = 1 + Math.floor(_root.percentage_loaded_rough / 4.2);
loadInd.gotoAndStop(gogogo);
showvar1 = Math.floor(_root.percentage_loaded_rough) + '%';
showvar2 = _root.getBytesLoaded() + '/' + _root.getBytesTotal();
if (gameloaded eq 0 and _root.percentage_loaded_rough >= 100) {
gameloaded = 1;
ASDASDASD.play();
}
};
}
movieClip 39 {
}
movieClip 42 {
}
movieClip 43 {
}
movieClip 47 {
}
movieClip 49 {
}
movieClip 50 {
}
button 52 {
on (press) {
_root.theBannerCore.UnloadBanner();
removeMovieClip(_root.ADramka);
clearInterval(intervalId);
_root.gotoAndStop(45);
}
}
movieClip 53 {
frame 1 {
stop();
}
frame 11 {
if (_root.fucked eq 1) {
gotoAndStop(5);
}
}
frame 21 {
stop();
}
}
movieClip 55 {
}
movieClip 56 {
}
movieClip 60 {
}
movieClip 63 {
}
button 65 {
on (release) {
getURL('http://armorgames.com/', '_blank');
}
}
movieClip 66 {
}
movieClip 69 {
}
movieClip 75 {
}
movieClip 76 {
}
movieClip 77 {
}
movieClip 78 {
instance of movieClip 77 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 81 {
}
button 82 {
on (release) {
getURL('http://dz2001.newgrounds.com/', '_blank');
}
}
// unknown tag 88 length 144
movieClip 86 {
}
movieClip 88 {
}
movieClip 89 {
}
button 91 {
on (release) {
getURL('http://www.armorgames.com/', '_blank');
}
}
frame 2 {
prevFrame();
}
frame 5 {
prevFrame();
}
frame 7 {
stop();
_root.challenge = 0;
removeMovieClip(cpmstar_childad);
_root.sound_shell_depth = 999555;
_root.createEmptyMovieClip('music_shell', _root.sound_shell_depth + 1);
var menuMusic = new Sound(music_shell);
menuMusic.attachSound('music_1');
menuMusic.start(0, 9999);
menuMusic.setVolume(0);
aasdasda = 0;
onEnterFrame = function () {
if (aasdasda < 50) {
aasdasda += 1;
}
menuMusic.setVolume(aasdasda);
Mouse.hide();
yiffyiffyiff._x = _xmouse;
yiffyiffyiff._y = _ymouse;
};
}
movieClip 95 {
}
movieClip 98 {
}
movieClip 101 {
}
movieClip 105 {
}
movieClip 106 {
}
movieClip 107 {
}
instance of movieClip 107 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
movieClip 110 {
}
button 113 {
on (release) {
_root.challenge = 0;
_root.secondMenu._visible = true;
_root.secondMenu.gotoAndStop(4);
credits._visible = false;
}
on (rollOver, dragOver) {
_root.menudescriptor._visible = true;
_root.menudescriptor.gotoAndStop(2);
}
on (rollOut, dragOut) {
_root.menudescriptor._visible = false;
}
}
movieClip 116 {
}
button 118 {
on (release) {
_root.challenge = 0;
sandboxMenu._visible = true;
credits._visible = false;
}
on (rollOver, dragOver) {
_root.menudescriptor._visible = true;
_root.menudescriptor.gotoAndStop(4);
}
on (rollOut, dragOut) {
_root.menudescriptor._visible = false;
}
}
movieClip 121 {
}
button 123 {
on (release) {
getURL('http://www.armorgames.com/', '_blank');
}
}
movieClip 126 {
}
button 128 {
on (release) {
getURL('http://dz2001.newgrounds.com/', '_blank');
}
}
movieClip 131 {
}
button 133 {
on (release) {
credits._visible = true;
}
}
movieClip 136 {
}
button 138 {
on (release) {
_root.challenge = 0;
_root.secondMenu._visible = true;
_root.secondMenu.gotoAndStop(2);
credits._visible = false;
}
on (rollOver, dragOver) {
_root.menudescriptor._visible = true;
_root.menudescriptor.gotoAndStop(3);
}
on (rollOut, dragOut) {
_root.menudescriptor._visible = false;
}
}
movieClip 141 {
}
button 143 {
on (release) {
_root.challenge = 0;
_root.secondMenu._visible = true;
if (_root.thisiskong eq 1) {
_root.secondMenu.gotoAndStop(5);
} else {
_root.secondMenu.gotoAndStop(6);
}
credits._visible = false;
}
on (rollOver, dragOver) {
_root.menudescriptor._visible = true;
_root.menudescriptor.gotoAndStop(5);
}
on (rollOut, dragOut) {
_root.menudescriptor._visible = false;
}
}
movieClip 145 {
}
movieClip 148 {
}
// unknown tag 88 length 73
movieClip 154 {
frame 2 {
stop();
}
}
instance menudescriptor of movieClip 154 {
onClipEvent (load) {
_visible = false;
}
}
// unknown tag 88 length 78
movieClip 211 {
frame 1 {
stop();
}
}
instance of movieClip 211 {
onClipEvent (load) {
stop();
_visible = false;
}
}
movieClip 215 {
}
movieClip 218 {
}
button 220 {
on (release) {
_visible = false;
}
}
movieClip 222 {
}
movieClip 225 {
}
button 227 {
on (release) {
saveslot000 = SharedObject.getLocal('necroDef_saves');
vl1 = this.saveslot000.data;
if (vl1.save_exists eq 1) {
gotoAndStop(3);
} else {
_root.newYIFFwhat = 'camp';
_root.gotoAndPlay(29);
}
}
}
movieClip 229 {
}
button 231 {
on (release) {
_root.newYIFFwhat = 'camp';
_root.gotoAndPlay(29);
}
}
movieClip 232 {
}
// unknown tag 88 length 27
// unknown tag 88 length 69
button 241 {
on (release) {
saveslot000 = SharedObject.getLocal('necroDef_saves');
vl1 = this.saveslot000.data;
vl1.save_exists = 0;
_root.newYIFFwhat = 'camp';
_root.gotoAndPlay(29);
}
}
button 245 {
on (release) {
gotoAndStop(2);
}
}
movieClip 247 {
}
button 249 {
on (release) {
_root.newYIFFwhat = 'skirm';
_root.thisIsSandBox = 0;
_root.skirmDiff = 1;
_root.gotoAndPlay(29);
}
}
movieClip 252 {
}
button 254 {
on (release) {
_root.newYIFFwhat = 'skirm';
_root.thisIsSandBox = 0;
_root.skirmDiff = 2;
_root.gotoAndPlay(29);
}
}
movieClip 257 {
}
button 259 {
on (release) {
_root.newYIFFwhat = 'skirm';
_root.thisIsSandBox = 0;
_root.skirmDiff = 3;
_root.gotoAndPlay(29);
}
}
movieClip 263 {
}
movieClip 264 {
}
movieClip 265 {
}
movieClip 268 {
}
movieClip 269 {
}
movieClip 270 {
}
movieClip 271 {
}
movieClip 273 {
}
button 275 {
on (release) {
_root.newYIFFwhat = 'skirm';
_root.thisIsSandBox = 0;
_root.challenge = 1;
_root.gotoAndPlay(29);
}
}
movieClip 277 {
}
button 279 {
on (release) {
_root.newYIFFwhat = 'skirm';
_root.thisIsSandBox = 0;
_root.challenge = 2;
_root.gotoAndPlay(29);
}
}
movieClip 280 {
}
movieClip 282 {
}
button 284 {
on (release) {
_root.newYIFFwhat = 'skirm';
_root.thisIsSandBox = 0;
_root.challenge = 3;
_root.gotoAndPlay(29);
}
}
movieClip 285 {
}
movieClip 288 {
}
movieClip 291 {
}
button 293 {
on (release) {
getURL('http://www.kongregate.com/games/dz2001/necropolis-defence', '');
}
}
movieClip 294 {
frame 2 {
stop();
}
instance of movieClip 232 {
onClipEvent (enterFrame) {
saveslot000 = SharedObject.getLocal('necroDef_saves');
vl1 = this.saveslot000.data;
if (vl1.save_exists eq 1) {
gotoAndStop(2);
} else {
gotoAndStop(1);
}
}
}
instance of movieClip 264 {
onClipEvent (load) {
saveslot016 = SharedObject.getLocal('necroDef_challenges');
vl1 = this.saveslot016.data;
if (vl1.challengeDone_1 eq 1) {
_visible = false;
} else {
_visible = true;
}
}
}
instance of movieClip 265 {
onClipEvent (load) {
saveslot016 = SharedObject.getLocal('necroDef_challenges');
vl1 = this.saveslot016.data;
if (vl1.challengeDone_2 eq 1) {
_visible = false;
} else {
_visible = true;
}
}
}
instance of movieClip 269 {
onClipEvent (load) {
saveslot016 = SharedObject.getLocal('necroDef_challenges');
vl1 = this.saveslot016.data;
if (vl1.challengeDone_1 eq 1) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 270 {
onClipEvent (load) {
saveslot016 = SharedObject.getLocal('necroDef_challenges');
vl1 = this.saveslot016.data;
if (vl1.challengeDone_2 eq 1) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 271 {
onClipEvent (load) {
saveslot016 = SharedObject.getLocal('necroDef_challenges');
vl1 = this.saveslot016.data;
if (vl1.challengeDone_3 eq 1) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 280 {
onClipEvent (load) {
saveslot016 = SharedObject.getLocal('necroDef_challenges');
vl1 = this.saveslot016.data;
if (vl1.challengeDone_1 eq 1) {
gotoAndStop(2);
} else {
gotoAndStop(1);
}
}
}
instance of movieClip 285 {
onClipEvent (load) {
saveslot016 = SharedObject.getLocal('necroDef_challenges');
vl1 = this.saveslot016.data;
if (vl1.challengeDone_2 eq 1) {
gotoAndStop(2);
} else {
gotoAndStop(1);
}
}
}
}
instance secondMenu of movieClip 294 {
onClipEvent (load) {
_visible = false;
}
}
// unknown tag 88 length 64
movieClip 303 {
}
movieClip 305 {
}
button 307 {
on (release) {
_root.sbox_crushMode = 1;
}
}
button 308 {
on (release) {
_root.sbox_crushMode = 0;
}
}
movieClip 310 {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
button 312 {
on (release) {
_root.sbox_cheatMode = 1;
}
}
button 313 {
on (release) {
_root.sbox_cheatMode = 0;
}
}
movieClip 314 {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 315 {
instance of movieClip 310 {
onClipEvent (enterFrame) {
if (!_root.sbox_crushMode) {
_root.sbox_crushMode = 0;
}
gotoAndStop(_root.sbox_crushMode + 1);
}
}
instance of movieClip 314 {
onClipEvent (enterFrame) {
if (!_root.sbox_cheatMode) {
_root.sbox_cheatMode = 0;
}
gotoAndStop(_root.sbox_cheatMode + 1);
}
}
}
movieClip 318 {
}
button 320 {
on (release) {
gotoAndPlay(4);
}
}
movieClip 322 {
}
button 324 {
on (release) {
gotoAndPlay(2);
}
}
movieClip 327 {
}
movieClip 330 {
}
movieClip 334 {
}
movieClip 335 {
}
movieClip 338 {
}
movieClip 341 {
}
movieClip 342 {
}
movieClip 344 {
}
movieClip 346 {
}
movieClip 347 {
}
movieClip 350 {
}
movieClip 353 {
}
button 357 {
on (release) {
if (aaa > a_min) {
--aaa;
}
}
}
movieClip 360 {
}
button 364 {
on (release) {
if (aaa < a_max) {
++aaa;
}
}
}
movieClip 366 {
}
// unknown tag 88 length 62
movieClip 369 {
frame 1 {
stop();
}
instance of movieClip 366 {
onClipEvent (enterFrame) {
if (!_root.sbox_SpawnRateMode_201 and _root.sbox_SpawnRateMode_201 != 0) {
_root.sbox_SpawnRateMode_201 = 1;
}
a_min = 0;
a_max = 10;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.sbox_SpawnRateMode_201;
} else {
_root.sbox_SpawnRateMode_201 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
instance of movieClip 366 {
onClipEvent (enterFrame) {
if (!_root.sbox_SpawnRateMode_202 and _root.sbox_SpawnRateMode_202 != 0) {
_root.sbox_SpawnRateMode_202 = 1;
}
a_min = 0;
a_max = 10;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.sbox_SpawnRateMode_202;
} else {
_root.sbox_SpawnRateMode_202 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
instance of movieClip 366 {
onClipEvent (enterFrame) {
if (!_root.sbox_SpawnRateMode_205 and _root.sbox_SpawnRateMode_205 != 0) {
_root.sbox_SpawnRateMode_205 = 1;
}
a_min = 0;
a_max = 10;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.sbox_SpawnRateMode_205;
} else {
_root.sbox_SpawnRateMode_205 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
instance of movieClip 366 {
onClipEvent (enterFrame) {
if (!_root.sbox_SpawnRateMode_211 and _root.sbox_SpawnRateMode_211 != 0) {
_root.sbox_SpawnRateMode_211 = 1;
}
a_min = 0;
a_max = 10;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.sbox_SpawnRateMode_211;
} else {
_root.sbox_SpawnRateMode_211 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
instance of movieClip 366 {
onClipEvent (enterFrame) {
if (!_root.sbox_SpawnRateMode_206 and _root.sbox_SpawnRateMode_206 != 0) {
_root.sbox_SpawnRateMode_206 = 1;
}
a_min = 0;
a_max = 10;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.sbox_SpawnRateMode_206;
} else {
_root.sbox_SpawnRateMode_206 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
instance of movieClip 366 {
onClipEvent (enterFrame) {
if (!_root.sbox_SpawnRateMode_203 and _root.sbox_SpawnRateMode_203 != 0) {
_root.sbox_SpawnRateMode_203 = 1;
}
a_min = 0;
a_max = 10;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.sbox_SpawnRateMode_203;
} else {
_root.sbox_SpawnRateMode_203 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
instance of movieClip 366 {
onClipEvent (enterFrame) {
if (!_root.sbox_SpawnRateMode_208 and _root.sbox_SpawnRateMode_208 != 0) {
_root.sbox_SpawnRateMode_208 = 1;
}
a_min = 0;
a_max = 10;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.sbox_SpawnRateMode_208;
} else {
_root.sbox_SpawnRateMode_208 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
instance of movieClip 366 {
onClipEvent (enterFrame) {
if (!_root.sbox_SpawnRateMode_209 and _root.sbox_SpawnRateMode_209 != 0) {
_root.sbox_SpawnRateMode_209 = 1;
}
a_min = 0;
a_max = 10;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.sbox_SpawnRateMode_209;
} else {
_root.sbox_SpawnRateMode_209 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
frame 2 {
_root.sbox_SpawnRateMode_201 = 0;
_root.sbox_SpawnRateMode_202 = 0;
_root.sbox_SpawnRateMode_203 = 0;
_root.sbox_SpawnRateMode_205 = 0;
_root.sbox_SpawnRateMode_206 = 0;
_root.sbox_SpawnRateMode_208 = 0;
_root.sbox_SpawnRateMode_209 = 0;
_root.sbox_SpawnRateMode_211 = 0;
}
frame 3 {
gotoAndStop(1);
}
frame 4 {
_root.sbox_SpawnRateMode_201 = 10;
_root.sbox_SpawnRateMode_202 = 10;
_root.sbox_SpawnRateMode_203 = 10;
_root.sbox_SpawnRateMode_205 = 10;
_root.sbox_SpawnRateMode_206 = 10;
_root.sbox_SpawnRateMode_208 = 10;
_root.sbox_SpawnRateMode_209 = 10;
_root.sbox_SpawnRateMode_211 = 10;
}
frame 5 {
gotoAndStop(1);
}
}
button 371 {
on (release) {
if (aaa > a_min) {
--aaa;
if (aaa > 20) {
aaa -= 4;
}
}
}
}
button 372 {
on (release) {
if (aaa < a_max) {
++aaa;
if (aaa > 20) {
aaa += 4;
}
}
}
}
movieClip 374 {
}
movieClip 375 {
instance of movieClip 374 {
onClipEvent (enterFrame) {
if (!_root.sbox_enemySpawnLimit) {
_root.sbox_enemySpawnLimit = 10;
}
if (_root.sbox_crushMode eq 1) {
a_min = 1;
a_max = 50;
} else {
a_min = 1;
a_max = 15;
}
if (_root.sbox_enemySpawnLimit > a_max) {
_root.sbox_enemySpawnLimit = a_max;
aaa = a_max;
}
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.sbox_enemySpawnLimit;
} else {
_root.sbox_enemySpawnLimit = aaa;
}
display_var = aaa + '/' + a_max;
}
}
}
movieClip 378 {
}
movieClip 380 {
}
movieClip 382 {
}
movieClip 384 {
}
button 386 {
on (release) {
_root.sbox_spawnLimitMode = 2;
}
}
movieClip 388 {
}
movieClip 389 {
}
button 390 {
on (release) {
_root.sbox_spawnLimitMode = 3;
}
}
movieClip 391 {
}
button 392 {
on (release) {
_root.sbox_spawnLimitMode = 1;
}
}
movieClip 393 {
instance of movieClip 391 {
onClipEvent (enterFrame) {
gotoAndStop(_root.sbox_crushMode + 1);
}
}
}
movieClip 394 {
instance of movieClip 393 {
onClipEvent (enterFrame) {
if (!_root.sbox_spawnLimitMode) {
_root.sbox_spawnLimitMode = 1;
}
gotoAndStop(_root.sbox_spawnLimitMode);
}
}
}
movieClip 396 {
}
button 398 {
on (release) {
_root.newYIFFwhat = 'skirm';
_root.thisIsSandBox = 1;
_root.gotoAndPlay(29);
}
}
movieClip 400 {
}
movieClip 401 {
}
instance sandboxMenu of movieClip 401 {
onClipEvent (load) {
_visible = false;
}
}
button 403 {
on (release) {
_visible = false;
}
}
movieClip 404 {
}
movieClip 406 {
}
// unknown tag 88 length 190
movieClip 410 {
}
movieClip 418 {
}
button 420 {
on (release) {
_visible = false;
}
}
movieClip 422 {
}
button 424 {
on (release) {
++azaza;
if (azaza > 30) {
gotoAndStop(2);
azaza = 0;
}
}
}
button 428 {
on (release) {
getURL('http://dz2001.newgrounds.com/', '_blank');
}
}
button 430 {
on (release) {
getURL('http://www.deborahsaez.com/', '_blank');
}
}
button 431 {
on (release) {
getURL('http://kalong.deviantart.com/', '_blank');
}
}
button 432 {
on (release) {
getURL('http://juanico-el-muertes.deviantart.com/', '_blank');
}
}
button 433 {
on (release) {
getURL('http://requie.deviantart.com/', '_blank');
}
}
button 434 {
on (release) {
getURL('http://adeafbat.newgrounds.com/audio/', '_blank');
}
}
button 436 {
on (release) {
getURL('http://bezo.newgrounds.com/audio/', '_blank');
}
}
movieClip 439 {
}
button 440 {
on (press) {
photos.gotoAndStop(1);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
movieClip 443 {
}
button 444 {
on (press) {
photos.gotoAndStop(2);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
movieClip 447 {
}
button 448 {
on (press) {
photos.gotoAndStop(3);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
movieClip 451 {
}
button 452 {
on (press) {
photos.gotoAndStop(4);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
movieClip 455 {
}
button 456 {
on (press) {
photos.gotoAndStop(5);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
movieClip 459 {
}
button 460 {
on (press) {
photos.gotoAndStop(6);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
movieClip 463 {
}
button 464 {
on (press) {
photos.gotoAndStop(7);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
movieClip 467 {
}
button 468 {
on (press) {
photos.gotoAndStop(8);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
button 469 {
on (release) {
gotoAndStop(1);
}
}
movieClip 471 {
}
button 473 {
on (release) {
saveslot000 = SharedObject.getLocal('necroDef_saves');
svloc = this.saveslot000.data;
svloc.cashSaved = 0;
}
}
movieClip 475 {
}
movieClip 477 {
}
movieClip 478 {
}
movieClip 480 {
}
movieClip 482 {
}
movieClip 484 {
}
movieClip 486 {
}
movieClip 488 {
}
movieClip 490 {
}
movieClip 491 {
frame 1 {
stop();
}
}
movieClip 492 {
frame 1 {
stop();
azaza = 0;
}
instance photos of movieClip 491 {
onClipEvent (load) {
_visible = false;
}
}
}
instance credits of movieClip 492 {
onClipEvent (load) {
_visible = false;
}
}
movieClip 517 {
}
frame 8 {
prevFrame();
}
frame 9 {
gotoAndPlay(25);
}
frame 20 {
stop();
}
frame 20 {
function localkillsNullify() {
localkills201 = 0;
localkills202 = 0;
localkills203 = 0;
localkills204 = 0;
localkills205 = 0;
localkills206 = 0;
localkills207 = 0;
localkills208 = 0;
localkills209 = 0;
localkills210 = 0;
localkills211 = 0;
}
function boss2_deathEffects(xxx, yyy) {
i = 0;
while (i < 12) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = xxx - 25 + random(50);
ttrrggtt._y = yyy - 25 + random(50);
++i;
}
iyiff = _root.yiff.dead_layer.getNextHighestDepth();
_root.yiff.dead_layer.attachMovie('boss2_summonSHockwave', 'boss2_summonSHockwave', iyiff);
bs2s_shkw = _root.yiff.dead_layer.boss2_summonSHockwave;
bs2s_shkw._x = xxx;
bs2s_shkw._y = yyy;
spawnDeathray(xxx, yyy, 0, -1);
spawnDeathray(xxx, yyy, 1, -1);
spawnDeathray(xxx, yyy, 1, 0);
spawnDeathray(xxx, yyy, 1, 1);
spawnDeathray(xxx, yyy, 0, 1);
spawnDeathray(xxx, yyy, -1, 1);
spawnDeathray(xxx, yyy, -1, 0);
spawnDeathray(xxx, yyy, -1, -1);
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('mage2explosion', 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
expl._x = xxx;
expl._y = yyy;
expl._height *= 1.4;
expl._width *= 1.4;
}
function boss2SummoningInitiation(xx, yy) {
iyiff = _root.yiff.dead_layer.getNextHighestDepth();
_root.yiff.dead_layer.attachMovie('boss2_summon_bottom', 'boss2_summon_bottom', iyiff);
bs2s_btm = _root.yiff.dead_layer.boss2_summon_bottom;
bs2s_btm._x = xx;
bs2s_btm._y = yy;
boss2summoningtremor = 0;
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('boss2_summon_top', 'boss2_summon_top', iyiff);
bs2s_top = _root.yiff.shooting_layer.boss2_summon_top;
bs2s_top._x = xx;
bs2s_top._y = yy;
}
function boss2SummoningIntegrity() {
if (!_root.yiff.shooting_layer.boss2_summon_top) {
return undefined;
}
xxx = _root.yiff.shooting_layer.boss2_summon_top._x;
yyy = _root.yiff.shooting_layer.boss2_summon_top._y;
i = 0;
while (i < 2) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = xxx - 50 + random(100);
ttrrggtt._y = yyy - 50 + random(100);
++i;
}
boss2summoningtremor += 0.3;
tremor2();
if (_root.yiff.shooting_layer.boss2_summon_top.aaa.gogogo eq 1) {
removeMovieClip(_root.yiff.shooting_layer.boss2_summon_top);
removeMovieClip(_root.yiff.dead_layer.boss2_summon_bottom);
_root.portalcastSND.start();
Spawn_units(210, xxx, yyy);
iyiff = _root.yiff.dead_layer.getNextHighestDepth();
_root.yiff.dead_layer.attachMovie('boss2_summonSHockwave', 'boss2_summonSHockwave', iyiff);
bs2s_shkw = _root.yiff.dead_layer.boss2_summonSHockwave;
bs2s_shkw._x = xxx;
bs2s_shkw._y = yyy;
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('mage2explosion', 'mage2explosion', iyiff);
bs2s_flsh = _root.yiff.shooting_layer.mage2explosion;
bs2s_flsh._x = xxx;
bs2s_flsh._y = yyy;
zz = 0;
while (zz < unitCount) {
trgt3 = ARR_allUnits[zz];
distdata222 = CALC_Dist_Xv_Yv(xxx, yyy, trgt3._x, trgt3._y);
distance222 = distdata222[0];
if (distance222 < 150) {
trgt3.TIMER_stunDelay = 45;
Ottalkivanie(trgt3, xxx, yyy, 100500);
}
++zz;
}
}
}
function AI_boss2(trgt) {
if (trgt.dmg > 0.5 * trgt.hp and trgt.fuckoffused != 1) {
trgt.fuckoffused = 1;
fuckoffBOSS2(trgt._x, trgt._y);
}
++trgt.lifetimer;
if (trgt.lifetimer / 30 > 5) {
trgt.attackDelay_base = 60;
}
if (trgt.lifetimer / 30 > 10) {
trgt.attackDelay_base = 80;
}
if (trgt.targeted_enemy.hp / trgt.targeted_enemy.hp - 1 eq 0) {
} else {
trgt.targeted_enemy = 'none';
}
if (trgt.TIMER_stunDelay > 0) {
trgt.TIMER_attackDelay = 0;
trgt.gotoAndStop(1);
--trgt.TIMER_stunDelay;
trgt.xspeed *= 0.8;
trgt.yspeed *= 0.8;
trgt.stun_anim._visible = true;
return undefined;
} else {
trgt.TIMER_stunDelay = 0;
trgt.stun_anim._visible = false;
}
AI_end();
if (trgt.TIMER_attackDelay > 0) {
do_AIstep_0 = 'done';
do_AIstep_2 = 'go';
} else {
do_AIstep_0 = 'done';
do_AIstep_1 = 'go';
}
trgt.VISrad_base = trgt.VISrad_default;
if (do_AIstep_1 eq 'go') {
do_AIstep_1 = 'done';
trgt.targeted_enemy = 'none';
unitCountZZ = ARR_necroUnits.length;
j = 0;
while (j < unitCountZZ) {
trgt62 = ARR_necroUnits[j].linktounit;
distdata = CALC_Dist_Xv_Yv(trgt62._x, trgt62._y, trgt._x, trgt._y);
ARR_necroUnits[j].temp_distData = distdata[0];
++j;
}
_root.ARR_necroUnits.sortOn('temp_distData', Array.NUMERIC);
possible_target = _root.ARR_necroUnits[0];
if (possible_target.temp_distData < trgt.VISrad) {
trgt.targeted_enemy = possible_target.linktounit;
}
do_AIstep_2 = 'go';
}
if (do_AIstep_2 eq 'go') {
do_AIstep_2 = 'done';
if (trgt.TIMER_attackDelay eq 0) {
trgt.gotoAndStop(2);
trgt.att_anim.gotoAndPlay(2);
rotation_face_target(trgt, trgt.targeted_enemy);
if (trgt.targeted_enemy eq 'none') {
trgt._rotation = 0;
}
AI_end();
trgt.TIMER_attackDelay = trgt.attackDelay;
} else {
--trgt.TIMER_attackDelay;
trgt.fireballTarget_x = trgt.targeted_enemy._x;
trgt.fireballTarget_y = trgt.targeted_enemy._y;
if (trgt.targeted_enemy eq 'none') {
trgt.fireballTarget_x = _root.yiff.necropolis._x;
trgt.fireballTarget_y = _root.yiff.necropolis._y - 135;
}
if (trgt.att_anim.do_dmg eq 1) {
trgt.att_anim.do_dmg = 0;
_root.mage_shot.start();
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('projectile_210', 'projectile_' + iyiff, iyiff);
strela = _root.yiff.projectile_layer['projectile_' + iyiff];
strela.whatisit = 'projectile';
if (trgt.targeted_enemy eq 'none') {
strela.targetingCastle = 1;
}
strela.id = 210;
strela._x = trgt._x;
strela._y = trgt._y;
strela.damage = trgt.dmg_min + random(trgt.dmg_max - trgt.dmg_min);
strela.stun_time = trgt.stun_time;
strela.speed = trgt.proj_speed;
strela.target_x = trgt.fireballTarget_x;
strela.target_y = trgt.fireballTarget_y;
strela.radius = _root.boss2_explRadius;
distdata = CALC_Dist_Xv_Yv(strela.target_x, strela.target_y, trgt._x, trgt._y);
xmodifier123 = distdata[1];
ymodifier123 = distdata[2];
strela.xspeed = strela.speed * xmodifier123;
strela.yspeed = strela.speed * ymodifier123;
strela.xpos = trgt._x;
strela.ypos = trgt._y;
strela.tempx = xpos;
strela.tempy = ypos;
trgt.targeted_enemy = 'none';
}
if (trgt.TIMER_attackDelay < 0 or trgt.TIMER_attackDelay eq 0) {
trgt.TIMER_attackDelay = 0;
trgt.gotoAndStop(1);
}
}
}
AI_end();
}
function fuckoffBOSS2(xxx, yyy) {
_root.portalcastSND.start();
iyiff = _root.yiff.dead_layer.getNextHighestDepth();
_root.yiff.dead_layer.attachMovie('boss2_summonSHockwave', 'boss2_summonSHockwave', iyiff);
bs2s_shkw = _root.yiff.dead_layer.boss2_summonSHockwave;
bs2s_shkw._x = xxx;
bs2s_shkw._y = yyy;
zz = 0;
while (zz < unitCount) {
trgt3 = ARR_allUnits[zz];
distdata222 = CALC_Dist_Xv_Yv(xxx, yyy, trgt3._x, trgt3._y);
distance222 = distdata222[0];
if (distance222 < 150) {
trgt3.TIMER_stunDelay = 45;
Ottalkivanie(trgt3, xxx, yyy, 100500);
}
++zz;
}
spawnDeathray(xxx, yyy, 0, -1);
spawnDeathray(xxx, yyy, 1, -1);
spawnDeathray(xxx, yyy, 1, 0);
spawnDeathray(xxx, yyy, 1, 1);
spawnDeathray(xxx, yyy, 0, 1);
spawnDeathray(xxx, yyy, -1, 1);
spawnDeathray(xxx, yyy, -1, 0);
spawnDeathray(xxx, yyy, -1, -1);
}
function spawnDeathray(xxx, yyy, xmod, ymod) {
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('deathRayProjectile', 'projectile_' + iyiff, iyiff);
strela = _root.yiff.projectile_layer['projectile_' + iyiff];
strela.whatisit = 'projectile';
strela._x = xxx;
strela._y = yyy;
strela.id = 2001;
strela.speed = 16;
strela.target_x = xx;
strela.target_y = yy;
distdata = CALC_Dist_Xv_Yv(strela.target_x, strela.target_y, strela._x, strela._y);
xmodifier123 = xmod;
ymodifier123 = ymod;
strela.xspeed = strela.speed * xmodifier123;
strela.yspeed = strela.speed * ymodifier123;
strela.xpos = strela._x;
strela.ypos = strela._y;
strela.tempx = xpos;
strela.tempy = ypos;
}
function unitsKnowYourPlaceTheHardWay(trgt) {
if (_root.doadditionalTrace eq 1) {
trace('///unit///' + trgt);
trace(trgt.xpos + ' xpos');
trace(trgt.ypos + ' ypos');
}
if (trgt._x > 1500 or trgt._y > 1500 or trgt._y < -500 or trgt._x < -500) {
trgt.dmg += 9999;
trace('unitknowyourplace active');
}
if (trgt.xpos > 1500 or trgt.ypos > 1500 or trgt.xpos < -500 or trgt.ypos < -500) {
trgt.dmg += 9999;
trace('unitknowyourplace active');
}
if (_root.wave_timer_1 / 30 > _root['wave_length_' + _root.current_wave]) {
if (trgt._x > 950 or trgt._y > 750 or trgt._y < -150 or trgt._x < -300) {
trgt.dmg += 9999;
trace('unitknowyourplace active');
}
}
}
function unitsKnowYourPlace(trgt) {
if (trgt._id < 200) {
return undefined;
}
if (trgt._x > 900 or trgt._x < -100 or trgt._y < -100 or trgt._y > 700) {
trgt._x = -30 + random(5);
trgt._y = 50 + random(500);
}
}
function creatingUnitsArray() {
_root.ARR_allUnits = [];
_root.ARR_necroUnits = [];
_root.ARR_lightUnits = [];
_root.ARR_allUnits_m = [];
_root.deathKnightCOUNT = 0;
_root.lichCOUNT = 0;
_root.boss2_COUNT = 0;
i = 0;
while (i < _root.units_max_count + 1) {
if (_root.yiff['unit_' + i]) {
this['unit_module_' + i] = {};
this['unit_module_' + i].linktounit = _root.yiff['unit_' + i];
ARR_allUnits_m.push(this['unit_module_' + i]);
ARR_allUnits.push(_root.yiff['unit_' + i]);
if (_root.yiff['unit_' + i].team eq 1) {
this['unit_module_' + i] = {};
this['unit_module_' + i].linktounit = _root.yiff['unit_' + i];
ARR_necroUnits.push(this['unit_module_' + i]);
if (_root.yiff['unit_' + i].id eq 103) {
++_root.deathKnightCOUNT;
}
if (_root.yiff['unit_' + i].id eq 104) {
++_root.lichCOUNT;
}
} else {
if (_root.yiff['unit_' + i].team eq 2) {
this['unit_module_' + i] = {};
this['unit_module_' + i].linktounit = _root.yiff['unit_' + i];
ARR_lightUnits.push(this['unit_module_' + i]);
if (_root.yiff['unit_' + i].id eq 210) {
++_root.boss2_COUNT;
}
}
}
}
++i;
}
_root.spawnedUnits = _root.ARR_necroUnits.length;
}
function targetingIntegrity1(trgt) {
trgt.targetedByUnitsCount = 0;
}
function targetingIntegrity2(trgt) {
++trgt.targeted_enemy.targetedByUnitsCount;
}
function death_integrity(trgt) {
if (trgt.poison > 0) {
trgt.poisonAn._visible = true;
} else {
trgt.poisonAn._visible = false;
}
if (trgt.poison > 0 and random(20) eq 1) {
trgt.poison -= 10;
trgt.dmg += 10;
otletaniedamaga(trgt._x, trgt._y, '-10', 'poison');
}
if (trgt.hp < trgt.dmg) {
if (trgt.id > 200) {
++_root['localkills' + trgt.id];
}
iyiff = _root.yiff.dead_layer.getNextHighestDepth();
_root.yiff.dead_layer.attachMovie('dead_' + trgt.id, 'dead_' + iyiff, iyiff);
trgt2 = _root.yiff.dead_layer['dead_' + iyiff];
trgt2.thisisDead = 1;
trgt2._x = trgt._x;
trgt2._y = trgt._y;
trgt2._rotation = trgt._rotation;
trgt.slot.occupation = 'none';
trgt.slot._x = trgt.slot.default_x;
trgt.slot._y = trgt.slot.default_y;
if (trgt.id eq 103 or trgt.id eq 107) {
_root.dk_die_sndplay();
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('dead_103_upper', 'dead_103_upper' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['dead_103_upper' + iyiff];
ttrrggtt.thisisDead = 1;
ttrrggtt._x = trgt._x;
ttrrggtt._y = trgt._y;
ttrrggtt._rotation = trgt._rotation;
}
if (trgt.id eq 107) {
DKHero_deathExplosionEffect(trgt._x, trgt._y);
ttrrggtt._rotation = random(360);
sorcBoomSND();
}
if (trgt eq _root.mousoveredEnemy) {
_root.mousoveredEnemy = 0;
}
if (trgt.id > 200) {
_root.cash += trgt.cash;
_root.exp_ += trgt.exp_;
}
if (trgt.id eq 210) {
boss2_deathEffects(trgt._x, trgt._y);
}
removeMovieClip(trgt.link_to_hpIndicator);
removeMovieClip(trgt);
}
}
function removeUnitProper(trgt) {
trgt.slot.occupation = 'none';
trgt.slot._x = trgt.slot.default_x;
trgt.slot._y = trgt.slot.default_y;
if (trgt eq _root.mousoveredEnemy) {
_root.mousoveredEnemy = 0;
}
removeMovieClip(trgt.link_to_hpIndicator);
removeMovieClip(trgt);
}
function selectionIntegrity(trgt) {
if (trgt.madness_timer > 0) {
trgt.madness_show._visible = true;
} else {
trgt.madness_show._visible = false;
}
if (severalUnitsSelected eq 1) {
thereIsASelectedUnit = 0;
unitCountZZ = selectedUnitsArray.length;
j = 0;
while (j < unitCountZZ) {
trgt = selectedUnitsArray[j];
trgt.iSselected = 0;
trgt.selection_._visible = true;
trgt.selection_._alpha = 100;
++j;
}
}
if (severalUnitsSelected eq 0) {
if (trgt.id < 200) {
if (trgt.iSselected eq 1) {
thereIsASelectedUnit = trgt;
trgt.selection_._visible = true;
trgt.selection_._alpha = 100;
} else {
if (_root.mouseOveredUndead eq trgt) {
trgt.selection_._visible = true;
trgt.selection_._alpha = 50;
} else {
trgt.selection_._visible = false;
}
}
} else {
if (_root.mousoveredEnemy eq trgt) {
trgt.selection_._visible = true;
} else {
trgt.selection_._visible = false;
}
}
}
}
function unitStatIntegrity(trgt) {
if (trgt.id < 200) {
if (trgt.TIMER_healingSpell > 0) {
--trgt.TIMER_healingSpell;
trgt.dmg -= _root.healingAmmount;
trgt.healingShow._visible = true;
} else {
trgt.TIMER_healingSpell = 0;
trgt.healingShow._visible = false;
}
}
if (trgt.dmg > 0) {
trgt.dmg -= _root.regeneration_rate;
} else {
trgt.dmg = 0;
}
if (trgt.TIMER_curseSpell > 0) {
--trgt.TIMER_curseSpell;
trgt.curseInd._visible = true;
trgt.speed = trgt.speed_base * 0.8;
trgt.ATTrad = trgt.ATTrad_base;
trgt.VISrad = trgt.VISrad_base;
trgt.SIEGErad = trgt.SIEGErad_base;
trgt.attackDelay = Math.floor(trgt.attackDelay_base + trgt.attackDelay_base * (1 - _root.curseSpellEffect));
trgt.dmg_min = Math.floor(trgt.dmg_min_base * _root.curseSpellEffect);
trgt.dmg_max = Math.floor(trgt.dmg_max_base * _root.curseSpellEffect);
trgt.interaptionResistance = Math.floor(trgt.interaptionResistance_base * _root.curseSpellEffect);
trgt.stunResistance = Math.floor(trgt.stunResistance_base * _root.curseSpellEffect);
} else {
trgt.TIMER_curseSpell = 0;
trgt.curseInd._visible = false;
trgt.speed = trgt.speed_base;
trgt.ATTrad = trgt.ATTrad_base;
trgt.VISrad = trgt.VISrad_base;
trgt.SIEGErad = trgt.SIEGErad_base;
trgt.attackDelay = trgt.attackDelay_base;
trgt.dmg_min = trgt.dmg_min_base;
trgt.dmg_max = trgt.dmg_max_base;
trgt.interaptionResistance = trgt.interaptionResistance_base;
trgt.stunResistance = trgt.stunResistance_base;
}
}
function AI_end() {
do_AIstep_0 = 'go';
do_AIstep_1 = 'ergo';
do_AIstep_2 = 'ergo';
do_AIstep_3 = 'ergo';
do_AIstep_4 = 'ergo';
do_AIstep_5 = 'ergo';
do_AIstep_6 = 'ergo';
}
function AI_units(trgt) {
if (trgt.enemyEngageTimer > 0) {
--trgt.enemyEngageTimer;
if (trgt.targeted_enemy eq 'none') {
EngageEnemy_repeating(trgt);
}
} else {
trgt.enemyEngageTimer = 0;
}
if (trgt.targeted_enemy.hp / trgt.targeted_enemy.hp - 1 eq 0) {
} else {
trgt.targeted_enemy = 'none';
}
if (trgt.targeted_enemy._x > -9999) {
} else {
trgt.targeted_enemy = 'none';
}
if (trgt.looseYourTarget eq 1) {
trgt.looseYourTarget = 0;
trgt.targeted_enemy = 'none';
}
if (trgt.madness_timer > 1) {
--trgt.madness_timer;
} else {
if (trgt.madness_timer eq 1) {
trgt.madness_timer = 0;
trgt.targeted_enemy = 'none';
}
}
if (trgt.TIMER_stunDelay > 0) {
trgt.TIMER_attackDelay = 0;
trgt.gotoAndStop(1);
--trgt.TIMER_stunDelay;
trgt.xspeed *= 0.8;
trgt.yspeed *= 0.8;
trgt.stun_anim._visible = true;
return undefined;
} else {
trgt.TIMER_stunDelay = 0;
trgt.stun_anim._visible = false;
if (trgt.TIMER_attackDelay > 0 and trgt.targeted_enemy eq 'none') {
--trgt.TIMER_attackDelay;
if (trgt.id eq 103 or trgt.id eq 106 or trgt.id eq 107) {
return undefined;
}
if (trgt.TIMER_attackDelay > 20) {
trgt.TIMER_attackDelay = 20;
}
trgt.gotoAndStop(1);
return undefined;
}
}
AI_end();
trgt.xspeed = 0;
trgt.yspeed = 0;
if (do_AIstep_0 eq 'go') {
do_AIstep_0 = 'done';
if (trgt.TIMER_attackDelay > 0) {
do_AIstep_2 = 'go';
} else {
if (trgt.targeted_enemy != 'none') {
do_AIstep_2 = 'go';
rotation_face_target(trgt, trgt.targeted_enemy);
} else {
do_AIstep_1 = 'go';
}
}
}
fix210411movementDontGoBack(trgt);
if (trgt.forced_destination_x != 'none') {
do_AIstep_0 = 'done';
do_AIstep_2 = 'nononon';
do_AIstep_1 = 'nononon';
trgt.targeted_enemy = 'none';
do_AIstep_101 = 'go';
trgt.VISrad_base = trgt.ATTrad_base - 1;
} else {
trgt.VISrad_base = trgt.VISrad_default;
}
if (trgt._y > 520) {
trgt.forced_destination_y = 510;
trgt.forced_destination_x = trgt._x;
}
if (trgt._y < 18) {
trgt.forced_destination_y = 25;
trgt.forced_destination_x = trgt._x;
}
if (trgt._x < 0 and trgt.id < 200) {
trgt.forced_destination_y = trgt._y;
trgt.forced_destination_x = 20;
}
if (do_AIstep_1 eq 'go') {
do_AIstep_1 = 'done';
if (trgt.team eq 2) {
if (random(RANDOM_NUM_raznosEnemyCHeka) eq 1) {
if (trgt.madness_timer > 0) {
trgt.targeted_enemy = 'none';
unitCountZZ = ARR_allUnits_m.length;
j = 0;
while (j < unitCountZZ) {
trgt62 = ARR_allUnits_m[j].linktounit;
if (trgt62 != trgt) {
distdata = CALC_Dist_Xv_Yv(trgt62._x, trgt62._y, trgt._x, trgt._y);
ARR_allUnits_m[j].temp_distData = distdata[0];
} else {
ARR_allUnits_m[j].temp_distData = 99999999;
}
++j;
}
_root.ARR_allUnits_m.sortOn('temp_distData', Array.NUMERIC);
possible_target = _root.ARR_allUnits_m[0];
if (possible_target.temp_distData < trgt.VISrad) {
trgt.targeted_enemy = possible_target.linktounit;
}
} else {
trgt.targeted_enemy = 'none';
unitCountZZ = ARR_necroUnits.length;
j = 0;
while (j < unitCountZZ) {
trgt62 = ARR_necroUnits[j].linktounit;
distdata = CALC_Dist_Xv_Yv(trgt62._x, trgt62._y, trgt._x, trgt._y);
ARR_necroUnits[j].temp_distData = distdata[0];
++j;
}
_root.ARR_necroUnits.sortOn('temp_distData', Array.NUMERIC);
possible_target = _root.ARR_necroUnits[0];
if (possible_target.temp_distData < trgt.VISrad) {
trgt.targeted_enemy = possible_target.linktounit;
}
}
}
if (trgt.targeted_enemy eq 'none' and trgt.id eq 210) {
trgt.targeted_enemy = 'castle';
}
if (trgt.targeted_enemy eq 'none') {
do_AIstep_4 = 'go';
} else {
do_AIstep_2 = 'go';
}
} else {
if (trgt.team eq 1) {
if (random(RANDOM_NUM_raznosEnemyCHeka) != 1111) {
trgt.targeted_enemy = 'none';
unitCount_11 = ARR_lightUnits.length;
j = 0;
while (j < unitCount_11) {
trgt52 = ARR_lightUnits[j].linktounit;
distdata = CALC_Dist_Xv_Yv(trgt52._x, trgt52._y, trgt._x, trgt._y);
ARR_lightUnits[j].temp_distData = distdata[0];
++j;
}
_root.ARR_lightUnits.sortOn('temp_distData', Array.NUMERIC);
possible_target = _root.ARR_lightUnits[0];
if (possible_target.temp_distData < trgt.VISrad and possible_target.linktounit._x > 20) {
trgt.targeted_enemy = possible_target.linktounit;
}
}
if (trgt.targeted_enemy eq 'none') {
do_AIstep_3 = 'go';
} else {
do_AIstep_2 = 'go';
}
}
}
}
if (do_AIstep_2 eq 'go') {
do_AIstep_2 = 'done';
distdata = CALC_Dist_Xv_Yv(trgt.targeted_enemy._x, trgt.targeted_enemy._y, trgt._x, trgt._y);
distance_to_enemy = distdata[0];
xmodifier123 = distdata[1];
ymodifier123 = distdata[2];
if (distance_to_enemy - trgt.radius - trgt.targeted_enemy.radius < trgt.ATTrad) {
if (trgt.TIMER_attackDelay eq 0) {
trgt.gotoAndStop(2);
trgt.att_anim.gotoAndPlay(2);
_root.unit_attack_sound(trgt.id);
rotation_face_target(trgt, trgt.targeted_enemy);
AI_end();
trgt.TIMER_attackDelay = trgt.attackDelay;
} else {
--trgt.TIMER_attackDelay;
if (trgt.id eq 205 or trgt.id eq 208) {
trgt.fireballTarget_x = trgt.targeted_enemy._x;
trgt.fireballTarget_y = trgt.targeted_enemy._y;
}
if (trgt.att_anim.do_dmg eq 1) {
trgt.att_anim.do_dmg = 0;
_root.unit_HIT_sound(trgt.id);
if (trgt.id eq 205 or trgt.id eq 208) {
_root.mage_shot.start();
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
if (trgt.id eq 205) {
_root.yiff.projectile_layer.attachMovie('projectile_205', 'projectile_' + iyiff, iyiff);
} else {
_root.yiff.projectile_layer.attachMovie('projectile_208', 'projectile_' + iyiff, iyiff);
}
strela = _root.yiff.projectile_layer['projectile_' + iyiff];
strela.whatisit = 'projectile';
strela._x = trgt._x;
strela._y = trgt._y;
strela.damage = trgt.dmg_min + random(trgt.dmg_max - trgt.dmg_min);
strela.stun_time = trgt.stun_time;
strela.speed = trgt.proj_speed;
strela.target_x = trgt.fireballTarget_x;
strela.target_y = trgt.fireballTarget_y;
if (trgt.id eq 205) {
strela.radius = _root.mage_explosion_radius;
} else {
strela.radius = _root.mage_explosion_radius_2;
strela.id = 208;
}
distdata = CALC_Dist_Xv_Yv(strela.target_x, strela.target_y, trgt._x, trgt._y);
xmodifier123 = distdata[1];
ymodifier123 = distdata[2];
strela.xspeed = strela.speed * xmodifier123;
strela.yspeed = strela.speed * ymodifier123;
strela.xpos = trgt._x;
strela.ypos = trgt._y;
strela.tempx = xpos;
strela.tempy = ypos;
if (trgt.id eq 208) {
trgt.targeted_enemy = 'none';
}
} else {
if (trgt.id eq 103) {
deathKnightAttack(trgt);
} else {
if (trgt.id eq 107) {
deathKnightAttack2(trgt);
} else {
if (trgt.id eq 211) {
morningstarBlow(trgt);
} else {
if (trgt.id eq 104) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('elisiumTear', 'elisiumTear' + iyiff, iyiff);
eltear__ = _root.yiff.shooting_layer['elisiumTear' + iyiff];
eltear__._width = 6.9;
eltear__._height = 18.3;
eltear__._x = trgt.targeted_enemy._x;
eltear__._y = trgt.targeted_enemy._y;
} else {
distdata = CALC_Dist_Xv_Yv(trgt.targeted_enemy._x, trgt.targeted_enemy._y, trgt._x, trgt._y);
distance_to_enemy = distdata[0];
rotation_face_target(trgt, trgt.targeted_enemy);
if (trgt.id eq 102 or trgt.id eq 202 or trgt.id eq 203) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
if (trgt.id eq 102) {
_root.yiff.shooting_layer.attachMovie('arrow_fly_2', 'arrow_fly' + iyiff, iyiff);
trgt.targeted_enemy.darker._visible = true;
trgt.targeted_enemy.darker.gotoAndPlay(1);
} else {
if (trgt.id eq 202) {
_root.yiff.shooting_layer.attachMovie('arrow_fly', 'arrow_fly' + iyiff, iyiff);
} else {
if (trgt.id eq 203) {
_root.yiff.shooting_layer.attachMovie('arrow_fly_3', 'arrow_fly' + iyiff, iyiff);
}
}
}
strela = _root.yiff.shooting_layer['arrow_fly' + iyiff];
strela._x = trgt._x;
strela._y = trgt._y;
rotation_face_target(strela, trgt.targeted_enemy);
if (distance_to_enemy < 50) {
strela.diefast = 1;
}
}
if (distance_to_enemy - trgt.radius - trgt.targeted_enemy.radius < trgt.ATTrad and trgt.id != 103 and trgt.id != 107) {
damage = trgt.dmg_min + random(trgt.dmg_max - trgt.dmg_min);
trgt.targeted_enemy.dmg += damage;
if (random(100) > trgt.targeted_enemy.interaptionResistance) {
trgt.targeted_enemy.TIMER_attackDelay = 0;
trgt.targeted_enemy.gotoAndStop(1);
}
otletaniedamaga(trgt.targeted_enemy._x, trgt.targeted_enemy._y, damage, 'dmg');
if (trgt.id eq 203) {
trgt.targeted_enemy.shockAnim._visible = true;
trgt.targeted_enemy.shockAnim.play();
trgt3 = trgt.targeted_enemy;
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay = _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay = 30;
}
}
if (trgt.id eq 106) {
ghoulKingPUNCH(trgt, trgt.targeted_enemy);
}
if (trgt.id eq 207 or trgt.id eq 209) {
_root.mageFIreballDetonate.start();
_root.markedByBoss1 = trgt.targeted_enemy;
_root.markedByBoss1.bossed1timer = 5;
boss1PUNCH(trgt, trgt.targeted_enemy);
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('unitEnterCastle', 'unitEnterCastle' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['unitEnterCastle' + iyiff];
ttrrggtt._x = _root.markedByBoss1._x;
ttrrggtt._y = _root.markedByBoss1._y;
}
}
}
}
}
}
}
}
if (trgt.TIMER_attackDelay < 0 or trgt.TIMER_attackDelay eq 0) {
trgt.TIMER_attackDelay = 0;
trgt.gotoAndStop(1);
}
}
} else {
if (trgt.holdPositionMode eq 1) {
} else {
xmodifier = xmodifier123;
ymodifier = ymodifier123;
trgt.xspeed = trgt.speed * xmodifier;
trgt.yspeed = trgt.speed * ymodifier;
trgt.gotoAndStop(3);
rotation_toFace_movement(trgt, trgt.xspeed, trgt.yspeed);
}
}
}
if (do_AIstep_3 eq 'go') {
do_AIstep_3 = 'done';
distdata = CALC_Dist_Xv_Yv(trgt.slot._x, trgt.slot._y, trgt._x, trgt._y);
distance_to_slot = distdata[0];
if (distance_to_slot < trgt.speed * 1.5) {
trgt.gotoAndStop(1);
if (random(500) eq 1) {
trgt._rotation += random(100) - 50;
}
AI_end();
} else {
xmodifier = distdata[1];
ymodifier = distdata[2];
trgt.xspeed = trgt.speed * xmodifier;
trgt.yspeed = trgt.speed * ymodifier;
rotation_toFace_movement(trgt, trgt.xspeed, trgt.yspeed);
trgt.gotoAndStop(3);
}
}
if (do_AIstep_101 eq 'go') {
do_AIstep_101 = 'done';
distdata = CALC_Dist_Xv_Yv(trgt.forced_destination_x, trgt.forced_destination_y, trgt._x, trgt._y);
distance_to_slot = distdata[0];
if (distance_to_slot < trgt.speed * 1.5) {
trgt.forced_destination_x = 'none';
trgt.forced_destination_y = 'none';
trgt.gotoAndStop(1);
AI_end();
} else {
xmodifier = distdata[1];
ymodifier = distdata[2];
trgt.xspeed = trgt.speed * xmodifier;
trgt.yspeed = trgt.speed * ymodifier;
rotation_toFace_movement(trgt, trgt.xspeed, trgt.yspeed);
trgt.gotoAndStop(3);
}
}
if (do_AIstep_4 eq 'go' and trgt.holdPositionMode != 1) {
do_AIstep_4 = 'done';
distdata = CALC_Dist_Xv_Yv(_root.yiff.necropolis._x, _root.yiff.necropolis._y, trgt._x, trgt._y);
distance_to_zamok = distdata[0];
distance_to_zamok_x = Math.abs(_root.yiff.necropolis._x - trgt._x);
if (distance_to_zamok < trgt.SIEGErad) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('unitEnterCastle', 'unitEnterCastle' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['unitEnterCastle' + iyiff];
ttrrggtt._x = trgt._x;
ttrrggtt._y = trgt._y;
assultSND();
_root.tremorTimer = 20;
_root.castleDmg += trgt.siegeDMG;
removeMovieClip(trgt.link_to_hpIndicator);
removeMovieClip(trgt);
AI_end();
} else {
if (distance_to_zamok_x < _root.homing_radius) {
xmodifier = distdata[1];
ymodifier = distdata[2];
trgt.gotoAndStop(3);
trgt.xspeed = trgt.speed * xmodifier;
trgt.yspeed = trgt.speed * ymodifier;
rotation_toFace_movement(trgt, trgt.xspeed, trgt.yspeed);
} else {
trgt.xspeed = trgt.speed;
trgt.gotoAndStop(3);
trgt.yspeed = 0;
rotation_toFace_movement(trgt, trgt.xspeed, trgt.yspeed);
}
}
}
AI_end();
if (trgt._currentframe eq 3 and trgt.xspeed eq 0 and trgt.yspeed eq 0) {
trgt.gotoAndStop(1);
}
}
function fix210411movementDontGoBack(trgt) {
if (trgt.forced_destination_x eq 'none' and trgt.holdPositionMode != 1) {
if (random(30) eq 1) {
trgt.slot._x = trgt._x;
trgt.slot._y = trgt._y;
}
}
}
function moveObject(target) {
if (target.id eq 210 and target.whatisit != 'projectile') {
return undefined;
}
target.tempx = target.xpos + target.xspeed;
target.tempy = target.ypos + target.yspeed;
}
function renderObject(target) {
if (target.id eq 210 and target.whatisit != 'projectile') {
return undefined;
}
target.xpos = target.tempx;
target.ypos = target.tempy;
target._x = target.xpos;
target._y = target.ypos;
}
function force_spread(trgt) {
unitCount = ARR_allUnits.length;
j = 0;
while (j < unitCount) {
trgt2 = ARR_allUnits[j];
if (trgt2 != trgt and trgt.TIMER_stunDelay eq 0 and trgt2.TIMER_stunDelay eq 0 and trgt.TIMER_attackDelay eq 0 and trgt2.TIMER_attackDelay eq 0) {
distdata = CALC_Dist_Xv_Yv(trgt2._x, trgt2._y, trgt._x, trgt._y);
distance = distdata[0];
if (distance < trgt.radius * 2) {
Ottalkivanie(trgt2, trgt._x, trgt._y, 999);
}
} else {
if (trgt2 != trgt) {
distdata = CALC_Dist_Xv_Yv(trgt2._x, trgt2._y, trgt._x, trgt._y);
distance = distdata[0];
if (distance < 15) {
Ottalkivanie(trgt2, trgt._x, trgt._y, 999);
}
}
}
++j;
}
}
function projectileIntegrity(trgt) {
moveObject(trgt);
renderObject(trgt);
distdata = CALC_Dist_Xv_Yv(trgt.target_x, trgt.target_y, trgt._x, trgt._y);
distance = distdata[0];
if (trgt.id eq 1) {
j = 0;
while (j < 4) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('trail1', 'trail' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['trail' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = trgt._x - 3 + random(6);
ttrrggtt._y = trgt._y - 3 + random(6);
++j;
}
}
if (trgt.id eq 2) {
j = 0;
while (j < 4) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('trail2', 'trail' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['trail' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = trgt._x - 3 + random(6);
ttrrggtt._y = trgt._y - 3 + random(6);
++j;
}
}
if (trgt.id eq 210) {
j = 0;
while (j < 3) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = trgt._x - 4 + random(8);
ttrrggtt._y = trgt._y - 4 + random(8);
++j;
}
}
if (trgt.id eq 2000) {
if (trgt.timerchek < 999999) {
++trgt.timerchek;
} else {
trgt.timerchek = 0;
}
j = 0;
while (j < 2) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('trail_333', 'trail' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['trail' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = trgt._x - 3 + random(6);
ttrrggtt._y = trgt._y - 3 + random(6);
++j;
}
if (trgt.timerchek > 25) {
if (random(3) eq 1) {
EXPLsmallPlay();
}
eXplosionX = trgt._x - 60 + random(120);
eXplosionY = trgt._y - 65 + random(120);
explosionAnimation_small(eXplosionX, eXplosionY);
zz = 0;
while (zz < unitCount) {
trgt3 = ARR_allUnits[zz];
distdata222 = CALC_Dist_Xv_Yv(eXplosionX, eXplosionY, trgt3._x, trgt3._y);
distance222 = distdata222[0];
if (distance222 < 30) {
Ottalkivanie(trgt3, eXplosionX, eXplosionY, 2000);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay = _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay = _root.deathRay_STUN;
}
damage_ = _root.deathRayDMG_min + random(_root.deathRayDMG_max - _root.deathRayDMG_min);
trgt3.dmg += damage_;
otletaniedamaga(trgt3._x, trgt3._y, damage_, 'dmg');
}
++zz;
}
}
if (trgt._x < -100 or trgt._x > 900 or trgt._y < -100 or trgt._y > 600) {
removeMovieClip(trgt);
}
return undefined;
}
if (trgt.id eq 2001) {
if (trgt.timerchek < 999999) {
++trgt.timerchek;
} else {
trgt.timerchek = 0;
}
j = 0;
while (j < 2) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('trail_333', 'trail' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['trail' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = trgt._x - 3 + random(6);
ttrrggtt._y = trgt._y - 3 + random(6);
++j;
}
if (trgt.timerchek > 2 and random(2) eq 1) {
if (random(3) eq 1) {
EXPLsmallPlay();
}
eXplosionX = trgt._x - 60 + random(120);
eXplosionY = trgt._y - 65 + random(120);
explosionAnimation_small(eXplosionX, eXplosionY);
zz = 0;
while (zz < unitCount) {
trgt3 = ARR_allUnits[zz];
distdata222 = CALC_Dist_Xv_Yv(eXplosionX, eXplosionY, trgt3._x, trgt3._y);
distance222 = distdata222[0];
if (distance222 < 30) {
Ottalkivanie(trgt3, eXplosionX, eXplosionY, 2000);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay = _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay = 60;
}
damage_ = 50 + random(150);
trgt3.dmg += damage_;
otletaniedamaga(trgt3._x, trgt3._y, damage_, 'dmg');
}
++zz;
}
}
if (trgt._x < -100 or trgt._x > 900 or trgt._y < -100 or trgt._y > 600) {
removeMovieClip(trgt);
}
return undefined;
}
if (trgt.id != 208 and trgt.id != 210) {
if (distance < trgt.speed * 1.1) {
EXPL_x = Math.floor(trgt.target_x * 10) / 10;
EXPL_y = Math.floor(trgt.target_y * 10) / 10;
if (trgt.id eq 1) {
snd_PoisonExplosion();
explosionAnimation_poison(EXPL_x, EXPL_y);
} else {
if (trgt.id eq 2) {
explosionSND();
explosionAnimation_big(EXPL_x, EXPL_y);
} else {
_root.mageFIreballDetonate.start();
explosionAnimation_small(EXPL_x, EXPL_y);
}
}
zz = 0;
while (zz < unitCount) {
trgt3 = ARR_allUnits[zz];
distdata55 = CALC_Dist_Xv_Yv(EXPL_x, EXPL_y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (trgt.id eq 1 and trgt3.id < 200) {
if (distance55 < trgt.radius) {
Ottalkivanie(trgt3, EXPL_x, EXPL_y, 2);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += 30;
}
}
} else {
if (distance55 < trgt.radius) {
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += trgt.stun_time;
}
trgt3.dmg += trgt.damage;
if (trgt.poison > 0) {
if (trgt3.poison < trgt.poison) {
trgt3.poison = trgt.poison;
}
}
if (random(100) > trgt3.interaptionResistance) {
trgt3.TIMER_attackDelay = 0;
trgt3.gotoAndStop(1);
}
otletaniedamaga(trgt3._x, trgt3._y, trgt.damage, 'dmg');
if (trgt.id eq 2) {
Ottalkivanie(trgt3, EXPL_x, EXPL_y, 3);
}
}
}
++zz;
}
removeMovieClip(trgt);
}
}
if (trgt.id eq 208) {
if (distance < trgt.speed * 1.1) {
EXPL_x = Math.floor(trgt.target_x * 10) / 10;
EXPL_y = Math.floor(trgt.target_y * 10) / 10;
i = 0;
while (i < 10) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = EXPL_x - 25 + random(50);
ttrrggtt._y = EXPL_y - 25 + random(50);
++i;
}
sorcBoomSND();
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('mage2explosion', 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
expl._x = EXPL_x;
expl._y = EXPL_y;
unitCountZZ = ARR_necroUnits.length;
zz = 0;
while (zz < unitCountZZ) {
trgt3 = ARR_necroUnits[zz].linktounit;
distdata55 = CALC_Dist_Xv_Yv(EXPL_x, EXPL_y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < trgt.radius) {
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += trgt.stun_time;
}
trgt3.dmg += trgt.damage;
if (random(100) > trgt3.interaptionResistance) {
trgt3.TIMER_attackDelay = 0;
trgt3.gotoAndStop(1);
}
otletaniedamaga(trgt3._x, trgt3._y, trgt.damage, 'dmg');
Ottalkivanie(trgt3, EXPL_x, EXPL_y, 3);
}
++zz;
}
removeMovieClip(trgt);
}
}
if (trgt.id eq 210) {
if (distance < trgt.speed * 1.1) {
EXPL_x = Math.floor(trgt.target_x * 10) / 10;
EXPL_y = Math.floor(trgt.target_y * 10) / 10;
i = 0;
while (i < 15) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = EXPL_x - 35 + random(70);
ttrrggtt._y = EXPL_y - 35 + random(70);
++i;
}
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('mage2explosion', 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
sorcBoomSND();
expl._x = EXPL_x;
expl._y = EXPL_y;
expl._height *= 1.3;
expl._width *= 1.3;
if (trgt.targetingCastle eq 1) {
_root.spell_mode = 0;
_root.spell_delay_timer_1 += 40;
_root.spell_delay_timer_2 += 40;
_root.spell_delay_timer_3 += 40;
_root.spell_delay_timer_4 += 40;
_root.spell_delay_timer_5 += 40;
_root.spell_delay_timer_6 += 40;
_root.spell_delay_timer_7 += 40;
_root.spell_delay_timer_8 += 40;
_root.tremorTimer = 10;
_root.castleDmg += 40;
} else {
unitCountZZ = ARR_necroUnits.length;
zz = 0;
while (zz < unitCountZZ) {
trgt3 = ARR_necroUnits[zz].linktounit;
distdata55 = CALC_Dist_Xv_Yv(EXPL_x, EXPL_y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < trgt.radius) {
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += trgt.stun_time;
}
trgt3.dmg += trgt.damage;
if (random(100) > trgt3.interaptionResistance) {
trgt3.TIMER_attackDelay = 0;
trgt3.gotoAndStop(1);
}
otletaniedamaga(trgt3._x, trgt3._y, trgt.damage, 'dmg');
Ottalkivanie(trgt3, EXPL_x, EXPL_y, 3);
}
++zz;
}
}
removeMovieClip(trgt);
}
}
}
function deathKnightAttack(center) {
center.targeted_enemy = 'none';
lightUnitsCount = _root.ARR_lightUnits.length;
zz = 0;
while (zz < lightUnitsCount) {
trgt3 = _root.ARR_lightUnits[zz].linktounit;
trace(trgt3);
distdata55 = CALC_Dist_Xv_Yv(center._x, center._y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < _root.DK_att360_radius) {
Ottalkivanie(trgt3, center._x, center._y, 4);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += _root.DK_att360_stun;
}
damage1 = center.dmg_min + random(center.dmg_max - center.dmg_min);
trgt3.dmg += damage1;
otletaniedamaga(trgt3._x, trgt3._y, damage1, 'dmg');
}
++zz;
}
}
function deathKnightAttack2(center) {
center.targeted_enemy = 'none';
lightUnitsCount = _root.ARR_lightUnits.length;
zz = 0;
while (zz < lightUnitsCount) {
trgt3 = _root.ARR_lightUnits[zz].linktounit;
distdata55 = CALC_Dist_Xv_Yv(center._x, center._y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < _root.DK_att360_radius * 1.2) {
Ottalkivanie(trgt3, center._x, center._y, 4);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += _root.DK_heroStun;
}
damage1 = center.dmg_min + random(center.dmg_max - center.dmg_min);
trgt3.dmg += damage1;
otletaniedamaga(trgt3._x, trgt3._y, damage1, 'dmg');
explosionAnimation_small(trgt3._x, trgt3._y, 0.5);
}
++zz;
}
}
function boss1PUNCH(center, victim) {
center.targeted_enemy = 'none';
trgt3 = victim;
distdata55 = CALC_Dist_Xv_Yv(center._x, center._y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < 500) {
Ottalkivanie(trgt3, center._x, center._y, 4.5);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += _root.ghoulKingStunPower;
}
}
}
function ghoulKingPUNCH(center, victim) {
center.targeted_enemy = 'none';
trgt3 = victim;
distdata55 = CALC_Dist_Xv_Yv(center._x, center._y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < 50) {
Ottalkivanie(trgt3, center._x, center._y, 4);
Ottalkivanie(trgt3, center._x, center._y, 4);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += _root.ghoulKingStunPower;
}
}
}
function elisiumTearEffect(EXPL_x, EXPL_y) {
unitCount7778 = ARR_lightUnits.length;
zz = 0;
while (zz < unitCount7778) {
trgt3 = ARR_lightUnits[zz].linktounit;
distdata55 = CALC_Dist_Xv_Yv(EXPL_x, EXPL_y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < _root.elisiumTearRadius) {
Ottalkivanie(trgt3, EXPL_x, EXPL_y, 5);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += 30;
}
damage__ = unit_dmg_min_104 + random(unit_dmg_max_104 - unit_dmg_min_104);
trgt3.dmg += damage__;
if (random(100) > trgt3.interaptionResistance) {
trgt3.TIMER_attackDelay = 0;
trgt3.gotoAndStop(1);
}
otletaniedamaga(trgt3._x, trgt3._y, damage__, 'dmg');
}
++zz;
}
}
function massSelectionIntegrity() {
if (theMouseIsDown eq 0) {
mouseDownTimer = 0;
removeMovieClip(_root.yiff.selectionField);
} else {
++mouseDownTimer;
}
if (mouseDownTimer > 5) {
if (thereIsASelectedUnit eq 0 and _root.spell_mode eq 0) {
if (!_root.yiff.selectionField) {
_root.yiff.attachMovie('selectionField', 'selectionField', _root.selection_depth);
_root.yiff.selectionField._x = lockedMouse_x;
_root.yiff.selectionField._y = lockedMouse_y;
_root.yiff.selectionField._width = 0;
_root.yiff.selectionField._height = 0;
} else {
if (_root._xmouse < lockedMouse_x and _root._ymouse < lockedMouse_y) {
_root.yiff.attachMovie('selectionField', 'selectionField', _root.selection_depth);
_root.yiff.selectionField._x = lockedMouse_x;
_root.yiff.selectionField._y = lockedMouse_y;
_root.yiff.selectionField._rotation = 180;
_root.yiff.selectionField._width = Math.abs(_root._xmouse - lockedMouse_x);
_root.yiff.selectionField._height = Math.abs(_root._ymouse - lockedMouse_y);
sl_xBrd_left = _root._xmouse;
sl_xBrd_right = lockedMouse_x;
sl_yBrd_top = _root._ymouse;
sl_yBrd_bott = lockedMouse_y;
} else {
if (_root._xmouse > lockedMouse_x and _root._ymouse < lockedMouse_y) {
_root.yiff.attachMovie('selectionField2', 'selectionField', _root.selection_depth);
_root.yiff.selectionField._x = lockedMouse_x;
_root.yiff.selectionField._y = lockedMouse_y;
_root.yiff.selectionField._rotation = 0;
_root.yiff.selectionField._width = Math.abs(_root._xmouse - lockedMouse_x);
_root.yiff.selectionField._height = Math.abs(_root._ymouse - lockedMouse_y);
sl_xBrd_left = lockedMouse_x;
sl_xBrd_right = _root._xmouse;
sl_yBrd_top = _root._ymouse;
sl_yBrd_bott = lockedMouse_y;
} else {
if (_root._xmouse < lockedMouse_x and _root._ymouse > lockedMouse_y) {
_root.yiff.attachMovie('selectionField2', 'selectionField', _root.selection_depth);
_root.yiff.selectionField._x = lockedMouse_x;
_root.yiff.selectionField._y = lockedMouse_y;
_root.yiff.selectionField._rotation = 180;
_root.yiff.selectionField._width = Math.abs(_root._xmouse - lockedMouse_x);
_root.yiff.selectionField._height = Math.abs(_root._ymouse - lockedMouse_y);
sl_xBrd_left = _root._xmouse;
sl_xBrd_right = lockedMouse_x;
sl_yBrd_top = lockedMouse_y;
sl_yBrd_bott = _root._ymouse;
} else {
if (_root._xmouse > lockedMouse_x and _root._ymouse > lockedMouse_y) {
_root.yiff.attachMovie('selectionField', 'selectionField', _root.selection_depth);
_root.yiff.selectionField._x = lockedMouse_x;
_root.yiff.selectionField._y = lockedMouse_y;
_root.yiff.selectionField._width = Math.abs(_root._xmouse - lockedMouse_x);
_root.yiff.selectionField._height = Math.abs(_root._ymouse - lockedMouse_y);
sl_xBrd_left = lockedMouse_x;
sl_xBrd_right = _root._xmouse;
sl_yBrd_top = lockedMouse_y;
sl_yBrd_bott = _root._ymouse;
}
}
}
}
if (_root.yiff.selectionField._height > 10 and _root.yiff.selectionField._width) {
selection_happened = 1;
} else {
selection_happened = 0;
}
}
}
}
}
function doUnitSelection() {
if (selection_happened != 1) {
return undefined;
}
unitCountZZ = ARR_necroUnits.length;
selectedUnitsArray = [];
severalUnitsSelected = 0;
j = 0;
while (j < unitCountZZ) {
trgt = ARR_necroUnits[j].linktounit;
if (trgt._x > sl_xBrd_left and trgt._x < sl_xBrd_right and trgt._y > sl_yBrd_top and trgt._y < sl_yBrd_bott) {
if (selectedUnitsArray.length < 9) {
selectedUnitsArray.push(trgt);
}
}
++j;
}
if (selectedUnitsArray.length > 1) {
severalUnitsSelected = 1;
} else {
if (selectedUnitsArray.length eq 1) {
selectedUnitsArray[0].iSselected = 1;
}
}
sl_xBrd_left = -9999;
sl_xBrd_right = -9999;
sl_yBrd_top = -9999;
sl_yBrd_bott = -9999;
}
function selectALLunits() {
unitCountZZ = ARR_necroUnits.length;
selectedUnitsArray = [];
severalUnitsSelected = 0;
j = 0;
while (j < unitCountZZ) {
trgt = ARR_necroUnits[j].linktounit;
if (selectedUnitsArray.length < 9) {
selectedUnitsArray.push(trgt);
}
++j;
}
if (selectedUnitsArray.length > 1) {
severalUnitsSelected = 1;
} else {
if (selectedUnitsArray.length eq 1) {
selectedUnitsArray[0].iSselected = 1;
}
}
}
function boss1_special() {
if (_root.markedByBoss1.bossed1timer > 0) {
--_root.markedByBoss1.bossed1timer;
} else {
return undefined;
}
trgt = _root.markedByBoss1;
explosionAnimation_small(trgt._x, trgt._y, 0.5);
damage = _root.boss1AddDMG_min + random(_root.boss1AddDMG_max - _root.boss1AddDMG_min);
trgt.dmg += damage;
otletaniedamaga(trgt._x, trgt._y, damage, 'dmg');
if (random(100) < trgt.stunResistance) {
if (trgt.TIMER_stunDelay < _root.minimum_stun) {
trgt.TIMER_stunDelay = _root.minimum_stun;
}
} else {
trgt.TIMER_stunDelay = 70;
}
}
function doubleClickSelect(trgt) {
if (_root.unitClickedTimer eq 0) {
_root.rememberClickedUnit = trgt;
_root.unitClickedTimer = _root.doubleClickSelect_SPEED;
} else {
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
if (trgt eq _root.rememberClickedUnit) {
trgttype = trgt.id;
unitCountZZ = ARR_necroUnits.length;
selectedUnitsArray = [];
severalUnitsSelected = 0;
j = 0;
while (j < unitCountZZ) {
trgt2 = ARR_necroUnits[j].linktounit;
if (trgt2.id eq trgttype) {
if (selectedUnitsArray.length < 9) {
selectedUnitsArray.push(trgt2);
}
}
++j;
}
if (selectedUnitsArray.length > 1) {
severalUnitsSelected = 1;
} else {
if (selectedUnitsArray.length eq 1) {
selectedUnitsArray[0].iSselected = 1;
}
}
}
}
}
function DKHero_deathExplosionEffect(xx, yy) {
zz = 0;
while (zz < unitCount) {
trgt3 = ARR_allUnits[zz];
distdata55 = CALC_Dist_Xv_Yv(xx, yy, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < 100) {
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += 30;
} else {
trgt3.TIMER_stunDelay += 80;
}
trgt3.dmg += 200;
if (random(100) > trgt3.interaptionResistance) {
trgt3.TIMER_attackDelay = 0;
trgt3.gotoAndStop(1);
}
otletaniedamaga(trgt3._x, trgt3._y, 200, 'dmg');
Ottalkivanie(trgt3, xx, yy, 3);
}
++zz;
}
}
function morningstarBlow(trgt) {
EXPL_x = trgt.targeted_enemy._x;
EXPL_y = trgt.targeted_enemy._y;
i = 0;
while (i < 10) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = EXPL_x - 25 + random(50);
ttrrggtt._y = EXPL_y - 25 + random(50);
++i;
}
sorcBoomSND();
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('mage2explosion', 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
expl._x = EXPL_x;
expl._y = EXPL_y;
unitCountZZ = ARR_necroUnits.length;
zz = 0;
while (zz < unitCountZZ) {
trgt3 = ARR_necroUnits[zz].linktounit;
distdata55 = CALC_Dist_Xv_Yv(EXPL_x, EXPL_y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < 75) {
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += 50;
}
damage = trgt.dmg_min + random(trgt.dmg_max - trgt.dmg_min);
trgt3.dmg += damage;
if (random(100) > trgt3.interaptionResistance) {
trgt3.TIMER_attackDelay = 0;
trgt3.gotoAndStop(1);
}
otletaniedamaga(trgt3._x, trgt3._y, damage, 'dmg');
Ottalkivanie(trgt3, EXPL_x, EXPL_y, 3);
}
++zz;
}
trgt.targeted_enemy = 'none';
}
function UnitsKillCastle(trgt) {
distdata = CALC_Dist_Xv_Yv(_root.yiff.necropolis._x, _root.yiff.necropolis._y, trgt._x, trgt._y);
distance_to_zamok = distdata[0];
distance_to_zamok_x = Math.abs(_root.yiff.necropolis._x - trgt._x);
if (distance_to_zamok < 100) {
if (trgt.id < 200) {
trgt.forced_destination_x = trgt.slot._x;
trgt.forced_destination_y = trgt._y;
return undefined;
}
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('unitEnterCastle', 'unitEnterCastle' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['unitEnterCastle' + iyiff];
ttrrggtt._x = trgt._x;
ttrrggtt._y = trgt._y;
assultSND();
_root.tremorTimer = 20;
_root.castleDmg += trgt.siegeDMG;
removeMovieClip(trgt.link_to_hpIndicator);
removeMovieClip(trgt);
}
}
function EngageEnemy_repeating(trgt) {
unitCount_11 = ARR_lightUnits.length;
if (unitCount_11 eq 0) {
return undefined;
}
trgt.forced_destination_x = 'none';
j = 0;
while (j < unitCount_11) {
trgt52 = ARR_lightUnits[j].linktounit;
distdata = CALC_Dist_Xv_Yv(trgt52._x, trgt52._y, trgt._x, trgt._y);
ARR_lightUnits[j].temp_distData = distdata[0];
++j;
}
_root.ARR_lightUnits.sortOn('temp_distData', Array.NUMERIC);
possible_target = _root.ARR_lightUnits[0];
trgt.holdPositionMode = 0;
trgt8795 = possible_target.linktounit;
if (trgt8795._x > 10 and trgt8795._x < 750 and trgt8795._y > 10 and trgt8795._y < 585) {
trgt.targeted_enemy = trgt8795;
}
}
function Command_EngageEnemy() {
if (thereIsASelectedUnit != 0) {
trgt = thereIsASelectedUnit;
unitCount_11 = ARR_lightUnits.length;
if (unitCount_11 eq 0) {
return undefined;
}
trgt.forced_destination_x = 'none';
j = 0;
while (j < unitCount_11) {
trgt52 = ARR_lightUnits[j].linktounit;
distdata = CALC_Dist_Xv_Yv(trgt52._x, trgt52._y, trgt._x, trgt._y);
ARR_lightUnits[j].temp_distData = distdata[0];
++j;
}
_root.ARR_lightUnits.sortOn('temp_distData', Array.NUMERIC);
possible_target = _root.ARR_lightUnits[0];
trgt.holdPositionMode = 0;
trgt8795 = possible_target.linktounit;
if (trgt8795._x > 10 and trgt8795._x < 750 and trgt8795._y > 10 and trgt8795._y < 585) {
trgt.targeted_enemy = trgt8795;
}
trgt.enemyEngageTimer = 60;
severalUnitsSelected = 0;
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
return undefined;
}
if (severalUnitsSelected eq 1) {
unitCountZZ = selectedUnitsArray.length;
ji = 0;
while (ji < unitCountZZ) {
trgt = selectedUnitsArray[ji];
unitCount_11 = ARR_lightUnits.length;
if (unitCount_11 eq 0) {
return undefined;
}
trgt.forced_destination_x = 'none';
j = 0;
while (j < unitCount_11) {
trgt52 = ARR_lightUnits[j].linktounit;
distdata = CALC_Dist_Xv_Yv(trgt52._x, trgt52._y, trgt._x, trgt._y);
ARR_lightUnits[j].temp_distData = distdata[0];
++j;
}
_root.ARR_lightUnits.sortOn('temp_distData', Array.NUMERIC);
possible_target = _root.ARR_lightUnits[0];
trgt.holdPositionMode = 0;
trgt8795 = possible_target.linktounit;
if (trgt8795._x > 10 and trgt8795._x < 750 and trgt8795._y > 10 and trgt8795._y < 585) {
trgt.targeted_enemy = trgt8795;
}
trgt.enemyEngageTimer = 60;
++ji;
}
}
thereIsASelectedUnit.iSselected = 0;
severalUnitsSelected = 0;
thereIsASelectedUnit = 0;
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
}
function TotalRecall() {
if (_root.yiffISpaused eq 1) {
doPause();
}
if (thereIsASelectedUnit != 0) {
trgt = thereIsASelectedUnit;
trgt.forced_destination_x = 'none';
trgt.targeted_enemy = 'none';
trgt.TIMER_stunDelay = 60;
_root.summoning.start();
trgt.slot._x = trgt.slot.default_x;
trgt.slot._y = trgt.slot.default_y;
UnitSpawnVisuals_cut(trgt.slot._x, trgt.slot._y);
UnitSpawnVisuals_cut(trgt._x, trgt._y);
trgt.xpos = trgt.slot._x;
trgt.ypos = trgt.slot._y;
trgt.xspeed = 0;
trgt.yspeed = 0;
severalUnitsSelected = 0;
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
return undefined;
}
if (severalUnitsSelected eq 1) {
unitCountZZ = selectedUnitsArray.length;
_root.summoning.start();
ji = 0;
while (ji < unitCountZZ) {
trgt = selectedUnitsArray[ji];
trgt.forced_destination_x = 'none';
trgt.targeted_enemy = 'none';
trgt.TIMER_stunDelay = 60;
trgt.slot._x = trgt.slot.default_x;
trgt.slot._y = trgt.slot.default_y;
UnitSpawnVisuals_cut(trgt.slot._x, trgt.slot._y);
UnitSpawnVisuals_cut(trgt._x, trgt._y);
trgt.xpos = trgt.slot._x;
trgt.ypos = trgt.slot._y;
trgt.xspeed = 0;
trgt.yspeed = 0;
++ji;
}
}
thereIsASelectedUnit.iSselected = 0;
severalUnitsSelected = 0;
thereIsASelectedUnit = 0;
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
}
function rasstanovka(num) {
fgs = 40;
if (num eq 0) {
xplus = 0;
yplus = 0;
} else {
if (num eq 1) {
xplus = fgs;
yplus = 0;
} else {
if (num eq 2) {
xplus = -fgs;
yplus = 0;
} else {
if (num eq 3) {
xplus = 0;
yplus = fgs;
} else {
if (num eq 4) {
xplus = 0;
yplus = -fgs;
} else {
if (num eq 5) {
xplus = -fgs;
yplus = -fgs;
} else {
if (num eq 6) {
xplus = fgs;
yplus = -fgs;
} else {
if (num eq 7) {
xplus = fgs;
yplus = fgs;
} else {
if (num eq 8) {
xplus = -fgs;
yplus = fgs;
}
}
}
}
}
}
}
}
}
}
function otletaniedamaga(xx, yy, msg, type, poisoned) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('otletalka', 'otletalka' + iyiff, iyiff);
_root.yiff.shooting_layer['otletalka' + iyiff]._x = xx;
_root.yiff.shooting_layer['otletalka' + iyiff]._y = yy;
_root.yiff.shooting_layer['otletalka' + iyiff].show_.tehtextfield.text = msg;
if (!poisoned) {
poisoned = '';
}
_root.yiff.shooting_layer['otletalka' + iyiff].show_.poison = poisoned;
var v2 = new TextFormat();
v2.size = 10;
if (type eq 'dmg') {
v2.color = 16711680;
} else {
if (type eq 'poison') {
v2.color = 65280;
} else {
if (type eq 'regeneration') {
v2.color = 52479;
} else {
if (type eq 'misc') {
v2.color = 16777215;
}
}
}
}
_root.yiff.shooting_layer['otletalka' + iyiff].show_.tehtextfield.setTextFormat(v2);
}
function CALC_Dist_Xv_Yv(x1, y1, x2, y2) {
A = {};
B = {};
A.xx = x1;
A.yy = y1;
B.xx = x2;
B.yy = y2;
dx = A.xx - B.xx;
dy = A.yy - B.yy;
distance = Math.sqrt(dx * dx + dy * dy);
dx_a = Math.abs(dx);
dy_a = Math.abs(dy);
if (dx > 0 or dx eq 0) {
xmod = 1;
} else {
xmod = -1;
}
if (dy > 0 or dy eq 0) {
ymod = 1;
} else {
ymod = -1;
}
if (dx_a > dy_a) {
spdmod = dy_a / dx_a;
x_modifier = xmod;
y_modifier = ymod * spdmod;
return [distance, x_modifier, y_modifier, dx, dy];
}
if (dx_a < dy_a) {
spdmod = dx_a / dy_a;
x_modifier = xmod * spdmod;
y_modifier = ymod;
return [distance, x_modifier, y_modifier, dx, dy];
}
x_modifier = xmod;
y_modifier = ymod;
return [distance, x_modifier, y_modifier, dx, dy];
}
function rotation_toFace_movement(trg, xspeed, yspeed) {
speedpovorota = 1;
dx = xspeed;
dy = yspeed;
angle1 = Math.atan2(dy, dx) * 57.29577951308232;
angle2 = trg._rotation;
if (angle2 < 0) {
angle2 += 360;
}
if (angle1 < 0) {
angle1 += 360;
}
aa = angle2 - angle1;
if (aa > 180) {
aa -= 360;
} else {
if (aa < -180) {
aa += 360;
}
}
aa *= speedpovorota;
if (Math.abs(aa) > 0.01) {
trg._rotation -= aa;
} else {
trg._rotation = angle1;
}
}
function rotation_face_point2(trgt1, xx2, yy2, slow787945675345) {
mewmewmewmewmewmew = CALC_Dist_Xv_Yv(xx2, yy2, trgt1._x, trgt1._y);
speedpovorota = 1;
if (slow787945675345 eq 1) {
speedpovorota = 0.7;
slow787945675345 = 0;
}
trg = trgt1;
dx = mewmewmewmewmewmew[3];
dy = mewmewmewmewmewmew[4];
angle1 = Math.atan2(dy, dx) * 57.29577951308232;
angle2 = trg._rotation;
if (angle2 < 0) {
angle2 += 360;
}
if (angle1 < 0) {
angle1 += 360;
}
aa = angle2 - angle1;
if (aa > 180) {
aa -= 360;
} else {
if (aa < -180) {
aa += 360;
}
}
aa *= speedpovorota;
if (Math.abs(aa) > 0.01) {
trg._rotation -= aa;
} else {
trg._rotation = angle1;
}
}
function rotation_face_target(trgt1, trgt2) {
mewmewmewmewmewmew = CALC_Dist_Xv_Yv(trgt2._x, trgt2._y, trgt1._x, trgt1._y);
speedpovorota = 1;
trg = trgt1;
dx = mewmewmewmewmewmew[3];
dy = mewmewmewmewmewmew[4];
angle1 = Math.atan2(dy, dx) * 57.29577951308232;
angle2 = trg._rotation;
if (angle2 < 0) {
angle2 += 360;
}
if (angle1 < 0) {
angle1 += 360;
}
aa = angle2 - angle1;
if (aa > 180) {
aa -= 360;
} else {
if (aa < -180) {
aa += 360;
}
}
aa *= speedpovorota;
if (Math.abs(aa) > 0.01) {
trg._rotation -= aa;
} else {
trg._rotation = angle1;
}
}
function Ottalkivanie(target, explosion_x, explosion_y, type) {
if (type eq 1) {
explosion_mass = 15;
explosion_power = 10;
} else {
if (type eq 2) {
explosion_mass = 10;
explosion_power = 10;
} else {
if (type eq 3) {
explosion_mass = 15;
explosion_power = 10;
} else {
if (type eq 4) {
explosion_mass = 5;
explosion_power = 10;
} else {
if (type eq 4.5) {
explosion_mass = 15;
explosion_power = 12;
} else {
if (type eq 5) {
explosion_mass = 5;
explosion_power = 10;
} else {
if (type eq 6) {
explosion_mass = 6;
explosion_power = -10;
} else {
if (type eq 7) {
explosion_mass = 15;
explosion_power = 15;
} else {
if (type eq 2000) {
explosion_mass = 15;
explosion_power = 10;
} else {
if (type eq 999) {
explosion_mass = 5;
explosion_power = 5;
} else {
if (type eq 100500) {
explosion_mass = 25;
explosion_power = 15;
} else {
explosion_mass = 3;
explosion_power = 3;
}
}
}
}
}
}
}
}
}
}
}
x1 = target._x;
y1 = target._y;
x2 = explosion_x;
y2 = explosion_y;
var v5 = x1 - x2;
var v7 = y1 - y2;
var v22 = Math.sqrt(v5 * v5 + v7 * v7);
var v6 = target.mass;
var v8 = explosion_mass;
var v16 = target.xspeed;
var v18 = target.yspeed;
var v12 = Math.atan2(v7, v5);
var v3 = Math.cos(v12);
var v2 = Math.sin(v12);
var v13 = v16 * v3 + v18 * v2;
var v10 = explosion_power;
var v11 = v18 * v3 - v16 * v2;
var v9 = 0.0001;
var v17 = v6 * v13 + v8 * v10;
var v19 = v13 - v10;
var v14 = (v17 + v6 * v19) / (v6 + v8);
var v15 = v14 - v13 + v10;
v13 = v15;
v10 = v14;
v16 = v13 * v3 - v11 * v2;
var v20 = v10 * v3 - v9 * v2;
v18 = v11 * v3 + v13 * v2;
var v21 = v9 * v3 + v10 * v2;
target.xspeed = v16;
target.yspeed = v18;
}
function animation_onhold1(xx, yy, parent) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('holdPositionAnimation', 'holdPositionAnimation' + iyiff, iyiff);
trgt = _root.yiff.shooting_layer['holdPositionAnimation' + iyiff];
trgt.dofollow = parent;
trgt._x = xx;
trgt._y = yy;
}
function animation_onhold0(xx, yy, parent) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('freeEngageAnimation', 'freeEngageAnimation' + iyiff, iyiff);
_root.yiff.shooting_layer['freeEngageAnimation' + iyiff]._x = xx;
_root.yiff.shooting_layer['freeEngageAnimation' + iyiff]._y = yy;
_root.yiff.shooting_layer['freeEngageAnimation' + iyiff].dofollow = parent;
}
function shldswrd_follow() {
trgtlayer = _root.yiff.shooting_layer;
for (var v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
if (trgtlayer[v2].dofollow) {
trgtlayer[v2]._x = trgtlayer[v2].dofollow._x;
trgtlayer[v2]._y = trgtlayer[v2].dofollow._y;
}
}
}
}
function musicInitiate() {
var v2 = new Sound(music_shell);
v2.attachSound('music_2');
_root.gameMusic = v2;
}
function initiateSounds(mode_) {
var v30 = new Sound(sound_shell);
_root.SFX_volume = v30;
var v40 = new Sound(sound_shell);
v40.attachSound('thunderbolt');
var v18 = new Sound(sound_shell);
v18.attachSound('madnessCastSnd');
var v14 = new Sound(sound_shell);
v14.attachSound('shockwaveSND');
var v31 = new Sound(sound_shell);
v31.attachSound('att_sound_202');
var v33 = new Sound(sound_shell);
v33.attachSound('att_sound_202');
var v29 = new Sound(sound_shell);
v29.attachSound('electrohit');
var v19 = new Sound(sound_shell);
v19.attachSound('curseCastSound');
var v42 = new Sound(sound_shell);
v42.attachSound('sorcBoom1');
var v34 = new Sound(sound_shell);
v34.attachSound('sorcBoom2');
var v36 = new Sound(sound_shell);
v36.attachSound('sorcBoom2');
var v3 = new Sound(sound_shell);
v3.attachSound('portalcast');
var v48 = new Sound(sound_shell);
v48.attachSound('mage_shot');
var v32 = new Sound(sound_shell);
v32.attachSound('mageFIreballDetonate');
var v37 = new Sound(sound_shell);
v37.attachSound('blunt_swing_1');
var v45 = new Sound(sound_shell);
v45.attachSound('blunt_swing_2');
var v43 = new Sound(sound_shell);
v43.attachSound('blunt_swing_3');
var v51 = new Sound(sound_shell);
v51.attachSound('blunt_swing_4');
var v38 = new Sound(sound_shell);
v38.attachSound('att_sound_201_1');
var v35 = new Sound(sound_shell);
v35.attachSound('att_sound_201_2');
var v46 = new Sound(sound_shell);
v46.attachSound('melee_swing_1');
var v44 = new Sound(sound_shell);
v44.attachSound('melee_swing_2');
var v41 = new Sound(sound_shell);
v41.attachSound('melee_swing_3');
var v39 = new Sound(sound_shell);
v39.attachSound('melee_swing_4');
var v55 = new Sound(sound_shell);
v55.attachSound('blade_hit_1');
var v54 = new Sound(sound_shell);
v54.attachSound('blade_hit_2');
var v52 = new Sound(sound_shell);
v52.attachSound('blade_hit_3');
var v49 = new Sound(sound_shell);
v49.attachSound('blade_hit_4');
var v22 = new Sound(sound_shell);
v22.attachSound('dk_hit_1');
var v26 = new Sound(sound_shell);
v26.attachSound('dk_hit_2');
var v15 = new Sound(sound_shell);
v15.attachSound('dk_die_1');
var v2 = new Sound(sound_shell);
v2.attachSound('dk_die_2');
var v28 = new Sound(sound_shell);
v28.attachSound('archVileAttack_1');
var v27 = new Sound(sound_shell);
v27.attachSound('archVileAttack_2');
var v24 = new Sound(sound_shell);
v24.attachSound('archVileAttack_3');
var v23 = new Sound(sound_shell);
v23.attachSound('archVileAttack_4');
var v7 = new Sound(sound_shell);
v7.attachSound('spellshot_1');
var v20 = new Sound(sound_shell);
v20.attachSound('defeatSND');
var v17 = new Sound(sound_shell);
v17.attachSound('summoning');
var v5 = new Sound(sound_shell);
v5.attachSound('healingSnd');
var v8 = new Sound(sound_shell);
v8.attachSound('big_goo_1');
var v6 = new Sound(sound_shell);
v6.attachSound('big_goo_2');
var v4 = new Sound(sound_shell);
v4.attachSound('poison_shot');
var v25 = new Sound(sound_shell);
v25.attachSound('assultSnd_4');
var v50 = new Sound(sound_shell);
v50.attachSound('assultSnd_3');
var v47 = new Sound(sound_shell);
v47.attachSound('assultSnd_3');
var v53 = new Sound(sound_shell);
v53.attachSound('assultSnd_1');
var v21 = new Sound(sound_shell);
v21.attachSound('Explosion_1');
var v13 = new Sound(sound_shell);
v13.attachSound('Explosion_2');
var v16 = new Sound(sound_shell);
v16.attachSound('Explosion_3');
var v11 = new Sound(sound_shell);
v11.attachSound('Explosion_4');
var v12 = new Sound(sound_shell);
v12.attachSound('Explosion_5');
var v9 = new Sound(sound_shell);
v9.attachSound('Explosion_6');
var v10 = new Sound(sound_shell);
v10.attachSound('Explosion_7');
_root.combat_isMuted = 0;
if (mode_ eq 'muteCombat') {
_root.combat_isMuted = 1;
v40 = new Sound(sound_shell);
v42 = new Sound(sound_shell);
v34 = new Sound(sound_shell);
v36 = new Sound(sound_shell);
v48 = new Sound(sound_shell);
v32 = new Sound(sound_shell);
v31 = new Sound(sound_shell);
v33 = new Sound(sound_shell);
v29 = new Sound(sound_shell);
v37 = new Sound(sound_shell);
v45 = new Sound(sound_shell);
v43 = new Sound(sound_shell);
v51 = new Sound(sound_shell);
v38 = new Sound(sound_shell);
v35 = new Sound(sound_shell);
v46 = new Sound(sound_shell);
v44 = new Sound(sound_shell);
v41 = new Sound(sound_shell);
v39 = new Sound(sound_shell);
v55 = new Sound(sound_shell);
v54 = new Sound(sound_shell);
v52 = new Sound(sound_shell);
v49 = new Sound(sound_shell);
v22 = new Sound(sound_shell);
v26 = new Sound(sound_shell);
v28 = new Sound(sound_shell);
v27 = new Sound(sound_shell);
v24 = new Sound(sound_shell);
v23 = new Sound(sound_shell);
v25 = new Sound(sound_shell);
v50 = new Sound(sound_shell);
v47 = new Sound(sound_shell);
v53 = new Sound(sound_shell);
}
_root.thunderboltSnd = v40;
_root.unit_attack_202 = v31;
_root.unit_attack_203 = v33;
_root.electrohit = v29;
_root.curseCastSound = v19;
_root.sorcBoom1 = v42;
_root.sorcBoom2 = v34;
_root.sorcBoom3 = v36;
_root.portalcastSND = v3;
_root.mage_shot = v48;
_root.mageFIreballDetonate = v32;
_root.blunt_swing_1 = v37;
_root.blunt_swing_2 = v45;
_root.blunt_swing_3 = v43;
_root.blunt_swing_4 = v51;
_root.att_sound_201_1 = v38;
_root.att_sound_201_2 = v35;
_root.melee_swing_1 = v46;
_root.melee_swing_2 = v44;
_root.melee_swing_3 = v41;
_root.melee_swing_4 = v39;
_root.blade_hit_1 = v55;
_root.blade_hit_2 = v54;
_root.blade_hit_3 = v52;
_root.blade_hit_4 = v49;
_root.dk_hit_1 = v22;
_root.dk_hit_2 = v26;
_root.dk_die_1 = v15;
_root.dk_die_2 = v2;
_root.archVileAttack_1 = v28;
_root.archVileAttack_2 = v27;
_root.archVileAttack_3 = v24;
_root.archVileAttack_4 = v23;
_root.spellshot_1 = v7;
_root.defeatSND = v20;
_root.summoning = v17;
_root.healingSnd = v5;
_root.big_goo_1 = v8;
_root.big_goo_2 = v6;
_root.poison_shot = v4;
_root.assultSnd_4 = v25;
_root.assultSnd_2 = v50;
_root.assultSnd_3 = v47;
_root.assultSnd_1 = v53;
_root.Explosion_1 = v21;
_root.Explosion_2 = v13;
_root.Explosion_3 = v16;
_root.Explosion_4 = v11;
_root.Explosion_5 = v12;
_root.Explosion_6 = v9;
_root.Explosion_7 = v10;
_root.madnessCastSnd = v18;
_root.shockwaveSND = v14;
}
function sorcBoomSND() {
_root['sorcBoom' + (1 + random(3))].start();
}
function bluntswingSND() {
_root['blunt_swing_' + (1 + random(4))].start();
}
function assultSND() {
_root['assultSnd_' + (1 + random(4))].start();
}
function EXPLsmallPlay() {
_root['Explosion_' + (random(4) + 1)].start();
}
function explosionSND() {
a = random(7) + 1;
if (a eq 3 or a eq 5 or a eq 7) {
a = 1;
}
_root['Explosion_' + a].start();
}
function snd_PoisonExplosion() {
_root['big_goo_' + (1 + random(2))].start();
}
function unit_attack_sound(id) {
if (id eq 101 or id eq 106) {
a = 1 + random(2);
_root['att_sound_201_' + a].start();
} else {
if (id eq 102) {
a = 1 + random(4);
_root['archVileAttack_' + a].start();
} else {
if (id eq 103 or id eq 107) {
a = 1 + random(2);
_root['dk_hit_' + a].start();
} else {
if (id eq 201) {
SNDmeleeSwing();
} else {
if (id eq 206 or id eq 207 or id eq 211) {
bluntswingSND();
}
}
}
}
}
_root['unit_attack_' + id].start();
}
function unit_HIT_sound(id) {
if (id eq 201 or id eq 206) {
SNDbladeHit();
}
}
function dk_die_sndplay() {
if (random(2) eq 1) {
dk_die_2.start();
} else {
dk_die_1.start();
}
}
function SNDmeleeSwing() {
a = 1 + random(4);
_root['melee_swing_' + a].start();
}
function SNDbladeHit() {
a = 1 + random(4);
_root['blade_hit_' + a].start();
}
function tremor() {
if (!max_magnitude) {
max_magnitude = 20;
}
if (tremorTimer > 0) {
--tremorTimer;
--max_magnitude;
if (max_magnitude < 3) {
max_magnitude = 3;
}
} else {
if (_root.yiff._x != 0 or _root.yiff._y != 0) {
_root.yiff._x = 0;
_root.yiff._y = 0;
}
max_magnitude = 30;
tremorTimer = 0;
return undefined;
}
if (_root.yiff._x != 0 or _root.yiff._y != 0) {
_root.yiff._x = 0;
_root.yiff._y = 0;
} else {
_root.yiff._x += -max_magnitude + random(max_magnitude * 2);
_root.yiff._y += -max_magnitude + random(max_magnitude * 2);
}
}
function tremor2() {
max_magnitude = boss2summoningtremor;
if (_root.yiff._x != 0 or _root.yiff._y != 0) {
_root.yiff._x = 0;
_root.yiff._y = 0;
} else {
_root.yiff._x += -max_magnitude + random(max_magnitude * 2);
_root.yiff._y += -max_magnitude + random(max_magnitude * 2);
}
}
function INIT_yiffing() {
_root.attachMovie('upper_menu', 'upper_menu', _root.uppermenu_depth);
_root.upper_menu._x = 141;
_root.upper_menu._y = 19;
trace('/////');
_root.attachMovie('bottom_menu', 'bottom_menu', _root.bottommenu_depth);
_root.bottom_menu._x = 25;
_root.bottom_menu._y = 535;
this.createEmptyMovieClip('yiff', _root.yiff_depth);
yiff._x = 0;
yiff._y = 0;
yiff.createEmptyMovieClip('dead_layer', _root.dead_depth);
yiff.createEmptyMovieClip('tactical_layer', _root.dead_depth + 1);
yiff.createEmptyMovieClip('shooting_layer', _root.shooting_layer_depth);
yiff.createEmptyMovieClip('projectile_layer', _root.shooting_layer_depth + 1);
yiff.createEmptyMovieClip('tactical_layer2', _root.shooting_layer_depth + 2);
yiff.createEmptyMovieClip('hpshow_layer', _root.hpshow_layer_depth);
_root.yiff.attachMovie('blackness', 'blackness', _root.blackness_depth);
_root.yiff.attachMovie('background', 'background_', _root.background_depth);
_root.yiff.background_.cacheAsBitmap = true;
_root.yiff.attachMovie('necropolis', 'necropolis', _root.necropolis_depth);
trgt = _root.yiff.necropolis;
trgt._x = 773;
trgt._y = 309;
_root.yiff.attachMovie('leaf_top', 'leaf_top', _root.leaftop_depth);
trgt = _root.yiff.leaf_top;
trgt.cacheAsBitmap = true;
trgt._x = 0;
trgt._y = 0;
}
function spawnUnitSlots() {
i = 0;
while (i < 10) {
if (i eq 0) {
zi = 10;
} else {
if (i eq 1) {
zi = 8;
} else {
if (i eq 2) {
zi = 6;
} else {
if (i eq 3) {
zi = 4;
} else {
if (i eq 4) {
zi = 1;
} else {
if (i eq 5) {
zi = 2;
} else {
if (i eq 6) {
zi = 3;
} else {
if (i eq 7) {
zi = 5;
} else {
if (i eq 8) {
zi = 7;
} else {
if (i eq 9) {
zi = 9;
}
}
}
}
}
}
}
}
}
}
_root.yiff.attachMovie('unit_slot', 'unit_slot_' + zi, _root.unit_slots_depth + i);
trgt = _root.yiff['unit_slot_' + zi];
trgt._x = 550;
trgt._y = 75 + 50 * i;
trgt.default_x = trgt._x;
trgt.default_y = trgt._y;
trgt.occupation = 'none';
++i;
}
i = 0;
while (i < 10) {
if (i eq 0) {
zi = 10;
} else {
if (i eq 1) {
zi = 8;
} else {
if (i eq 2) {
zi = 6;
} else {
if (i eq 3) {
zi = 4;
} else {
if (i eq 4) {
zi = 2;
} else {
if (i eq 5) {
zi = 1;
} else {
if (i eq 6) {
zi = 3;
} else {
if (i eq 7) {
zi = 5;
} else {
if (i eq 8) {
zi = 7;
} else {
if (i eq 9) {
zi = 9;
}
}
}
}
}
}
}
}
}
}
_root.yiff.attachMovie('unit_slot', 'unit_slot2_' + zi, _root.unit_slots_depth + i + 20);
trgt = _root.yiff['unit_slot2_' + zi];
trgt._x = 620;
trgt._y = 75 + 50 * i;
trgt.default_x = trgt._x;
trgt.default_y = trgt._y;
trgt.occupation = 'none';
++i;
}
}
function UnitSpawnVisuals(xx, yy) {
_root.summoning.start();
iyiff1 = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('warping_unit', 'warping_unit' + iyiff1, iyiff1);
iyiff2 = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('rezinka_blue', 'rezinka' + iyiff2, iyiff2);
_root.yiff.necropolis.ball.gotoAndPlay(41);
i = 0;
while (i < 10) {
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('particle_3', 'particle_3_' + iyiff, iyiff);
trgt4 = _root.yiff.projectile_layer['particle_3_' + iyiff];
trgt4._x = xx;
trgt4._y = yy;
trgt4._rotation = random(360);
++i;
}
trgt_x = xx;
trgt_y = yy;
trgt2_x = _root.yiff.necropolis._x + 5;
trgt2_y = _root.yiff.necropolis._y - 133;
trgt3 = _root.yiff.projectile_layer['rezinka' + iyiff2];
trgt3._x = trgt2_x;
trgt3._y = trgt2_y;
_root.yiff.projectile_layer['warping_unit' + iyiff1]._x = trgt_x;
_root.yiff.projectile_layer['warping_unit' + iyiff1]._y = trgt_y;
calc12312 = CALC_Dist_Xv_Yv(trgt_x, trgt_y, trgt2_x, trgt2_y);
distance = calc12312[0];
dx = calc12312[3];
dy = calc12312[4];
angle = Math.atan(dy / dx);
if (trgt2._x < trgt._x) {
angle -= Math.PI;
}
angle *= 57.29577951308232;
angle -= 180;
trgt3._rotation = 0;
trgt3._width = distance;
trgt3._rotation = angle;
}
function UnitSpawnVisuals_cut(xx, yy) {
iyiff1 = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('warping_unit', 'warping_unit' + iyiff1, iyiff1);
_root.yiff.necropolis.ball.gotoAndPlay(41);
i = 0;
while (i < 10) {
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('particle_3', 'particle_3_' + iyiff, iyiff);
trgt4 = _root.yiff.projectile_layer['particle_3_' + iyiff];
trgt4._x = xx;
trgt4._y = yy;
trgt4._rotation = random(360);
++i;
}
_root.yiff.projectile_layer['warping_unit' + iyiff1]._x = xx;
_root.yiff.projectile_layer['warping_unit' + iyiff1]._y = yy;
}
function Spawn_units(id, xx, yy) {
_root.bottom_menu.clickyclicky._visible = false;
if (_root.block_everything_victory eq 1 or _root.helpMenu or _root.mainMenu) {
return undefined;
}
if (id < 200 and id != 106) {
if (_root.spawnedUnits < _root.spawnLimit) {
} else {
return undefined;
}
if (_root['unit_price_' + id] > _root.cash) {
return undefined;
}
}
free_slot = 'none';
if (id eq 102 or id eq 104) {
i = 0;
while (i < _root.unit_slots_max_count + 1) {
trgtSlot = _root.yiff['unit_slot2_' + i];
if (trgtSlot.occupation eq 'none') {
free_slot = trgtSlot;
break;
}
++i;
}
} else {
i = 0;
while (i < _root.unit_slots_max_count + 1) {
trgtSlot = _root.yiff['unit_slot_' + i];
if (trgtSlot.occupation eq 'none') {
free_slot = trgtSlot;
break;
}
++i;
}
}
if (free_slot eq 'none' and id < 200) {
return undefined;
}
vacant_depth = 'none';
i = 0;
while (i < _root.units_max_count + 1) {
if (_root.yiff['unit_' + i]) {
} else {
trace('yay ' + i);
vacant_depth = i;
break;
}
++i;
}
if (vacant_depth eq 'none') {
return undefined;
}
if (id < 200) {
_root.cash -= _root['unit_price_' + id];
}
_root.yiff.attachMovie('unit_' + id, 'unit_' + vacant_depth, vacant_depth + _root.units_depth);
trgt = _root.yiff['unit_' + vacant_depth];
if (id < 200) {
free_slot.occupation = trgt;
trgt.slot = free_slot;
}
trgt.nameID = vacant_depth;
trgt.id = id;
if (id > 199) {
} else {
xx = trgt.slot._x - 15 + random(30);
yy = trgt.slot._y - 15 + random(30);
}
if (id < 200) {
UnitSpawnVisuals(xx, yy);
}
trgt._x = xx;
trgt._y = yy;
trgt._rotation = random(360);
trgt.xspeed = 0;
trgt.yspeed = 0;
trgt.xpos = xx;
trgt.ypos = yy;
trgt.tempx = xpos;
trgt.tempy = ypos;
trgt.mass = 10;
trgt.radius = 10;
trgt.poison = 0;
trgt.targeted_enemy = 'none';
trgt.holdPositionMode = 0;
trgt.TIMER_attackDelay = 0;
trgt.TIMER_healingSpell = 0;
trgt.TIMER_curseSpell = 0;
if (id < 200) {
trgt.TIMER_stunDelay = 20;
} else {
trgt.TIMER_stunDelay = 0;
}
trgt.forced_destination_x = 'none';
trgt.forced_destination_y = 'none';
trgt.lifetimer = 0;
trgt.attackDelay_base = _root['unit_attackDelay_' + id];
trgt.speed_base = _root['unit_speed_' + id];
trgt.ATTrad_base = _root['unit_ATTrad_' + id];
trgt.VISrad_default = _root['unit_VISrad_' + id];
trgt.VISrad_base = _root['unit_VISrad_' + id];
trgt.SIEGErad_base = _root['unit_SIEGErad_' + id];
trgt.hp = _root['unit_hp_' + id];
trgt.siegeDMG = _root['unit_siegeDMG_' + id];
trgt.cash = _root['unit_cash_' + id];
trgt.exp_ = _root['unit_exp_' + id];
trgt.stun_time = _root['unit_stun_time_' + id];
trgt.proj_speed = _root['unit_proj_speed_' + id];
trgt.dmg = 0;
trgt.targetedByUnitsCount = 0;
trgt.dmg_min_base = _root['unit_dmg_min_' + id];
trgt.dmg_max_base = _root['unit_dmg_max_' + id];
trgt.interaptionResistance_base = _root['unit_interaptionResistance_' + id];
trgt.stunResistance_base = _root['unit_stunResistance_' + id];
if (id < 200) {
trgt.team = 1;
} else {
trgt.team = 2;
}
trgt.critical_chance = _root['unit_critical_chance_' + en_id];
trgt.critical_mod = _root['unit_critical_mod_' + en_id];
if (trgt.id eq 106 or trgt.id eq 206 or trgt.id eq 207 or trgt.id eq 107 or trgt.id eq 210 or trgt.id eq 211) {
trgt.mass = 20;
trgt.radius = 20;
}
}
function explosionAnimation_small(xx, yy, formMod) {
animID = 1 + random(4);
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('explosion_small_' + animID, 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
if (formMod) {
expl._height *= formMod;
expl._width *= formMod;
}
expl._x = xx;
expl._y = yy;
expl._rotation = random(360);
}
function explosionAnimation_big(xx, yy) {
animID = 1 + random(4);
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('explosion_big_' + animID, 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
expl._x = xx;
expl._y = yy;
expl._rotation = random(360);
}
function explosionAnimation_poison(xx, yy) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('explosion_poison', 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
expl._x = xx;
expl._y = yy;
expl._rotation = random(360);
}
function showHPintegrity() {
unitCountZZ = ARR_allUnits.length;
trgtlayer = yiff.hpshow_layer;
j = 0;
while (j < unitCountZZ) {
trgt0 = ARR_allUnits[j];
trgt = trgtlayer['hpInd_' + trgt0.nameID];
trgt.stop();
if (trgt) {
trgt._x = trgt0._x;
trgt._y = trgt0._y - 11;
trgt._visible = true;
damagePercent = Math.floor(100 * (trgt0.hp - trgt0.dmg) / trgt0.hp);
if (damagePercen > 99) {
damagePercen = 100;
} else {
if (damagePercen < 1) {
damagePercen = 1;
}
}
if (trgt._currentframe != damagePercen) {
trgt.gotoAndStop(100 - damagePercent);
}
trgt.cacheAsBitmap = true;
if (100 - damagePercent > 4) {
trgt._visible = true;
} else {
trgt._visible = false;
}
} else {
trgtlayer.attachMovie('hpIndicator', 'hpInd_' + trgt0.nameID, trgt0.nameID);
trgtlayer['hpInd_' + trgt0.nameID]._visible = false;
trgtlayer['hpInd_' + trgt0.nameID]._width *= 0.85;
trgt0.link_to_hpIndicator = trgtlayer['hpInd_' + trgt0.nameID];
}
++j;
}
}
function castleLifeIntegrity() {
_root.catleRegenRate = 0.2;
if (_root.castleDmg > 0) {
_root.castleDmg -= _root.catleRegenRate;
} else {
_root.castleDmg = 0;
}
structurePercent = Math.floor(100 * (_root.castleHitPoints - _root.castleDmg) / _root.castleHitPoints);
if (_root.castleDmg > _root.castleHitPoints) {
structurePercent = 1;
}
}
function castleBoom(xx, yy) {
_root.tremorTimer = 15;
EXPL_x = _root.yiff.necropolis._x + xx;
EXPL_y = _root.yiff.necropolis._y + yy;
i = 0;
while (i < 10) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = EXPL_x - 25 + random(50);
ttrrggtt._y = EXPL_y - 25 + random(50);
++i;
}
sorcBoomSND();
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('mage2explosion', 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
expl._x = EXPL_x;
expl._y = EXPL_y;
}
function castleDeath() {
boss2summoningtremor = 50;
EXPL_x = _root.yiff.necropolis._x + 3;
8;
EXPL_y = _root.yiff.necropolis._y - 134;
4;
i = 0;
while (i < 40) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = EXPL_x - 100 + random(200);
ttrrggtt._y = EXPL_y - 100 + random(200);
++i;
}
sorcBoomSND();
_root.Explosion_7.start();
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('mage2explosion', 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
expl._width = 200;
expl._height = 200;
expl._x = EXPL_x;
expl._y = EXPL_y;
}
function activateSpell(id) {
if (_root.spell_mode eq 0) {
_root.spell_mode = id;
} else {
if (_root.spell_mode eq id) {
_root.spell_mode = 0;
removeMovieClip(_root.yiff.spellCircle);
} else {
removeMovieClip(_root.yiff.spellCircle);
_root.spell_mode = id;
}
}
}
function gravityNuke(xx, yy) {
_root.spell_delay_timer_6 = _root.spell_delay_6;
removeMovieClip(_root.yiff.shooting_layer.gravity_nuke);
_root.spell_mode = 0;
_root.yiff.necropolis.ball.gotoAndPlay(59);
_root.yiff.attachMovie('gravity_nuke', 'gravity_nuke', _root.gravnuke_depth);
expl = _root.yiff.gravity_nuke;
expl._x = xx;
expl._y = yy;
}
function gravityNuke_integrity() {
gravnuke = _root.yiff.gravity_nuke;
if (!gravnuke) {
return undefined;
}
if (gravnuke.suction eq 0 and gravnuke.blast eq 0) {
return undefined;
}
unitCount = ARR_allUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_allUnits[i];
if (gravnuke.suction eq 1) {
distdata = CALC_Dist_Xv_Yv(gravnuke._x, gravnuke._y, trgt._x, trgt._y);
distance = distdata[0];
if (distance < 150) {
Ottalkivanie(trgt, gravnuke._x, gravnuke._y, 6);
trgt._rotation += 5;
}
}
if (gravnuke.blast eq 1) {
gravnuke.blastOff = 1;
distdata = CALC_Dist_Xv_Yv(gravnuke._x, gravnuke._y, trgt._x, trgt._y);
distance = distdata[0];
if (distance < 130) {
if (random(100) < trgt.stunResistance) {
trgt.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt.TIMER_stunDelay += 80;
}
Ottalkivanie(trgt, gravnuke._x, gravnuke._y, 7);
damage__ = _root.gravityBlast_min_dmg + random(_root.gravityBlast_max_dmg - _root.gravityBlast_min_dmg);
trgt.dmg += damage__;
trgt.TIMER_attackDelay = 0;
trgt.gotoAndStop(1);
trgt._rotation = random(360);
otletaniedamaga(trgt3._x, trgt3._y, damage__, 'dmg');
}
}
++i;
}
if (gravnuke.blastOff eq 1) {
gravnuke.blast = 0;
}
}
function shockwave(xx, yy) {
_root.spell_delay_timer_3 = _root.spell_delay_3;
_root.spell_mode = 0;
_root.yiff.necropolis.ball.gotoAndPlay(59);
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('shockwave', 'shockwave' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['shockwave' + iyiff];
expl._x = xx;
expl._y = yy;
_root.shockwaveSND.start();
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('shockwaveAnim', 'shockwaveAnim' + iyiff, iyiff);
_root.yiff.shooting_layer['shockwaveAnim' + iyiff]._x = xx;
_root.yiff.shooting_layer['shockwaveAnim' + iyiff]._y = yy;
unitCount = ARR_allUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_allUnits[i];
distdata = CALC_Dist_Xv_Yv(xx, yy, trgt._x, trgt._y);
distance = distdata[0];
if (distance < _root.shockwaveRadius) {
Ottalkivanie(trgt, xx, yy, 1);
if (random(100) < trgt.stunResistance) {
trgt.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt.TIMER_stunDelay += _root.shockwaveStunTime;
}
}
++i;
}
}
function curse(xx, yy) {
_root.spell_delay_timer_8 = _root.spell_delay_8;
_root.spell_mode = 0;
_root.yiff.necropolis.ball.gotoAndPlay(97);
iyiff = _root.yiff.dead_layer.getNextHighestDepth();
_root.yiff.dead_layer.attachMovie('castCurse', 'castCurse' + iyiff, iyiff);
_root.yiff.dead_layer['castCurse' + iyiff]._x = xx;
_root.yiff.dead_layer['castCurse' + iyiff]._y = yy;
curseCastSound.start();
unitCount = ARR_lightUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_lightUnits[i].linktounit;
distdata = CALC_Dist_Xv_Yv(xx, yy, trgt._x, trgt._y);
distance = distdata[0];
if (distance < _root.curseSpellRadius) {
trgt.TIMER_curseSpell = _root.curseSpellTime;
}
++i;
}
}
function healing(xx, yy) {
_root.spell_delay_timer_5 = _root.spell_delay_5;
_root.spell_mode = 0;
healingSnd.start();
_root.yiff.necropolis.ball.gotoAndPlay(78);
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('spellHealingAnimation', 'spellHealingAnimation' + iyiff, iyiff);
_root.yiff.shooting_layer['spellHealingAnimation' + iyiff]._x = xx;
_root.yiff.shooting_layer['spellHealingAnimation' + iyiff]._y = yy;
unitCount = ARR_necroUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_necroUnits[i].linktounit;
distdata = CALC_Dist_Xv_Yv(xx, yy, trgt._x, trgt._y);
distance = distdata[0];
if (distance < _root.madnessSpellRadius) {
trgt.TIMER_healingSpell = _root.healingDuration;
}
++i;
}
}
function SHoot_poisonBlast(xx, yy) {
_root.spell_delay_timer_2 = _root.spell_delay_2;
poison_shot.start();
_root.spell_mode = 0;
_root.yiff.necropolis.ball.gotoAndPlay(2);
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('projectile_1', 'projectile_' + iyiff, iyiff);
strela = _root.yiff.projectile_layer['projectile_' + iyiff];
strela.whatisit = 'projectile';
strela._x = _root.yiff.necropolis._x + 20;
strela._y = _root.yiff.necropolis._y - 145;
strela.id = 1;
strela.damage = _root.poisonBlast_dmgMin + random(_root.poisonBlast_dmgMax - _root.poisonBlast_dmgMin);
strela.stun_time = _root.poisonBlast_stunTime;
strela.poison = _root.poisonBlast_POISON;
strela.radius = 40;
strela.speed = 15;
strela.target_x = xx;
strela.target_y = yy;
distdata = CALC_Dist_Xv_Yv(strela.target_x, strela.target_y, strela._x, strela._y);
xmodifier123 = distdata[1];
ymodifier123 = distdata[2];
strela.xspeed = strela.speed * xmodifier123;
strela.yspeed = strela.speed * ymodifier123;
strela.xpos = strela._x;
strela.ypos = strela._y;
strela.tempx = xpos;
strela.tempy = ypos;
rotation_face_point2(strela, xx, yy);
}
function SHoot_fireball(xx, yy) {
_root.spell_mode = 0;
_root.spell_delay_timer_1 = _root.spell_delay_1;
spellshot_1.start();
_root.yiff.necropolis.ball.gotoAndPlay(22);
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('projectile_2', 'projectile_' + iyiff, iyiff);
strela = _root.yiff.projectile_layer['projectile_' + iyiff];
strela.whatisit = 'projectile';
strela._x = _root.yiff.necropolis._x + 20;
strela._y = _root.yiff.necropolis._y - 145;
strela.id = 2;
strela.damage = _root.fireball_dmgMin + random(_root.fireball_dmgMax - _root.fireball_dmgMin);
strela.stun_time = _root.fireball_stunTime;
strela.radius = 90;
strela.speed = 15;
strela.target_x = xx;
strela.target_y = yy;
distdata = CALC_Dist_Xv_Yv(strela.target_x, strela.target_y, strela._x, strela._y);
xmodifier123 = distdata[1];
ymodifier123 = distdata[2];
strela.xspeed = strela.speed * xmodifier123;
strela.yspeed = strela.speed * ymodifier123;
strela.xpos = strela._x;
strela.ypos = strela._y;
strela.tempx = xpos;
strela.tempy = ypos;
rotation_face_point2(strela, xx, yy);
}
function SHoot_deathRay(xx, yy) {
_root.spell_mode = 0;
_root.spell_delay_timer_7 = _root.spell_delay_7;
spellshot_1.start();
_root.yiff.necropolis.ball.gotoAndPlay(22);
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('deathRayProjectile', 'projectile_' + iyiff, iyiff);
strela = _root.yiff.projectile_layer['projectile_' + iyiff];
strela.whatisit = 'projectile';
strela._x = _root.yiff.necropolis._x + 20;
strela._y = _root.yiff.necropolis._y - 145;
strela.id = 2000;
strela.speed = 15;
strela.target_x = xx;
strela.target_y = yy;
distdata = CALC_Dist_Xv_Yv(strela.target_x, strela.target_y, strela._x, strela._y);
xmodifier123 = distdata[1];
ymodifier123 = distdata[2];
strela.xspeed = strela.speed * xmodifier123;
strela.yspeed = strela.speed * ymodifier123;
strela.xpos = strela._x;
strela.ypos = strela._y;
strela.tempx = xpos;
strela.tempy = ypos;
rotation_face_point2(strela, xx, yy);
}
function weaponKursorIntegrity() {
if (_root.spell_mode > 0 and !_root.yiff.spellCircle) {
_root.yiff.attachMovie('spellCircle_' + _root.spell_mode, 'spellCircle', _root.spellCircles_depth);
} else {
if (_root.spell_mode > 0) {
_root.yiff.spellCircle._x = _root._xmouse;
_root.yiff.spellCircle._y = _root._ymouse;
} else {
if (_root.spell_mode eq 0) {
if (_root.yiff.spellCircle) {
removeMovieClip(_root.yiff.spellCircle);
}
}
}
}
}
function spellMadness(xx, yy) {
_root.spell_delay_timer_4 = _root.spell_delay_4;
_root.spell_mode = 0;
_root.yiff.necropolis.ball.gotoAndPlay(59);
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('castMadness_top', 'castMadness_top' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['castMadness_top' + iyiff];
expl._x = xx;
expl._y = yy;
iyiff = _root.yiff.dead_layer.getNextHighestDepth();
_root.yiff.dead_layer.attachMovie('castMadness_bottom', 'castMadness_bottom' + iyiff, iyiff);
expl = _root.yiff.dead_layer['castMadness_bottom' + iyiff];
expl._x = xx;
expl._y = yy;
_root.madnessCastSnd.start();
unitCount = ARR_lightUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_lightUnits[i].linktounit;
distdata = CALC_Dist_Xv_Yv(xx, yy, trgt._x, trgt._y);
distance = distdata[0];
if (distance < _root.madnessSpellRadius) {
trgt.looseYourTarget = 1;
trgt.madness_timer = _root.madness_duration;
}
++i;
}
}
function scenario_wave_1() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_1) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 30) {
_root.bottom_menu.hotkeyhint1.play();
}
if (_root.wave_timer_1 / 30 eq 61) {
Spawn_units(201, -57, 127);
Spawn_units(201, -37, 220);
Spawn_units(201, -37, 260);
Spawn_units(201, -37, 308);
Spawn_units(201, -57, 408);
Spawn_units(201, -70, 240);
Spawn_units(201, -70, 287);
}
if (_root.ARR_lightUnits.length > 7) {
return undefined;
}
if (random(90) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
}
function scenario_wave_2() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_2) {
return undefined;
}
if (_root.ARR_lightUnits.length > 15) {
return undefined;
}
if (_root.wave_timer_1 eq 1) {
Spawn_units(201, -60, 105);
Spawn_units(201, -103, 190);
Spawn_units(201, -57, 220);
Spawn_units(201, -14, 260);
Spawn_units(201, -92, 260);
Spawn_units(201, -54, 305);
Spawn_units(201, -98, 340);
Spawn_units(201, -45, 436);
}
if (_root.wave_timer_1 / 30 > 15) {
if (random(70) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 eq 65) {
Spawn_units(201, -60, 105);
Spawn_units(201, -103, 190);
Spawn_units(201, -57, 220);
Spawn_units(201, -14, 260);
Spawn_units(201, -92, 260);
Spawn_units(201, -54, 305);
Spawn_units(201, -98, 340);
Spawn_units(201, -45, 436);
}
}
function scenario_wave_3() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_3) {
return undefined;
}
if (_root.ARR_lightUnits.length > 15) {
return undefined;
}
if (_root.wave_timer_1 eq 1) {
Spawn_units(201, -70, 71);
Spawn_units(201, -25, 127);
Spawn_units(201, -17, 220);
Spawn_units(201, -17, 260);
Spawn_units(201, -17, 299);
Spawn_units(202, -70, 220);
Spawn_units(202, -70, 260);
Spawn_units(202, -70, 299);
Spawn_units(201, -15, 393);
Spawn_units(201, -53, 439);
}
if (_root.wave_timer_1 / 30 > 15) {
if (random(70) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
if (random(4) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
}
}
if (_root.wave_timer_1 / 30 eq 65) {
Spawn_units(202, -60, 105);
Spawn_units(201, -103, 190);
Spawn_units(201, -57, 220);
Spawn_units(201, -14, 260);
Spawn_units(201, -92, 260);
Spawn_units(201, -54, 305);
Spawn_units(201, -98, 340);
Spawn_units(202, -45, 436);
}
}
function scenario_wave_4() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_4) {
return undefined;
}
if (_root.ARR_lightUnits.length > 11) {
return undefined;
}
if (random(70) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
if (random(4) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
}
}
function scenario_wave_5() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_5) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 60) {
Spawn_units(201, -17, 194);
Spawn_units(201, -17, 230);
Spawn_units(201, -17, 309);
Spawn_units(201, -17, 268);
Spawn_units(201, -17, 350);
Spawn_units(206, -55, 270);
Spawn_units(202, -90, 203);
Spawn_units(202, -90, 235);
Spawn_units(202, -90, 267);
Spawn_units(202, -90, 300);
Spawn_units(202, -90, 330);
}
if (_root.ARR_lightUnits.length > 12) {
return undefined;
}
if (random(70) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
if (random(4) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
}
}
function scenario_wave_6() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_6) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
Spawn_units(201, -30 + random(5), 50 + random(500));
Spawn_units(201, -30 + random(5), 50 + random(500));
Spawn_units(201, -30 + random(5), 50 + random(500));
Spawn_units(201, -30 + random(5), 50 + random(500));
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (_root.wave_timer_1 / 30 eq 105) {
Spawn_units(206, -30 + random(5), 150 + random(300));
Spawn_units(206, -30 + random(5), 150 + random(300));
Spawn_units(206, -30 + random(5), 150 + random(300));
Spawn_units(206, -30 + random(5), 150 + random(300));
}
if (_root.wave_timer_1 / 30 eq 20) {
Spawn_units(202, -30 + random(5), 50 + random(500));
Spawn_units(202, -30 + random(5), 50 + random(500));
Spawn_units(202, -30 + random(5), 50 + random(500));
Spawn_units(202, -30 + random(5), 50 + random(500));
Spawn_units(202, -30 + random(5), 50 + random(500));
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (_root.ARR_lightUnits.length > 10) {
return undefined;
}
if (random(70) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
} else {
if (random(5) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
}
}
}
function scenario_wave_7() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_7) {
return undefined;
}
if (_root.ARR_lightUnits.length > 15) {
return undefined;
}
if (random(70) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
} else {
if (random(5) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
}
}
}
function scenario_wave_8() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_8) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 30 or _root.wave_timer_1 / 30 eq 70) {
Spawn_units(206, -57, 127);
Spawn_units(206, -37, 220);
Spawn_units(206, -37, 260);
Spawn_units(206, -37, 308);
Spawn_units(206, -57, 408);
Spawn_units(206, -70, 240);
Spawn_units(206, -70, 287);
}
if (_root.ARR_lightUnits.length > 15) {
return undefined;
}
if (random(70) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
if (random(3) eq 1) {
} else {
if (random(8) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
}
}
}
function scenario_wave_9() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_9) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 55) {
Spawn_units(207, -65, 273);
Spawn_units(206, -64, 172);
Spawn_units(206, -24, 172);
Spawn_units(206, -45, 204);
Spawn_units(206, -45, 330);
Spawn_units(206, -70, 366);
Spawn_units(206, -29, 367);
Spawn_units(202, -97, 240);
Spawn_units(202, -97, 304);
Spawn_units(202, -117, 208);
Spawn_units(202, -117, 272);
Spawn_units(202, -117, 336);
}
if (_root.ARR_lightUnits.length > 9) {
return undefined;
}
if (random(70) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
} else {
if (random(4) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
} else {
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
}
}
}
}
function scenario_wave_10() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_10) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 30) {
Spawn_units(205, -65, 273);
Spawn_units(206, -64, 172);
Spawn_units(206, -24, 172);
Spawn_units(206, -45, 204);
Spawn_units(206, -45, 330);
Spawn_units(206, -70, 366);
Spawn_units(206, -29, 367);
Spawn_units(202, -97, 240);
Spawn_units(202, -97, 304);
Spawn_units(202, -117, 208);
Spawn_units(202, -117, 272);
Spawn_units(202, -117, 336);
}
if (_root.wave_timer_1 / 30 eq 60) {
Spawn_units(206, -57, 127);
Spawn_units(206, -37, 220);
Spawn_units(206, -37, 260);
Spawn_units(206, -37, 308);
Spawn_units(206, -57, 408);
Spawn_units(206, -70, 240);
Spawn_units(206, -70, 287);
}
if (_root.wave_timer_1 / 30 eq 90) {
Spawn_units(203, -60, 105);
Spawn_units(206, -103, 190);
Spawn_units(206, -57, 220);
Spawn_units(206, -14, 260);
Spawn_units(206, -92, 260);
Spawn_units(206, -54, 305);
Spawn_units(206, -98, 340);
Spawn_units(203, -45, 436);
}
if (_root.wave_timer_1 / 30 eq 120 or _root.wave_timer_1 / 30 eq 160 or _root.wave_timer_1 / 30 eq 190) {
Spawn_units(203, -25, 150);
Spawn_units(203, -25, 193);
Spawn_units(203, -25, 240);
Spawn_units(203, -25, 280);
Spawn_units(203, -25, 330);
Spawn_units(203, -25, 379);
}
if (_root.ARR_lightUnits.length > 15) {
return undefined;
}
if (random(70) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
} else {
if (random(2) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
}
}
}
function scenario_wave_11() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_11) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 50) {
Spawn_units(206, -26, 122);
Spawn_units(206, -26, 164);
Spawn_units(206, -26, 346);
Spawn_units(206, -26, 388);
Spawn_units(205, -60, 146);
Spawn_units(205, -60, 366);
Spawn_units(203, -79, 216);
Spawn_units(203, -67, 251);
Spawn_units(203, -79, 288);
}
if (_root.ARR_lightUnits.length > 14) {
return undefined;
}
if (random(80) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
} else {
if (random(4) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
} else {
if (random(3) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
}
}
}
}
function scenario_wave_12() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_12) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 1) {
Spawn_units(205, -26, 122);
Spawn_units(205, -26, 164);
Spawn_units(205, -26, 346);
Spawn_units(205, -26, 388);
Spawn_units(202, -60, 146);
Spawn_units(202, -60, 366);
Spawn_units(202, -79, 216);
Spawn_units(202, -67, 251);
Spawn_units(202, -79, 288);
}
if (_root.wave_timer_1 / 30 eq 100) {
Spawn_units(206, -26, 122);
Spawn_units(206, -26, 164);
Spawn_units(206, -26, 346);
Spawn_units(206, -26, 388);
Spawn_units(206, -60, 146);
Spawn_units(206, -60, 366);
Spawn_units(205, -79, 216);
Spawn_units(203, -67, 251);
Spawn_units(205, -79, 288);
}
if (_root.ARR_lightUnits.length > 9) {
return undefined;
}
if (random(80) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
} else {
if (random(4) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
} else {
if (random(3) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
} else {
if (random(3) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
}
}
}
}
}
function scenario_wave_13() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_13) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 50) {
Spawn_units(205, -26, 122);
Spawn_units(205, -26, 164);
Spawn_units(205, -26, 346);
Spawn_units(205, -26, 388);
Spawn_units(202, -60, 146);
Spawn_units(202, -60, 366);
Spawn_units(202, -79, 216);
Spawn_units(202, -67, 251);
Spawn_units(202, -79, 288);
}
if (_root.wave_timer_1 / 30 eq 1) {
Spawn_units(203, -26, 122);
Spawn_units(203, -26, 164);
Spawn_units(203, -26, 346);
Spawn_units(203, -26, 388);
Spawn_units(203, -60, 146);
Spawn_units(203, -60, 366);
Spawn_units(205, -79, 216);
Spawn_units(205, -67, 251);
Spawn_units(205, -79, 288);
}
if (_root.ARR_lightUnits.length > 11) {
return undefined;
}
if (random(80) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
if (random(3) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
} else {
if (random(4) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
} else {
if (random(3) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
} else {
if (random(3) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
}
}
}
}
}
function scenario_wave_14() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_14) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 100) {
Spawn_units(206, -25, 122);
Spawn_units(206, -25, 164);
Spawn_units(203, -25, 234);
Spawn_units(203, -25, 282);
Spawn_units(206, -25, 346);
Spawn_units(206, -25, 388);
Spawn_units(206, -63, 94);
Spawn_units(205, -63, 146);
Spawn_units(205, -63, 196);
Spawn_units(205, -63, 257);
Spawn_units(205, -63, 324);
Spawn_units(205, -63, 366);
Spawn_units(206, -63, 417);
}
if (_root.wave_timer_1 / 30 eq 60) {
Spawn_units(206, -25, 122);
Spawn_units(206, -25, 164);
Spawn_units(208, -25, 234);
Spawn_units(208, -25, 282);
Spawn_units(206, -25, 346);
Spawn_units(206, -25, 388);
Spawn_units(203, -63, 94);
Spawn_units(203, -63, 146);
Spawn_units(203, -63, 196);
Spawn_units(208, -63, 257);
Spawn_units(203, -63, 324);
Spawn_units(203, -63, 366);
Spawn_units(203, -63, 417);
}
if (_root.ARR_lightUnits.length > 12) {
return undefined;
}
if (_root.wave_timer_1 / 30 < 30) {
if (random(40) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
if (random(5) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
}
} else {
if (_root.wave_timer_1 / 30 > 30 and _root.wave_timer_1 / 30 < 40) {
if (random(40) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
if (random(3) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
} else {
if (random(4) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
} else {
if (random(3) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
}
}
}
} else {
if (_root.wave_timer_1 / 30 > 40 and _root.wave_timer_1 / 30 < 60) {
if (random(80) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
if (random(5) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
}
} else {
if (_root.wave_timer_1 / 30 > 60 and _root.wave_timer_1 / 30 < 70) {
if (random(60) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
if (random(3) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
}
} else {
if (_root.wave_timer_1 / 30 > 70 and _root.wave_timer_1 / 30 < 100) {
if (random(200) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
if (random(3) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
}
}
}
}
}
}
}
function scenario_wave_15() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_15) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 30) {
Spawn_units(208, -25, 122);
Spawn_units(205, -25, 164);
Spawn_units(208, -25, 234);
Spawn_units(208, -25, 282);
Spawn_units(205, -25, 346);
Spawn_units(208, -25, 388);
Spawn_units(203, -63, 94);
Spawn_units(203, -63, 146);
Spawn_units(203, -63, 196);
Spawn_units(208, -63, 257);
Spawn_units(203, -63, 324);
Spawn_units(203, -63, 366);
Spawn_units(203, -63, 417);
}
if (_root.ARR_lightUnits.length > 11) {
return undefined;
}
if (random(50) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
if (random(3) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
} else {
if (random(5) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
}
}
}
function scenario_wave_16() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_16) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 20 or _root.wave_timer_1 / 30 eq 80) {
Spawn_units(209, -29, 257);
Spawn_units(209, -54, 184);
Spawn_units(209, -54, 320);
Spawn_units(205, -119, 94);
Spawn_units(208, -119, 216);
Spawn_units(208, -119, 294);
Spawn_units(205, -119, 417);
}
if (_root.ARR_lightUnits.length > 14) {
return undefined;
}
if (random(50) eq 1) {
if (random(4) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(6) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(6) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(15) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(4) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
}
}
function scenario_wave_17() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_17 and _root.boss2_COUNT eq 0) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 1) {
Spawn_units(206, -29, 48);
Spawn_units(206, -29, 95);
Spawn_units(209, -29, 188);
Spawn_units(209, -29, 235);
Spawn_units(209, -29, 282);
Spawn_units(209, -29, 329);
Spawn_units(206, -29, 422);
Spawn_units(206, -29, 469);
}
if (_root.wave_timer_1 / 30 eq 20) {
boss2SummoningInitiation(198, 266);
}
if (_root.wave_timer_1 / 30 < 20) {
return undefined;
}
if (_root.ARR_lightUnits.length > 6 and _root.wave_timer_1 / 30 > _root.wave_length_17) {
return undefined;
}
if (_root.ARR_lightUnits.length > 9) {
return undefined;
}
if (random(50) eq 1) {
if (random(4) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(6) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(6) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(12) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(15) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(4) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
}
}
function scenario_wave_18() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_18) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 1) {
Spawn_units(206, -29, 48);
Spawn_units(206, -29, 95);
Spawn_units(209, -29, 142);
Spawn_units(209, -29, 188);
Spawn_units(209, -29, 235);
Spawn_units(209, -29, 282);
Spawn_units(209, -29, 329);
Spawn_units(209, -29, 375);
Spawn_units(206, -29, 422);
Spawn_units(206, -29, 469);
}
if (_root.wave_timer_1 / 30 < 10) {
return undefined;
}
if (_root.ARR_lightUnits.length > 14) {
return undefined;
}
if (random(40) eq 1 and _root.wave_timer_1 / 30 < 100) {
if (random(3) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(209, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
} else {
if (random(40) eq 1 and _root.wave_timer_1 / 30 > 100 and _root.wave_timer_1 / 30 < 150) {
if (random(4) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(6) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(8) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
} else {
if (random(50) eq 1 and _root.wave_timer_1 / 30 > 150 and _root.wave_timer_1 / 30 < 170) {
if (random(6) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(6) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
} else {
if (random(30) eq 1 and _root.wave_timer_1 / 30 > 170) {
if (random(8) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(8) eq 1) {
Spawn_units(209, -30 + random(5), 50 + random(500));
}
if (random(8) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
}
}
}
}
}
function scenario_wave_19() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_19) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 1) {
Spawn_units(206, -87, 76);
Spawn_units(206, -87, 128);
Spawn_units(206, -87, 179);
Spawn_units(203, -87, 249);
Spawn_units(206, -87, 311);
Spawn_units(206, -87, 362);
Spawn_units(206, -87, 414);
Spawn_units(211, -31, 108);
Spawn_units(209, -31, 250);
Spawn_units(211, -31, 385);
}
if (_root.wave_timer_1 / 30 eq 109) {
Spawn_units(205, -87, 76);
Spawn_units(205, -87, 128);
Spawn_units(208, -87, 179);
Spawn_units(203, -87, 249);
Spawn_units(208, -87, 311);
Spawn_units(205, -87, 362);
Spawn_units(205, -87, 414);
Spawn_units(211, -31, 108);
Spawn_units(209, -31, 250);
Spawn_units(211, -31, 385);
}
if (_root.ARR_lightUnits.length > 12 and _root.wave_timer_1 / 30 < 30) {
return undefined;
}
if (random(50) eq 1 and _root.wave_timer_1 / 30 < 30) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (_root.wave_timer_1 / 30 < 30) {
return undefined;
}
if (_root.ARR_lightUnits.length > 14) {
return undefined;
}
if (random(40) eq 1 and _root.wave_timer_1 / 30 < 100) {
if (random(3) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(15) eq 1) {
Spawn_units(209, -30 + random(5), 50 + random(500));
}
if (random(15) eq 1) {
Spawn_units(211, -30 + random(5), 50 + random(500));
}
}
}
function scenario_wave_20() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_20) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 1) {
Spawn_units(206, -29, 48);
Spawn_units(206, -29, 95);
Spawn_units(211, -29, 142);
Spawn_units(211, -29, 188);
Spawn_units(211, -29, 235);
Spawn_units(211, -29, 282);
Spawn_units(211, -29, 329);
Spawn_units(211, -29, 375);
Spawn_units(206, -29, 422);
Spawn_units(206, -29, 469);
}
if (_root.wave_timer_1 / 30 eq 79) {
Spawn_units(208, -29, 48);
Spawn_units(208, -29, 95);
Spawn_units(211, -29, 142);
Spawn_units(211, -29, 188);
Spawn_units(211, -29, 235);
Spawn_units(211, -29, 282);
Spawn_units(211, -29, 329);
Spawn_units(211, -29, 375);
Spawn_units(208, -29, 422);
Spawn_units(208, -29, 469);
}
if (_root.ARR_lightUnits.length > 15) {
return undefined;
}
if (_root.wave_timer_1 / 30 < 20) {
return undefined;
}
if (random(40) eq 1 and _root.wave_timer_1 / 30 < 60) {
if (random(3) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(15) eq 1) {
Spawn_units(209, -30 + random(5), 50 + random(500));
}
if (random(15) eq 1) {
Spawn_units(211, -30 + random(5), 50 + random(500));
}
} else {
if (random(40) eq 1 and _root.wave_timer_1 / 30 > 60) {
if (random(5) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
}
}
}
function scenario_wave_21() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_21) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 1) {
Spawn_units(211, -87, 76);
Spawn_units(205, -87, 128);
Spawn_units(205, -87, 179);
Spawn_units(208, -87, 249);
Spawn_units(205, -87, 311);
Spawn_units(205, -87, 362);
Spawn_units(211, -87, 414);
Spawn_units(209, -31, 108);
Spawn_units(209, -31, 250);
Spawn_units(209, -31, 385);
}
if (_root.wave_timer_1 / 30 eq 10) {
Spawn_units(208, -87, 76);
Spawn_units(208, -87, 128);
Spawn_units(208, -87, 179);
Spawn_units(208, -87, 311);
Spawn_units(208, -87, 362);
Spawn_units(208, -87, 414);
}
if (_root.wave_timer_1 / 30 eq 60) {
Spawn_units(211, -18, 200);
Spawn_units(211, -18, 250);
Spawn_units(211, -18, 300);
Spawn_units(209, -100, 88);
Spawn_units(209, -100, 133);
Spawn_units(209, -100, 362);
Spawn_units(209, -100, 414);
Spawn_units(209, -141, 110);
Spawn_units(209, -141, 386);
}
if (_root.wave_timer_1 / 30 eq 75) {
Spawn_units(208, -18, 200);
Spawn_units(208, -18, 250);
Spawn_units(208, -18, 300);
Spawn_units(205, -100, 88);
Spawn_units(205, -100, 133);
Spawn_units(205, -100, 362);
Spawn_units(205, -100, 414);
Spawn_units(208, -141, 110);
Spawn_units(208, -141, 386);
}
if (_root.wave_timer_1 / 30 < 25) {
return undefined;
}
if (_root.ARR_lightUnits.length > 14) {
return undefined;
}
if (random(20) eq 1 and _root.wave_timer_1 / 30 < 50) {
if (random(3) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
} else {
if (random(20) eq 1 and _root.wave_timer_1 / 30 > 50 and _root.wave_timer_1 / 30 < 60) {
Spawn_units(206, -30 + random(5), 50 + random(500));
} else {
if (random(20) eq 1 and _root.wave_timer_1 / 30 > 50 and _root.wave_timer_1 / 30 > 80) {
Spawn_units(203, -30 + random(5), 50 + random(500));
if (random(2) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
}
}
}
}
function scenario_wave_22() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 > _root.wave_length_22) {
return undefined;
}
if (_root.wave_timer_1 / 30 eq 5) {
Spawn_units(208, -87, 76);
Spawn_units(205, -87, 128);
Spawn_units(208, -87, 179);
Spawn_units(205, -87, 249);
Spawn_units(208, -87, 311);
Spawn_units(205, -87, 362);
Spawn_units(208, -87, 414);
Spawn_units(208, -31, 108);
Spawn_units(205, -31, 250);
Spawn_units(208, -31, 385);
}
if (_root.wave_timer_1 / 30 eq 80) {
boss2SummoningInitiation(300, 266);
}
if (_root.wave_timer_1 / 30 eq 85) {
unit_hp_207 = 2000;
Spawn_units(207, -10, 240);
Spawn_units(207, -10, 290);
unit_hp_207 = 2600;
}
if (_root.wave_timer_1 / 30 eq 160) {
Spawn_units(208, -29, 48);
Spawn_units(208, -29, 95);
Spawn_units(211, -29, 142);
Spawn_units(211, -29, 188);
Spawn_units(211, -29, 235);
Spawn_units(211, -29, 282);
Spawn_units(211, -29, 329);
Spawn_units(211, -29, 375);
Spawn_units(208, -29, 422);
Spawn_units(208, -29, 469);
}
if (_root.ARR_lightUnits.length > 7 and _root.wave_timer_1 / 30 < 6) {
return undefined;
}
if (_root.ARR_lightUnits.length > 14) {
return undefined;
}
if (random(20) eq 1 and _root.wave_timer_1 / 30 < 20) {
if (random(2) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(2) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(2) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(2) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
} else {
if (random(20) eq 1 and _root.wave_timer_1 / 30 > 20 and _root.wave_timer_1 / 30 < 70) {
if (random(5) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(15) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(12) eq 1) {
Spawn_units(209, -30 + random(5), 50 + random(500));
}
if (random(12) eq 1) {
Spawn_units(211, -30 + random(5), 50 + random(500));
}
} else {
if (random(30) eq 1 and _root.wave_timer_1 / 30 > 110 and _root.wave_timer_1 / 30 < 250) {
if (random(5) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(209, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(211, -30 + random(5), 50 + random(500));
}
}
}
}
}
function waveEnd() {
if (_root.gameFailed eq 1) {
return undefined;
}
if (_root.victory_start_counting eq 1) {
victoryCounting();
}
if (_root.block_everything_victory eq 1) {
return undefined;
}
if (random(30) eq 1) {
trace(_root.ARR_lightUnits.length + ' zyzy ' + random(999));
trace(_root.ARR_lightUnits[0].linktounit.id + ' ' + _root.ARR_lightUnits[0].linktounit._x + '/' + _root.ARR_lightUnits[0].linktounit._y);
trace(_root.ARR_lightUnits[0].linktounit.dmg + '=dmg ');
trace(_root.ARR_allUnits.length + ' zy66zy ' + random(999));
if (_root.ARR_lightUnits[0].linktounit._x > 1500 or _root.ARR_lightUnits[0].linktounit._y > 1500 or _root.ARR_lightUnits[0].linktounit._y < -500 or _root.ARR_lightUnits[0].linktounit._x < -500) {
_root.ARR_lightUnits[0].linktounit.dmg += 9999;
}
}
if (_root.wave_timer_1 / 30 > _root['wave_length_' + _root.current_wave] or _root.current_wave > 22) {
if (_root.ARR_lightUnits.length > 0) {
return undefined;
}
_root.block_everything_victory = 1;
_root.bodycount = 0;
_root.menuModeGameBlock = 1;
_root.attachMovie('victory', 'victory', _root.victory_depth);
_root.victory._x = 400;
_root.victory._y = 60;
_root.castleDmg = 0;
}
}
function removedFromVIctoryScreen() {
unitCountZZ = ARR_necroUnits.length;
j = 0;
while (j < unitCountZZ) {
trgt = ARR_necroUnits[j].linktounit;
removeUnitProper(trgt);
++j;
}
_root.wave_timer_1 = 0;
++_root.current_wave;
if (_root.current_wave > 23) {
_root.current_wave = 23;
}
spawnUpgradesMenu();
doPause();
_root.menuModeGameBlock = 1;
_root.cash = _root['wave_cash_' + _root.current_wave];
saveANDload('save');
}
function victoryCounting() {
if (_root.gameFailed eq 1) {
return undefined;
}
if (random(3) eq 1) {
trgt666 = ARR_necroUnits[0].linktounit;
iyiff1 = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('warping_unit', 'warping_unit' + iyiff1, iyiff1);
trgt667 = _root.yiff.projectile_layer['warping_unit' + iyiff1];
trgt667._x = trgt666._x;
trgt667._y = trgt666._y;
removeUnitProper(trgt666);
}
for (var v3 in _root.yiff.dead_layer) {
if (_root.yiff.dead_layer[v3] instanceof MovieClip) {
trgt5656 = _root.yiff.dead_layer[v3];
iyiff1 = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('bodyCountFX', 'bodyCountFX' + iyiff1, iyiff1);
trgt667 = _root.yiff.projectile_layer['bodyCountFX' + iyiff1];
trgt667._x = trgt5656._x;
trgt667._y = trgt5656._y;
++_root.bodycount;
removeMovieClip(trgt5656);
misc_counter1 = 0;
return undefined;
break;
}
}
++misc_counter1;
if (misc_counter1 < 40) {
return undefined;
}
misc_counter1 = 0;
_root.victory.aaa.gotoAndStop(1);
unitCountZZ = ARR_necroUnits.length;
j = 0;
while (j < unitCountZZ) {
trgt = ARR_necroUnits[j].linktounit;
removeUnitProper(trgt);
++j;
}
_root.wave_timer_1 = 0;
++_root.current_wave;
if (_root.current_wave > 23) {
_root.current_wave = 23;
}
saveKills();
saveslot222 = SharedObject.getLocal('necroDef_saves');
svloc = this.saveslot222.data;
scoreForSubmitting = svloc.kills201 * 11 + svloc.kills202 * 20 + svloc.kills203 * 33 + svloc.kills204 * 10 + svloc.kills205 * 50 + svloc.kills206 * 50 + svloc.kills207 * 1000 + svloc.kills208 * 100 + svloc.kills209 * 111 + svloc.kills210 * 12345 + svloc.kills211 * 234 + svloc.cashSaved * 20 + _root.current_wave * 10000;
if (_root.current_wave < 50) {
_root.kongregateStats.submit('Campaign', scoreForSubmitting);
}
if (_root.current_wave > 22) {
removeMovieClip(_root.victory);
_root.menuModeGameBlock = 0;
spawnFInalVictory();
if (_root.yiffISpaused != 1) {
doPause();
}
_root.menuModeGameBlock = 1;
_root.cash = 666;
_root.block_everything_victory = 0;
_root.victory_start_counting = 0;
saveANDload('save');
return undefined;
}
_root.menuModeGameBlock = 0;
spawnUpgradesMenu();
if (_root.yiffISpaused != 1) {
doPause();
}
_root.menuModeGameBlock = 1;
_root.cash = _root['wave_cash_' + _root.current_wave];
_root.block_everything_victory = 0;
_root.victory_start_counting = 0;
saveANDload('save');
}
function saveKills() {
saveslot000 = SharedObject.getLocal('necroDef_saves');
svloc = this.saveslot000.data;
svloc.cashSaved += _root.cash;
svloc.kills201 += localkills201;
svloc.kills202 += localkills202;
svloc.kills203 += localkills203;
svloc.kills204 += localkills204;
svloc.kills205 += localkills205;
svloc.kills206 += localkills206;
svloc.kills207 += localkills207;
svloc.kills208 += localkills208;
svloc.kills209 += localkills209;
svloc.kills210 += localkills210;
svloc.kills211 += localkills211;
localkillsNullify();
}
function upperMenuIntegrity() {
upper_menu.show_cash = 'Cash: ' + _root.cash + '$';
time_var444 = _root['wave_length_' + _root.current_wave] - Math.floor(_root.wave_timer_1 / 30);
if (time_var444 < 0) {
time_var444 = 0;
}
if (this_is_survival eq 1) {
time_var444 = _root.survival_timeLimit - Math.floor(_root.wave_timer_1 / 30);
if (time_var444 < 0) {
time_var444 = 0;
}
upper_menu.show_time = 'Time: ' + time_var444;
} else {
upper_menu.show_time = 'Time: ' + time_var444;
}
if (_root.thisIsSandBox eq 1) {
upper_menu.show_time = 'Time: unlimited';
}
upper_menu.show_units = 'Units: ' + _root.spawnedUnits + '/' + _root.spawnLimit;
}
function bottomMunuIntegrity() {
_root.bottom_menu.hp_ind.ind.gotoAndStop(structurePercent);
curentExp = _root.exp_ - _root['lvlExp_' + (_root.currentLevel - 1)];
maxExp = _root['lvlExp_' + _root.currentLevel] - _root['lvlExp_' + (_root.currentLevel - 1)];
percentExp = Math.floor((1 - (maxExp - curentExp) / maxExp) * 100);
if (percentExp < 1) {
percentExp = 1;
} else {
if (percentExp > 100) {
percentExp = 100;
}
}
_root.bottom_menu.expind.ind.gotoAndStop(percentExp);
if (_root.this_is_survival eq 1) {
_root.bottom_menu.expind.ind.gotoAndStop(100);
}
if (thereIsASelectedUnit eq 0 and severalUnitsSelected eq 0) {
_root.bottom_menu.right_controlz.gotoAndStop(1);
}
if (severalUnitsSelected eq 1) {
_root.bottom_menu.right_controlz.gotoAndStop(2);
holdPositionSUm = 0;
unitCountZZ = selectedUnitsArray.length;
j = 0;
while (j < unitCountZZ) {
trgt = selectedUnitsArray[j];
holdPositionSUm += trgt.holdPositionMode;
++j;
}
if (holdPositionSUm eq 0) {
_root.bottom_menu.right_controlz.selector.gotoAndStop(2);
} else {
if (holdPositionSUm eq unitCountZZ) {
_root.bottom_menu.right_controlz.selector.gotoAndStop(3);
} else {
_root.bottom_menu.right_controlz.selector.gotoAndStop(1);
}
}
}
if (thereIsASelectedUnit != 0) {
_root.bottom_menu.right_controlz.gotoAndStop(2);
_root.bottom_menu.right_controlz.selector.gotoAndStop(thereIsASelectedUnit.holdPositionMode + 2);
}
_root.bottom_menu.right_controlz.unitSpawnerBTN_101.gotoAndStop(_root.unitAvailable_101 + 1);
_root.bottom_menu.right_controlz.unitSpawnerBTN_102.gotoAndStop(_root.unitAvailable_102 + 1);
_root.bottom_menu.right_controlz.unitSpawnerBTN_103.gotoAndStop(_root.unitAvailable_103 + 1);
_root.bottom_menu.right_controlz.unitSpawnerBTN_104.gotoAndStop(_root.unitAvailable_104 + 1);
}
function orderFreeAttack() {
if (thereIsASelectedUnit != 0) {
thereIsASelectedUnit.holdPositionMode = 0;
animation_onhold0(thereIsASelectedUnit._x, thereIsASelectedUnit._y, thereIsASelectedUnit);
severalUnitsSelected = 0;
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
return undefined;
}
if (severalUnitsSelected eq 1) {
unitCountZZ = selectedUnitsArray.length;
j = 0;
while (j < unitCountZZ) {
trgt = selectedUnitsArray[j];
animation_onhold0(trgt._x, trgt._y, trgt);
trgt.holdPositionMode = 0;
++j;
}
}
thereIsASelectedUnit.iSselected = 0;
severalUnitsSelected = 0;
thereIsASelectedUnit = 0;
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
}
function orderHoldPosition() {
if (thereIsASelectedUnit != 0) {
trace(thereIsASelectedUnit.holdPositionMode);
thereIsASelectedUnit.holdPositionMode = 1;
animation_onhold1(thereIsASelectedUnit._x, thereIsASelectedUnit._y, thereIsASelectedUnit);
thereIsASelectedUnit.slot._x = thereIsASelectedUnit._x;
thereIsASelectedUnit.slot._y = thereIsASelectedUnit._y;
severalUnitsSelected = 0;
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
return undefined;
}
if (severalUnitsSelected eq 1) {
unitCountZZ = selectedUnitsArray.length;
j = 0;
while (j < unitCountZZ) {
trgt = selectedUnitsArray[j];
trgt.holdPositionMode = 1;
animation_onhold1(trgt._x, trgt._y, trgt);
trgt.slot._x = trgt._x;
trgt.slot._y = trgt._y;
++j;
}
}
thereIsASelectedUnit.iSselected = 0;
severalUnitsSelected = 0;
thereIsASelectedUnit = 0;
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
}
function spellSlotsIntegrity() {
if (_root.yiffISpaused != 1) {
ji = 0;
while (ji < 9) {
if (_root['spell_delay_timer_' + ji] > 0) {
--_root['spell_delay_timer_' + ji];
}
++ji;
}
}
if (_root.upgradesMenu) {
ji = 0;
while (ji < 9) {
if (_root['spell_delay_timer_' + ji] > 0) {
_root['spell_delay_timer_' + ji] = 0;
}
++ji;
}
}
zu = 0;
while (zu < 5) {
slotCore = _root.bottom_menu['spellSlot_' + zu];
if (_root['spellSelectorLoad_' + zu] != 0) {
slotCore.selected_spell = _root['spellSelectorLoad_' + zu];
trace(slotCore.selected_spell);
_root['spellSelectorLoad_' + zu] = 0;
}
slotCore.gotoAndStop(slotCore.selected_spell);
slotCore.spellIcon.gotoAndStop(2);
slotCore.theButton._visible = true;
slotCore.ind._visible = false;
if (_root['spellAvailable_' + slotCore.selected_spell] eq 0) {
slotCore.selected_spell = 3;
}
if (slotCore.selectoR.close_all_but_me eq 1) {
slotCore.selectoR.close_all_but_me = 0;
_root.bottom_menu.spellSlot_1.selectoR.gotoAndStop(1);
_root.bottom_menu.spellSlot_2.selectoR.gotoAndStop(1);
_root.bottom_menu.spellSlot_3.selectoR.gotoAndStop(1);
_root.bottom_menu.spellSlot_4.selectoR.gotoAndStop(1);
_root.bottom_menu['spellSlot_' + zu].selectoR.gotoAndStop(2);
}
ji = 0;
while (ji < 9) {
if (_root['spell_delay_timer_' + ji] > 0) {
if (slotCore.selected_spell eq ji) {
slotCore.spellIcon.gotoAndStop(1);
slotCore.ind._visible = true;
slotCore.theButton._visible = false;
percent = Math.floor(100 * (1 - _root['spell_delay_timer_' + ji] / _root['spell_delay_' + ji]));
if (percent < 1) {
percent = 1;
} else {
if (percent > 99) {
percent = 100;
}
}
slotCore.ind.aaa.gotoAndStop(percent);
}
}
spellselectorrr = slotCore.selectoR['spellSelector_' + ji];
spellselectorrr.gotoAndStop(_root['spellAvailable_' + ji] + 1);
if (spellselectorrr.activated eq 1) {
slotCore.selectoR.gotoAndStop(1);
slotCore.selected_spell = ji;
_root.spell_delay_timer_1 = _root.spell_delay_1;
_root.spell_delay_timer_2 = _root.spell_delay_2;
_root.spell_delay_timer_3 = _root.spell_delay_3;
_root.spell_delay_timer_4 = _root.spell_delay_4;
_root.spell_delay_timer_5 = _root.spell_delay_5;
_root.spell_delay_timer_6 = _root.spell_delay_6;
_root.spell_delay_timer_7 = _root.spell_delay_7;
_root.spell_delay_timer_8 = _root.spell_delay_8;
}
++ji;
}
++zu;
}
}
function mouseIntegrity() {
if (random(30) eq 1) {
Mouse.hide();
}
_root.kursor._x = _root._xmouse;
_root.kursor._y = _root._ymouse;
if (_root.block_everything_victory eq 1) {
_root.kursor.gotoAndStop(1);
_root.kursor._visible = true;
return undefined;
}
hitTest1 = _root.bottom_menu.right_controlz.hitZOne.hitTest(_root._xmouse, _root._ymouse, true);
if (hitTest1 eq 'true') {
_root.kursorCancel = 1;
_root.kursor.gotoAndStop(1);
return undefined;
}
if (_xmouse > 650 or _ymouse > 530) {
_root.kursorCancel = 1;
if (_root.spell_mode > 0 or thereIsASelectedUnit != 0 or severalUnitsSelected eq 1) {
_root.kursor._visible = true;
_root.kursor.gotoAndStop(4);
return undefined;
}
} else {
_root.kursor.gotoAndStop(1);
_root.kursorCancel = 0;
}
if (_root.spell_mode eq 7) {
if (!_root.yiff.deathRay_targeting) {
_root.yiff.attachMovie('deathRay_targeting', 'deathRay_targeting', _root.spellCircles_depth);
_root.yiff.deathRay_targeting._x = _root.yiff.necropolis._x + 20;
_root.yiff.deathRay_targeting._y = _root.yiff.necropolis._y - 145;
} else {
rotation_face_point2(_root.yiff.deathRay_targeting, _root._xmouse, _root._ymouse);
}
_root.kursor._x = _root._xmouse;
_root.kursor._y = _root._ymouse;
return undefined;
} else {
removeMovieClip(_root.yiff.deathRay_targeting);
}
if (thereIsASelectedUnit != 0 or severalUnitsSelected eq 1) {
_root.kursor.gotoAndStop(2);
if (_root.mousoveredEnemy != 0) {
_root.kursor.gotoAndStop(3);
}
} else {
_root.kursor.gotoAndStop(1);
}
if (_root.spell_mode > 0) {
_root.kursor._visible = false;
} else {
_root.kursor._visible = true;
}
if (_root.mouseOveredUndead != 0) {
_root.kursor.gotoAndStop(1);
}
}
function doPause() {
if (_root.mainMenu) {
removeMovieClip(_root.mainMenu);
}
if (_root.menuModeGameBlock eq 1 or _root.helpMenu or _root.mainMenu) {
return undefined;
}
if (_root.yiffISpaused eq 1) {
_root.yiffISpaused = 0;
trgtlayer = _root.yiff.dead_layer;
for (var v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip and trgtlayer[v2].thisisDead != 1) {
trgtlayer[v2].play();
trgtlayer[v2].aaa.play();
trgtlayer[v2].aaa.aaa2.play();
trgtlayer[v2].bbb.play();
trgtlayer[v2].bbb.bbb2.bbb3.play();
}
}
_root.yiff.gravity_nuke.play();
_root.yiff.gravity_nuke.aaa.play();
_root.yiff.gravity_nuke.bbb.play();
_root.yiff.gravity_nuke.ccc.play();
_root.yiff.gravity_nuke.ddd.ddd.play();
if (_root.yiff.necropolis.ball._currentframe > 1) {
_root.yiff.necropolis.ball.play();
}
_root.yiff.necropolis.ball.ggg.play();
_root.yiff.necropolis.ball.ggg.bbb.ccc.play();
unitCount = ARR_allUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_allUnits[i];
trgt.stun_anim.play();
trgt.walk_anim.play();
if (trgt.att_anim._currentframe > 1) {
trgt.att_anim.play();
trgt.att_anim.aaa.play();
}
++i;
}
trgtlayer = _root.yiff.shooting_layer;
for (v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
trgtlayer[v2].play();
trgtlayer[v2].aaa.play();
trgtlayer[v2].aaa.aaa2.play();
trgtlayer[v2].aaa.aaa2.bbb.play();
trgtlayer[v2].bbb.play();
trgtlayer[v2].ccc.play();
trgtlayer[v2].bbb.bbb2.bbb3.play();
}
}
trgtlayer = _root.yiff.projectile_layer;
for (v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
trgtlayer[v2].play();
trgtlayer[v2].aaa.play();
trgtlayer[v2].aaa.aaa2.play();
trgtlayer[v2].aaa.aaa2.bbb.play();
trgtlayer[v2].aaa.aaa2.bbb.ccc.play();
trgtlayer[v2].bbb.play();
trgtlayer[v2].aaa.bbb.play();
}
}
trgtlayer = _root.yiff.tactical_layer2;
for (v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
removeMovieClip(trgtlayer[v2]);
}
}
trgtlayer = _root.yiff.tactical_layer;
for (v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
removeMovieClip(trgtlayer[v2]);
}
}
} else {
_root.yiffISpaused = 1;
visualizeTactics();
trgtlayer = _root.yiff.dead_layer;
for (var v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip and trgtlayer[v2].thisisDead != 1) {
trgtlayer[v2].stop();
trgtlayer[v2].aaa.stop();
trgtlayer[v2].aaa.aaa2.stop();
trgtlayer[v2].bbb.stop();
trgtlayer[v2].bbb.bbb2.bbb3.stop();
}
}
_root.yiff.gravity_nuke.stop();
_root.yiff.gravity_nuke.aaa.stop();
_root.yiff.gravity_nuke.bbb.stop();
_root.yiff.gravity_nuke.ccc.stop();
_root.yiff.gravity_nuke.ddd.ddd.stop();
if (_root.yiff.necropolis.ball._currentframe > 1) {
_root.yiff.necropolis.ball.stop();
}
_root.yiff.necropolis.ball.ggg.stop();
_root.yiff.necropolis.ball.ggg.bbb.ccc.stop();
unitCount = ARR_allUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_allUnits[i];
trgt.stun_anim.stop();
trgt.walk_anim.stop();
if (trgt.att_anim._currentframe > 1) {
trgt.att_anim.stop();
trgt.att_anim.aaa.stop();
}
++i;
}
trgtlayer = _root.yiff.shooting_layer;
for (v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
trgtlayer[v2].stop();
trgtlayer[v2].aaa.stop();
trgtlayer[v2].aaa.aaa2.stop();
trgtlayer[v2].aaa.aaa2.bbb.stop();
trgtlayer[v2].bbb.stop();
trgtlayer[v2].bbb.bbb2.bbb3.stop();
trgtlayer[v2].ccc.stop();
}
}
trgtlayer = _root.yiff.projectile_layer;
for (v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
trgtlayer[v2].stop();
trgtlayer[v2].aaa.stop();
trgtlayer[v2].aaa.aaa2.stop();
trgtlayer[v2].aaa.aaa2.bbb.stop();
trgtlayer[v2].aaa.aaa2.bbb.ccc.stop();
trgtlayer[v2].bbb.stop();
trgtlayer[v2].aaa.bbb.stop();
}
}
}
}
function visualizeTactics() {
unitCountZZ = ARR_necroUnits.length;
j = 0;
while (j < unitCountZZ) {
trgt = ARR_necroUnits[j].linktounit;
iyiff = _root.yiff.tactical_layer.getNextHighestDepth();
_root.yiff.tactical_layer.attachMovie('green_circle', 'green_circle' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer['green_circle' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
if (trgt.holdPositionMode eq 1) {
iyiff = _root.yiff.tactical_layer2.getNextHighestDepth();
_root.yiff.tactical_layer2.attachMovie('holdPositionSign', 'holdPositionSign' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer2['holdPositionSign' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
}
if (trgt.forced_destination_x eq 'none' and trgt.targeted_enemy eq 'none') {
distdata = CALC_Dist_Xv_Yv(trgt.slot._x, trgt.slot._y, trgt._x, trgt._y);
distance_to_dest = distdata[0];
iyiff = _root.yiff.tactical_layer.getNextHighestDepth();
_root.yiff.tactical_layer.attachMovie('green_line', 'green_line' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer['green_line' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
trgt2._width = distance_to_dest;
rotation_face_point2(trgt2, trgt.slot._x, trgt.slot._y);
trgt2._rotation += 180;
} else {
if (trgt.forced_destination_x != 'none') {
distdata = CALC_Dist_Xv_Yv(trgt.forced_destination_x, trgt.forced_destination_y, trgt._x, trgt._y);
distance_to_dest = distdata[0];
iyiff = _root.yiff.tactical_layer.getNextHighestDepth();
_root.yiff.tactical_layer.attachMovie('green_line', 'green_line' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer['green_line' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
trgt2._width = distance_to_dest;
rotation_face_point2(trgt2, trgt.forced_destination_x, trgt.forced_destination_y);
trgt2._rotation += 180;
} else {
if (trgt.targeted_enemy != 'none') {
distdata = CALC_Dist_Xv_Yv(trgt.targeted_enemy._x, trgt.targeted_enemy._y, trgt._x, trgt._y);
distance_to_dest = distdata[0];
iyiff = _root.yiff.tactical_layer.getNextHighestDepth();
_root.yiff.tactical_layer.attachMovie('green_line', 'green_line' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer['green_line' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
trgt2._width = distance_to_dest;
rotation_face_point2(trgt2, trgt.targeted_enemy._x, trgt.targeted_enemy._y);
trgt2._rotation += 180;
if (trgt.holdPositionMode eq 1) {
if (trgt.id eq 101 or trgt.id eq 103) {
removeMovieClip(trgt2);
}
}
}
}
}
++j;
}
unitCountZZ = ARR_lightUnits.length;
j = 0;
while (j < unitCountZZ) {
trgt = ARR_lightUnits[j].linktounit;
iyiff = _root.yiff.tactical_layer.getNextHighestDepth();
_root.yiff.tactical_layer.attachMovie('red_circle', 'red_circle' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer['red_circle' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
if (trgt.targeted_enemy != 'none') {
distdata = CALC_Dist_Xv_Yv(trgt.targeted_enemy._x, trgt.targeted_enemy._y, trgt._x, trgt._y);
distance_to_dest = distdata[0];
iyiff = _root.yiff.tactical_layer.getNextHighestDepth();
_root.yiff.tactical_layer.attachMovie('red_line', 'red_line' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer['red_line' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
trgt2._width = distance_to_dest;
rotation_face_point2(trgt2, trgt.targeted_enemy._x, trgt.targeted_enemy._y);
trgt2._rotation += 180;
} else {
iyiff = _root.yiff.tactical_layer.getNextHighestDepth();
_root.yiff.tactical_layer.attachMovie('red_line', 'red_line' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer['red_line' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
rotation_toFace_movement(trgt2, trgt.xspeed, trgt.yspeed);
trgt2._rotation += 180;
}
++j;
}
}
function regenerateTacticalData() {
trgtlayer = _root.yiff.tactical_layer2;
for (var v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
removeMovieClip(trgtlayer[v2]);
}
}
trgtlayer = _root.yiff.tactical_layer;
for (v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
removeMovieClip(trgtlayer[v2]);
}
}
visualizeTactics();
}
function spawnUpgradesMenu() {
_root.attachMovie('menuUpgrades', 'upgradesMenu', _root.upgradesMunu_depth);
_root.upgradesMenu._x = 398;
_root.upgradesMenu._y = 267;
if (_root.skill_points > 0) {
_root.upgradesMenu.gotoAndStop(2);
}
}
function spawnUpgradesMenu2() {
_root.attachMovie('menuUpgrades2', 'upgradesMenu', _root.upgradesMunu_depth);
_root.upgradesMenu._x = 398;
_root.upgradesMenu._y = 267;
if (_root.skill_points > 0) {
_root.upgradesMenu.gotoAndStop(2);
}
}
function spawnFInalVictory() {
if (_root.this_is_survival eq 1) {
_root.attachMovie('skirmishCompleted', 'upgradesMenu', _root.upgradesMunu_depth);
} else {
_root.attachMovie('campaignCompleted', 'upgradesMenu', _root.upgradesMunu_depth);
trace('deleting saves');
saveslot000 = SharedObject.getLocal('necroDef_saves');
vl1 = this.saveslot000.data;
vl1.save_exists = 0;
}
_root.upgradesMenu._x = 398;
_root.upgradesMenu._y = 267;
}
function upgradesMenuIntegrity() {
if (_root.spell_skill_2 > 2 and _root.currentLevel > 7) {
_root.upgradesMenu.spellUpgrader_8.gotoAndStop(2);
} else {
_root.upgradesMenu.spellUpgrader_8.gotoAndStop(1);
if (_root.spell_skill_8 > 0) {
_root.skill_points += _root.spell_skill_8;
_root.spell_skill_8 = 0;
}
}
if (_root.spell_skill_8 > 1 and _root.currentLevel > 14) {
_root.upgradesMenu.spellUpgrader_4.gotoAndStop(2);
} else {
_root.upgradesMenu.spellUpgrader_4.gotoAndStop(1);
if (_root.spell_skill_4 > 0) {
_root.skill_points += _root.spell_skill_4;
_root.spell_skill_4 = 0;
}
}
if (_root.spell_skill_1 > 1 and _root.currentLevel > 14) {
_root.upgradesMenu.spellUpgrader_7.gotoAndStop(2);
} else {
_root.upgradesMenu.spellUpgrader_7.gotoAndStop(1);
if (_root.spell_skill_7 > 0) {
_root.skill_points += _root.spell_skill_7;
_root.spell_skill_7 = 0;
}
}
if (_root.spell_skill_7 > 1 and _root.currentLevel > 19) {
_root.upgradesMenu.spellUpgrader_6.gotoAndStop(2);
} else {
_root.upgradesMenu.spellUpgrader_6.gotoAndStop(1);
if (_root.spell_skill_6 > 0) {
_root.skill_points += _root.spell_skill_6;
_root.spell_skill_6 = 0;
}
}
if (_root.currentLevel > 7) {
_root.upgradesMenu.spellUpgrader_5.gotoAndStop(2);
} else {
_root.upgradesMenu.spellUpgrader_5.gotoAndStop(1);
}
if (_root.unit_skill_101 > 2) {
_root.upgradesMenu.unitUpgrader_102.gotoAndStop(2);
} else {
_root.upgradesMenu.unitUpgrader_102.gotoAndStop(1);
if (_root.unit_skill_102 > 0) {
_root.skill_points += _root.unit_skill_102;
_root.unit_skill_102 = 0;
}
}
if (_root.unit_skill_102 > 2 and _root.currentLevel > 13) {
_root.upgradesMenu.unitUpgrader_103.gotoAndStop(2);
} else {
_root.upgradesMenu.unitUpgrader_103.gotoAndStop(1);
if (_root.unit_skill_103 > 0) {
_root.skill_points += _root.unit_skill_103;
_root.unit_skill_103 = 0;
}
}
if (_root.unit_skill_103 > 2 and _root.currentLevel > 14) {
_root.upgradesMenu.unitUpgrader_104.gotoAndStop(2);
} else {
_root.upgradesMenu.unitUpgrader_104.gotoAndStop(1);
if (_root.unit_skill_104 > 0) {
_root.skill_points += _root.unit_skill_104;
_root.unit_skill_104 = 0;
}
}
i = 1;
while (i < 5) {
if (_root['unit_skill_' + (i + 100)] > 0) {
_root['unitAvailable_' + (i + 100)] = 1;
} else {
_root['unitAvailable_' + (i + 100)] = 0;
}
++i;
}
i = 0;
while (i < 9) {
if (_root['spell_skill_' + i] > 0) {
_root['spellAvailable_' + i] = 1;
} else {
_root['spellAvailable_' + i] = 0;
}
++i;
}
if (!_root.upgradesMenu) {
return undefined;
}
i = 0;
while (i < 9) {
_root['hiT_dSpl_' + i] = _root.upgradesMenu['hitzone_Spell_' + i].hitTest(_root._xmouse, _root._ymouse, true);
++i;
}
i = 0;
while (i < 5) {
_root['hT_dUnt_10' + i] = _root.upgradesMenu['hitzone_Unit_10' + i].hitTest(_root._xmouse, _root._ymouse, true);
++i;
}
if (hiT_dSpl_1 != true and hiT_dSpl_2 != true and hiT_dSpl_3 != true and hiT_dSpl_4 != true and hiT_dSpl_5 != true and hiT_dSpl_6 != true and hiT_dSpl_7 != true and hiT_dSpl_8 != true and hiT_dSpl_9 != true and hT_dUnt_101 != true and hT_dUnt_102 != true and hT_dUnt_103 != true and hT_dUnt_104 != true) {
_root.upgradesMenu.descriptor.gotoAndStop(1);
}
if (hiT_dSpl_1 eq true) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(2);
trgt.upgrade_ind.show_upgrade = _root.spell_skill_1 + '/5';
trgt.show_dmg = _root.fireball_dmgMin + '-' + _root.fireball_dmgMax;
trgt.show_stun = Math.floor((_root.fireball_stunTime / 30) * 10) / 10 + 's';
trgt.show_delay = Math.floor((_root.spell_delay_1 / 30) * 10) / 10 + 's';
if (_root.spell_skill_1 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_delay = 'n/a';
}
}
if (hiT_dSpl_2 eq true) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(3);
trgt.upgrade_ind.show_upgrade = _root.spell_skill_2 + '/5';
trgt.show_poison = Math.floor((_root.poisonBlast_POISON / 30) * 10) / 10 + 's';
trgt.show_dmg = _root.poisonBlast_dmgMin + '-' + _root.poisonBlast_dmgMax;
trgt.show_stun = Math.floor((_root.poisonBlast_stunTime / 30) * 10) / 10 + 's';
trgt.show_delay = Math.floor((_root.spell_delay_2 / 30) * 10) / 10 + 's';
if (_root.spell_skill_2 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_delay = 'n/a';
trgt.show_poison = 'n/a';
}
}
if (hiT_dSpl_3 eq true) {
trgt = _root.upgradesMenu.descriptor;
if (trgt._currentframe != 4) {
trace('555' + random(555));
trgt.gotoAndStop(4);
}
trgt.upgrade_ind.show_upgrade = _root.spell_skill_3 + '/5';
trgt.show_dmg = 'none';
trgt.show_stun = Math.floor((_root.shockwaveStunTime / 30) * 10) / 10 + 's';
trgt.show_delay = Math.floor((_root.spell_delay_3 / 30) * 10) / 10 + 's';
}
if (hiT_dSpl_4 eq true) {
if (_root.spell_skill_8 > 1 and _root.currentLevel > 14) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(5);
trgt.upgrade_ind.show_upgrade = _root.spell_skill_4 + '/5';
trgt.show_delay = Math.floor((_root.spell_delay_4 / 30) * 10) / 10 + 's';
trgt.show_duration = Math.floor((_root.madness_duration / 30) * 10) / 10 + 's';
if (_root.spell_skill_3 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_dmg = 'n/a';
trgt.show_duration = 'n/a';
trgt.show_delay = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(14);
}
}
if (hiT_dSpl_5 eq true) {
if (_root.currentLevel > 7) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(6);
trgt.upgrade_ind.show_upgrade = _root.spell_skill_5 + '/5';
trgt.show_duration = Math.floor((_root.healingDuration / 30) * 10) / 10 + 's';
trgt.show_regen = Math.floor(_root.healingAmmount * 30 * 10) / 10 + '/s';
trgt.show_delay = Math.floor((_root.spell_delay_5 / 30) * 10) / 10 + 's';
if (_root.spell_skill_5 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_duration = 'n/a';
trgt.show_regen = 'n/a';
trgt.show_delay = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(15);
}
}
if (hiT_dSpl_6 eq true) {
if (_root.currentLevel > 19 and _root.spell_skill_7 > 1) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(7);
trgt.upgrade_ind.show_upgrade = _root.spell_skill_6 + '/5';
trgt.show_dmg = _root.gravityBlast_min_dmg + '-' + _root.gravityBlast_max_dmg;
trgt.show_stun = '2.6s';
trgt.show_delay = Math.floor((_root.spell_delay_6 / 30) * 10) / 10 + 's';
if (_root.spell_skill_6 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_delay = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(16);
}
}
if (hiT_dSpl_7 eq true) {
if (_root.spell_skill_1 > 1 and _root.currentLevel > 14) {
trgt = _root.upgradesMenu.descriptor;
if (trgt._currentframe != 8) {
trgt.gotoAndStop(8);
}
trgt.upgrade_ind.show_upgrade = _root.spell_skill_7 + '/5';
trgt.show_dmg = _root.deathRayDMG_min + '-' + _root.deathRayDMG_max;
trgt.show_stun = Math.floor((_root.deathRay_STUN / 30) * 10) / 10 + 's';
trgt.show_delay = Math.floor((_root.spell_delay_7 / 30) * 10) / 10 + 's';
if (_root.spell_skill_7 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_delay = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
if (trgt._currentframe != 17) {
trgt.gotoAndStop(17);
}
}
}
if (hiT_dSpl_8 eq true) {
if (_root.spell_skill_2 > 2 and _root.currentLevel > 7) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(9);
trgt.upgrade_ind.show_upgrade = _root.spell_skill_8 + '/5';
trgt.show_effect = (1 - _root.curseSpellEffect) * 100 + '%';
trgt.show_duration = Math.floor((_root.curseSpellTime / 30) * 10) / 10 + 's';
trgt.show_delay = Math.floor((_root.spell_delay_8 / 30) * 10) / 10 + 's';
if (_root.spell_skill_8 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_effect = 'n/a';
trgt.show_duration = 'n/a';
trgt.show_delay = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(18);
}
}
if (hT_dUnt_101 eq true) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(31);
trgt.upgrade_ind.show_upgrade = _root.unit_skill_101 + '/5';
trgt.show_price = unit_price_101 + '$';
trgt.show_hp = unit_hp_101;
trgt.show_dmg = unit_dmg_min_101 + '-' + unit_dmg_max_101;
trgt.show_stun = 'none';
trgt.show_stunRes = unit_stunResistance_101 + '%';
trgt.show_intRes = unit_interaptionResistance_101 + '%';
if (_root.unit_skill_101 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_price = 'n/a';
trgt.show_hp = 'n/a';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_stunRes = 'n/a';
trgt.show_intRes = 'n/a';
}
}
if (hT_dUnt_102 eq true) {
if (_root.unit_skill_101 > 2) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(32);
trgt.upgrade_ind.show_upgrade = _root.unit_skill_102 + '/5';
trgt.show_price = unit_price_102 + '$';
trgt.show_hp = unit_hp_102;
trgt.show_dmg = unit_dmg_min_102 + '-' + unit_dmg_max_102;
trgt.show_stun = 'none';
trgt.show_stunRes = unit_stunResistance_102 + '%';
trgt.show_intRes = unit_interaptionResistance_102 + '%';
if (_root.unit_skill_102 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_price = 'n/a';
trgt.show_hp = 'n/a';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_stunRes = 'n/a';
trgt.show_intRes = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(42);
}
}
if (hT_dUnt_103 eq true) {
if (_root.unit_skill_102 > 2 and _root.currentLevel > 13) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(33);
trgt.upgrade_ind.show_upgrade = _root.unit_skill_103 + '/5';
trgt.show_price = unit_price_103 + '$';
trgt.show_hp = unit_hp_103;
trgt.show_dmg = unit_dmg_min_103 + '-' + unit_dmg_max_103;
trgt.show_stun = Math.floor((_root.DK_att360_stun / 30) * 10) / 10 + 's';
trgt.show_stunRes = unit_stunResistance_103 + '%';
trgt.show_intRes = unit_interaptionResistance_103 + '%';
if (_root.unit_skill_103 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_price = 'n/a';
trgt.show_hp = 'n/a';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_stunRes = 'n/a';
trgt.show_intRes = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
if (trgt._currentframe != 43) {
trgt.gotoAndStop(43);
}
}
}
if (hT_dUnt_104 eq true) {
if (_root.unit_skill_103 > 2) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(34);
trgt.upgrade_ind.show_upgrade = _root.unit_skill_104 + '/5';
trgt.show_price = unit_price_104 + '$';
trgt.show_hp = unit_hp_104;
trgt.show_dmg = unit_dmg_min_104 + '-' + unit_dmg_max_104;
trgt.show_stun = '1s';
trgt.show_stunRes = unit_stunResistance_104 + '%';
trgt.show_intRes = unit_stunResistance_104 + '%';
if (_root.unit_skill_104 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_price = 'n/a';
trgt.show_hp = 'n/a';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_stunRes = 'n/a';
trgt.show_intRes = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(44);
}
}
saveslot000 = SharedObject.getLocal('necroDef_saves');
svloc = this.saveslot000.data;
_root.upgradesMenu.descriptor.unit201c.showvar = svloc.kills201;
_root.upgradesMenu.descriptor.unit202c.showvar = svloc.kills202;
_root.upgradesMenu.descriptor.unit203c.showvar = svloc.kills203;
_root.upgradesMenu.descriptor.unit204c.showvar = svloc.kills204;
_root.upgradesMenu.descriptor.unit205c.showvar = svloc.kills205;
_root.upgradesMenu.descriptor.unit206c.showvar = svloc.kills206;
_root.upgradesMenu.descriptor.unit207c.showvar = svloc.kills207;
_root.upgradesMenu.descriptor.unit208c.showvar = svloc.kills208;
_root.upgradesMenu.descriptor.unit209c.showvar = svloc.kills209;
_root.upgradesMenu.descriptor.unit210c.showvar = svloc.kills210;
_root.upgradesMenu.descriptor.unit211c.showvar = svloc.kills211;
_root.upgradesMenu.descriptor.cash_saved.showvar = svloc.cashSaved;
_root.upgradesMenu.descriptor.score.showvar = svloc.kills201 * 11 + svloc.kills202 * 20 + svloc.kills203 * 33 + svloc.kills204 * 10 + svloc.kills205 * 50 + svloc.kills206 * 50 + svloc.kills207 * 1000 + svloc.kills208 * 100 + svloc.kills209 * 111 + svloc.kills210 * 12345 + svloc.kills211 * 234 + svloc.cashSaved * 20 + _root.current_wave * 10000;
scoreCampaignVar = svloc.kills201 * 11 + svloc.kills202 * 20 + svloc.kills203 * 33 + svloc.kills204 * 10 + svloc.kills205 * 50 + svloc.kills206 * 50 + svloc.kills207 * 1000 + svloc.kills208 * 100 + svloc.kills209 * 111 + svloc.kills210 * 12345 + svloc.kills211 * 234 + svloc.cashSaved * 20 + _root.current_wave * 10000;
if (_root.current_wave < 50) {
_root.kongregateStats.submit('Campaign', scoreCampaignVar);
}
if (svloc.kills202 > 0) {
_root.upgradesMenu.descriptor.unit202.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit202.gotoAndStop(1);
}
if (svloc.kills203 > 0) {
_root.upgradesMenu.descriptor.unit203.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit203.gotoAndStop(1);
}
if (svloc.kills204 > 0) {
_root.upgradesMenu.descriptor.unit204.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit204.gotoAndStop(1);
}
if (svloc.kills205 > 0) {
_root.upgradesMenu.descriptor.unit205.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit205.gotoAndStop(1);
}
if (svloc.kills206 > 0) {
_root.upgradesMenu.descriptor.unit206.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit206.gotoAndStop(1);
}
if (svloc.kills207 > 0) {
_root.upgradesMenu.descriptor.unit207.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit207.gotoAndStop(1);
}
if (svloc.kills208 > 0) {
_root.upgradesMenu.descriptor.unit208.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit208.gotoAndStop(1);
}
if (svloc.kills209 > 0) {
_root.upgradesMenu.descriptor.unit209.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit209.gotoAndStop(1);
}
if (svloc.kills210 > 0) {
_root.upgradesMenu.descriptor.unit210.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit210.gotoAndStop(1);
}
if (svloc.kills211 > 0) {
_root.upgradesMenu.descriptor.unit211.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit211.gotoAndStop(1);
}
}
function BTN_startDay() {
removeMovieClip(_root.victory);
trgtlayer = _root.yiff.dead_layer;
for (var v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
removeMovieClip(trgtlayer[v2]);
}
}
_root.menuModeGameBlock = 0;
doPause();
_root.attachMovie('freetimeCounter', 'freetimeCounter', _root.freetimeCounter_depth);
_root.freetimeCounter._x = 5;
_root.freetimeCounter._y = 44;
if (_root.current_wave > 9 and _root.current_wave < 18) {
_root.Spawn_units(106);
} else {
if (_root.current_wave > 17) {
_root.Spawn_units(107);
}
}
removeMovieClip(_root.upgradesMenu);
}
function spawnDefeatMenu() {
if (_root.this_is_survival eq 1) {
_root.attachMovie('defeatMenu2', 'defeatMenu', _root.victory_depth);
} else {
_root.attachMovie('defeatMenu', 'defeatMenu', _root.victory_depth);
}
_root.defeatMenu._x = 400;
_root.defeatMenu._y = 250;
}
function spawnHelpMenu() {
_root.attachMovie('helpMenu', 'helpMenu', _root.helpMenu_depth);
_root.helpMenu._x = 376;
_root.helpMenu._y = 297;
}
function spawnMainMenu() {
_root.attachMovie('mainMenu', 'mainMenu', _root.helpMenu_depth);
_root.mainMenu._x = 376;
_root.mainMenu._y = 297;
}
function removeMainMenu() {
removeMovieClip(_root.mainMenu);
if (_root.yiffISpaused eq 1) {
doPause();
}
}
function SRV_upgrades_close() {
removeMovieClip(_root.upgradesMenu);
_root.menuModeGameBlock = 0;
doPause();
_root.attachMovie('freetimeCounter', 'freetimeCounter', _root.freetimeCounter_depth);
_root.freetimeCounter._x = 5;
_root.freetimeCounter._y = 44;
spawnHelpMenu();
}
function spellslotsAutoSelection() {
slotCore1 = _root.bottom_menu.spellSlot_1;
slotCore2 = _root.bottom_menu.spellSlot_2;
slotCore3 = _root.bottom_menu.spellSlot_3;
slotCore4 = _root.bottom_menu.spellSlot_4;
if (_root.spell_skill_6 > 0) {
slotCore1.selected_spell = 6;
} else {
if (_root.spell_skill_7 > 0) {
slotCore1.selected_spell = 7;
} else {
if (_root.spell_skill_4 > 0) {
slotCore1.selected_spell = 4;
} else {
if (_root.spell_skill_8 > 0) {
slotCore1.selected_spell = 8;
} else {
if (_root.spell_skill_1 > 0) {
slotCore1.selected_spell = 1;
} else {
if (_root.spell_skill_2 > 0) {
slotCore1.selected_spell = 2;
}
}
}
}
}
}
kl = 0;
while (kl < 2) {
if (_root.spell_skill_6 > 0) {
if (slotCore1.selected_spell != 6 and slotCore2.selected_spell != 6 and slotCore3.selected_spell != 6 and slotCore4.selected_spell != 6) {
slotCore2.selected_spell = 6;
break;
}
}
if (_root.spell_skill_7 > 0) {
if (slotCore1.selected_spell != 7 and slotCore2.selected_spell != 7 and slotCore3.selected_spell != 7 and slotCore4.selected_spell != 7) {
slotCore2.selected_spell = 7;
break;
}
}
if (_root.spell_skill_4 > 0) {
if (slotCore1.selected_spell != 4 and slotCore2.selected_spell != 4 and slotCore3.selected_spell != 4 and slotCore4.selected_spell != 4) {
slotCore2.selected_spell = 4;
break;
}
}
if (_root.spell_skill_8 > 0) {
if (slotCore1.selected_spell != 8 and slotCore2.selected_spell != 8 and slotCore3.selected_spell != 8 and slotCore4.selected_spell != 8) {
slotCore2.selected_spell = 8;
break;
}
}
if (_root.spell_skill_1 > 0) {
if (slotCore1.selected_spell != 1 and slotCore2.selected_spell != 1 and slotCore3.selected_spell != 1 and slotCore4.selected_spell != 1) {
slotCore2.selected_spell = 1;
break;
}
}
if (_root.spell_skill_2 > 0) {
if (slotCore1.selected_spell != 2 and slotCore2.selected_spell != 2 and slotCore3.selected_spell != 2 and slotCore4.selected_spell != 2) {
slotCore2.selected_spell = 2;
break;
}
}
break;
++kl;
}
kl = 0;
while (kl < 2) {
if (_root.spell_skill_6 > 0) {
if (slotCore1.selected_spell != 6 and slotCore2.selected_spell != 6 and slotCore3.selected_spell != 6 and slotCore4.selected_spell != 6) {
slotCore3.selected_spell = 6;
break;
}
}
if (_root.spell_skill_7 > 0) {
if (slotCore1.selected_spell != 7 and slotCore2.selected_spell != 7 and slotCore3.selected_spell != 7 and slotCore4.selected_spell != 7) {
slotCore3.selected_spell = 7;
break;
}
}
if (_root.spell_skill_4 > 0) {
if (slotCore1.selected_spell != 4 and slotCore2.selected_spell != 4 and slotCore3.selected_spell != 4 and slotCore4.selected_spell != 4) {
slotCore3.selected_spell = 4;
break;
}
}
if (_root.spell_skill_8 > 0) {
if (slotCore1.selected_spell != 8 and slotCore2.selected_spell != 8 and slotCore3.selected_spell != 8 and slotCore4.selected_spell != 8) {
slotCore3.selected_spell = 8;
break;
}
}
if (_root.spell_skill_1 > 0) {
if (slotCore1.selected_spell != 1 and slotCore2.selected_spell != 1 and slotCore3.selected_spell != 1 and slotCore4.selected_spell != 1) {
slotCore3.selected_spell = 1;
break;
}
}
if (_root.spell_skill_2 > 0) {
if (slotCore1.selected_spell != 2 and slotCore2.selected_spell != 2 and slotCore3.selected_spell != 2 and slotCore4.selected_spell != 2) {
slotCore3.selected_spell = 2;
break;
}
}
break;
++kl;
}
kl = 0;
while (kl < 2) {
if (_root.spell_skill_6 > 0) {
if (slotCore1.selected_spell != 6 and slotCore2.selected_spell != 6 and slotCore3.selected_spell != 6 and slotCore4.selected_spell != 6) {
slotCore4.selected_spell = 6;
break;
}
}
if (_root.spell_skill_7 > 0) {
if (slotCore1.selected_spell != 7 and slotCore2.selected_spell != 7 and slotCore3.selected_spell != 7 and slotCore4.selected_spell != 7) {
slotCore4.selected_spell = 7;
break;
}
}
if (_root.spell_skill_4 > 0) {
if (slotCore1.selected_spell != 4 and slotCore2.selected_spell != 4 and slotCore3.selected_spell != 4 and slotCore4.selected_spell != 4) {
slotCore4.selected_spell = 4;
break;
}
}
if (_root.spell_skill_8 > 0) {
if (slotCore1.selected_spell != 8 and slotCore2.selected_spell != 8 and slotCore3.selected_spell != 8 and slotCore4.selected_spell != 8) {
slotCore4.selected_spell = 8;
break;
}
}
if (_root.spell_skill_1 > 0) {
if (slotCore1.selected_spell != 1 and slotCore2.selected_spell != 1 and slotCore3.selected_spell != 1 and slotCore4.selected_spell != 1) {
slotCore4.selected_spell = 1;
break;
}
}
if (_root.spell_skill_2 > 0) {
if (slotCore1.selected_spell != 2 and slotCore2.selected_spell != 2 and slotCore3.selected_spell != 2 and slotCore4.selected_spell != 2) {
slotCore4.selected_spell = 2;
break;
}
}
break;
++kl;
}
}
function leveling() {
if (_root.currentLevel < 5) {
_root.spawnLimit = 5;
} else {
if (_root.currentLevel < 14) {
_root.spawnLimit = 8;
} else {
_root.spawnLimit = 10;
}
}
i = 1;
while (i < 55) {
if (_root.currentLevel eq i and _root.exp_ > _root['lvlExp_' + i]) {
++_root.currentLevel;
++_root.skill_points;
_root.bottom_menu.expind.lvlupAnim.play();
}
++i;
}
}
function spellUpgradesIntegrity() {
_root.fireball_dmgMax = 110 + _root.spell_skill_1 * 10;
_root.fireball_dmgMin = 70 + _root.spell_skill_1 * 10;
_root.fireball_stunTime = 30 + _root.spell_skill_1 * 10;
_root.spell_delay_1 = 600 - _root.spell_skill_1 * 30;
_root.poisonBlast_POISON = 70 + _root.spell_skill_2 * 30;
_root.poisonBlast_dmgMin = 10 + _root.spell_skill_2 * 10;
_root.poisonBlast_dmgMax = 30 + _root.spell_skill_2 * 10;
_root.poisonBlast_stunTime = 30 + _root.spell_skill_2 * 10;
_root.spell_delay_2 = 330 - _root.spell_skill_2 * 30;
_root.spell_delay_5 = 30 * (20 - _root.spell_skill_5);
_root.healingDuration = 30 * (9 + _root.spell_skill_5);
_root.healingAmmount = 0.27 + _root.spell_skill_5 * 0.03;
_root.spell_delay_3 = 30 * (3 + 1.5 * _root.spell_skill_3);
_root.shockwaveStunTime = Math.floor(30 * (0.5 + _root.spell_skill_3 * 1.5));
_root.spell_delay_8 = 30 * (20 - 1.5 * _root.spell_skill_8);
_root.curseSpellEffect = 0.6 - 0.05 * _root.spell_skill_8;
_root.curseSpellTime = 30 * (5 + 2 * _root.spell_skill_8);
_root.spell_delay_4 = 30 * (40 - 2 * _root.spell_skill_4);
_root.madness_duration = 30 * (15 + 5 * _root.spell_skill_4);
_root.deathRay_STUN = Math.floor(30 * (0.5 + _root.spell_skill_7));
_root.deathRayDMG_min = 60 + _root.spell_skill_7 * 3;
_root.deathRayDMG_max = 120 + _root.spell_skill_7 * 10;
_root.spell_delay_7 = 30 * (17 - _root.spell_skill_7);
_root.spell_delay_6 = 30 * (50 - 3 * _root.spell_skill_6);
_root.gravityBlast_max_dmg = 450 + 50 * _root.spell_skill_6;
_root.gravityBlast_min_dmg = 290 + 10 * _root.spell_skill_6;
unit_price_101 = 90 + _root.unit_skill_101 * 10;
unit_hp_101 = 240 + _root.unit_skill_101 * 10;
unit_dmg_min_101 = 13 + _root.unit_skill_101 * 2;
unit_dmg_max_101 = 27 + _root.unit_skill_101 * 3;
unit_stunResistance_101 = 17 + _root.unit_skill_101 * 3;
unit_price_102 = 130 + _root.unit_skill_102 * 10;
unit_hp_102 = 80 + _root.unit_skill_102 * 20;
unit_dmg_min_102 = 17 + _root.unit_skill_102 * 2;
unit_dmg_max_102 = 26 + _root.unit_skill_102 * 4;
unit_interaptionResistance_102 = 30 + _root.unit_skill_102 * 10;
unit_stunResistance_102 = 13 + _root.unit_skill_102 * 7;
unit_price_103 = 180 + _root.unit_skill_103 * 20;
unit_hp_103 = 900 + _root.unit_skill_103 * 100;
unit_dmg_min_103 = 18 + _root.unit_skill_103 * 3;
unit_dmg_max_103 = 46 + _root.unit_skill_103 * 4;
unit_interaptionResistance_103 = 70;
unit_stunResistance_103 = 60;
_root.DK_att360_stun = 30 + _root.unit_skill_103 * 10;
unit_price_104 = 200 + _root.unit_skill_104 * 20;
unit_hp_104 = 140 + _root.unit_skill_104 * 10;
unit_dmg_min_104 = 13 + _root.unit_skill_104 * 2;
unit_dmg_max_104 = 26 + _root.unit_skill_104 * 4;
}
function SRV_saveANDload(dowhat) {
if (fuckedupeverything eq 1) {
return undefined;
}
saveslot000 = SharedObject.getLocal('necroDef_SRVsaves');
if (dowhat eq 'save') {
trace('saving');
vl1 = this.saveslot000.data;
vl1.save_exists = 1;
vl2 = _root;
} else {
vl2 = this.saveslot000.data;
vl1 = _root;
}
vl1.skill_points = vl2.skill_points;
vl1.spell_skill_1 = vl2.spell_skill_1;
vl1.spell_skill_2 = vl2.spell_skill_2;
vl1.spell_skill_3 = vl2.spell_skill_3;
vl1.spell_skill_4 = vl2.spell_skill_4;
vl1.spell_skill_5 = vl2.spell_skill_5;
vl1.spell_skill_6 = vl2.spell_skill_6;
vl1.spell_skill_7 = vl2.spell_skill_7;
vl1.spell_skill_8 = vl2.spell_skill_8;
vl1.unit_skill_101 = vl2.unit_skill_101;
vl1.unit_skill_102 = vl2.unit_skill_102;
vl1.unit_skill_103 = vl2.unit_skill_103;
vl1.unit_skill_104 = vl2.unit_skill_104;
}
function saveANDload(dowhat) {
if (fuckedupeverything eq 1) {
return undefined;
}
saveslot000 = SharedObject.getLocal('necroDef_saves');
if (dowhat eq 'save') {
vl1 = this.saveslot000.data;
vl1.save_exists = 1;
vl2 = _root;
} else {
vl2 = this.saveslot000.data;
vl1 = _root;
}
vl1.skill_points = vl2.skill_points;
vl1.currentLevel = vl2.currentLevel;
vl1.current_wave = vl2.current_wave;
vl1.exp_ = vl2.exp_;
vl1.spell_skill_1 = vl2.spell_skill_1;
vl1.spell_skill_2 = vl2.spell_skill_2;
vl1.spell_skill_3 = vl2.spell_skill_3;
vl1.spell_skill_4 = vl2.spell_skill_4;
vl1.spell_skill_5 = vl2.spell_skill_5;
vl1.spell_skill_6 = vl2.spell_skill_6;
vl1.spell_skill_7 = vl2.spell_skill_7;
vl1.spell_skill_8 = vl2.spell_skill_8;
vl1.unit_skill_101 = vl2.unit_skill_101;
vl1.unit_skill_102 = vl2.unit_skill_102;
vl1.unit_skill_103 = vl2.unit_skill_103;
vl1.unit_skill_104 = vl2.unit_skill_104;
if (dowhat eq 'save') {
vl1.spellslotSave1 = _root.bottom_menu.spellSlot_1.selected_spell;
vl1.spellslotSave2 = _root.bottom_menu.spellSlot_2.selected_spell;
vl1.spellslotSave3 = _root.bottom_menu.spellSlot_3.selected_spell;
vl1.spellslotSave4 = _root.bottom_menu.spellSlot_4.selected_spell;
} else {
_root.spellSelectorLoad_1 = vl2.spellslotSave1;
_root.spellSelectorLoad_2 = vl2.spellslotSave2;
_root.spellSelectorLoad_3 = vl2.spellslotSave3;
_root.spellSelectorLoad_4 = vl2.spellslotSave4;
}
}
function saveQuickSPells() {
if (_root.menuModeGameBlock eq 1) {
return undefined;
}
saveslot000 = SharedObject.getLocal('necroDef_saves');
vl1 = this.saveslot000.data;
vl2 = _root;
if (_root.bottom_menu.spellSlot_1.selected_spell != 3) {
vl1.spellslotSave1 = _root.bottom_menu.spellSlot_1.selected_spell;
}
if (_root.bottom_menu.spellSlot_2.selected_spell != 3) {
vl1.spellslotSave2 = _root.bottom_menu.spellSlot_2.selected_spell;
}
if (_root.bottom_menu.spellSlot_3.selected_spell != 3) {
vl1.spellslotSave3 = _root.bottom_menu.spellSlot_3.selected_spell;
}
if (_root.bottom_menu.spellSlot_4.selected_spell != 3) {
vl1.spellslotSave4 = _root.bottom_menu.spellSlot_4.selected_spell;
}
}
stop();
_root.this_is_survival = 0;
_root.combat_isMuted = 0;
_root.blackness_depth = 999999;
_root.kursor_depth = 200;
_root.helpMenu_depth = 190;
_root.freetimeCounter_depth = 180;
_root.upgradesMunu_depth = 170;
_root.victory_depth = 165;
_root.bottommenu_depth = 160;
_root.uppermenu_depth = 150;
_root.yiff_depth = 100;
_root.survival_timeLimit = 350;
_root.selection_depth = 3000;
_root.hpshow_layer_depth = 1750;
_root.leaftop_depth = 1650;
_root.gravnuke_depth = 1610;
_root.shooting_layer_depth = 1600;
_root.necropolis_depth = 1550;
_root.unit_slots_depth = 1500;
_root.units_depth = 50;
_root.spellCircles_depth = 20;
_root.dead_depth = 10;
_root.background_depth = 1;
_root.spellAvailable_1 = 1;
_root.spellAvailable_2 = 1;
_root.spellAvailable_3 = 1;
_root.spellAvailable_4 = 1;
_root.spellAvailable_5 = 1;
_root.spellAvailable_6 = 1;
_root.spellAvailable_7 = 1;
_root.spellAvailable_8 = 1;
_root.spell_delay_4 = 30;
_root.spell_delay_6 = 30;
_root.spell_delay_7 = 30;
_root.unitSpawn_delay_101 = 15;
_root.unitSpawn_delay_102 = 30;
_root.unitSpawn_delay_103 = 150;
_root.unitSpawn_delay_104 = 300;
_root.castleHitPoints = 1000;
_root.castleDmg = 0;
_root.regeneration_rate = 0.1;
_root.units_max_count = 100;
_root.unit_slots_max_count = 50;
_root.homing_radius = 200;
radiuscheckSTEP = 3;
RANDOM_NUM_raznosEnemyCHeka = 20;
_root.gravityBlast_max_dmg = 150;
_root.gravityBlast_min_dmg = 80;
_root.shockwaveRadius = 50;
_root.curseSpellRadius = 90;
_root.madnessSpellRadius = 95;
_root.minimum_stun = 10;
_root.unitClickedTimer = 0;
_root.doubleClickSelect_SPEED = 10;
_root.menuModeGameBlock = 0;
_root.yiffISpaused = 0;
_root.skill_points = 0;
_root.currentLevel = 1;
_root.current_wave = 1;
_root.cash = 500;
_root.exp_ = 0;
_root.tremorTimer = 0;
_root.spell_mode = 0;
_root.wave_timer_1 = 0;
thereIsASelectedUnit = 0;
_root.mouseOveredUndead = 0;
_root.mousoveredEnemy = 0;
theMouseIsDown = 0;
severalUnitsSelected = 0;
_root.victory_start_counting = 0;
_root.block_everything_victory = 0;
_root.infotext = '';
_root.gameFailed = 0;
_root.spell_delay_timer_1 = 0;
_root.spell_delay_timer_2 = 0;
_root.spell_delay_timer_3 = 0;
_root.spell_delay_timer_4 = 0;
_root.spell_delay_timer_5 = 0;
_root.spell_delay_timer_6 = 0;
_root.spell_delay_timer_7 = 0;
_root.spell_delay_timer_8 = 0;
_root.unitSpawnDelay_timer_101 = 0;
_root.unitSpawnDelay_timer_102 = 0;
_root.unitSpawnDelay_timer_103 = 0;
_root.unitSpawnDelay_timer_104 = 0;
_root.spell_skill_1 = 0;
_root.spell_skill_2 = 0;
_root.spell_skill_3 = 1;
_root.spell_skill_4 = 0;
_root.spell_skill_5 = 0;
_root.spell_skill_6 = 0;
_root.spell_skill_7 = 0;
_root.spell_skill_8 = 0;
_root.unit_skill_101 = 1;
_root.unit_skill_102 = 0;
_root.unit_skill_103 = 0;
_root.unit_skill_104 = 0;
_root.unitAvailable_102 = 0;
_root.unitAvailable_103 = 0;
_root.unitAvailable_104 = 0;
unit_price_101 = 100;
unit_hp_101 = 250;
unit_dmg_min_101 = 15;
unit_dmg_max_101 = 30;
unit_stunResistance_101 = 20;
unit_speed_101 = 2;
unit_ATTrad_101 = 30;
unit_VISrad_101 = 300;
unit_critical_chance_101 = 5;
unit_critical_mod_101 = 3;
unit_attackDelay_101 = 40;
unit_interaptionResistance_101 = 40;
unit_price_106 = 0;
unit_hp_106 = 1200;
unit_dmg_min_106 = 20;
unit_dmg_max_106 = 50;
_root.ghoulKingStunPower = 60;
unit_stunResistance_106 = 70;
unit_speed_106 = 1.4;
unit_ATTrad_106 = 15;
unit_VISrad_106 = 300;
unit_critical_chance_106 = 5;
unit_critical_mod_106 = 3;
unit_attackDelay_106 = 50;
unit_interaptionResistance_106 = 30;
unit_price_102 = 140;
unit_hp_102 = 120;
unit_dmg_min_102 = 20;
unit_dmg_max_102 = 30;
unit_interaptionResistance_102 = 40;
unit_stunResistance_102 = 20;
unit_speed_102 = 1.7;
unit_ATTrad_102 = 190;
unit_VISrad_102 = 300;
unit_critical_chance_102 = 5;
unit_critical_mod_102 = 3;
unit_attackDelay_102 = 30;
unit_price_103 = 200;
unit_hp_103 = 1000;
unit_dmg_min_103 = 20;
unit_dmg_max_103 = 50;
unit_interaptionResistance_103 = 70;
unit_stunResistance_103 = 60;
_root.DK_att360_stun = 30;
unit_speed_103 = 2;
unit_ATTrad_103 = 50;
unit_VISrad_103 = 300;
unit_critical_chance_103 = 5;
unit_critical_mod_103 = 3;
unit_attackDelay_103 = 80;
_root.DK_att360_radius = 70;
unit_price_107 = 0;
unit_hp_107 = 1300;
unit_dmg_min_107 = 40;
unit_dmg_max_107 = 60;
_root.DK_heroStun = 70;
unit_stunResistance_107 = 99;
unit_speed_107 = 1.5;
unit_ATTrad_107 = 15;
unit_VISrad_107 = 300;
unit_critical_chance_107 = 5;
unit_critical_mod_107 = 3;
unit_attackDelay_107 = 80;
unit_interaptionResistance_107 = 90;
unit_price_104 = 220;
unit_speed_104 = 1.4;
unit_hp_104 = 150;
unit_dmg_min_104 = 20;
unit_dmg_max_104 = 60;
unit_ATTrad_104 = 250;
unit_VISrad_104 = 300;
unit_critical_chance_104 = 5;
unit_critical_mod_104 = 3;
unit_attackDelay_104 = 110;
_root.elisiumTearRadius = 50;
unit_interaptionResistance_104 = 20;
unit_stunResistance_104 = 20;
unit_siegeDMG_201 = 100;
unit_speed_201 = 1.4;
unit_hp_201 = 110;
unit_dmg_min_201 = 10;
unit_dmg_max_201 = 25;
unit_ATTrad_201 = 30;
unit_VISrad_201 = 300;
unit_SIEGErad_201 = 105;
unit_critical_chance_201 = 5;
unit_critical_mod_201 = 3;
unit_attackDelay_201 = 50;
unit_interaptionResistance_201 = 40;
unit_stunResistance_201 = 20;
unit_cash_201 = 25;
unit_exp_201 = 5;
unit_siegeDMG_206 = 200;
unit_speed_206 = 1.4;
unit_hp_206 = 210;
unit_dmg_min_206 = 15;
unit_dmg_max_206 = 35;
unit_ATTrad_206 = 10;
unit_VISrad_206 = 200;
unit_SIEGErad_206 = 105;
unit_critical_chance_206 = 5;
unit_critical_mod_206 = 3;
unit_attackDelay_206 = 50;
unit_interaptionResistance_206 = 50;
unit_stunResistance_206 = 40;
unit_cash_206 = 40;
unit_exp_206 = 10;
unit_siegeDMG_209 = 150;
unit_speed_209 = 1.5;
unit_hp_209 = 600;
unit_dmg_min_209 = 20;
unit_dmg_max_209 = 30;
unit_ATTrad_209 = 10;
unit_VISrad_209 = 300;
unit_SIEGErad_209 = 105;
unit_critical_chance_209 = 5;
unit_critical_mod_209 = 3;
unit_attackDelay_209 = 50;
unit_interaptionResistance_209 = 99;
unit_stunResistance_209 = 50;
unit_cash_209 = 80;
unit_exp_209 = 100;
unit_siegeDMG_211 = 200;
unit_speed_211 = 1.2;
unit_hp_211 = 1000;
unit_dmg_min_211 = 40;
unit_dmg_max_211 = 60;
unit_ATTrad_211 = 10;
unit_VISrad_211 = 300;
unit_SIEGErad_211 = 105;
unit_critical_chance_211 = 5;
unit_critical_mod_211 = 3;
unit_attackDelay_211 = 40;
unit_interaptionResistance_211 = 90;
unit_stunResistance_211 = 90;
unit_cash_211 = 90;
unit_exp_211 = 200;
unit_siegeDMG_207 = 1500;
unit_speed_207 = 1.5;
unit_hp_207 = 2600;
unit_dmg_min_207 = 20;
unit_dmg_max_207 = 30;
_root.boss1AddDMG_min = 5;
_root.boss1AddDMG_max = 15;
unit_ATTrad_207 = 10;
unit_VISrad_207 = 300;
unit_SIEGErad_207 = 105;
unit_critical_chance_207 = 5;
unit_critical_mod_207 = 3;
unit_attackDelay_207 = 50;
unit_interaptionResistance_207 = 20;
unit_stunResistance_207 = 50;
unit_cash_207 = 2000;
unit_exp_207 = 300;
unit_siegeDMG_202 = 100;
unit_speed_202 = 1.3;
unit_hp_202 = 100;
unit_dmg_min_202 = 10;
unit_dmg_max_202 = 30;
unit_ATTrad_202 = 150;
unit_VISrad_202 = 300;
unit_critical_chance_202 = 5;
unit_critical_mod_202 = 3;
unit_attackDelay_202 = 30;
unit_SIEGErad_202 = 105;
unit_interaptionResistance_202 = 40;
unit_stunResistance_202 = 20;
unit_cash_202 = 30;
unit_exp_202 = 7;
unit_siegeDMG_203 = 150;
unit_speed_203 = 1.3;
unit_hp_203 = 100;
unit_dmg_min_203 = 10;
unit_dmg_max_203 = 30;
unit_ATTrad_203 = 189;
unit_VISrad_203 = 300;
unit_critical_chance_203 = 5;
unit_critical_mod_203 = 3;
unit_attackDelay_203 = 50;
unit_SIEGErad_203 = 105;
unit_interaptionResistance_203 = 40;
unit_stunResistance_203 = 20;
unit_cash_203 = 50;
unit_exp_203 = 14;
unit_siegeDMG_205 = 300;
_root.mage_explosion_radius = 35;
unit_speed_205 = 1.3;
unit_hp_205 = 200;
unit_proj_speed_205 = 20;
unit_dmg_min_205 = 40;
unit_dmg_max_205 = 80;
unit_stun_time_205 = 60;
unit_ATTrad_205 = 250;
unit_VISrad_205 = 400;
unit_critical_chance_205 = 5;
unit_critical_mod_205 = 3;
unit_attackDelay_205 = 100;
unit_SIEGErad_205 = 105;
unit_interaptionResistance_205 = 20;
unit_stunResistance_205 = 20;
unit_cash_205 = 60;
unit_exp_205 = 20;
unit_siegeDMG_208 = 500;
_root.mage_explosion_radius_2 = 75;
unit_speed_208 = 1.3;
unit_hp_208 = 200;
unit_proj_speed_208 = 20;
unit_dmg_min_208 = 20;
unit_dmg_max_208 = 70;
unit_stun_time_208 = 90;
unit_ATTrad_208 = 300;
unit_VISrad_208 = 400;
unit_critical_chance_208 = 5;
unit_critical_mod_208 = 3;
unit_attackDelay_208 = 100;
unit_SIEGErad_208 = 108;
unit_interaptionResistance_208 = 30;
unit_stunResistance_208 = 30;
unit_cash_208 = 90;
unit_exp_208 = 30;
unit_siegeDMG_210 = 500000;
_root.boss2_explRadius = 80;
unit_speed_210 = 1.3;
unit_hp_210 = 5000;
unit_proj_speed_210 = 20;
unit_dmg_min_210 = 40;
unit_dmg_max_210 = 90;
unit_stun_time_210 = 90;
unit_ATTrad_210 = 250;
unit_VISrad_210 = 250;
unit_critical_chance_210 = 5;
unit_critical_mod_210 = 3;
unit_attackDelay_210 = 30;
unit_SIEGErad_210 = 108;
unit_interaptionResistance_210 = 90;
unit_stunResistance_210 = 80;
unit_cash_210 = 5000;
unit_exp_210 = 3000;
_root.sound_shell_depth = 999555;
_root.createEmptyMovieClip('sound_shell', _root.sound_shell_depth);
_root.createEmptyMovieClip('music_shell', _root.sound_shell_depth + 1);
musicInitiate();
initiateSounds();
_root.SFX_volume.setVolume(25);
_root.wave_length_1 = 100;
_root.wave_length_2 = 100;
_root.wave_length_3 = 100;
_root.wave_length_4 = 120;
_root.wave_length_5 = 120;
_root.wave_length_6 = 120;
_root.wave_length_7 = 120;
_root.wave_length_8 = 120;
_root.wave_length_9 = 80;
_root.wave_length_10 = 200;
_root.wave_length_11 = 100;
_root.wave_length_12 = 200;
_root.wave_length_13 = 100;
_root.wave_length_14 = 100;
_root.wave_length_15 = 60;
_root.wave_length_16 = 100;
_root.wave_length_17 = 80;
_root.wave_length_18 = 220;
_root.wave_length_19 = 120;
_root.wave_length_20 = 80;
_root.wave_length_21 = 120;
_root.wave_length_22 = 200;
_root.wave_length_23 = 666;
_root.wave_cash_1 = 1000;
_root.wave_cash_2 = 1000;
_root.wave_cash_3 = 1800;
_root.wave_cash_4 = 1800;
_root.wave_cash_5 = 2200;
_root.wave_cash_6 = 2300;
_root.wave_cash_7 = 2400;
_root.wave_cash_8 = 3000;
_root.wave_cash_9 = 2000;
_root.wave_cash_10 = 3500;
_root.wave_cash_11 = 3500;
_root.wave_cash_12 = 4500;
_root.wave_cash_13 = 3500;
_root.wave_cash_14 = 2000;
_root.wave_cash_15 = 2000;
_root.wave_cash_16 = 4000;
_root.wave_cash_17 = 4000;
_root.wave_cash_18 = 2000;
_root.wave_cash_19 = 2000;
_root.wave_cash_20 = 2000;
_root.wave_cash_21 = 2000;
_root.wave_cash_22 = 4000;
_root.wave_cash_23 = 2000;
_root.lvlExp_0 = 0;
_root.lvlExp_1 = 70;
_root.lvlExp_2 = 300;
_root.lvlExp_3 = 500;
_root.lvlExp_4 = 1000;
_root.lvlExp_5 = 1500;
_root.lvlExp_6 = 2000;
_root.lvlExp_7 = 2500;
_root.lvlExp_8 = 3000;
_root.lvlExp_9 = 3600;
_root.lvlExp_10 = 4200;
_root.lvlExp_11 = 5000;
_root.lvlExp_12 = 6000;
_root.lvlExp_13 = 7000;
_root.lvlExp_14 = 9000;
_root.lvlExp_15 = 11000;
_root.lvlExp_16 = 13000;
_root.lvlExp_17 = 15000;
_root.lvlExp_18 = 17000;
_root.lvlExp_19 = 19000;
_root.lvlExp_20 = 21000;
_root.lvlExp_21 = 23000;
_root.lvlExp_22 = 26000;
_root.lvlExp_23 = 30000;
_root.lvlExp_24 = 35000;
_root.lvlExp_25 = 40000;
_root.lvlExp_26 = 45000;
_root.lvlExp_27 = 50000;
_root.lvlExp_28 = 55000;
_root.lvlExp_29 = 60000;
_root.lvlExp_30 = 65000;
_root.lvlExp_31 = 70000;
_root.lvlExp_32 = 75000;
_root.lvlExp_33 = 80000;
_root.lvlExp_34 = 85000;
_root.lvlExp_35 = 90000;
_root.lvlExp_36 = 95000;
_root.lvlExp_37 = 100000;
_root.lvlExp_38 = 110000;
_root.lvlExp_39 = 120000;
_root.lvlExp_40 = 130000;
_root.lvlExp_41 = 999999;
gameMusic.start(0, 9999);
gameMusic.setVolume(50);
_root.this_is_survival = 0;
_root.thisIsSandBox = 0;
localkillsNullify();
INIT_yiffing();
spawnUnitSlots();
_root.attachMovie('kursor', 'kursor', _root.kursor_depth);
Mouse.hide();
AI_end();
saveslot000 = SharedObject.getLocal('necroDef_saves');
vl1 = this.saveslot000.data;
if (vl1.save_exists eq 1) {
saveANDload('load');
_root.leveling();
_root.bottom_menu.clickyclicky._visible = false;
if (!_root.spellSelectorLoad_1 or !_root.spellSelectorLoad_2 or !_root.spellSelectorLoad_3 or !_root.spellSelectorLoad_4) {
spellslotsAutoSelection();
_root.spellSelectorLoad_1 = 0;
_root.spellSelectorLoad_2 = 0;
_root.spellSelectorLoad_3 = 0;
_root.spellSelectorLoad_4 = 0;
}
} else {
saveslot000 = SharedObject.getLocal('necroDef_saves');
svloc = this.saveslot000.data;
svloc.cashSaved = 0;
svloc.kills201 = 0;
svloc.kills202 = 0;
svloc.kills203 = 0;
svloc.kills204 = 0;
svloc.kills205 = 0;
svloc.kills206 = 0;
svloc.kills207 = 0;
svloc.kills208 = 0;
svloc.kills209 = 0;
svloc.kills210 = 0;
svloc.kills211 = 0;
_root.spellSelectorLoad_1 = 3;
_root.spellSelectorLoad_2 = 3;
_root.spellSelectorLoad_3 = 3;
_root.spellSelectorLoad_4 = 3;
_root.attachMovie('freetimeCounter', 'freetimeCounter', _root.freetimeCounter_depth);
_root.freetimeCounter._x = 5;
_root.freetimeCounter._y = 44;
spawnHelpMenu();
_root.bottom_menu.clickyclicky._visible = true;
}
if (_root.current_wave > 1) {
spawnUpgradesMenu();
doPause();
_root.menuModeGameBlock = 1;
}
_root.cash = _root['wave_cash_' + _root.current_wave];
removeMovieClip(cpmstar_childad);
onEnterFrame = function () {
if (_root.menuModeGameBlock eq 1 or _root.helpMenu or _root.mainMenu) {
if (thereIsASelectedUnit != 0) {
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
}
severalUnitsSelected = 0;
_root.spell_mode = 0;
}
if (_root.block_everything_victory eq 1) {
severalUnitsSelected = 0;
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
}
if (_root.yiffISpaused eq 0) {
if (!_root.freetimeCounter) {
_root['scenario_wave_' + _root.current_wave]();
waveEnd();
}
if (_root.castleHitPoints < _root.castleDmg and _root.gameFailed != 1) {
_root.yiff.necropolis.play();
_root.gameFailed = 1;
_root.block_everything_victory = 1;
_root.menuModeGameBlock = 1;
}
leveling();
spellSlotsIntegrity();
upperMenuIntegrity();
bottomMunuIntegrity();
upgradesMenuIntegrity();
mouseIntegrity();
weaponKursorIntegrity();
creatingUnitsArray();
massSelectionIntegrity();
gravityNuke_integrity();
tremor();
boss2SummoningIntegrity();
spellUpgradesIntegrity();
unitCount = ARR_allUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_allUnits[i];
unitsKnowYourPlace(trgt);
unitsKnowYourPlaceTheHardWay(trgt);
UnitsKillCastle(trgt);
moveObject(trgt);
targetingIntegrity1(trgt);
targetingIntegrity2(trgt);
selectionIntegrity(trgt);
death_integrity(trgt);
unitStatIntegrity(trgt);
if (trgt.id eq 210) {
AI_boss2(trgt);
} else {
AI_units(trgt);
}
if (random(3) eq 1) {
force_spread(trgt);
}
renderObject(trgt);
++i;
}
for (var v2 in _root.yiff.projectile_layer) {
++dsfgdfgdfg111;
if (_root.yiff.projectile_layer[v2] instanceof MovieClip) {
if (_root.yiff.projectile_layer[v2].whatisit eq 'projectile') {
projectileIntegrity(_root.yiff.projectile_layer[v2]);
}
}
}
boss1_special();
castleLifeIntegrity();
showHPintegrity();
shldswrd_follow();
} else {
spellSlotsIntegrity();
upperMenuIntegrity();
bottomMunuIntegrity();
upgradesMenuIntegrity();
mouseIntegrity();
weaponKursorIntegrity();
creatingUnitsArray();
massSelectionIntegrity();
spellUpgradesIntegrity();
unitCount = ARR_allUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_allUnits[i];
selectionIntegrity(trgt);
++i;
}
showHPintegrity();
}
if (_root.unitClickedTimer > 0) {
--_root.unitClickedTimer;
} else {
_root.unitClickedTimer = 0;
}
};
onMouseUp = function () {
theMouseIsDown = 0;
if (hitTest1 != true and _root.block_everything_victory != 1 and !_root.helpMenu and !_root.mainMenu) {
if (_root.selectAllUnitsActivated != 1) {
doUnitSelection();
}
}
_root.selectAllUnitsActivated = 0;
};
onMouseDown = function () {
_root.infotext = '';
_root.selectAllUnitsActivated = 0;
if (_root.block_everything_victory eq 1 or _root.helpMenu or _root.mainMenu) {
return undefined;
}
if (_root.menuModeGameBlock != 1) {
theMouseIsDown = 1;
lockedMouse_x = _root._xmouse;
lockedMouse_y = _root._ymouse;
if (_root.kursorCancel eq 1) {
if (hitTest1 != true) {
if (thereIsASelectedUnit != 0) {
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
}
severalUnitsSelected = 0;
}
if (_root.spell_selector_mouseovered != 1) {
_root.spell_mode = 0;
}
}
if (hitTest1 != true) {
if (severalUnitsSelected eq 1) {
unitCountZZ = selectedUnitsArray.length;
if (_root.mousoveredEnemy != 0) {
j = 0;
while (j < unitCountZZ) {
trgt = selectedUnitsArray[j];
trgt.targeted_enemy = _root.mousoveredEnemy;
if (trgt.id != 102 and trgt.id != 104) {
trgt.holdPositionMode = 0;
}
trgt.forced_destination_x = 'none';
++j;
}
} else {
if (_root.mouseOveredUndead != 0) {
} else {
j = 0;
while (j < unitCountZZ) {
trgt = selectedUnitsArray[j];
rasstanovka(j);
xxx = _root._xmouse + xplus;
yyy = _root._ymouse + yplus;
trgt.forced_destination_x = xxx;
trgt.forced_destination_y = yyy;
trgt.slot._x = xxx;
trgt.slot._y = yyy;
++j;
}
}
}
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
severalUnitsSelected = 0;
}
if (thereIsASelectedUnit != 0 and severalUnitsSelected != 1) {
if (_root.mousoveredEnemy != 0) {
thereIsASelectedUnit.TIMER_attackDelay = 0;
thereIsASelectedUnit.gotoAndStop(1);
thereIsASelectedUnit.targeted_enemy = _root.mousoveredEnemy;
if (thereIsASelectedUnit.id != 102 and thereIsASelectedUnit.id != 104) {
thereIsASelectedUnit.holdPositionMode = 0;
}
thereIsASelectedUnit.forced_destination_x = 'none';
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
} else {
if (_root.mouseOveredUndead != 0) {
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
} else {
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit.forced_destination_x = _root._xmouse;
thereIsASelectedUnit.forced_destination_y = _root._ymouse;
thereIsASelectedUnit.slot._x = _root._xmouse;
thereIsASelectedUnit.slot._y = _root._ymouse;
thereIsASelectedUnit = 0;
}
}
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
}
}
if (_root.yiffISpaused eq 1 and _root.spell_mode != 0) {
doPause();
}
if (_root.spell_selector_mouseovered != 1 and _root.yiffISpaused != 1) {
if (_root.spell_mode eq 1) {
_root.SHoot_fireball(_xmouse, _ymouse);
} else {
if (_root.spell_mode eq 2) {
_root.SHoot_poisonBlast(_xmouse, _ymouse);
} else {
if (_root.spell_mode eq 3) {
_root.shockwave(_xmouse, _ymouse);
} else {
if (_root.spell_mode eq 4) {
_root.spellMadness(_xmouse, _ymouse);
} else {
if (_root.spell_mode eq 5) {
_root.healing(_xmouse, _ymouse);
} else {
if (_root.spell_mode eq 6) {
_root.gravityNuke(_xmouse, _ymouse);
} else {
if (_root.spell_mode eq 7) {
_root.SHoot_deathRay(_xmouse, _ymouse);
} else {
if (_root.spell_mode eq 8) {
_root.curse(_xmouse, _ymouse);
}
}
}
}
}
}
}
}
}
}
};
}
frame 21 {
prevFrame();
}
frame 23 {
gameMusic.stop();
for (var name in _root) {
if (_root[name] instanceof MovieClip) {
removeMovieClip(_root[name]);
}
}
}
frame 24 {
if (returntotitle eq 1) {
returntotitle = 0;
gotoAndStop(7);
} else {
gotoAndStop(20);
}
}
frame 25 {
gameMusic.stop();
for (var name in _root) {
if (_root[name] instanceof MovieClip) {
removeMovieClip(_root[name]);
}
}
}
frame 26 {
function localkillsNullify() {
localkills201 = 0;
localkills202 = 0;
localkills203 = 0;
localkills204 = 0;
localkills205 = 0;
localkills206 = 0;
localkills207 = 0;
localkills208 = 0;
localkills209 = 0;
localkills210 = 0;
localkills211 = 0;
}
function boss2_deathEffects(xxx, yyy) {
i = 0;
while (i < 12) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = xxx - 25 + random(50);
ttrrggtt._y = yyy - 25 + random(50);
++i;
}
iyiff = _root.yiff.dead_layer.getNextHighestDepth();
_root.yiff.dead_layer.attachMovie('boss2_summonSHockwave', 'boss2_summonSHockwave', iyiff);
bs2s_shkw = _root.yiff.dead_layer.boss2_summonSHockwave;
bs2s_shkw._x = xxx;
bs2s_shkw._y = yyy;
spawnDeathray(xxx, yyy, 0, -1);
spawnDeathray(xxx, yyy, 1, -1);
spawnDeathray(xxx, yyy, 1, 0);
spawnDeathray(xxx, yyy, 1, 1);
spawnDeathray(xxx, yyy, 0, 1);
spawnDeathray(xxx, yyy, -1, 1);
spawnDeathray(xxx, yyy, -1, 0);
spawnDeathray(xxx, yyy, -1, -1);
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('mage2explosion', 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
expl._x = xxx;
expl._y = yyy;
expl._height *= 1.4;
expl._width *= 1.4;
}
function boss2SummoningInitiation(xx, yy) {
iyiff = _root.yiff.dead_layer.getNextHighestDepth();
_root.yiff.dead_layer.attachMovie('boss2_summon_bottom', 'boss2_summon_bottom', iyiff);
bs2s_btm = _root.yiff.dead_layer.boss2_summon_bottom;
bs2s_btm._x = xx;
bs2s_btm._y = yy;
boss2summoningtremor = 0;
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('boss2_summon_top', 'boss2_summon_top', iyiff);
bs2s_top = _root.yiff.shooting_layer.boss2_summon_top;
bs2s_top._x = xx;
bs2s_top._y = yy;
}
function boss2SummoningIntegrity() {
if (!_root.yiff.shooting_layer.boss2_summon_top) {
return undefined;
}
xxx = _root.yiff.shooting_layer.boss2_summon_top._x;
yyy = _root.yiff.shooting_layer.boss2_summon_top._y;
i = 0;
while (i < 2) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = xxx - 50 + random(100);
ttrrggtt._y = yyy - 50 + random(100);
++i;
}
boss2summoningtremor += 0.3;
tremor2();
if (_root.yiff.shooting_layer.boss2_summon_top.aaa.gogogo eq 1) {
removeMovieClip(_root.yiff.shooting_layer.boss2_summon_top);
removeMovieClip(_root.yiff.dead_layer.boss2_summon_bottom);
_root.portalcastSND.start();
Spawn_units(210, xxx, yyy);
iyiff = _root.yiff.dead_layer.getNextHighestDepth();
_root.yiff.dead_layer.attachMovie('boss2_summonSHockwave', 'boss2_summonSHockwave', iyiff);
bs2s_shkw = _root.yiff.dead_layer.boss2_summonSHockwave;
bs2s_shkw._x = xxx;
bs2s_shkw._y = yyy;
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('mage2explosion', 'mage2explosion', iyiff);
bs2s_flsh = _root.yiff.shooting_layer.mage2explosion;
bs2s_flsh._x = xxx;
bs2s_flsh._y = yyy;
zz = 0;
while (zz < unitCount) {
trgt3 = ARR_allUnits[zz];
distdata222 = CALC_Dist_Xv_Yv(xxx, yyy, trgt3._x, trgt3._y);
distance222 = distdata222[0];
if (distance222 < 150) {
trgt3.TIMER_stunDelay = 45;
Ottalkivanie(trgt3, xxx, yyy, 100500);
}
++zz;
}
}
}
function AI_boss2(trgt) {
if (trgt.dmg > 0.5 * trgt.hp and trgt.fuckoffused != 1) {
trgt.fuckoffused = 1;
fuckoffBOSS2(trgt._x, trgt._y);
}
++trgt.lifetimer;
if (trgt.lifetimer / 30 > 5) {
trgt.attackDelay_base = 60;
}
if (trgt.lifetimer / 30 > 10) {
trgt.attackDelay_base = 80;
}
if (trgt.targeted_enemy.hp / trgt.targeted_enemy.hp - 1 eq 0) {
} else {
trgt.targeted_enemy = 'none';
}
if (trgt.TIMER_stunDelay > 0) {
trgt.TIMER_attackDelay = 0;
trgt.gotoAndStop(1);
--trgt.TIMER_stunDelay;
trgt.xspeed *= 0.8;
trgt.yspeed *= 0.8;
trgt.stun_anim._visible = true;
return undefined;
} else {
trgt.TIMER_stunDelay = 0;
trgt.stun_anim._visible = false;
}
AI_end();
if (trgt.TIMER_attackDelay > 0) {
do_AIstep_0 = 'done';
do_AIstep_2 = 'go';
} else {
do_AIstep_0 = 'done';
do_AIstep_1 = 'go';
}
trgt.VISrad_base = trgt.VISrad_default;
if (do_AIstep_1 eq 'go') {
do_AIstep_1 = 'done';
trgt.targeted_enemy = 'none';
unitCountZZ = ARR_necroUnits.length;
j = 0;
while (j < unitCountZZ) {
trgt62 = ARR_necroUnits[j].linktounit;
distdata = CALC_Dist_Xv_Yv(trgt62._x, trgt62._y, trgt._x, trgt._y);
ARR_necroUnits[j].temp_distData = distdata[0];
++j;
}
_root.ARR_necroUnits.sortOn('temp_distData', Array.NUMERIC);
possible_target = _root.ARR_necroUnits[0];
if (possible_target.temp_distData < trgt.VISrad) {
trgt.targeted_enemy = possible_target.linktounit;
}
do_AIstep_2 = 'go';
}
if (do_AIstep_2 eq 'go') {
do_AIstep_2 = 'done';
if (trgt.TIMER_attackDelay eq 0) {
trgt.gotoAndStop(2);
trgt.att_anim.gotoAndPlay(2);
rotation_face_target(trgt, trgt.targeted_enemy);
if (trgt.targeted_enemy eq 'none') {
trgt._rotation = 0;
}
AI_end();
trgt.TIMER_attackDelay = trgt.attackDelay;
} else {
--trgt.TIMER_attackDelay;
trgt.fireballTarget_x = trgt.targeted_enemy._x;
trgt.fireballTarget_y = trgt.targeted_enemy._y;
if (trgt.targeted_enemy eq 'none') {
trgt.fireballTarget_x = _root.yiff.necropolis._x;
trgt.fireballTarget_y = _root.yiff.necropolis._y - 135;
}
if (trgt.att_anim.do_dmg eq 1) {
trgt.att_anim.do_dmg = 0;
_root.mage_shot.start();
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('projectile_210', 'projectile_' + iyiff, iyiff);
strela = _root.yiff.projectile_layer['projectile_' + iyiff];
strela.whatisit = 'projectile';
if (trgt.targeted_enemy eq 'none') {
strela.targetingCastle = 1;
}
strela.id = 210;
strela._x = trgt._x;
strela._y = trgt._y;
strela.damage = trgt.dmg_min + random(trgt.dmg_max - trgt.dmg_min);
strela.stun_time = trgt.stun_time;
strela.speed = trgt.proj_speed;
strela.target_x = trgt.fireballTarget_x;
strela.target_y = trgt.fireballTarget_y;
strela.radius = _root.boss2_explRadius;
distdata = CALC_Dist_Xv_Yv(strela.target_x, strela.target_y, trgt._x, trgt._y);
xmodifier123 = distdata[1];
ymodifier123 = distdata[2];
strela.xspeed = strela.speed * xmodifier123;
strela.yspeed = strela.speed * ymodifier123;
strela.xpos = trgt._x;
strela.ypos = trgt._y;
strela.tempx = xpos;
strela.tempy = ypos;
trgt.targeted_enemy = 'none';
}
if (trgt.TIMER_attackDelay < 0 or trgt.TIMER_attackDelay eq 0) {
trgt.TIMER_attackDelay = 0;
trgt.gotoAndStop(1);
}
}
}
AI_end();
}
function fuckoffBOSS2(xxx, yyy) {
_root.portalcastSND.start();
iyiff = _root.yiff.dead_layer.getNextHighestDepth();
_root.yiff.dead_layer.attachMovie('boss2_summonSHockwave', 'boss2_summonSHockwave', iyiff);
bs2s_shkw = _root.yiff.dead_layer.boss2_summonSHockwave;
bs2s_shkw._x = xxx;
bs2s_shkw._y = yyy;
zz = 0;
while (zz < unitCount) {
trgt3 = ARR_allUnits[zz];
distdata222 = CALC_Dist_Xv_Yv(xxx, yyy, trgt3._x, trgt3._y);
distance222 = distdata222[0];
if (distance222 < 150) {
trgt3.TIMER_stunDelay = 45;
Ottalkivanie(trgt3, xxx, yyy, 100500);
}
++zz;
}
spawnDeathray(xxx, yyy, 0, -1);
spawnDeathray(xxx, yyy, 1, -1);
spawnDeathray(xxx, yyy, 1, 0);
spawnDeathray(xxx, yyy, 1, 1);
spawnDeathray(xxx, yyy, 0, 1);
spawnDeathray(xxx, yyy, -1, 1);
spawnDeathray(xxx, yyy, -1, 0);
spawnDeathray(xxx, yyy, -1, -1);
}
function spawnDeathray(xxx, yyy, xmod, ymod) {
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('deathRayProjectile', 'projectile_' + iyiff, iyiff);
strela = _root.yiff.projectile_layer['projectile_' + iyiff];
strela.whatisit = 'projectile';
strela._x = xxx;
strela._y = yyy;
strela.id = 2001;
strela.speed = 16;
strela.target_x = xx;
strela.target_y = yy;
distdata = CALC_Dist_Xv_Yv(strela.target_x, strela.target_y, strela._x, strela._y);
xmodifier123 = xmod;
ymodifier123 = ymod;
strela.xspeed = strela.speed * xmodifier123;
strela.yspeed = strela.speed * ymodifier123;
strela.xpos = strela._x;
strela.ypos = strela._y;
strela.tempx = xpos;
strela.tempy = ypos;
}
function unitsKnowYourPlaceTheHardWay(trgt) {
if (_root.doadditionalTrace eq 1) {
trace('///unit///' + trgt);
trace(trgt.xpos + ' xpos');
trace(trgt.ypos + ' ypos');
}
if (trgt._x > 1500 or trgt._y > 1500 or trgt._y < -500 or trgt._x < -500) {
trgt.dmg += 9999;
trace('unitknowyourplace active');
}
if (trgt.xpos > 1500 or trgt.ypos > 1500 or trgt.xpos < -500 or trgt.ypos < -500) {
trgt.dmg += 9999;
trace('unitknowyourplace active');
}
if (_root.wave_timer_1 / 30 > _root['wave_length_' + _root.current_wave]) {
if (trgt._x > 950 or trgt._y > 750 or trgt._y < -150 or trgt._x < -300) {
trgt.dmg += 9999;
trace('unitknowyourplace active');
}
}
}
function unitsKnowYourPlace(trgt) {
if (trgt._id < 200) {
return undefined;
}
if (trgt._x > 900 or trgt._x < -100 or trgt._y < -100 or trgt._y > 700) {
trgt._x = -30 + random(5);
trgt._y = 50 + random(500);
}
}
function creatingUnitsArray() {
_root.ARR_allUnits = [];
_root.ARR_necroUnits = [];
_root.ARR_lightUnits = [];
_root.ARR_allUnits_m = [];
_root.deathKnightCOUNT = 0;
_root.lichCOUNT = 0;
_root.boss2_COUNT = 0;
i = 0;
while (i < _root.units_max_count + 1) {
if (_root.yiff['unit_' + i]) {
this['unit_module_' + i] = {};
this['unit_module_' + i].linktounit = _root.yiff['unit_' + i];
ARR_allUnits_m.push(this['unit_module_' + i]);
ARR_allUnits.push(_root.yiff['unit_' + i]);
if (_root.yiff['unit_' + i].team eq 1) {
this['unit_module_' + i] = {};
this['unit_module_' + i].linktounit = _root.yiff['unit_' + i];
ARR_necroUnits.push(this['unit_module_' + i]);
if (_root.yiff['unit_' + i].id eq 103) {
++_root.deathKnightCOUNT;
}
if (_root.yiff['unit_' + i].id eq 104) {
++_root.lichCOUNT;
}
} else {
if (_root.yiff['unit_' + i].team eq 2) {
this['unit_module_' + i] = {};
this['unit_module_' + i].linktounit = _root.yiff['unit_' + i];
ARR_lightUnits.push(this['unit_module_' + i]);
if (_root.yiff['unit_' + i].id eq 210) {
++_root.boss2_COUNT;
}
}
}
}
++i;
}
_root.spawnedUnits = _root.ARR_necroUnits.length;
}
function targetingIntegrity1(trgt) {
trgt.targetedByUnitsCount = 0;
}
function targetingIntegrity2(trgt) {
++trgt.targeted_enemy.targetedByUnitsCount;
}
function death_integrity(trgt) {
if (trgt.poison > 0) {
trgt.poisonAn._visible = true;
} else {
trgt.poisonAn._visible = false;
}
if (trgt.poison > 0 and random(20) eq 1) {
trgt.poison -= 10;
trgt.dmg += 10;
otletaniedamaga(trgt._x, trgt._y, '-10', 'poison');
}
if (trgt.hp < trgt.dmg) {
if (trgt.id > 200) {
++_root['localkills' + trgt.id];
}
iyiff = _root.yiff.dead_layer.getNextHighestDepth();
_root.yiff.dead_layer.attachMovie('dead_' + trgt.id, 'dead_' + iyiff, iyiff);
trgt2 = _root.yiff.dead_layer['dead_' + iyiff];
trgt2.thisisDead = 1;
trgt2._x = trgt._x;
trgt2._y = trgt._y;
trgt2._rotation = trgt._rotation;
trgt.slot.occupation = 'none';
trgt.slot._x = trgt.slot.default_x;
trgt.slot._y = trgt.slot.default_y;
if (trgt.id eq 103 or trgt.id eq 107) {
_root.dk_die_sndplay();
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('dead_103_upper', 'dead_103_upper' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['dead_103_upper' + iyiff];
ttrrggtt.thisisDead = 1;
ttrrggtt._x = trgt._x;
ttrrggtt._y = trgt._y;
ttrrggtt._rotation = trgt._rotation;
}
if (trgt.id eq 107) {
DKHero_deathExplosionEffect(trgt._x, trgt._y);
ttrrggtt._rotation = random(360);
sorcBoomSND();
}
if (trgt eq _root.mousoveredEnemy) {
_root.mousoveredEnemy = 0;
}
if (trgt.id > 200) {
_root.cash += trgt.cash;
_root.exp_ += trgt.exp_;
}
if (trgt.id eq 210) {
boss2_deathEffects(trgt._x, trgt._y);
}
removeMovieClip(trgt.link_to_hpIndicator);
removeMovieClip(trgt);
}
}
function removeUnitProper(trgt) {
trgt.slot.occupation = 'none';
trgt.slot._x = trgt.slot.default_x;
trgt.slot._y = trgt.slot.default_y;
if (trgt eq _root.mousoveredEnemy) {
_root.mousoveredEnemy = 0;
}
removeMovieClip(trgt.link_to_hpIndicator);
removeMovieClip(trgt);
}
function selectionIntegrity(trgt) {
if (trgt.madness_timer > 0) {
trgt.madness_show._visible = true;
} else {
trgt.madness_show._visible = false;
}
if (severalUnitsSelected eq 1) {
thereIsASelectedUnit = 0;
unitCountZZ = selectedUnitsArray.length;
j = 0;
while (j < unitCountZZ) {
trgt = selectedUnitsArray[j];
trgt.iSselected = 0;
trgt.selection_._visible = true;
trgt.selection_._alpha = 100;
++j;
}
}
if (severalUnitsSelected eq 0) {
if (trgt.id < 200) {
if (trgt.iSselected eq 1) {
thereIsASelectedUnit = trgt;
trgt.selection_._visible = true;
trgt.selection_._alpha = 100;
} else {
if (_root.mouseOveredUndead eq trgt) {
trgt.selection_._visible = true;
trgt.selection_._alpha = 50;
} else {
trgt.selection_._visible = false;
}
}
} else {
if (_root.mousoveredEnemy eq trgt) {
trgt.selection_._visible = true;
} else {
trgt.selection_._visible = false;
}
}
}
}
function unitStatIntegrity(trgt) {
if (trgt.id < 200) {
if (trgt.TIMER_healingSpell > 0) {
--trgt.TIMER_healingSpell;
trgt.dmg -= _root.healingAmmount;
trgt.healingShow._visible = true;
} else {
trgt.TIMER_healingSpell = 0;
trgt.healingShow._visible = false;
}
}
if (trgt.dmg > 0) {
trgt.dmg -= _root.regeneration_rate;
} else {
trgt.dmg = 0;
}
if (trgt.TIMER_curseSpell > 0) {
--trgt.TIMER_curseSpell;
trgt.curseInd._visible = true;
trgt.speed = trgt.speed_base * 0.8;
trgt.ATTrad = trgt.ATTrad_base;
trgt.VISrad = trgt.VISrad_base;
trgt.SIEGErad = trgt.SIEGErad_base;
trgt.attackDelay = Math.floor(trgt.attackDelay_base + trgt.attackDelay_base * (1 - _root.curseSpellEffect));
trgt.dmg_min = Math.floor(trgt.dmg_min_base * _root.curseSpellEffect);
trgt.dmg_max = Math.floor(trgt.dmg_max_base * _root.curseSpellEffect);
trgt.interaptionResistance = Math.floor(trgt.interaptionResistance_base * _root.curseSpellEffect);
trgt.stunResistance = Math.floor(trgt.stunResistance_base * _root.curseSpellEffect);
} else {
trgt.TIMER_curseSpell = 0;
trgt.curseInd._visible = false;
trgt.speed = trgt.speed_base;
trgt.ATTrad = trgt.ATTrad_base;
trgt.VISrad = trgt.VISrad_base;
trgt.SIEGErad = trgt.SIEGErad_base;
trgt.attackDelay = trgt.attackDelay_base;
trgt.dmg_min = trgt.dmg_min_base;
trgt.dmg_max = trgt.dmg_max_base;
trgt.interaptionResistance = trgt.interaptionResistance_base;
trgt.stunResistance = trgt.stunResistance_base;
}
}
function AI_end() {
do_AIstep_0 = 'go';
do_AIstep_1 = 'ergo';
do_AIstep_2 = 'ergo';
do_AIstep_3 = 'ergo';
do_AIstep_4 = 'ergo';
do_AIstep_5 = 'ergo';
do_AIstep_6 = 'ergo';
}
function AI_units(trgt) {
if (trgt.enemyEngageTimer > 0) {
--trgt.enemyEngageTimer;
if (trgt.targeted_enemy eq 'none') {
EngageEnemy_repeating(trgt);
}
} else {
trgt.enemyEngageTimer = 0;
}
if (trgt.targeted_enemy.hp / trgt.targeted_enemy.hp - 1 eq 0) {
} else {
trgt.targeted_enemy = 'none';
}
if (trgt.targeted_enemy._x > -9999) {
} else {
trgt.targeted_enemy = 'none';
}
if (trgt.looseYourTarget eq 1) {
trgt.looseYourTarget = 0;
trgt.targeted_enemy = 'none';
}
if (trgt.madness_timer > 1) {
--trgt.madness_timer;
} else {
if (trgt.madness_timer eq 1) {
trgt.madness_timer = 0;
trgt.targeted_enemy = 'none';
}
}
if (trgt.TIMER_stunDelay > 0) {
trgt.TIMER_attackDelay = 0;
trgt.gotoAndStop(1);
--trgt.TIMER_stunDelay;
trgt.xspeed *= 0.8;
trgt.yspeed *= 0.8;
trgt.stun_anim._visible = true;
return undefined;
} else {
trgt.TIMER_stunDelay = 0;
trgt.stun_anim._visible = false;
if (trgt.TIMER_attackDelay > 0 and trgt.targeted_enemy eq 'none') {
--trgt.TIMER_attackDelay;
if (trgt.id eq 103 or trgt.id eq 106 or trgt.id eq 107) {
return undefined;
}
if (trgt.TIMER_attackDelay > 20) {
trgt.TIMER_attackDelay = 20;
}
trgt.gotoAndStop(1);
return undefined;
}
}
AI_end();
trgt.xspeed = 0;
trgt.yspeed = 0;
if (do_AIstep_0 eq 'go') {
do_AIstep_0 = 'done';
if (trgt.TIMER_attackDelay > 0) {
do_AIstep_2 = 'go';
} else {
if (trgt.targeted_enemy != 'none') {
do_AIstep_2 = 'go';
rotation_face_target(trgt, trgt.targeted_enemy);
} else {
do_AIstep_1 = 'go';
}
}
}
fix210411movementDontGoBack(trgt);
if (trgt.forced_destination_x != 'none') {
do_AIstep_0 = 'done';
do_AIstep_2 = 'nononon';
do_AIstep_1 = 'nononon';
trgt.targeted_enemy = 'none';
do_AIstep_101 = 'go';
trgt.VISrad_base = trgt.ATTrad_base - 1;
} else {
trgt.VISrad_base = trgt.VISrad_default;
}
if (trgt._y > 520) {
trgt.forced_destination_y = 510;
trgt.forced_destination_x = trgt._x;
}
if (trgt._y < 18) {
trgt.forced_destination_y = 25;
trgt.forced_destination_x = trgt._x;
}
if (trgt._x < 0 and trgt.id < 200) {
trgt.forced_destination_y = trgt._y;
trgt.forced_destination_x = 20;
}
if (do_AIstep_1 eq 'go') {
do_AIstep_1 = 'done';
if (trgt.team eq 2) {
if (random(RANDOM_NUM_raznosEnemyCHeka) eq 1) {
if (trgt.madness_timer > 0) {
trgt.targeted_enemy = 'none';
unitCountZZ = ARR_allUnits_m.length;
j = 0;
while (j < unitCountZZ) {
trgt62 = ARR_allUnits_m[j].linktounit;
if (trgt62 != trgt) {
distdata = CALC_Dist_Xv_Yv(trgt62._x, trgt62._y, trgt._x, trgt._y);
ARR_allUnits_m[j].temp_distData = distdata[0];
} else {
ARR_allUnits_m[j].temp_distData = 99999999;
}
++j;
}
_root.ARR_allUnits_m.sortOn('temp_distData', Array.NUMERIC);
possible_target = _root.ARR_allUnits_m[0];
if (possible_target.temp_distData < trgt.VISrad) {
trgt.targeted_enemy = possible_target.linktounit;
}
} else {
trgt.targeted_enemy = 'none';
unitCountZZ = ARR_necroUnits.length;
j = 0;
while (j < unitCountZZ) {
trgt62 = ARR_necroUnits[j].linktounit;
distdata = CALC_Dist_Xv_Yv(trgt62._x, trgt62._y, trgt._x, trgt._y);
ARR_necroUnits[j].temp_distData = distdata[0];
++j;
}
_root.ARR_necroUnits.sortOn('temp_distData', Array.NUMERIC);
possible_target = _root.ARR_necroUnits[0];
if (possible_target.temp_distData < trgt.VISrad) {
trgt.targeted_enemy = possible_target.linktounit;
}
}
}
if (trgt.targeted_enemy eq 'none' and trgt.id eq 210) {
trgt.targeted_enemy = 'castle';
}
if (trgt.targeted_enemy eq 'none') {
do_AIstep_4 = 'go';
} else {
do_AIstep_2 = 'go';
}
} else {
if (trgt.team eq 1) {
if (random(RANDOM_NUM_raznosEnemyCHeka) != 1111) {
trgt.targeted_enemy = 'none';
unitCount_11 = ARR_lightUnits.length;
j = 0;
while (j < unitCount_11) {
trgt52 = ARR_lightUnits[j].linktounit;
distdata = CALC_Dist_Xv_Yv(trgt52._x, trgt52._y, trgt._x, trgt._y);
ARR_lightUnits[j].temp_distData = distdata[0];
++j;
}
_root.ARR_lightUnits.sortOn('temp_distData', Array.NUMERIC);
possible_target = _root.ARR_lightUnits[0];
if (possible_target.temp_distData < trgt.VISrad and possible_target.linktounit._x > 20) {
trgt.targeted_enemy = possible_target.linktounit;
}
}
if (trgt.targeted_enemy eq 'none') {
do_AIstep_3 = 'go';
} else {
do_AIstep_2 = 'go';
}
}
}
}
if (do_AIstep_2 eq 'go') {
do_AIstep_2 = 'done';
distdata = CALC_Dist_Xv_Yv(trgt.targeted_enemy._x, trgt.targeted_enemy._y, trgt._x, trgt._y);
distance_to_enemy = distdata[0];
xmodifier123 = distdata[1];
ymodifier123 = distdata[2];
if (distance_to_enemy - trgt.radius - trgt.targeted_enemy.radius < trgt.ATTrad) {
if (trgt.TIMER_attackDelay eq 0) {
trgt.gotoAndStop(2);
trgt.att_anim.gotoAndPlay(2);
_root.unit_attack_sound(trgt.id);
rotation_face_target(trgt, trgt.targeted_enemy);
AI_end();
trgt.TIMER_attackDelay = trgt.attackDelay;
} else {
--trgt.TIMER_attackDelay;
if (trgt.id eq 205 or trgt.id eq 208) {
trgt.fireballTarget_x = trgt.targeted_enemy._x;
trgt.fireballTarget_y = trgt.targeted_enemy._y;
}
if (trgt.att_anim.do_dmg eq 1) {
trgt.att_anim.do_dmg = 0;
_root.unit_HIT_sound(trgt.id);
if (trgt.id eq 205 or trgt.id eq 208) {
_root.mage_shot.start();
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
if (trgt.id eq 205) {
_root.yiff.projectile_layer.attachMovie('projectile_205', 'projectile_' + iyiff, iyiff);
} else {
_root.yiff.projectile_layer.attachMovie('projectile_208', 'projectile_' + iyiff, iyiff);
}
strela = _root.yiff.projectile_layer['projectile_' + iyiff];
strela.whatisit = 'projectile';
strela._x = trgt._x;
strela._y = trgt._y;
strela.damage = trgt.dmg_min + random(trgt.dmg_max - trgt.dmg_min);
strela.stun_time = trgt.stun_time;
strela.speed = trgt.proj_speed;
strela.target_x = trgt.fireballTarget_x;
strela.target_y = trgt.fireballTarget_y;
if (trgt.id eq 205) {
strela.radius = _root.mage_explosion_radius;
} else {
strela.radius = _root.mage_explosion_radius_2;
strela.id = 208;
}
distdata = CALC_Dist_Xv_Yv(strela.target_x, strela.target_y, trgt._x, trgt._y);
xmodifier123 = distdata[1];
ymodifier123 = distdata[2];
strela.xspeed = strela.speed * xmodifier123;
strela.yspeed = strela.speed * ymodifier123;
strela.xpos = trgt._x;
strela.ypos = trgt._y;
strela.tempx = xpos;
strela.tempy = ypos;
if (trgt.id eq 208) {
trgt.targeted_enemy = 'none';
}
} else {
if (trgt.id eq 103) {
deathKnightAttack(trgt);
} else {
if (trgt.id eq 107) {
deathKnightAttack2(trgt);
} else {
if (trgt.id eq 211) {
morningstarBlow(trgt);
} else {
if (trgt.id eq 104) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('elisiumTear', 'elisiumTear' + iyiff, iyiff);
eltear__ = _root.yiff.shooting_layer['elisiumTear' + iyiff];
eltear__._width = 6.9;
eltear__._height = 18.3;
eltear__._x = trgt.targeted_enemy._x;
eltear__._y = trgt.targeted_enemy._y;
} else {
distdata = CALC_Dist_Xv_Yv(trgt.targeted_enemy._x, trgt.targeted_enemy._y, trgt._x, trgt._y);
distance_to_enemy = distdata[0];
rotation_face_target(trgt, trgt.targeted_enemy);
if (trgt.id eq 102 or trgt.id eq 202 or trgt.id eq 203) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
if (trgt.id eq 102) {
_root.yiff.shooting_layer.attachMovie('arrow_fly_2', 'arrow_fly' + iyiff, iyiff);
trgt.targeted_enemy.darker._visible = true;
trgt.targeted_enemy.darker.gotoAndPlay(1);
} else {
if (trgt.id eq 202) {
_root.yiff.shooting_layer.attachMovie('arrow_fly', 'arrow_fly' + iyiff, iyiff);
} else {
if (trgt.id eq 203) {
_root.yiff.shooting_layer.attachMovie('arrow_fly_3', 'arrow_fly' + iyiff, iyiff);
}
}
}
strela = _root.yiff.shooting_layer['arrow_fly' + iyiff];
strela._x = trgt._x;
strela._y = trgt._y;
rotation_face_target(strela, trgt.targeted_enemy);
if (distance_to_enemy < 50) {
strela.diefast = 1;
}
}
if (distance_to_enemy - trgt.radius - trgt.targeted_enemy.radius < trgt.ATTrad and trgt.id != 103 and trgt.id != 107) {
damage = trgt.dmg_min + random(trgt.dmg_max - trgt.dmg_min);
trgt.targeted_enemy.dmg += damage;
if (random(100) > trgt.targeted_enemy.interaptionResistance) {
trgt.targeted_enemy.TIMER_attackDelay = 0;
trgt.targeted_enemy.gotoAndStop(1);
}
otletaniedamaga(trgt.targeted_enemy._x, trgt.targeted_enemy._y, damage, 'dmg');
if (trgt.id eq 203) {
trgt.targeted_enemy.shockAnim._visible = true;
trgt.targeted_enemy.shockAnim.play();
trgt3 = trgt.targeted_enemy;
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay = _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay = 30;
}
}
if (trgt.id eq 106) {
ghoulKingPUNCH(trgt, trgt.targeted_enemy);
}
if (trgt.id eq 207 or trgt.id eq 209) {
_root.mageFIreballDetonate.start();
_root.markedByBoss1 = trgt.targeted_enemy;
_root.markedByBoss1.bossed1timer = 5;
boss1PUNCH(trgt, trgt.targeted_enemy);
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('unitEnterCastle', 'unitEnterCastle' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['unitEnterCastle' + iyiff];
ttrrggtt._x = _root.markedByBoss1._x;
ttrrggtt._y = _root.markedByBoss1._y;
}
}
}
}
}
}
}
}
if (trgt.TIMER_attackDelay < 0 or trgt.TIMER_attackDelay eq 0) {
trgt.TIMER_attackDelay = 0;
trgt.gotoAndStop(1);
}
}
} else {
if (trgt.holdPositionMode eq 1) {
} else {
xmodifier = xmodifier123;
ymodifier = ymodifier123;
trgt.xspeed = trgt.speed * xmodifier;
trgt.yspeed = trgt.speed * ymodifier;
trgt.gotoAndStop(3);
rotation_toFace_movement(trgt, trgt.xspeed, trgt.yspeed);
}
}
}
if (do_AIstep_3 eq 'go') {
do_AIstep_3 = 'done';
distdata = CALC_Dist_Xv_Yv(trgt.slot._x, trgt.slot._y, trgt._x, trgt._y);
distance_to_slot = distdata[0];
if (distance_to_slot < trgt.speed * 1.5) {
trgt.gotoAndStop(1);
if (random(500) eq 1) {
trgt._rotation += random(100) - 50;
}
AI_end();
} else {
xmodifier = distdata[1];
ymodifier = distdata[2];
trgt.xspeed = trgt.speed * xmodifier;
trgt.yspeed = trgt.speed * ymodifier;
rotation_toFace_movement(trgt, trgt.xspeed, trgt.yspeed);
trgt.gotoAndStop(3);
}
}
if (do_AIstep_101 eq 'go') {
do_AIstep_101 = 'done';
distdata = CALC_Dist_Xv_Yv(trgt.forced_destination_x, trgt.forced_destination_y, trgt._x, trgt._y);
distance_to_slot = distdata[0];
if (distance_to_slot < trgt.speed * 1.5) {
trgt.forced_destination_x = 'none';
trgt.forced_destination_y = 'none';
trgt.gotoAndStop(1);
AI_end();
} else {
xmodifier = distdata[1];
ymodifier = distdata[2];
trgt.xspeed = trgt.speed * xmodifier;
trgt.yspeed = trgt.speed * ymodifier;
rotation_toFace_movement(trgt, trgt.xspeed, trgt.yspeed);
trgt.gotoAndStop(3);
}
}
if (do_AIstep_4 eq 'go' and trgt.holdPositionMode != 1) {
do_AIstep_4 = 'done';
distdata = CALC_Dist_Xv_Yv(_root.yiff.necropolis._x, _root.yiff.necropolis._y, trgt._x, trgt._y);
distance_to_zamok = distdata[0];
distance_to_zamok_x = Math.abs(_root.yiff.necropolis._x - trgt._x);
if (distance_to_zamok < trgt.SIEGErad) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('unitEnterCastle', 'unitEnterCastle' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['unitEnterCastle' + iyiff];
ttrrggtt._x = trgt._x;
ttrrggtt._y = trgt._y;
assultSND();
_root.tremorTimer = 20;
_root.castleDmg += trgt.siegeDMG;
removeMovieClip(trgt.link_to_hpIndicator);
removeMovieClip(trgt);
AI_end();
} else {
if (distance_to_zamok_x < _root.homing_radius) {
xmodifier = distdata[1];
ymodifier = distdata[2];
trgt.gotoAndStop(3);
trgt.xspeed = trgt.speed * xmodifier;
trgt.yspeed = trgt.speed * ymodifier;
rotation_toFace_movement(trgt, trgt.xspeed, trgt.yspeed);
} else {
trgt.xspeed = trgt.speed;
trgt.gotoAndStop(3);
trgt.yspeed = 0;
rotation_toFace_movement(trgt, trgt.xspeed, trgt.yspeed);
}
}
}
AI_end();
if (trgt._currentframe eq 3 and trgt.xspeed eq 0 and trgt.yspeed eq 0) {
trgt.gotoAndStop(1);
}
}
function fix210411movementDontGoBack(trgt) {
if (trgt.forced_destination_x eq 'none' and trgt.holdPositionMode != 1) {
if (random(30) eq 1) {
trgt.slot._x = trgt._x;
trgt.slot._y = trgt._y;
}
}
}
function moveObject(target) {
if (target.id eq 210 and target.whatisit != 'projectile') {
return undefined;
}
target.tempx = target.xpos + target.xspeed;
target.tempy = target.ypos + target.yspeed;
}
function renderObject(target) {
if (target.id eq 210 and target.whatisit != 'projectile') {
return undefined;
}
target.xpos = target.tempx;
target.ypos = target.tempy;
target._x = target.xpos;
target._y = target.ypos;
}
function force_spread(trgt) {
unitCount = ARR_allUnits.length;
j = 0;
while (j < unitCount) {
trgt2 = ARR_allUnits[j];
if (trgt2 != trgt and trgt.TIMER_stunDelay eq 0 and trgt2.TIMER_stunDelay eq 0 and trgt.TIMER_attackDelay eq 0 and trgt2.TIMER_attackDelay eq 0) {
distdata = CALC_Dist_Xv_Yv(trgt2._x, trgt2._y, trgt._x, trgt._y);
distance = distdata[0];
if (distance < trgt.radius * 2) {
Ottalkivanie(trgt2, trgt._x, trgt._y, 999);
}
} else {
if (trgt2 != trgt) {
distdata = CALC_Dist_Xv_Yv(trgt2._x, trgt2._y, trgt._x, trgt._y);
distance = distdata[0];
if (distance < 15) {
Ottalkivanie(trgt2, trgt._x, trgt._y, 999);
}
}
}
++j;
}
}
function projectileIntegrity(trgt) {
moveObject(trgt);
renderObject(trgt);
distdata = CALC_Dist_Xv_Yv(trgt.target_x, trgt.target_y, trgt._x, trgt._y);
distance = distdata[0];
if (trgt.id eq 1) {
j = 0;
while (j < 4) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('trail1', 'trail' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['trail' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = trgt._x - 3 + random(6);
ttrrggtt._y = trgt._y - 3 + random(6);
++j;
}
}
if (trgt.id eq 2) {
j = 0;
while (j < 4) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('trail2', 'trail' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['trail' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = trgt._x - 3 + random(6);
ttrrggtt._y = trgt._y - 3 + random(6);
++j;
}
}
if (trgt.id eq 210) {
j = 0;
while (j < 3) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = trgt._x - 4 + random(8);
ttrrggtt._y = trgt._y - 4 + random(8);
++j;
}
}
if (trgt.id eq 2000) {
if (trgt.timerchek < 999999) {
++trgt.timerchek;
} else {
trgt.timerchek = 0;
}
j = 0;
while (j < 2) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('trail_333', 'trail' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['trail' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = trgt._x - 3 + random(6);
ttrrggtt._y = trgt._y - 3 + random(6);
++j;
}
if (trgt.timerchek > 25) {
if (random(3) eq 1) {
EXPLsmallPlay();
}
eXplosionX = trgt._x - 60 + random(120);
eXplosionY = trgt._y - 65 + random(120);
explosionAnimation_small(eXplosionX, eXplosionY);
zz = 0;
while (zz < unitCount) {
trgt3 = ARR_allUnits[zz];
distdata222 = CALC_Dist_Xv_Yv(eXplosionX, eXplosionY, trgt3._x, trgt3._y);
distance222 = distdata222[0];
if (distance222 < 30) {
Ottalkivanie(trgt3, eXplosionX, eXplosionY, 2000);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay = _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay = _root.deathRay_STUN;
}
damage_ = _root.deathRayDMG_min + random(_root.deathRayDMG_max - _root.deathRayDMG_min);
trgt3.dmg += damage_;
otletaniedamaga(trgt3._x, trgt3._y, damage_, 'dmg');
}
++zz;
}
}
if (trgt._x < -100 or trgt._x > 900 or trgt._y < -100 or trgt._y > 600) {
removeMovieClip(trgt);
}
return undefined;
}
if (trgt.id eq 2001) {
if (trgt.timerchek < 999999) {
++trgt.timerchek;
} else {
trgt.timerchek = 0;
}
j = 0;
while (j < 2) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('trail_333', 'trail' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['trail' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = trgt._x - 3 + random(6);
ttrrggtt._y = trgt._y - 3 + random(6);
++j;
}
if (trgt.timerchek > 2 and random(2) eq 1) {
if (random(3) eq 1) {
EXPLsmallPlay();
}
eXplosionX = trgt._x - 60 + random(120);
eXplosionY = trgt._y - 65 + random(120);
explosionAnimation_small(eXplosionX, eXplosionY);
zz = 0;
while (zz < unitCount) {
trgt3 = ARR_allUnits[zz];
distdata222 = CALC_Dist_Xv_Yv(eXplosionX, eXplosionY, trgt3._x, trgt3._y);
distance222 = distdata222[0];
if (distance222 < 30) {
Ottalkivanie(trgt3, eXplosionX, eXplosionY, 2000);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay = _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay = 60;
}
damage_ = 50 + random(150);
trgt3.dmg += damage_;
otletaniedamaga(trgt3._x, trgt3._y, damage_, 'dmg');
}
++zz;
}
}
if (trgt._x < -100 or trgt._x > 900 or trgt._y < -100 or trgt._y > 600) {
removeMovieClip(trgt);
}
return undefined;
}
if (trgt.id != 208 and trgt.id != 210) {
if (distance < trgt.speed * 1.1) {
EXPL_x = Math.floor(trgt.target_x * 10) / 10;
EXPL_y = Math.floor(trgt.target_y * 10) / 10;
if (trgt.id eq 1) {
snd_PoisonExplosion();
explosionAnimation_poison(EXPL_x, EXPL_y);
} else {
if (trgt.id eq 2) {
explosionSND();
explosionAnimation_big(EXPL_x, EXPL_y);
} else {
_root.mageFIreballDetonate.start();
explosionAnimation_small(EXPL_x, EXPL_y);
}
}
zz = 0;
while (zz < unitCount) {
trgt3 = ARR_allUnits[zz];
distdata55 = CALC_Dist_Xv_Yv(EXPL_x, EXPL_y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (trgt.id eq 1 and trgt3.id < 200) {
if (distance55 < trgt.radius) {
Ottalkivanie(trgt3, EXPL_x, EXPL_y, 2);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += 30;
}
}
} else {
if (distance55 < trgt.radius) {
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += trgt.stun_time;
}
trgt3.dmg += trgt.damage;
if (trgt.poison > 0) {
if (trgt3.poison < trgt.poison) {
trgt3.poison = trgt.poison;
}
}
if (random(100) > trgt3.interaptionResistance) {
trgt3.TIMER_attackDelay = 0;
trgt3.gotoAndStop(1);
}
otletaniedamaga(trgt3._x, trgt3._y, trgt.damage, 'dmg');
if (trgt.id eq 2) {
Ottalkivanie(trgt3, EXPL_x, EXPL_y, 3);
}
}
}
++zz;
}
removeMovieClip(trgt);
}
}
if (trgt.id eq 208) {
if (distance < trgt.speed * 1.1) {
EXPL_x = Math.floor(trgt.target_x * 10) / 10;
EXPL_y = Math.floor(trgt.target_y * 10) / 10;
i = 0;
while (i < 10) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = EXPL_x - 25 + random(50);
ttrrggtt._y = EXPL_y - 25 + random(50);
++i;
}
sorcBoomSND();
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('mage2explosion', 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
expl._x = EXPL_x;
expl._y = EXPL_y;
unitCountZZ = ARR_necroUnits.length;
zz = 0;
while (zz < unitCountZZ) {
trgt3 = ARR_necroUnits[zz].linktounit;
distdata55 = CALC_Dist_Xv_Yv(EXPL_x, EXPL_y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < trgt.radius) {
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += trgt.stun_time;
}
trgt3.dmg += trgt.damage;
if (random(100) > trgt3.interaptionResistance) {
trgt3.TIMER_attackDelay = 0;
trgt3.gotoAndStop(1);
}
otletaniedamaga(trgt3._x, trgt3._y, trgt.damage, 'dmg');
Ottalkivanie(trgt3, EXPL_x, EXPL_y, 3);
}
++zz;
}
removeMovieClip(trgt);
}
}
if (trgt.id eq 210) {
if (distance < trgt.speed * 1.1) {
EXPL_x = Math.floor(trgt.target_x * 10) / 10;
EXPL_y = Math.floor(trgt.target_y * 10) / 10;
i = 0;
while (i < 15) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = EXPL_x - 35 + random(70);
ttrrggtt._y = EXPL_y - 35 + random(70);
++i;
}
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('mage2explosion', 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
sorcBoomSND();
expl._x = EXPL_x;
expl._y = EXPL_y;
expl._height *= 1.3;
expl._width *= 1.3;
if (trgt.targetingCastle eq 1) {
_root.spell_mode = 0;
_root.spell_delay_timer_1 += 40;
_root.spell_delay_timer_2 += 40;
_root.spell_delay_timer_3 += 40;
_root.spell_delay_timer_4 += 40;
_root.spell_delay_timer_5 += 40;
_root.spell_delay_timer_6 += 40;
_root.spell_delay_timer_7 += 40;
_root.spell_delay_timer_8 += 40;
_root.tremorTimer = 10;
_root.castleDmg += 40;
} else {
unitCountZZ = ARR_necroUnits.length;
zz = 0;
while (zz < unitCountZZ) {
trgt3 = ARR_necroUnits[zz].linktounit;
distdata55 = CALC_Dist_Xv_Yv(EXPL_x, EXPL_y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < trgt.radius) {
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += trgt.stun_time;
}
trgt3.dmg += trgt.damage;
if (random(100) > trgt3.interaptionResistance) {
trgt3.TIMER_attackDelay = 0;
trgt3.gotoAndStop(1);
}
otletaniedamaga(trgt3._x, trgt3._y, trgt.damage, 'dmg');
Ottalkivanie(trgt3, EXPL_x, EXPL_y, 3);
}
++zz;
}
}
removeMovieClip(trgt);
}
}
}
function deathKnightAttack(center) {
center.targeted_enemy = 'none';
lightUnitsCount = _root.ARR_lightUnits.length;
zz = 0;
while (zz < lightUnitsCount) {
trgt3 = _root.ARR_lightUnits[zz].linktounit;
trace(trgt3);
distdata55 = CALC_Dist_Xv_Yv(center._x, center._y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < _root.DK_att360_radius) {
Ottalkivanie(trgt3, center._x, center._y, 4);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += _root.DK_att360_stun;
}
damage1 = center.dmg_min + random(center.dmg_max - center.dmg_min);
trgt3.dmg += damage1;
otletaniedamaga(trgt3._x, trgt3._y, damage1, 'dmg');
}
++zz;
}
}
function deathKnightAttack2(center) {
center.targeted_enemy = 'none';
lightUnitsCount = _root.ARR_lightUnits.length;
zz = 0;
while (zz < lightUnitsCount) {
trgt3 = _root.ARR_lightUnits[zz].linktounit;
distdata55 = CALC_Dist_Xv_Yv(center._x, center._y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < _root.DK_att360_radius * 1.2) {
Ottalkivanie(trgt3, center._x, center._y, 4);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += _root.DK_heroStun;
}
damage1 = center.dmg_min + random(center.dmg_max - center.dmg_min);
trgt3.dmg += damage1;
otletaniedamaga(trgt3._x, trgt3._y, damage1, 'dmg');
explosionAnimation_small(trgt3._x, trgt3._y, 0.5);
}
++zz;
}
}
function boss1PUNCH(center, victim) {
center.targeted_enemy = 'none';
trgt3 = victim;
distdata55 = CALC_Dist_Xv_Yv(center._x, center._y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < 500) {
Ottalkivanie(trgt3, center._x, center._y, 4.5);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += _root.ghoulKingStunPower;
}
}
}
function ghoulKingPUNCH(center, victim) {
center.targeted_enemy = 'none';
trgt3 = victim;
distdata55 = CALC_Dist_Xv_Yv(center._x, center._y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < 50) {
Ottalkivanie(trgt3, center._x, center._y, 4);
Ottalkivanie(trgt3, center._x, center._y, 4);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += _root.ghoulKingStunPower;
}
}
}
function elisiumTearEffect(EXPL_x, EXPL_y) {
unitCount7778 = ARR_lightUnits.length;
zz = 0;
while (zz < unitCount7778) {
trgt3 = ARR_lightUnits[zz].linktounit;
distdata55 = CALC_Dist_Xv_Yv(EXPL_x, EXPL_y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < _root.elisiumTearRadius) {
Ottalkivanie(trgt3, EXPL_x, EXPL_y, 5);
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += 30;
}
damage__ = unit_dmg_min_104 + random(unit_dmg_max_104 - unit_dmg_min_104);
trgt3.dmg += damage__;
if (random(100) > trgt3.interaptionResistance) {
trgt3.TIMER_attackDelay = 0;
trgt3.gotoAndStop(1);
}
otletaniedamaga(trgt3._x, trgt3._y, damage__, 'dmg');
}
++zz;
}
}
function massSelectionIntegrity() {
if (theMouseIsDown eq 0) {
mouseDownTimer = 0;
removeMovieClip(_root.yiff.selectionField);
} else {
++mouseDownTimer;
}
if (mouseDownTimer > 5) {
if (thereIsASelectedUnit eq 0 and _root.spell_mode eq 0) {
if (!_root.yiff.selectionField) {
_root.yiff.attachMovie('selectionField', 'selectionField', _root.selection_depth);
_root.yiff.selectionField._x = lockedMouse_x;
_root.yiff.selectionField._y = lockedMouse_y;
_root.yiff.selectionField._width = 0;
_root.yiff.selectionField._height = 0;
} else {
if (_root._xmouse < lockedMouse_x and _root._ymouse < lockedMouse_y) {
_root.yiff.attachMovie('selectionField', 'selectionField', _root.selection_depth);
_root.yiff.selectionField._x = lockedMouse_x;
_root.yiff.selectionField._y = lockedMouse_y;
_root.yiff.selectionField._rotation = 180;
_root.yiff.selectionField._width = Math.abs(_root._xmouse - lockedMouse_x);
_root.yiff.selectionField._height = Math.abs(_root._ymouse - lockedMouse_y);
sl_xBrd_left = _root._xmouse;
sl_xBrd_right = lockedMouse_x;
sl_yBrd_top = _root._ymouse;
sl_yBrd_bott = lockedMouse_y;
} else {
if (_root._xmouse > lockedMouse_x and _root._ymouse < lockedMouse_y) {
_root.yiff.attachMovie('selectionField2', 'selectionField', _root.selection_depth);
_root.yiff.selectionField._x = lockedMouse_x;
_root.yiff.selectionField._y = lockedMouse_y;
_root.yiff.selectionField._rotation = 0;
_root.yiff.selectionField._width = Math.abs(_root._xmouse - lockedMouse_x);
_root.yiff.selectionField._height = Math.abs(_root._ymouse - lockedMouse_y);
sl_xBrd_left = lockedMouse_x;
sl_xBrd_right = _root._xmouse;
sl_yBrd_top = _root._ymouse;
sl_yBrd_bott = lockedMouse_y;
} else {
if (_root._xmouse < lockedMouse_x and _root._ymouse > lockedMouse_y) {
_root.yiff.attachMovie('selectionField2', 'selectionField', _root.selection_depth);
_root.yiff.selectionField._x = lockedMouse_x;
_root.yiff.selectionField._y = lockedMouse_y;
_root.yiff.selectionField._rotation = 180;
_root.yiff.selectionField._width = Math.abs(_root._xmouse - lockedMouse_x);
_root.yiff.selectionField._height = Math.abs(_root._ymouse - lockedMouse_y);
sl_xBrd_left = _root._xmouse;
sl_xBrd_right = lockedMouse_x;
sl_yBrd_top = lockedMouse_y;
sl_yBrd_bott = _root._ymouse;
} else {
if (_root._xmouse > lockedMouse_x and _root._ymouse > lockedMouse_y) {
_root.yiff.attachMovie('selectionField', 'selectionField', _root.selection_depth);
_root.yiff.selectionField._x = lockedMouse_x;
_root.yiff.selectionField._y = lockedMouse_y;
_root.yiff.selectionField._width = Math.abs(_root._xmouse - lockedMouse_x);
_root.yiff.selectionField._height = Math.abs(_root._ymouse - lockedMouse_y);
sl_xBrd_left = lockedMouse_x;
sl_xBrd_right = _root._xmouse;
sl_yBrd_top = lockedMouse_y;
sl_yBrd_bott = _root._ymouse;
}
}
}
}
if (_root.yiff.selectionField._height > 10 and _root.yiff.selectionField._width) {
selection_happened = 1;
} else {
selection_happened = 0;
}
}
}
}
}
function doUnitSelection() {
if (selection_happened != 1) {
return undefined;
}
unitCountZZ = ARR_necroUnits.length;
selectedUnitsArray = [];
severalUnitsSelected = 0;
j = 0;
while (j < unitCountZZ) {
trgt = ARR_necroUnits[j].linktounit;
if (trgt._x > sl_xBrd_left and trgt._x < sl_xBrd_right and trgt._y > sl_yBrd_top and trgt._y < sl_yBrd_bott) {
if (selectedUnitsArray.length < 9) {
selectedUnitsArray.push(trgt);
}
}
++j;
}
if (selectedUnitsArray.length > 1) {
severalUnitsSelected = 1;
} else {
if (selectedUnitsArray.length eq 1) {
selectedUnitsArray[0].iSselected = 1;
}
}
sl_xBrd_left = -9999;
sl_xBrd_right = -9999;
sl_yBrd_top = -9999;
sl_yBrd_bott = -9999;
}
function selectALLunits() {
unitCountZZ = ARR_necroUnits.length;
selectedUnitsArray = [];
severalUnitsSelected = 0;
j = 0;
while (j < unitCountZZ) {
trgt = ARR_necroUnits[j].linktounit;
if (selectedUnitsArray.length < 9) {
selectedUnitsArray.push(trgt);
}
++j;
}
if (selectedUnitsArray.length > 1) {
severalUnitsSelected = 1;
} else {
if (selectedUnitsArray.length eq 1) {
selectedUnitsArray[0].iSselected = 1;
}
}
}
function boss1_special() {
if (_root.markedByBoss1.bossed1timer > 0) {
--_root.markedByBoss1.bossed1timer;
} else {
return undefined;
}
trgt = _root.markedByBoss1;
explosionAnimation_small(trgt._x, trgt._y, 0.5);
damage = _root.boss1AddDMG_min + random(_root.boss1AddDMG_max - _root.boss1AddDMG_min);
trgt.dmg += damage;
otletaniedamaga(trgt._x, trgt._y, damage, 'dmg');
if (random(100) < trgt.stunResistance) {
if (trgt.TIMER_stunDelay < _root.minimum_stun) {
trgt.TIMER_stunDelay = _root.minimum_stun;
}
} else {
trgt.TIMER_stunDelay = 70;
}
}
function doubleClickSelect(trgt) {
if (_root.unitClickedTimer eq 0) {
_root.rememberClickedUnit = trgt;
_root.unitClickedTimer = _root.doubleClickSelect_SPEED;
} else {
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
if (trgt eq _root.rememberClickedUnit) {
trgttype = trgt.id;
unitCountZZ = ARR_necroUnits.length;
selectedUnitsArray = [];
severalUnitsSelected = 0;
j = 0;
while (j < unitCountZZ) {
trgt2 = ARR_necroUnits[j].linktounit;
if (trgt2.id eq trgttype) {
if (selectedUnitsArray.length < 9) {
selectedUnitsArray.push(trgt2);
}
}
++j;
}
if (selectedUnitsArray.length > 1) {
severalUnitsSelected = 1;
} else {
if (selectedUnitsArray.length eq 1) {
selectedUnitsArray[0].iSselected = 1;
}
}
}
}
}
function DKHero_deathExplosionEffect(xx, yy) {
zz = 0;
while (zz < unitCount) {
trgt3 = ARR_allUnits[zz];
distdata55 = CALC_Dist_Xv_Yv(xx, yy, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < 100) {
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += 30;
} else {
trgt3.TIMER_stunDelay += 80;
}
trgt3.dmg += 200;
if (random(100) > trgt3.interaptionResistance) {
trgt3.TIMER_attackDelay = 0;
trgt3.gotoAndStop(1);
}
otletaniedamaga(trgt3._x, trgt3._y, 200, 'dmg');
Ottalkivanie(trgt3, xx, yy, 3);
}
++zz;
}
}
function morningstarBlow(trgt) {
EXPL_x = trgt.targeted_enemy._x;
EXPL_y = trgt.targeted_enemy._y;
i = 0;
while (i < 10) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = EXPL_x - 25 + random(50);
ttrrggtt._y = EXPL_y - 25 + random(50);
++i;
}
sorcBoomSND();
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('mage2explosion', 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
expl._x = EXPL_x;
expl._y = EXPL_y;
unitCountZZ = ARR_necroUnits.length;
zz = 0;
while (zz < unitCountZZ) {
trgt3 = ARR_necroUnits[zz].linktounit;
distdata55 = CALC_Dist_Xv_Yv(EXPL_x, EXPL_y, trgt3._x, trgt3._y);
distance55 = distdata55[0];
if (distance55 < 75) {
if (random(100) < trgt3.stunResistance) {
trgt3.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt3.TIMER_stunDelay += 50;
}
damage = trgt.dmg_min + random(trgt.dmg_max - trgt.dmg_min);
trgt3.dmg += damage;
if (random(100) > trgt3.interaptionResistance) {
trgt3.TIMER_attackDelay = 0;
trgt3.gotoAndStop(1);
}
otletaniedamaga(trgt3._x, trgt3._y, damage, 'dmg');
Ottalkivanie(trgt3, EXPL_x, EXPL_y, 3);
}
++zz;
}
trgt.targeted_enemy = 'none';
}
function UnitsKillCastle(trgt) {
distdata = CALC_Dist_Xv_Yv(_root.yiff.necropolis._x, _root.yiff.necropolis._y, trgt._x, trgt._y);
distance_to_zamok = distdata[0];
distance_to_zamok_x = Math.abs(_root.yiff.necropolis._x - trgt._x);
if (distance_to_zamok < 100) {
if (trgt.id < 200) {
trgt.forced_destination_x = trgt.slot._x;
trgt.forced_destination_y = trgt._y;
return undefined;
}
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('unitEnterCastle', 'unitEnterCastle' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['unitEnterCastle' + iyiff];
ttrrggtt._x = trgt._x;
ttrrggtt._y = trgt._y;
assultSND();
_root.tremorTimer = 20;
_root.castleDmg += trgt.siegeDMG;
removeMovieClip(trgt.link_to_hpIndicator);
removeMovieClip(trgt);
}
}
function EngageEnemy_repeating(trgt) {
unitCount_11 = ARR_lightUnits.length;
if (unitCount_11 eq 0) {
return undefined;
}
trgt.forced_destination_x = 'none';
j = 0;
while (j < unitCount_11) {
trgt52 = ARR_lightUnits[j].linktounit;
distdata = CALC_Dist_Xv_Yv(trgt52._x, trgt52._y, trgt._x, trgt._y);
ARR_lightUnits[j].temp_distData = distdata[0];
++j;
}
_root.ARR_lightUnits.sortOn('temp_distData', Array.NUMERIC);
possible_target = _root.ARR_lightUnits[0];
trgt.holdPositionMode = 0;
trgt8795 = possible_target.linktounit;
if (trgt8795._x > 10 and trgt8795._x < 750 and trgt8795._y > 10 and trgt8795._y < 585) {
trgt.targeted_enemy = trgt8795;
}
}
function Command_EngageEnemy() {
if (thereIsASelectedUnit != 0) {
trgt = thereIsASelectedUnit;
unitCount_11 = ARR_lightUnits.length;
if (unitCount_11 eq 0) {
return undefined;
}
trgt.forced_destination_x = 'none';
j = 0;
while (j < unitCount_11) {
trgt52 = ARR_lightUnits[j].linktounit;
distdata = CALC_Dist_Xv_Yv(trgt52._x, trgt52._y, trgt._x, trgt._y);
ARR_lightUnits[j].temp_distData = distdata[0];
++j;
}
_root.ARR_lightUnits.sortOn('temp_distData', Array.NUMERIC);
possible_target = _root.ARR_lightUnits[0];
trgt.holdPositionMode = 0;
trgt8795 = possible_target.linktounit;
if (trgt8795._x > 10 and trgt8795._x < 750 and trgt8795._y > 10 and trgt8795._y < 585) {
trgt.targeted_enemy = trgt8795;
}
trgt.enemyEngageTimer = 60;
severalUnitsSelected = 0;
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
return undefined;
}
if (severalUnitsSelected eq 1) {
unitCountZZ = selectedUnitsArray.length;
ji = 0;
while (ji < unitCountZZ) {
trgt = selectedUnitsArray[ji];
unitCount_11 = ARR_lightUnits.length;
if (unitCount_11 eq 0) {
return undefined;
}
trgt.forced_destination_x = 'none';
j = 0;
while (j < unitCount_11) {
trgt52 = ARR_lightUnits[j].linktounit;
distdata = CALC_Dist_Xv_Yv(trgt52._x, trgt52._y, trgt._x, trgt._y);
ARR_lightUnits[j].temp_distData = distdata[0];
++j;
}
_root.ARR_lightUnits.sortOn('temp_distData', Array.NUMERIC);
possible_target = _root.ARR_lightUnits[0];
trgt.holdPositionMode = 0;
trgt8795 = possible_target.linktounit;
if (trgt8795._x > 10 and trgt8795._x < 750 and trgt8795._y > 10 and trgt8795._y < 585) {
trgt.targeted_enemy = trgt8795;
}
trgt.enemyEngageTimer = 60;
++ji;
}
}
thereIsASelectedUnit.iSselected = 0;
severalUnitsSelected = 0;
thereIsASelectedUnit = 0;
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
}
function TotalRecall() {
if (_root.yiffISpaused eq 1) {
doPause();
}
if (thereIsASelectedUnit != 0) {
trgt = thereIsASelectedUnit;
trgt.forced_destination_x = 'none';
trgt.targeted_enemy = 'none';
trgt.TIMER_stunDelay = 60;
_root.summoning.start();
trgt.slot._x = trgt.slot.default_x;
trgt.slot._y = trgt.slot.default_y;
UnitSpawnVisuals_cut(trgt.slot._x, trgt.slot._y);
UnitSpawnVisuals_cut(trgt._x, trgt._y);
trgt.xpos = trgt.slot._x;
trgt.ypos = trgt.slot._y;
trgt.xspeed = 0;
trgt.yspeed = 0;
severalUnitsSelected = 0;
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
return undefined;
}
if (severalUnitsSelected eq 1) {
unitCountZZ = selectedUnitsArray.length;
_root.summoning.start();
ji = 0;
while (ji < unitCountZZ) {
trgt = selectedUnitsArray[ji];
trgt.forced_destination_x = 'none';
trgt.targeted_enemy = 'none';
trgt.TIMER_stunDelay = 60;
trgt.slot._x = trgt.slot.default_x;
trgt.slot._y = trgt.slot.default_y;
UnitSpawnVisuals_cut(trgt.slot._x, trgt.slot._y);
UnitSpawnVisuals_cut(trgt._x, trgt._y);
trgt.xpos = trgt.slot._x;
trgt.ypos = trgt.slot._y;
trgt.xspeed = 0;
trgt.yspeed = 0;
++ji;
}
}
thereIsASelectedUnit.iSselected = 0;
severalUnitsSelected = 0;
thereIsASelectedUnit = 0;
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
}
function rasstanovka(num) {
fgs = 40;
if (num eq 0) {
xplus = 0;
yplus = 0;
} else {
if (num eq 1) {
xplus = fgs;
yplus = 0;
} else {
if (num eq 2) {
xplus = -fgs;
yplus = 0;
} else {
if (num eq 3) {
xplus = 0;
yplus = fgs;
} else {
if (num eq 4) {
xplus = 0;
yplus = -fgs;
} else {
if (num eq 5) {
xplus = -fgs;
yplus = -fgs;
} else {
if (num eq 6) {
xplus = fgs;
yplus = -fgs;
} else {
if (num eq 7) {
xplus = fgs;
yplus = fgs;
} else {
if (num eq 8) {
xplus = -fgs;
yplus = fgs;
}
}
}
}
}
}
}
}
}
}
function otletaniedamaga(xx, yy, msg, type, poisoned) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('otletalka', 'otletalka' + iyiff, iyiff);
_root.yiff.shooting_layer['otletalka' + iyiff]._x = xx;
_root.yiff.shooting_layer['otletalka' + iyiff]._y = yy;
_root.yiff.shooting_layer['otletalka' + iyiff].show_.tehtextfield.text = msg;
if (!poisoned) {
poisoned = '';
}
_root.yiff.shooting_layer['otletalka' + iyiff].show_.poison = poisoned;
var v2 = new TextFormat();
v2.size = 10;
if (type eq 'dmg') {
v2.color = 16711680;
} else {
if (type eq 'poison') {
v2.color = 65280;
} else {
if (type eq 'regeneration') {
v2.color = 52479;
} else {
if (type eq 'misc') {
v2.color = 16777215;
}
}
}
}
_root.yiff.shooting_layer['otletalka' + iyiff].show_.tehtextfield.setTextFormat(v2);
}
function CALC_Dist_Xv_Yv(x1, y1, x2, y2) {
A = {};
B = {};
A.xx = x1;
A.yy = y1;
B.xx = x2;
B.yy = y2;
dx = A.xx - B.xx;
dy = A.yy - B.yy;
distance = Math.sqrt(dx * dx + dy * dy);
dx_a = Math.abs(dx);
dy_a = Math.abs(dy);
if (dx > 0 or dx eq 0) {
xmod = 1;
} else {
xmod = -1;
}
if (dy > 0 or dy eq 0) {
ymod = 1;
} else {
ymod = -1;
}
if (dx_a > dy_a) {
spdmod = dy_a / dx_a;
x_modifier = xmod;
y_modifier = ymod * spdmod;
return [distance, x_modifier, y_modifier, dx, dy];
}
if (dx_a < dy_a) {
spdmod = dx_a / dy_a;
x_modifier = xmod * spdmod;
y_modifier = ymod;
return [distance, x_modifier, y_modifier, dx, dy];
}
x_modifier = xmod;
y_modifier = ymod;
return [distance, x_modifier, y_modifier, dx, dy];
}
function rotation_toFace_movement(trg, xspeed, yspeed) {
speedpovorota = 1;
dx = xspeed;
dy = yspeed;
angle1 = Math.atan2(dy, dx) * 57.29577951308232;
angle2 = trg._rotation;
if (angle2 < 0) {
angle2 += 360;
}
if (angle1 < 0) {
angle1 += 360;
}
aa = angle2 - angle1;
if (aa > 180) {
aa -= 360;
} else {
if (aa < -180) {
aa += 360;
}
}
aa *= speedpovorota;
if (Math.abs(aa) > 0.01) {
trg._rotation -= aa;
} else {
trg._rotation = angle1;
}
}
function rotation_face_point2(trgt1, xx2, yy2, slow787945675345) {
mewmewmewmewmewmew = CALC_Dist_Xv_Yv(xx2, yy2, trgt1._x, trgt1._y);
speedpovorota = 1;
if (slow787945675345 eq 1) {
speedpovorota = 0.7;
slow787945675345 = 0;
}
trg = trgt1;
dx = mewmewmewmewmewmew[3];
dy = mewmewmewmewmewmew[4];
angle1 = Math.atan2(dy, dx) * 57.29577951308232;
angle2 = trg._rotation;
if (angle2 < 0) {
angle2 += 360;
}
if (angle1 < 0) {
angle1 += 360;
}
aa = angle2 - angle1;
if (aa > 180) {
aa -= 360;
} else {
if (aa < -180) {
aa += 360;
}
}
aa *= speedpovorota;
if (Math.abs(aa) > 0.01) {
trg._rotation -= aa;
} else {
trg._rotation = angle1;
}
}
function rotation_face_target(trgt1, trgt2) {
mewmewmewmewmewmew = CALC_Dist_Xv_Yv(trgt2._x, trgt2._y, trgt1._x, trgt1._y);
speedpovorota = 1;
trg = trgt1;
dx = mewmewmewmewmewmew[3];
dy = mewmewmewmewmewmew[4];
angle1 = Math.atan2(dy, dx) * 57.29577951308232;
angle2 = trg._rotation;
if (angle2 < 0) {
angle2 += 360;
}
if (angle1 < 0) {
angle1 += 360;
}
aa = angle2 - angle1;
if (aa > 180) {
aa -= 360;
} else {
if (aa < -180) {
aa += 360;
}
}
aa *= speedpovorota;
if (Math.abs(aa) > 0.01) {
trg._rotation -= aa;
} else {
trg._rotation = angle1;
}
}
function Ottalkivanie(target, explosion_x, explosion_y, type) {
if (type eq 1) {
explosion_mass = 15;
explosion_power = 10;
} else {
if (type eq 2) {
explosion_mass = 10;
explosion_power = 10;
} else {
if (type eq 3) {
explosion_mass = 15;
explosion_power = 10;
} else {
if (type eq 4) {
explosion_mass = 5;
explosion_power = 10;
} else {
if (type eq 4.5) {
explosion_mass = 15;
explosion_power = 12;
} else {
if (type eq 5) {
explosion_mass = 5;
explosion_power = 10;
} else {
if (type eq 6) {
explosion_mass = 6;
explosion_power = -10;
} else {
if (type eq 7) {
explosion_mass = 15;
explosion_power = 15;
} else {
if (type eq 2000) {
explosion_mass = 15;
explosion_power = 10;
} else {
if (type eq 999) {
explosion_mass = 5;
explosion_power = 5;
} else {
if (type eq 100500) {
explosion_mass = 25;
explosion_power = 15;
} else {
explosion_mass = 3;
explosion_power = 3;
}
}
}
}
}
}
}
}
}
}
}
x1 = target._x;
y1 = target._y;
x2 = explosion_x;
y2 = explosion_y;
var v5 = x1 - x2;
var v7 = y1 - y2;
var v22 = Math.sqrt(v5 * v5 + v7 * v7);
var v6 = target.mass;
var v8 = explosion_mass;
var v16 = target.xspeed;
var v18 = target.yspeed;
var v12 = Math.atan2(v7, v5);
var v3 = Math.cos(v12);
var v2 = Math.sin(v12);
var v13 = v16 * v3 + v18 * v2;
var v10 = explosion_power;
var v11 = v18 * v3 - v16 * v2;
var v9 = 0.0001;
var v17 = v6 * v13 + v8 * v10;
var v19 = v13 - v10;
var v14 = (v17 + v6 * v19) / (v6 + v8);
var v15 = v14 - v13 + v10;
v13 = v15;
v10 = v14;
v16 = v13 * v3 - v11 * v2;
var v20 = v10 * v3 - v9 * v2;
v18 = v11 * v3 + v13 * v2;
var v21 = v9 * v3 + v10 * v2;
target.xspeed = v16;
target.yspeed = v18;
}
function animation_onhold1(xx, yy, parent) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('holdPositionAnimation', 'holdPositionAnimation' + iyiff, iyiff);
trgt = _root.yiff.shooting_layer['holdPositionAnimation' + iyiff];
trgt.dofollow = parent;
trgt._x = xx;
trgt._y = yy;
}
function animation_onhold0(xx, yy, parent) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('freeEngageAnimation', 'freeEngageAnimation' + iyiff, iyiff);
_root.yiff.shooting_layer['freeEngageAnimation' + iyiff]._x = xx;
_root.yiff.shooting_layer['freeEngageAnimation' + iyiff]._y = yy;
_root.yiff.shooting_layer['freeEngageAnimation' + iyiff].dofollow = parent;
}
function shldswrd_follow() {
trgtlayer = _root.yiff.shooting_layer;
for (var v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
if (trgtlayer[v2].dofollow) {
trgtlayer[v2]._x = trgtlayer[v2].dofollow._x;
trgtlayer[v2]._y = trgtlayer[v2].dofollow._y;
}
}
}
}
function musicInitiate() {
var v2 = new Sound(music_shell);
v2.attachSound('music_2');
_root.gameMusic = v2;
}
function initiateSounds(mode_) {
var v30 = new Sound(sound_shell);
_root.SFX_volume = v30;
var v40 = new Sound(sound_shell);
v40.attachSound('thunderbolt');
var v18 = new Sound(sound_shell);
v18.attachSound('madnessCastSnd');
var v14 = new Sound(sound_shell);
v14.attachSound('shockwaveSND');
var v31 = new Sound(sound_shell);
v31.attachSound('att_sound_202');
var v33 = new Sound(sound_shell);
v33.attachSound('att_sound_202');
var v29 = new Sound(sound_shell);
v29.attachSound('electrohit');
var v19 = new Sound(sound_shell);
v19.attachSound('curseCastSound');
var v42 = new Sound(sound_shell);
v42.attachSound('sorcBoom1');
var v34 = new Sound(sound_shell);
v34.attachSound('sorcBoom2');
var v36 = new Sound(sound_shell);
v36.attachSound('sorcBoom2');
var v3 = new Sound(sound_shell);
v3.attachSound('portalcast');
var v48 = new Sound(sound_shell);
v48.attachSound('mage_shot');
var v32 = new Sound(sound_shell);
v32.attachSound('mageFIreballDetonate');
var v37 = new Sound(sound_shell);
v37.attachSound('blunt_swing_1');
var v45 = new Sound(sound_shell);
v45.attachSound('blunt_swing_2');
var v43 = new Sound(sound_shell);
v43.attachSound('blunt_swing_3');
var v51 = new Sound(sound_shell);
v51.attachSound('blunt_swing_4');
var v38 = new Sound(sound_shell);
v38.attachSound('att_sound_201_1');
var v35 = new Sound(sound_shell);
v35.attachSound('att_sound_201_2');
var v46 = new Sound(sound_shell);
v46.attachSound('melee_swing_1');
var v44 = new Sound(sound_shell);
v44.attachSound('melee_swing_2');
var v41 = new Sound(sound_shell);
v41.attachSound('melee_swing_3');
var v39 = new Sound(sound_shell);
v39.attachSound('melee_swing_4');
var v55 = new Sound(sound_shell);
v55.attachSound('blade_hit_1');
var v54 = new Sound(sound_shell);
v54.attachSound('blade_hit_2');
var v52 = new Sound(sound_shell);
v52.attachSound('blade_hit_3');
var v49 = new Sound(sound_shell);
v49.attachSound('blade_hit_4');
var v22 = new Sound(sound_shell);
v22.attachSound('dk_hit_1');
var v26 = new Sound(sound_shell);
v26.attachSound('dk_hit_2');
var v15 = new Sound(sound_shell);
v15.attachSound('dk_die_1');
var v2 = new Sound(sound_shell);
v2.attachSound('dk_die_2');
var v28 = new Sound(sound_shell);
v28.attachSound('archVileAttack_1');
var v27 = new Sound(sound_shell);
v27.attachSound('archVileAttack_2');
var v24 = new Sound(sound_shell);
v24.attachSound('archVileAttack_3');
var v23 = new Sound(sound_shell);
v23.attachSound('archVileAttack_4');
var v7 = new Sound(sound_shell);
v7.attachSound('spellshot_1');
var v20 = new Sound(sound_shell);
v20.attachSound('defeatSND');
var v17 = new Sound(sound_shell);
v17.attachSound('summoning');
var v5 = new Sound(sound_shell);
v5.attachSound('healingSnd');
var v8 = new Sound(sound_shell);
v8.attachSound('big_goo_1');
var v6 = new Sound(sound_shell);
v6.attachSound('big_goo_2');
var v4 = new Sound(sound_shell);
v4.attachSound('poison_shot');
var v25 = new Sound(sound_shell);
v25.attachSound('assultSnd_4');
var v50 = new Sound(sound_shell);
v50.attachSound('assultSnd_3');
var v47 = new Sound(sound_shell);
v47.attachSound('assultSnd_3');
var v53 = new Sound(sound_shell);
v53.attachSound('assultSnd_1');
var v21 = new Sound(sound_shell);
v21.attachSound('Explosion_1');
var v13 = new Sound(sound_shell);
v13.attachSound('Explosion_2');
var v16 = new Sound(sound_shell);
v16.attachSound('Explosion_3');
var v11 = new Sound(sound_shell);
v11.attachSound('Explosion_4');
var v12 = new Sound(sound_shell);
v12.attachSound('Explosion_5');
var v9 = new Sound(sound_shell);
v9.attachSound('Explosion_6');
var v10 = new Sound(sound_shell);
v10.attachSound('Explosion_7');
_root.combat_isMuted = 0;
if (mode_ eq 'muteCombat') {
_root.combat_isMuted = 1;
v40 = new Sound(sound_shell);
v42 = new Sound(sound_shell);
v34 = new Sound(sound_shell);
v36 = new Sound(sound_shell);
v48 = new Sound(sound_shell);
v32 = new Sound(sound_shell);
v31 = new Sound(sound_shell);
v33 = new Sound(sound_shell);
v29 = new Sound(sound_shell);
v37 = new Sound(sound_shell);
v45 = new Sound(sound_shell);
v43 = new Sound(sound_shell);
v51 = new Sound(sound_shell);
v38 = new Sound(sound_shell);
v35 = new Sound(sound_shell);
v46 = new Sound(sound_shell);
v44 = new Sound(sound_shell);
v41 = new Sound(sound_shell);
v39 = new Sound(sound_shell);
v55 = new Sound(sound_shell);
v54 = new Sound(sound_shell);
v52 = new Sound(sound_shell);
v49 = new Sound(sound_shell);
v22 = new Sound(sound_shell);
v26 = new Sound(sound_shell);
v28 = new Sound(sound_shell);
v27 = new Sound(sound_shell);
v24 = new Sound(sound_shell);
v23 = new Sound(sound_shell);
v25 = new Sound(sound_shell);
v50 = new Sound(sound_shell);
v47 = new Sound(sound_shell);
v53 = new Sound(sound_shell);
}
_root.thunderboltSnd = v40;
_root.unit_attack_202 = v31;
_root.unit_attack_203 = v33;
_root.electrohit = v29;
_root.curseCastSound = v19;
_root.sorcBoom1 = v42;
_root.sorcBoom2 = v34;
_root.sorcBoom3 = v36;
_root.portalcastSND = v3;
_root.mage_shot = v48;
_root.mageFIreballDetonate = v32;
_root.blunt_swing_1 = v37;
_root.blunt_swing_2 = v45;
_root.blunt_swing_3 = v43;
_root.blunt_swing_4 = v51;
_root.att_sound_201_1 = v38;
_root.att_sound_201_2 = v35;
_root.melee_swing_1 = v46;
_root.melee_swing_2 = v44;
_root.melee_swing_3 = v41;
_root.melee_swing_4 = v39;
_root.blade_hit_1 = v55;
_root.blade_hit_2 = v54;
_root.blade_hit_3 = v52;
_root.blade_hit_4 = v49;
_root.dk_hit_1 = v22;
_root.dk_hit_2 = v26;
_root.dk_die_1 = v15;
_root.dk_die_2 = v2;
_root.archVileAttack_1 = v28;
_root.archVileAttack_2 = v27;
_root.archVileAttack_3 = v24;
_root.archVileAttack_4 = v23;
_root.spellshot_1 = v7;
_root.defeatSND = v20;
_root.summoning = v17;
_root.healingSnd = v5;
_root.big_goo_1 = v8;
_root.big_goo_2 = v6;
_root.poison_shot = v4;
_root.assultSnd_4 = v25;
_root.assultSnd_2 = v50;
_root.assultSnd_3 = v47;
_root.assultSnd_1 = v53;
_root.Explosion_1 = v21;
_root.Explosion_2 = v13;
_root.Explosion_3 = v16;
_root.Explosion_4 = v11;
_root.Explosion_5 = v12;
_root.Explosion_6 = v9;
_root.Explosion_7 = v10;
_root.madnessCastSnd = v18;
_root.shockwaveSND = v14;
}
function sorcBoomSND() {
_root['sorcBoom' + (1 + random(3))].start();
}
function bluntswingSND() {
_root['blunt_swing_' + (1 + random(4))].start();
}
function assultSND() {
_root['assultSnd_' + (1 + random(4))].start();
}
function EXPLsmallPlay() {
_root['Explosion_' + (random(4) + 1)].start();
}
function explosionSND() {
a = random(7) + 1;
if (a eq 3 or a eq 5 or a eq 7) {
a = 1;
}
_root['Explosion_' + a].start();
}
function snd_PoisonExplosion() {
_root['big_goo_' + (1 + random(2))].start();
}
function unit_attack_sound(id) {
if (id eq 101 or id eq 106) {
a = 1 + random(2);
_root['att_sound_201_' + a].start();
} else {
if (id eq 102) {
a = 1 + random(4);
_root['archVileAttack_' + a].start();
} else {
if (id eq 103 or id eq 107) {
a = 1 + random(2);
_root['dk_hit_' + a].start();
} else {
if (id eq 201) {
SNDmeleeSwing();
} else {
if (id eq 206 or id eq 207 or id eq 211) {
bluntswingSND();
}
}
}
}
}
_root['unit_attack_' + id].start();
}
function unit_HIT_sound(id) {
if (id eq 201 or id eq 206) {
SNDbladeHit();
}
}
function dk_die_sndplay() {
if (random(2) eq 1) {
dk_die_2.start();
} else {
dk_die_1.start();
}
}
function SNDmeleeSwing() {
a = 1 + random(4);
_root['melee_swing_' + a].start();
}
function SNDbladeHit() {
a = 1 + random(4);
_root['blade_hit_' + a].start();
}
function tremor() {
if (!max_magnitude) {
max_magnitude = 20;
}
if (tremorTimer > 0) {
--tremorTimer;
--max_magnitude;
if (max_magnitude < 3) {
max_magnitude = 3;
}
} else {
if (_root.yiff._x != 0 or _root.yiff._y != 0) {
_root.yiff._x = 0;
_root.yiff._y = 0;
}
max_magnitude = 30;
tremorTimer = 0;
return undefined;
}
if (_root.yiff._x != 0 or _root.yiff._y != 0) {
_root.yiff._x = 0;
_root.yiff._y = 0;
} else {
_root.yiff._x += -max_magnitude + random(max_magnitude * 2);
_root.yiff._y += -max_magnitude + random(max_magnitude * 2);
}
}
function tremor2() {
max_magnitude = boss2summoningtremor;
if (_root.yiff._x != 0 or _root.yiff._y != 0) {
_root.yiff._x = 0;
_root.yiff._y = 0;
} else {
_root.yiff._x += -max_magnitude + random(max_magnitude * 2);
_root.yiff._y += -max_magnitude + random(max_magnitude * 2);
}
}
function INIT_yiffing() {
_root.attachMovie('upper_menu', 'upper_menu', _root.uppermenu_depth);
_root.upper_menu._x = 141;
_root.upper_menu._y = 19;
trace('/////');
_root.attachMovie('bottom_menu', 'bottom_menu', _root.bottommenu_depth);
_root.bottom_menu._x = 25;
_root.bottom_menu._y = 535;
this.createEmptyMovieClip('yiff', _root.yiff_depth);
yiff._x = 0;
yiff._y = 0;
yiff.createEmptyMovieClip('dead_layer', _root.dead_depth);
yiff.createEmptyMovieClip('tactical_layer', _root.dead_depth + 1);
yiff.createEmptyMovieClip('shooting_layer', _root.shooting_layer_depth);
yiff.createEmptyMovieClip('projectile_layer', _root.shooting_layer_depth + 1);
yiff.createEmptyMovieClip('tactical_layer2', _root.shooting_layer_depth + 2);
yiff.createEmptyMovieClip('hpshow_layer', _root.hpshow_layer_depth);
_root.yiff.attachMovie('blackness', 'blackness', _root.blackness_depth);
_root.yiff.attachMovie('background', 'background_', _root.background_depth);
_root.yiff.background_.cacheAsBitmap = true;
_root.yiff.attachMovie('necropolis', 'necropolis', _root.necropolis_depth);
trgt = _root.yiff.necropolis;
trgt._x = 773;
trgt._y = 309;
_root.yiff.attachMovie('leaf_top', 'leaf_top', _root.leaftop_depth);
trgt = _root.yiff.leaf_top;
trgt.cacheAsBitmap = true;
trgt._x = 0;
trgt._y = 0;
}
function spawnUnitSlots() {
i = 0;
while (i < 10) {
if (i eq 0) {
zi = 10;
} else {
if (i eq 1) {
zi = 8;
} else {
if (i eq 2) {
zi = 6;
} else {
if (i eq 3) {
zi = 4;
} else {
if (i eq 4) {
zi = 1;
} else {
if (i eq 5) {
zi = 2;
} else {
if (i eq 6) {
zi = 3;
} else {
if (i eq 7) {
zi = 5;
} else {
if (i eq 8) {
zi = 7;
} else {
if (i eq 9) {
zi = 9;
}
}
}
}
}
}
}
}
}
}
_root.yiff.attachMovie('unit_slot', 'unit_slot_' + zi, _root.unit_slots_depth + i);
trgt = _root.yiff['unit_slot_' + zi];
trgt._x = 550;
trgt._y = 75 + 50 * i;
trgt.default_x = trgt._x;
trgt.default_y = trgt._y;
trgt.occupation = 'none';
++i;
}
i = 0;
while (i < 10) {
if (i eq 0) {
zi = 10;
} else {
if (i eq 1) {
zi = 8;
} else {
if (i eq 2) {
zi = 6;
} else {
if (i eq 3) {
zi = 4;
} else {
if (i eq 4) {
zi = 2;
} else {
if (i eq 5) {
zi = 1;
} else {
if (i eq 6) {
zi = 3;
} else {
if (i eq 7) {
zi = 5;
} else {
if (i eq 8) {
zi = 7;
} else {
if (i eq 9) {
zi = 9;
}
}
}
}
}
}
}
}
}
}
_root.yiff.attachMovie('unit_slot', 'unit_slot2_' + zi, _root.unit_slots_depth + i + 20);
trgt = _root.yiff['unit_slot2_' + zi];
trgt._x = 620;
trgt._y = 75 + 50 * i;
trgt.default_x = trgt._x;
trgt.default_y = trgt._y;
trgt.occupation = 'none';
++i;
}
}
function UnitSpawnVisuals(xx, yy) {
_root.summoning.start();
iyiff1 = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('warping_unit', 'warping_unit' + iyiff1, iyiff1);
iyiff2 = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('rezinka_blue', 'rezinka' + iyiff2, iyiff2);
_root.yiff.necropolis.ball.gotoAndPlay(41);
i = 0;
while (i < 10) {
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('particle_3', 'particle_3_' + iyiff, iyiff);
trgt4 = _root.yiff.projectile_layer['particle_3_' + iyiff];
trgt4._x = xx;
trgt4._y = yy;
trgt4._rotation = random(360);
++i;
}
trgt_x = xx;
trgt_y = yy;
trgt2_x = _root.yiff.necropolis._x + 5;
trgt2_y = _root.yiff.necropolis._y - 133;
trgt3 = _root.yiff.projectile_layer['rezinka' + iyiff2];
trgt3._x = trgt2_x;
trgt3._y = trgt2_y;
_root.yiff.projectile_layer['warping_unit' + iyiff1]._x = trgt_x;
_root.yiff.projectile_layer['warping_unit' + iyiff1]._y = trgt_y;
calc12312 = CALC_Dist_Xv_Yv(trgt_x, trgt_y, trgt2_x, trgt2_y);
distance = calc12312[0];
dx = calc12312[3];
dy = calc12312[4];
angle = Math.atan(dy / dx);
if (trgt2._x < trgt._x) {
angle -= Math.PI;
}
angle *= 57.29577951308232;
angle -= 180;
trgt3._rotation = 0;
trgt3._width = distance;
trgt3._rotation = angle;
}
function UnitSpawnVisuals_cut(xx, yy) {
iyiff1 = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('warping_unit', 'warping_unit' + iyiff1, iyiff1);
_root.yiff.necropolis.ball.gotoAndPlay(41);
i = 0;
while (i < 10) {
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('particle_3', 'particle_3_' + iyiff, iyiff);
trgt4 = _root.yiff.projectile_layer['particle_3_' + iyiff];
trgt4._x = xx;
trgt4._y = yy;
trgt4._rotation = random(360);
++i;
}
_root.yiff.projectile_layer['warping_unit' + iyiff1]._x = xx;
_root.yiff.projectile_layer['warping_unit' + iyiff1]._y = yy;
}
function Spawn_units(id, xx, yy) {
_root.bottom_menu.clickyclicky._visible = false;
if (_root.block_everything_victory eq 1 or _root.helpMenu or _root.mainMenu) {
return undefined;
}
if (id < 200 and id != 106) {
if (_root.spawnedUnits < _root.spawnLimit) {
} else {
return undefined;
}
if (_root['unit_price_' + id] > _root.cash) {
return undefined;
}
}
free_slot = 'none';
if (id eq 102 or id eq 104) {
i = 0;
while (i < _root.unit_slots_max_count + 1) {
trgtSlot = _root.yiff['unit_slot2_' + i];
if (trgtSlot.occupation eq 'none') {
free_slot = trgtSlot;
break;
}
++i;
}
} else {
i = 0;
while (i < _root.unit_slots_max_count + 1) {
trgtSlot = _root.yiff['unit_slot_' + i];
if (trgtSlot.occupation eq 'none') {
free_slot = trgtSlot;
break;
}
++i;
}
}
if (free_slot eq 'none' and id < 200) {
return undefined;
}
vacant_depth = 'none';
i = 0;
while (i < _root.units_max_count + 1) {
if (_root.yiff['unit_' + i]) {
} else {
trace('yay ' + i);
vacant_depth = i;
break;
}
++i;
}
if (vacant_depth eq 'none') {
return undefined;
}
if (id < 200) {
_root.cash -= _root['unit_price_' + id];
}
_root.yiff.attachMovie('unit_' + id, 'unit_' + vacant_depth, vacant_depth + _root.units_depth);
trgt = _root.yiff['unit_' + vacant_depth];
if (id < 200) {
free_slot.occupation = trgt;
trgt.slot = free_slot;
}
trgt.nameID = vacant_depth;
trgt.id = id;
if (id > 199) {
} else {
xx = trgt.slot._x - 15 + random(30);
yy = trgt.slot._y - 15 + random(30);
}
if (id < 200) {
UnitSpawnVisuals(xx, yy);
}
trgt._x = xx;
trgt._y = yy;
trgt._rotation = random(360);
trgt.xspeed = 0;
trgt.yspeed = 0;
trgt.xpos = xx;
trgt.ypos = yy;
trgt.tempx = xpos;
trgt.tempy = ypos;
trgt.mass = 10;
trgt.radius = 10;
trgt.poison = 0;
trgt.targeted_enemy = 'none';
trgt.holdPositionMode = 0;
trgt.TIMER_attackDelay = 0;
trgt.TIMER_healingSpell = 0;
trgt.TIMER_curseSpell = 0;
if (id < 200) {
trgt.TIMER_stunDelay = 20;
} else {
trgt.TIMER_stunDelay = 0;
}
trgt.forced_destination_x = 'none';
trgt.forced_destination_y = 'none';
trgt.lifetimer = 0;
trgt.attackDelay_base = _root['unit_attackDelay_' + id];
trgt.speed_base = _root['unit_speed_' + id];
trgt.ATTrad_base = _root['unit_ATTrad_' + id];
trgt.VISrad_default = _root['unit_VISrad_' + id];
trgt.VISrad_base = _root['unit_VISrad_' + id];
trgt.SIEGErad_base = _root['unit_SIEGErad_' + id];
trgt.hp = _root['unit_hp_' + id];
trgt.siegeDMG = _root['unit_siegeDMG_' + id];
trgt.cash = _root['unit_cash_' + id];
trgt.exp_ = _root['unit_exp_' + id];
trgt.stun_time = _root['unit_stun_time_' + id];
trgt.proj_speed = _root['unit_proj_speed_' + id];
trgt.dmg = 0;
trgt.targetedByUnitsCount = 0;
trgt.dmg_min_base = _root['unit_dmg_min_' + id];
trgt.dmg_max_base = _root['unit_dmg_max_' + id];
trgt.interaptionResistance_base = _root['unit_interaptionResistance_' + id];
trgt.stunResistance_base = _root['unit_stunResistance_' + id];
if (id < 200) {
trgt.team = 1;
} else {
trgt.team = 2;
}
trgt.critical_chance = _root['unit_critical_chance_' + en_id];
trgt.critical_mod = _root['unit_critical_mod_' + en_id];
if (trgt.id eq 106 or trgt.id eq 206 or trgt.id eq 207 or trgt.id eq 107 or trgt.id eq 210 or trgt.id eq 211) {
trgt.mass = 20;
trgt.radius = 20;
}
}
function explosionAnimation_small(xx, yy, formMod) {
animID = 1 + random(4);
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('explosion_small_' + animID, 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
if (formMod) {
expl._height *= formMod;
expl._width *= formMod;
}
expl._x = xx;
expl._y = yy;
expl._rotation = random(360);
}
function explosionAnimation_big(xx, yy) {
animID = 1 + random(4);
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('explosion_big_' + animID, 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
expl._x = xx;
expl._y = yy;
expl._rotation = random(360);
}
function explosionAnimation_poison(xx, yy) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('explosion_poison', 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
expl._x = xx;
expl._y = yy;
expl._rotation = random(360);
}
function showHPintegrity() {
unitCountZZ = ARR_allUnits.length;
trgtlayer = yiff.hpshow_layer;
j = 0;
while (j < unitCountZZ) {
trgt0 = ARR_allUnits[j];
trgt = trgtlayer['hpInd_' + trgt0.nameID];
trgt.stop();
if (trgt) {
trgt._x = trgt0._x;
trgt._y = trgt0._y - 11;
trgt._visible = true;
damagePercent = Math.floor(100 * (trgt0.hp - trgt0.dmg) / trgt0.hp);
if (damagePercen > 99) {
damagePercen = 100;
} else {
if (damagePercen < 1) {
damagePercen = 1;
}
}
if (trgt._currentframe != damagePercen) {
trgt.gotoAndStop(100 - damagePercent);
}
trgt.cacheAsBitmap = true;
if (100 - damagePercent > 4) {
trgt._visible = true;
} else {
trgt._visible = false;
}
} else {
trgtlayer.attachMovie('hpIndicator', 'hpInd_' + trgt0.nameID, trgt0.nameID);
trgtlayer['hpInd_' + trgt0.nameID]._visible = false;
trgtlayer['hpInd_' + trgt0.nameID]._width *= 0.85;
trgt0.link_to_hpIndicator = trgtlayer['hpInd_' + trgt0.nameID];
}
++j;
}
}
function castleLifeIntegrity() {
_root.catleRegenRate = 0.2;
if (_root.castleDmg > 0) {
_root.castleDmg -= _root.catleRegenRate;
} else {
_root.castleDmg = 0;
}
structurePercent = Math.floor(100 * (_root.castleHitPoints - _root.castleDmg) / _root.castleHitPoints);
if (_root.castleDmg > _root.castleHitPoints) {
structurePercent = 1;
}
}
function castleBoom(xx, yy) {
_root.tremorTimer = 15;
EXPL_x = _root.yiff.necropolis._x + xx;
EXPL_y = _root.yiff.necropolis._y + yy;
i = 0;
while (i < 10) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = EXPL_x - 25 + random(50);
ttrrggtt._y = EXPL_y - 25 + random(50);
++i;
}
sorcBoomSND();
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('mage2explosion', 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
expl._x = EXPL_x;
expl._y = EXPL_y;
}
function castleDeath() {
boss2summoningtremor = 50;
EXPL_x = _root.yiff.necropolis._x + 3;
8;
EXPL_y = _root.yiff.necropolis._y - 134;
4;
i = 0;
while (i < 40) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = EXPL_x - 100 + random(200);
ttrrggtt._y = EXPL_y - 100 + random(200);
++i;
}
sorcBoomSND();
_root.Explosion_7.start();
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('mage2explosion', 'expl' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['expl' + iyiff];
expl._width = 200;
expl._height = 200;
expl._x = EXPL_x;
expl._y = EXPL_y;
}
function activateSpell(id) {
if (_root.spell_mode eq 0) {
_root.spell_mode = id;
} else {
if (_root.spell_mode eq id) {
_root.spell_mode = 0;
removeMovieClip(_root.yiff.spellCircle);
} else {
removeMovieClip(_root.yiff.spellCircle);
_root.spell_mode = id;
}
}
}
function gravityNuke(xx, yy) {
_root.spell_delay_timer_6 = _root.spell_delay_6;
removeMovieClip(_root.yiff.shooting_layer.gravity_nuke);
_root.spell_mode = 0;
_root.yiff.necropolis.ball.gotoAndPlay(59);
_root.yiff.attachMovie('gravity_nuke', 'gravity_nuke', _root.gravnuke_depth);
expl = _root.yiff.gravity_nuke;
expl._x = xx;
expl._y = yy;
}
function gravityNuke_integrity() {
gravnuke = _root.yiff.gravity_nuke;
if (!gravnuke) {
return undefined;
}
if (gravnuke.suction eq 0 and gravnuke.blast eq 0) {
return undefined;
}
unitCount = ARR_allUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_allUnits[i];
if (gravnuke.suction eq 1) {
distdata = CALC_Dist_Xv_Yv(gravnuke._x, gravnuke._y, trgt._x, trgt._y);
distance = distdata[0];
if (distance < 150) {
Ottalkivanie(trgt, gravnuke._x, gravnuke._y, 6);
trgt._rotation += 5;
}
}
if (gravnuke.blast eq 1) {
gravnuke.blastOff = 1;
distdata = CALC_Dist_Xv_Yv(gravnuke._x, gravnuke._y, trgt._x, trgt._y);
distance = distdata[0];
if (distance < 130) {
if (random(100) < trgt.stunResistance) {
trgt.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt.TIMER_stunDelay += 80;
}
Ottalkivanie(trgt, gravnuke._x, gravnuke._y, 7);
damage__ = _root.gravityBlast_min_dmg + random(_root.gravityBlast_max_dmg - _root.gravityBlast_min_dmg);
trgt.dmg += damage__;
trgt.TIMER_attackDelay = 0;
trgt.gotoAndStop(1);
trgt._rotation = random(360);
otletaniedamaga(trgt3._x, trgt3._y, damage__, 'dmg');
}
}
++i;
}
if (gravnuke.blastOff eq 1) {
gravnuke.blast = 0;
}
}
function shockwave(xx, yy) {
_root.spell_delay_timer_3 = _root.spell_delay_3;
_root.spell_mode = 0;
_root.yiff.necropolis.ball.gotoAndPlay(59);
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('shockwave', 'shockwave' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['shockwave' + iyiff];
expl._x = xx;
expl._y = yy;
_root.shockwaveSND.start();
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('shockwaveAnim', 'shockwaveAnim' + iyiff, iyiff);
_root.yiff.shooting_layer['shockwaveAnim' + iyiff]._x = xx;
_root.yiff.shooting_layer['shockwaveAnim' + iyiff]._y = yy;
unitCount = ARR_allUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_allUnits[i];
distdata = CALC_Dist_Xv_Yv(xx, yy, trgt._x, trgt._y);
distance = distdata[0];
if (distance < _root.shockwaveRadius) {
Ottalkivanie(trgt, xx, yy, 1);
if (random(100) < trgt.stunResistance) {
trgt.TIMER_stunDelay += _root.minimum_stun;
} else {
trgt.TIMER_stunDelay += _root.shockwaveStunTime;
}
}
++i;
}
}
function curse(xx, yy) {
_root.spell_delay_timer_8 = _root.spell_delay_8;
_root.spell_mode = 0;
_root.yiff.necropolis.ball.gotoAndPlay(97);
iyiff = _root.yiff.dead_layer.getNextHighestDepth();
_root.yiff.dead_layer.attachMovie('castCurse', 'castCurse' + iyiff, iyiff);
_root.yiff.dead_layer['castCurse' + iyiff]._x = xx;
_root.yiff.dead_layer['castCurse' + iyiff]._y = yy;
curseCastSound.start();
unitCount = ARR_lightUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_lightUnits[i].linktounit;
distdata = CALC_Dist_Xv_Yv(xx, yy, trgt._x, trgt._y);
distance = distdata[0];
if (distance < _root.curseSpellRadius) {
trgt.TIMER_curseSpell = _root.curseSpellTime;
}
++i;
}
}
function healing(xx, yy) {
_root.spell_delay_timer_5 = _root.spell_delay_5;
_root.spell_mode = 0;
healingSnd.start();
_root.yiff.necropolis.ball.gotoAndPlay(78);
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('spellHealingAnimation', 'spellHealingAnimation' + iyiff, iyiff);
_root.yiff.shooting_layer['spellHealingAnimation' + iyiff]._x = xx;
_root.yiff.shooting_layer['spellHealingAnimation' + iyiff]._y = yy;
unitCount = ARR_necroUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_necroUnits[i].linktounit;
distdata = CALC_Dist_Xv_Yv(xx, yy, trgt._x, trgt._y);
distance = distdata[0];
if (distance < _root.madnessSpellRadius) {
trgt.TIMER_healingSpell = _root.healingDuration;
}
++i;
}
}
function SHoot_poisonBlast(xx, yy) {
_root.spell_delay_timer_2 = _root.spell_delay_2;
poison_shot.start();
_root.spell_mode = 0;
_root.yiff.necropolis.ball.gotoAndPlay(2);
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('projectile_1', 'projectile_' + iyiff, iyiff);
strela = _root.yiff.projectile_layer['projectile_' + iyiff];
strela.whatisit = 'projectile';
strela._x = _root.yiff.necropolis._x + 20;
strela._y = _root.yiff.necropolis._y - 145;
strela.id = 1;
strela.damage = _root.poisonBlast_dmgMin + random(_root.poisonBlast_dmgMax - _root.poisonBlast_dmgMin);
strela.stun_time = _root.poisonBlast_stunTime;
strela.poison = _root.poisonBlast_POISON;
strela.radius = 40;
strela.speed = 15;
strela.target_x = xx;
strela.target_y = yy;
distdata = CALC_Dist_Xv_Yv(strela.target_x, strela.target_y, strela._x, strela._y);
xmodifier123 = distdata[1];
ymodifier123 = distdata[2];
strela.xspeed = strela.speed * xmodifier123;
strela.yspeed = strela.speed * ymodifier123;
strela.xpos = strela._x;
strela.ypos = strela._y;
strela.tempx = xpos;
strela.tempy = ypos;
rotation_face_point2(strela, xx, yy);
}
function SHoot_fireball(xx, yy) {
_root.spell_mode = 0;
_root.spell_delay_timer_1 = _root.spell_delay_1;
spellshot_1.start();
_root.yiff.necropolis.ball.gotoAndPlay(22);
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('projectile_2', 'projectile_' + iyiff, iyiff);
strela = _root.yiff.projectile_layer['projectile_' + iyiff];
strela.whatisit = 'projectile';
strela._x = _root.yiff.necropolis._x + 20;
strela._y = _root.yiff.necropolis._y - 145;
strela.id = 2;
strela.damage = _root.fireball_dmgMin + random(_root.fireball_dmgMax - _root.fireball_dmgMin);
strela.stun_time = _root.fireball_stunTime;
strela.radius = 90;
strela.speed = 15;
strela.target_x = xx;
strela.target_y = yy;
distdata = CALC_Dist_Xv_Yv(strela.target_x, strela.target_y, strela._x, strela._y);
xmodifier123 = distdata[1];
ymodifier123 = distdata[2];
strela.xspeed = strela.speed * xmodifier123;
strela.yspeed = strela.speed * ymodifier123;
strela.xpos = strela._x;
strela.ypos = strela._y;
strela.tempx = xpos;
strela.tempy = ypos;
rotation_face_point2(strela, xx, yy);
}
function SHoot_deathRay(xx, yy) {
_root.spell_mode = 0;
_root.spell_delay_timer_7 = _root.spell_delay_7;
spellshot_1.start();
_root.yiff.necropolis.ball.gotoAndPlay(22);
iyiff = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('deathRayProjectile', 'projectile_' + iyiff, iyiff);
strela = _root.yiff.projectile_layer['projectile_' + iyiff];
strela.whatisit = 'projectile';
strela._x = _root.yiff.necropolis._x + 20;
strela._y = _root.yiff.necropolis._y - 145;
strela.id = 2000;
strela.speed = 15;
strela.target_x = xx;
strela.target_y = yy;
distdata = CALC_Dist_Xv_Yv(strela.target_x, strela.target_y, strela._x, strela._y);
xmodifier123 = distdata[1];
ymodifier123 = distdata[2];
strela.xspeed = strela.speed * xmodifier123;
strela.yspeed = strela.speed * ymodifier123;
strela.xpos = strela._x;
strela.ypos = strela._y;
strela.tempx = xpos;
strela.tempy = ypos;
rotation_face_point2(strela, xx, yy);
}
function weaponKursorIntegrity() {
if (_root.spell_mode > 0 and !_root.yiff.spellCircle) {
_root.yiff.attachMovie('spellCircle_' + _root.spell_mode, 'spellCircle', _root.spellCircles_depth);
} else {
if (_root.spell_mode > 0) {
_root.yiff.spellCircle._x = _root._xmouse;
_root.yiff.spellCircle._y = _root._ymouse;
} else {
if (_root.spell_mode eq 0) {
if (_root.yiff.spellCircle) {
removeMovieClip(_root.yiff.spellCircle);
}
}
}
}
}
function spellMadness(xx, yy) {
_root.spell_delay_timer_4 = _root.spell_delay_4;
_root.spell_mode = 0;
_root.yiff.necropolis.ball.gotoAndPlay(59);
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('castMadness_top', 'castMadness_top' + iyiff, iyiff);
expl = _root.yiff.shooting_layer['castMadness_top' + iyiff];
expl._x = xx;
expl._y = yy;
iyiff = _root.yiff.dead_layer.getNextHighestDepth();
_root.yiff.dead_layer.attachMovie('castMadness_bottom', 'castMadness_bottom' + iyiff, iyiff);
expl = _root.yiff.dead_layer['castMadness_bottom' + iyiff];
expl._x = xx;
expl._y = yy;
_root.madnessCastSnd.start();
unitCount = ARR_lightUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_lightUnits[i].linktounit;
distdata = CALC_Dist_Xv_Yv(xx, yy, trgt._x, trgt._y);
distance = distdata[0];
if (distance < _root.madnessSpellRadius) {
trgt.looseYourTarget = 1;
trgt.madness_timer = _root.madness_duration;
}
++i;
}
}
function challengeWaves_3() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 eq 30) {
Spawn_units(205, -30 + random(5), 50 + random(500));
Spawn_units(205, -30 + random(5), 50 + random(500));
Spawn_units(205, -30 + random(5), 50 + random(500));
Spawn_units(205, -30 + random(5), 50 + random(500));
Spawn_units(205, -30 + random(5), 50 + random(500));
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (_root.wave_timer_1 / 30 eq 50) {
Spawn_units(208, -30 + random(8), 50 + random(500));
Spawn_units(208, -30 + random(8), 50 + random(500));
Spawn_units(208, -30 + random(8), 50 + random(500));
Spawn_units(208, -30 + random(8), 50 + random(500));
Spawn_units(208, -30 + random(8), 50 + random(500));
Spawn_units(208, -30 + random(8), 50 + random(500));
}
if (_root.wave_timer_1 / 30 eq 80) {
Spawn_units(211, -87, 76);
Spawn_units(205, -87, 128);
Spawn_units(205, -87, 179);
Spawn_units(208, -87, 249);
Spawn_units(205, -87, 311);
Spawn_units(205, -87, 362);
Spawn_units(211, -87, 414);
Spawn_units(209, -31, 108);
Spawn_units(209, -31, 250);
Spawn_units(209, -31, 385);
}
if (_root.wave_timer_1 / 30 eq 90) {
Spawn_units(211, -30 + random(8), 50 + random(500));
Spawn_units(211, -30 + random(8), 50 + random(500));
Spawn_units(209, -30 + random(8), 50 + random(500));
Spawn_units(209, -30 + random(8), 50 + random(500));
Spawn_units(209, -30 + random(8), 50 + random(500));
}
if (_root.wave_timer_1 / 30 eq 99) {
Spawn_units(207, -30 + random(8), 50 + random(500));
}
if (_root.wave_timer_1 / 30 eq 60) {
boss2SummoningInitiation(300, 266);
}
if (_root.ARR_lightUnits.length > 12) {
return undefined;
}
if (random(17) eq 1 and _root.wave_timer_1 / 30 < 30) {
if (random(5) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
}
if (random(17) eq 1 and _root.wave_timer_1 / 30 > 30) {
if (random(5) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(15) eq 1) {
Spawn_units(209, -30 + random(5), 50 + random(500));
}
}
}
function challengeWaves_2() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 eq 50 or _root.wave_timer_1 / 30 eq 100) {
Spawn_units(205, -30 + random(5), 50 + random(500));
Spawn_units(205, -30 + random(5), 50 + random(500));
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (_root.wave_timer_1 / 30 eq 1) {
Spawn_units(211, -30, 230);
Spawn_units(211, -30, 290);
}
if (_root.wave_timer_1 / 30 eq 80) {
Spawn_units(205, -30 + random(5), 50 + random(500));
Spawn_units(205, -30 + random(5), 50 + random(500));
Spawn_units(205, -30 + random(5), 50 + random(500));
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (_root.wave_timer_1 / 30 eq 120) {
Spawn_units(208, -30 + random(5), 50 + random(500));
Spawn_units(208, -30 + random(5), 50 + random(500));
Spawn_units(208, -30 + random(5), 50 + random(500));
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (_root.wave_timer_1 / 30 eq 149) {
Spawn_units(208, -30 + random(5), 50 + random(500));
Spawn_units(208, -30 + random(5), 50 + random(500));
Spawn_units(207, -30 + random(5), 50 + random(500));
Spawn_units(205, -30 + random(5), 50 + random(500));
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (_root.ARR_lightUnits.length > 12 or _root.wave_timer_1 / 30 < 15) {
return undefined;
}
if (random(17) eq 1 and _root.wave_timer_1 / 30 < 70) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(17) eq 1 and _root.wave_timer_1 / 30 > 70) {
if (random(5) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(204, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
}
}
function challengeWaves_1() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 eq 40 or _root.wave_timer_1 / 30 eq 100) {
Spawn_units(205, -30, 260);
}
if (_root.wave_timer_1 / 30 eq 1) {
Spawn_units(209, -30, 260);
}
if (_root.wave_timer_1 / 30 eq 199) {
Spawn_units(205, -26, 122);
Spawn_units(203, -26, 164);
Spawn_units(203, -26, 346);
Spawn_units(203, -26, 388);
Spawn_units(203, -60, 146);
Spawn_units(203, -60, 366);
Spawn_units(203, -79, 216);
Spawn_units(203, -67, 251);
Spawn_units(205, -79, 288);
}
if (_root.wave_timer_1 / 30 eq 80) {
Spawn_units(206, -29, 48);
Spawn_units(206, -29, 95);
Spawn_units(206, -29, 142);
Spawn_units(206, -29, 188);
Spawn_units(206, -29, 235);
Spawn_units(206, -29, 329);
Spawn_units(206, -29, 375);
Spawn_units(206, -29, 422);
Spawn_units(206, -29, 469);
}
if (_root.wave_timer_1 / 30 eq 160) {
Spawn_units(206, -29, 48);
Spawn_units(206, -29, 95);
Spawn_units(206, -29, 142);
Spawn_units(206, -29, 188);
Spawn_units(206, -29, 235);
Spawn_units(206, -29, 329);
Spawn_units(206, -29, 375);
Spawn_units(206, -29, 422);
Spawn_units(206, -29, 469);
}
if (_root.ARR_lightUnits.length > 12 or _root.wave_timer_1 / 30 < 10) {
return undefined;
}
if (random(17) eq 1 and _root.wave_timer_1 / 30 < 180) {
if (random(3) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
}
if (random(17) eq 1 and _root.wave_timer_1 / 30 > 180) {
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
}
}
function SurvivalWaves_1() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 eq 30 or _root.wave_timer_1 / 30 eq 90 or _root.wave_timer_1 / 30 eq 150 or _root.wave_timer_1 / 30 eq 200) {
spawnRandomEnemySquad();
}
if (_root.wave_timer_1 / 30 eq 315) {
Spawn_units(206, -29, 48);
Spawn_units(206, -29, 95);
Spawn_units(209, -29, 142);
Spawn_units(209, -29, 188);
Spawn_units(209, -29, 235);
boss2SummoningInitiation(198, 266);
Spawn_units(209, -29, 329);
Spawn_units(209, -29, 375);
Spawn_units(206, -29, 422);
Spawn_units(206, -29, 469);
}
if (_root.ARR_lightUnits.length > 11) {
return undefined;
}
if (random(17) eq 1) {
if (_root.wave_timer_1 / 30 < 15) {
if (random(3) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 15 and _root.wave_timer_1 / 30 < 30) {
if (random(5) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 30 and _root.wave_timer_1 / 30 < 45) {
if (random(8) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(8) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(8) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(8) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 45 and _root.wave_timer_1 / 30 < 60) {
if (random(10) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(15) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 60 and _root.wave_timer_1 / 30 < 220) {
if (random(10) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(20) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(20) eq 1) {
Spawn_units(209, -30 + random(5), 50 + random(500));
}
if (random(20) eq 1) {
Spawn_units(211, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 320) {
if (random(10) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(20) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(15) eq 1) {
Spawn_units(209, -30 + random(5), 50 + random(500));
}
if (random(20) eq 1) {
Spawn_units(211, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 220 and _root.wave_timer_1 / 30 < 240) {
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 240 and _root.wave_timer_1 / 30 < 260) {
if (random(3) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 260 and _root.wave_timer_1 / 30 < 280) {
if (random(3) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 280 and _root.wave_timer_1 / 30 < 300) {
if (random(3) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
}
}
}
function SurvivalWaves_2() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 eq 30 or _root.wave_timer_1 / 30 eq 60 or _root.wave_timer_1 / 30 eq 90 or _root.wave_timer_1 / 30 eq 120 or _root.wave_timer_1 / 30 eq 150 or _root.wave_timer_1 / 30 eq 180 or _root.wave_timer_1 / 30 eq 210) {
spawnRandomEnemySquad();
}
if (_root.wave_timer_1 / 30 eq 315) {
Spawn_units(206, -29, 48);
Spawn_units(206, -29, 95);
Spawn_units(209, -29, 142);
Spawn_units(209, -29, 188);
Spawn_units(209, -29, 235);
boss2SummoningInitiation(198, 266);
Spawn_units(209, -29, 329);
Spawn_units(209, -29, 375);
Spawn_units(206, -29, 422);
Spawn_units(206, -29, 469);
}
if (_root.ARR_lightUnits.length > 11) {
return undefined;
}
if (random(17) eq 1) {
if (_root.wave_timer_1 / 30 < 15) {
if (random(3) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 15 and _root.wave_timer_1 / 30 < 30) {
if (random(5) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 30 and _root.wave_timer_1 / 30 < 45) {
if (random(8) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(8) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(8) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(8) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 45 and _root.wave_timer_1 / 30 < 60) {
if (random(10) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(15) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 60 and _root.wave_timer_1 / 30 < 220) {
if (random(10) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(20) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(20) eq 1) {
Spawn_units(209, -30 + random(5), 50 + random(500));
}
if (random(20) eq 1) {
Spawn_units(211, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 320) {
if (random(10) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(20) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(15) eq 1) {
Spawn_units(209, -30 + random(5), 50 + random(500));
}
if (random(20) eq 1) {
Spawn_units(211, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 220 and _root.wave_timer_1 / 30 < 240) {
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 240 and _root.wave_timer_1 / 30 < 260) {
if (random(3) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 260 and _root.wave_timer_1 / 30 < 280) {
if (random(3) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 280 and _root.wave_timer_1 / 30 < 300) {
if (random(3) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
}
}
}
function SurvivalWaves_3() {
_root.wave_timer_1 += 1;
if (_root.wave_timer_1 / 30 eq 30 or _root.wave_timer_1 / 30 eq 60 or _root.wave_timer_1 / 30 eq 90 or _root.wave_timer_1 / 30 eq 120 or _root.wave_timer_1 / 30 eq 150 or _root.wave_timer_1 / 30 eq 180 or _root.wave_timer_1 / 30 eq 210 or _root.wave_timer_1 / 30 eq 350 or _root.wave_timer_1 / 30 eq 390) {
spawnRandomEnemySquad();
}
if (_root.wave_timer_1 / 30 eq 315) {
Spawn_units(206, -29, 48);
Spawn_units(206, -29, 95);
Spawn_units(209, -29, 142);
Spawn_units(209, -29, 188);
Spawn_units(209, -29, 235);
boss2SummoningInitiation(198, 266);
Spawn_units(209, -29, 329);
Spawn_units(209, -29, 375);
Spawn_units(206, -29, 422);
Spawn_units(206, -29, 469);
}
if (_root.ARR_lightUnits.length > 11) {
return undefined;
}
if (random(17) eq 1) {
if (_root.wave_timer_1 / 30 < 15) {
if (random(3) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 15 and _root.wave_timer_1 / 30 < 30) {
if (random(5) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(5) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 30 and _root.wave_timer_1 / 30 < 45) {
if (random(8) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(8) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(8) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(8) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 45 and _root.wave_timer_1 / 30 < 60) {
if (random(10) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(15) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 60 and _root.wave_timer_1 / 30 < 220) {
if (random(10) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(20) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(20) eq 1) {
Spawn_units(209, -30 + random(5), 50 + random(500));
}
if (random(20) eq 1) {
Spawn_units(211, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 320) {
if (random(10) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(10) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(20) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(15) eq 1) {
Spawn_units(209, -30 + random(5), 50 + random(500));
}
if (random(20) eq 1) {
Spawn_units(211, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 220 and _root.wave_timer_1 / 30 < 240) {
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 240 and _root.wave_timer_1 / 30 < 260) {
if (random(3) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 260 and _root.wave_timer_1 / 30 < 280) {
if (random(3) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
}
if (_root.wave_timer_1 / 30 > 280 and _root.wave_timer_1 / 30 < 300) {
if (random(3) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(3) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
}
}
}
function spawnRandomEnemySquad() {
a = random(10);
if (a eq 1) {
Spawn_units(206, -87, 76);
Spawn_units(206, -87, 128);
Spawn_units(206, -87, 179);
Spawn_units(203, -87, 249);
Spawn_units(206, -87, 311);
Spawn_units(206, -87, 362);
Spawn_units(206, -87, 414);
Spawn_units(211, -31, 108);
Spawn_units(209, -31, 250);
}
if (a eq 2) {
Spawn_units(205, -87, 76);
Spawn_units(205, -87, 128);
Spawn_units(208, -87, 179);
Spawn_units(203, -87, 249);
Spawn_units(208, -87, 311);
Spawn_units(205, -87, 362);
Spawn_units(205, -87, 414);
Spawn_units(211, -31, 108);
Spawn_units(209, -31, 250);
Spawn_units(211, -31, 385);
}
if (a eq 3 and random(3) eq 1) {
Spawn_units(206, -29, 48);
Spawn_units(206, -29, 95);
Spawn_units(211, -29, 142);
Spawn_units(211, -29, 188);
Spawn_units(211, -29, 235);
Spawn_units(211, -29, 282);
Spawn_units(211, -29, 329);
Spawn_units(211, -29, 375);
Spawn_units(206, -29, 422);
Spawn_units(206, -29, 469);
} else {
if (_root.skirmDiff eq 3 and a eq 3 and random(2) eq 1) {
Spawn_units(206, -29, 48);
Spawn_units(206, -29, 95);
Spawn_units(209, -29, 142);
Spawn_units(211, -29, 188);
Spawn_units(209, -29, 235);
Spawn_units(211, -29, 282);
Spawn_units(209, -29, 329);
Spawn_units(211, -29, 375);
Spawn_units(206, -29, 422);
Spawn_units(206, -29, 469);
}
}
if (a eq 4) {
Spawn_units(211, -87, 76);
Spawn_units(205, -87, 128);
Spawn_units(205, -87, 179);
Spawn_units(208, -87, 249);
Spawn_units(205, -87, 311);
Spawn_units(205, -87, 362);
Spawn_units(211, -87, 414);
Spawn_units(209, -31, 108);
Spawn_units(209, -31, 250);
Spawn_units(209, -31, 385);
}
if (a eq 5) {
Spawn_units(206, -25, 122);
Spawn_units(206, -25, 164);
Spawn_units(208, -25, 234);
Spawn_units(208, -25, 282);
Spawn_units(206, -25, 346);
Spawn_units(206, -25, 388);
Spawn_units(203, -63, 94);
Spawn_units(203, -63, 146);
Spawn_units(203, -63, 196);
Spawn_units(208, -63, 257);
Spawn_units(203, -63, 324);
Spawn_units(203, -63, 366);
Spawn_units(203, -63, 417);
}
if (a eq 6) {
Spawn_units(205, -26, 122);
Spawn_units(205, -26, 164);
Spawn_units(205, -26, 346);
Spawn_units(205, -26, 388);
Spawn_units(202, -60, 146);
Spawn_units(202, -60, 366);
Spawn_units(202, -79, 216);
Spawn_units(202, -67, 251);
Spawn_units(202, -79, 288);
}
if (a eq 7) {
Spawn_units(206, -26, 122);
Spawn_units(206, -26, 164);
Spawn_units(206, -26, 346);
Spawn_units(206, -26, 388);
Spawn_units(205, -60, 146);
Spawn_units(205, -60, 366);
Spawn_units(203, -79, 216);
Spawn_units(203, -67, 251);
Spawn_units(203, -79, 288);
}
if (a eq 8) {
Spawn_units(206, -26, 122);
Spawn_units(206, -26, 164);
Spawn_units(206, -26, 346);
Spawn_units(206, -26, 388);
Spawn_units(206, -60, 146);
Spawn_units(206, -60, 366);
Spawn_units(206, -79, 216);
Spawn_units(206, -67, 251);
Spawn_units(206, -79, 288);
}
if (a eq 0) {
Spawn_units(206, -29, 48);
Spawn_units(206, -29, 95);
Spawn_units(206, -29, 142);
Spawn_units(206, -29, 188);
Spawn_units(206, -29, 235);
Spawn_units(206, -29, 282);
Spawn_units(206, -29, 329);
Spawn_units(206, -29, 375);
Spawn_units(206, -29, 422);
Spawn_units(206, -29, 469);
}
}
function waveEnd() {
if (_root.gameFailed eq 1) {
return undefined;
}
if (_root.victory_start_counting eq 1) {
victoryCounting();
}
if (_root.block_everything_victory eq 1) {
return undefined;
}
if (random(30) eq 1) {
trace(_root.ARR_lightUnits.length + ' zyzy ' + random(999));
trace(_root.ARR_lightUnits[0].linktounit.id + ' ' + _root.ARR_lightUnits[0].linktounit._x + '/' + _root.ARR_lightUnits[0].linktounit._y);
trace(_root.ARR_lightUnits[0].linktounit.dmg + '=dmg ');
trace(_root.ARR_allUnits.length + ' zy66zy ' + random(999));
if (_root.ARR_lightUnits[0].linktounit._x > 1500 or _root.ARR_lightUnits[0].linktounit._y > 1500 or _root.ARR_lightUnits[0].linktounit._y < -500 or _root.ARR_lightUnits[0].linktounit._x < -500) {
_root.ARR_lightUnits[0].linktounit.dmg += 9999;
}
}
trace(_root.wave_timer_1 / 30 + ' zzz ' + _root.survival_timeLimit);
if (_root.wave_timer_1 / 30 > _root.survival_timeLimit) {
if (_root.ARR_lightUnits.length > 0) {
return undefined;
}
_root.block_everything_victory = 1;
_root.bodycount = 0;
_root.menuModeGameBlock = 1;
_root.attachMovie('victory', 'victory', _root.victory_depth);
_root.victory._x = 400;
_root.victory._y = 60;
_root.castleDmg = 0;
}
}
function victoryCounting() {
if (_root.gameFailed eq 1) {
return undefined;
}
if (random(3) eq 1) {
trgt666 = ARR_necroUnits[0].linktounit;
iyiff1 = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('warping_unit', 'warping_unit' + iyiff1, iyiff1);
trgt667 = _root.yiff.projectile_layer['warping_unit' + iyiff1];
trgt667._x = trgt666._x;
trgt667._y = trgt666._y;
removeUnitProper(trgt666);
}
for (var v3 in _root.yiff.dead_layer) {
if (_root.yiff.dead_layer[v3] instanceof MovieClip) {
trgt5656 = _root.yiff.dead_layer[v3];
iyiff1 = _root.yiff.projectile_layer.getNextHighestDepth();
_root.yiff.projectile_layer.attachMovie('bodyCountFX', 'bodyCountFX' + iyiff1, iyiff1);
trgt667 = _root.yiff.projectile_layer['bodyCountFX' + iyiff1];
trgt667._x = trgt5656._x;
trgt667._y = trgt5656._y;
++_root.bodycount;
removeMovieClip(trgt5656);
misc_counter1 = 0;
return undefined;
break;
}
}
++misc_counter1;
if (misc_counter1 < 40) {
return undefined;
}
misc_counter1 = 0;
_root.victory.aaa.gotoAndStop(1);
unitCountZZ = ARR_necroUnits.length;
j = 0;
while (j < unitCountZZ) {
trgt = ARR_necroUnits[j].linktounit;
removeUnitProper(trgt);
++j;
}
_root.wave_timer_1 = 0;
++_root.current_wave;
if (_root.current_wave > 23) {
_root.current_wave = 23;
}
removeMovieClip(_root.victory);
_root.menuModeGameBlock = 0;
spawnFInalVictory();
if (_root.yiffISpaused != 1) {
doPause();
}
_root.menuModeGameBlock = 1;
_root.block_everything_victory = 0;
_root.victory_start_counting = 0;
if (_root.challenge eq 1) {
saveslot016 = SharedObject.getLocal('necroDef_challenges');
vl1 = this.saveslot016.data;
vl1.challengeDone_1 = 1;
}
if (_root.challenge eq 2) {
saveslot016 = SharedObject.getLocal('necroDef_challenges');
vl1 = this.saveslot016.data;
vl1.challengeDone_2 = 1;
}
if (_root.challenge eq 3) {
saveslot016 = SharedObject.getLocal('necroDef_challenges');
vl1 = this.saveslot016.data;
vl1.challengeDone_3 = 1;
}
}
function setrrr(unitID) {
if (_root['sbox_SpawnRateMode_' + unitID] eq 0) {
_root['sbox_SpawnRandomizer_' + unitID] = 0;
} else {
if (_root['sbox_SpawnRateMode_' + unitID] eq 1) {
_root['sbox_SpawnRandomizer_' + unitID] = 100;
} else {
if (_root['sbox_SpawnRateMode_' + unitID] eq 2) {
_root['sbox_SpawnRandomizer_' + unitID] = 80;
} else {
if (_root['sbox_SpawnRateMode_' + unitID] eq 3) {
_root['sbox_SpawnRandomizer_' + unitID] = 70;
} else {
if (_root['sbox_SpawnRateMode_' + unitID] eq 4) {
_root['sbox_SpawnRandomizer_' + unitID] = 60;
} else {
if (_root['sbox_SpawnRateMode_' + unitID] eq 5) {
_root['sbox_SpawnRandomizer_' + unitID] = 50;
} else {
if (_root['sbox_SpawnRateMode_' + unitID] eq 6) {
_root['sbox_SpawnRandomizer_' + unitID] = 40;
} else {
if (_root['sbox_SpawnRateMode_' + unitID] eq 7) {
_root['sbox_SpawnRandomizer_' + unitID] = 30;
} else {
if (_root['sbox_SpawnRateMode_' + unitID] eq 8) {
_root['sbox_SpawnRandomizer_' + unitID] = 20;
} else {
if (_root['sbox_SpawnRateMode_' + unitID] eq 9) {
_root['sbox_SpawnRandomizer_' + unitID] = 10;
} else {
if (_root['sbox_SpawnRateMode_' + unitID] eq 10) {
_root['sbox_SpawnRandomizer_' + unitID] = 3;
}
}
}
}
}
}
}
}
}
}
}
}
function setSandboxRespawnRates() {
setrrr(201);
setrrr(202);
setrrr(203);
setrrr(204);
setrrr(205);
setrrr(206);
setrrr(207);
setrrr(208);
setrrr(209);
setrrr(210);
setrrr(211);
}
function SandboxWaves() {
if (_root.ARR_lightUnits.length > _root.sbox_enemySpawnLimit - 1) {
return undefined;
}
if (random(_root.sbox_SpawnRandomizer_201) eq 1) {
Spawn_units(201, -30 + random(5), 50 + random(500));
}
if (random(_root.sbox_SpawnRandomizer_202) eq 1) {
Spawn_units(202, -30 + random(5), 50 + random(500));
}
if (random(_root.sbox_SpawnRandomizer_203) eq 1) {
Spawn_units(203, -30 + random(5), 50 + random(500));
}
if (random(_root.sbox_SpawnRandomizer_205) eq 1) {
Spawn_units(205, -30 + random(5), 50 + random(500));
}
if (random(_root.sbox_SpawnRandomizer_206) eq 1) {
Spawn_units(206, -30 + random(5), 50 + random(500));
}
if (random(_root.sbox_SpawnRandomizer_208) eq 1) {
Spawn_units(208, -30 + random(5), 50 + random(500));
}
if (random(_root.sbox_SpawnRandomizer_209) eq 1) {
Spawn_units(209, -30 + random(5), 50 + random(500));
}
if (random(_root.sbox_SpawnRandomizer_211) eq 1) {
Spawn_units(211, -30 + random(5), 50 + random(500));
}
}
function upperMenuIntegrity() {
upper_menu.show_cash = 'Cash: ' + _root.cash + '$';
time_var444 = _root['wave_length_' + _root.current_wave] - Math.floor(_root.wave_timer_1 / 30);
if (time_var444 < 0) {
time_var444 = 0;
}
if (this_is_survival eq 1) {
time_var444 = _root.survival_timeLimit - Math.floor(_root.wave_timer_1 / 30);
if (time_var444 < 0) {
time_var444 = 0;
}
upper_menu.show_time = 'Time: ' + time_var444;
} else {
upper_menu.show_time = 'Time: ' + time_var444;
}
if (_root.thisIsSandBox eq 1) {
upper_menu.show_time = 'Time: unlimited';
}
upper_menu.show_units = 'Units: ' + _root.spawnedUnits + '/' + _root.spawnLimit;
}
function bottomMunuIntegrity() {
_root.bottom_menu.hp_ind.ind.gotoAndStop(structurePercent);
curentExp = _root.exp_ - _root['lvlExp_' + (_root.currentLevel - 1)];
maxExp = _root['lvlExp_' + _root.currentLevel] - _root['lvlExp_' + (_root.currentLevel - 1)];
percentExp = Math.floor((1 - (maxExp - curentExp) / maxExp) * 100);
if (percentExp < 1) {
percentExp = 1;
} else {
if (percentExp > 100) {
percentExp = 100;
}
}
_root.bottom_menu.expind.ind.gotoAndStop(percentExp);
if (_root.this_is_survival eq 1) {
_root.bottom_menu.expind.ind.gotoAndStop(100);
}
if (thereIsASelectedUnit eq 0 and severalUnitsSelected eq 0) {
_root.bottom_menu.right_controlz.gotoAndStop(1);
}
if (severalUnitsSelected eq 1) {
_root.bottom_menu.right_controlz.gotoAndStop(2);
holdPositionSUm = 0;
unitCountZZ = selectedUnitsArray.length;
j = 0;
while (j < unitCountZZ) {
trgt = selectedUnitsArray[j];
holdPositionSUm += trgt.holdPositionMode;
++j;
}
if (holdPositionSUm eq 0) {
_root.bottom_menu.right_controlz.selector.gotoAndStop(2);
} else {
if (holdPositionSUm eq unitCountZZ) {
_root.bottom_menu.right_controlz.selector.gotoAndStop(3);
} else {
_root.bottom_menu.right_controlz.selector.gotoAndStop(1);
}
}
}
if (thereIsASelectedUnit != 0) {
_root.bottom_menu.right_controlz.gotoAndStop(2);
_root.bottom_menu.right_controlz.selector.gotoAndStop(thereIsASelectedUnit.holdPositionMode + 2);
}
_root.bottom_menu.right_controlz.unitSpawnerBTN_101.gotoAndStop(_root.unitAvailable_101 + 1);
_root.bottom_menu.right_controlz.unitSpawnerBTN_102.gotoAndStop(_root.unitAvailable_102 + 1);
_root.bottom_menu.right_controlz.unitSpawnerBTN_103.gotoAndStop(_root.unitAvailable_103 + 1);
_root.bottom_menu.right_controlz.unitSpawnerBTN_104.gotoAndStop(_root.unitAvailable_104 + 1);
}
function orderFreeAttack() {
if (thereIsASelectedUnit != 0) {
thereIsASelectedUnit.holdPositionMode = 0;
animation_onhold0(thereIsASelectedUnit._x, thereIsASelectedUnit._y, thereIsASelectedUnit);
severalUnitsSelected = 0;
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
return undefined;
}
if (severalUnitsSelected eq 1) {
unitCountZZ = selectedUnitsArray.length;
j = 0;
while (j < unitCountZZ) {
trgt = selectedUnitsArray[j];
animation_onhold0(trgt._x, trgt._y, trgt);
trgt.holdPositionMode = 0;
++j;
}
}
thereIsASelectedUnit.iSselected = 0;
severalUnitsSelected = 0;
thereIsASelectedUnit = 0;
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
}
function orderHoldPosition() {
if (thereIsASelectedUnit != 0) {
trace(thereIsASelectedUnit.holdPositionMode);
thereIsASelectedUnit.holdPositionMode = 1;
animation_onhold1(thereIsASelectedUnit._x, thereIsASelectedUnit._y, thereIsASelectedUnit);
thereIsASelectedUnit.slot._x = thereIsASelectedUnit._x;
thereIsASelectedUnit.slot._y = thereIsASelectedUnit._y;
severalUnitsSelected = 0;
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
return undefined;
}
if (severalUnitsSelected eq 1) {
unitCountZZ = selectedUnitsArray.length;
j = 0;
while (j < unitCountZZ) {
trgt = selectedUnitsArray[j];
trgt.holdPositionMode = 1;
animation_onhold1(trgt._x, trgt._y, trgt);
trgt.slot._x = trgt._x;
trgt.slot._y = trgt._y;
++j;
}
}
thereIsASelectedUnit.iSselected = 0;
severalUnitsSelected = 0;
thereIsASelectedUnit = 0;
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
}
function spellSlotsIntegrity() {
if (_root.yiffISpaused != 1) {
ji = 0;
while (ji < 9) {
if (_root['spell_delay_timer_' + ji] > 0) {
--_root['spell_delay_timer_' + ji];
}
++ji;
}
}
if (_root.upgradesMenu) {
ji = 0;
while (ji < 9) {
if (_root['spell_delay_timer_' + ji] > 0) {
_root['spell_delay_timer_' + ji] = 0;
}
++ji;
}
}
zu = 0;
while (zu < 5) {
slotCore = _root.bottom_menu['spellSlot_' + zu];
if (_root['spellSelectorLoad_' + zu] != 0) {
slotCore.selected_spell = _root['spellSelectorLoad_' + zu];
trace(slotCore.selected_spell);
_root['spellSelectorLoad_' + zu] = 0;
}
slotCore.gotoAndStop(slotCore.selected_spell);
slotCore.spellIcon.gotoAndStop(2);
slotCore.theButton._visible = true;
slotCore.ind._visible = false;
if (_root['spellAvailable_' + slotCore.selected_spell] eq 0) {
slotCore.selected_spell = 3;
}
if (slotCore.selectoR.close_all_but_me eq 1) {
slotCore.selectoR.close_all_but_me = 0;
_root.bottom_menu.spellSlot_1.selectoR.gotoAndStop(1);
_root.bottom_menu.spellSlot_2.selectoR.gotoAndStop(1);
_root.bottom_menu.spellSlot_3.selectoR.gotoAndStop(1);
_root.bottom_menu.spellSlot_4.selectoR.gotoAndStop(1);
_root.bottom_menu['spellSlot_' + zu].selectoR.gotoAndStop(2);
}
ji = 0;
while (ji < 9) {
if (_root['spell_delay_timer_' + ji] > 0) {
if (slotCore.selected_spell eq ji) {
slotCore.spellIcon.gotoAndStop(1);
slotCore.ind._visible = true;
slotCore.theButton._visible = false;
percent = Math.floor(100 * (1 - _root['spell_delay_timer_' + ji] / _root['spell_delay_' + ji]));
if (percent < 1) {
percent = 1;
} else {
if (percent > 99) {
percent = 100;
}
}
slotCore.ind.aaa.gotoAndStop(percent);
}
}
spellselectorrr = slotCore.selectoR['spellSelector_' + ji];
spellselectorrr.gotoAndStop(_root['spellAvailable_' + ji] + 1);
if (spellselectorrr.activated eq 1) {
slotCore.selectoR.gotoAndStop(1);
slotCore.selected_spell = ji;
_root.spell_delay_timer_1 = _root.spell_delay_1;
_root.spell_delay_timer_2 = _root.spell_delay_2;
_root.spell_delay_timer_3 = _root.spell_delay_3;
_root.spell_delay_timer_4 = _root.spell_delay_4;
_root.spell_delay_timer_5 = _root.spell_delay_5;
_root.spell_delay_timer_6 = _root.spell_delay_6;
_root.spell_delay_timer_7 = _root.spell_delay_7;
_root.spell_delay_timer_8 = _root.spell_delay_8;
}
++ji;
}
++zu;
}
}
function mouseIntegrity() {
if (random(30) eq 1) {
Mouse.hide();
}
_root.kursor._x = _root._xmouse;
_root.kursor._y = _root._ymouse;
if (_root.block_everything_victory eq 1) {
_root.kursor.gotoAndStop(1);
_root.kursor._visible = true;
return undefined;
}
hitTest1 = _root.bottom_menu.right_controlz.hitZOne.hitTest(_root._xmouse, _root._ymouse, true);
if (hitTest1 eq 'true') {
_root.kursorCancel = 1;
_root.kursor.gotoAndStop(1);
return undefined;
}
if (_xmouse > 650 or _ymouse > 530) {
_root.kursorCancel = 1;
if (_root.spell_mode > 0 or thereIsASelectedUnit != 0 or severalUnitsSelected eq 1) {
_root.kursor._visible = true;
_root.kursor.gotoAndStop(4);
return undefined;
}
} else {
_root.kursor.gotoAndStop(1);
_root.kursorCancel = 0;
}
if (_root.spell_mode eq 7) {
if (!_root.yiff.deathRay_targeting) {
_root.yiff.attachMovie('deathRay_targeting', 'deathRay_targeting', _root.spellCircles_depth);
_root.yiff.deathRay_targeting._x = _root.yiff.necropolis._x + 20;
_root.yiff.deathRay_targeting._y = _root.yiff.necropolis._y - 145;
} else {
rotation_face_point2(_root.yiff.deathRay_targeting, _root._xmouse, _root._ymouse);
}
_root.kursor._x = _root._xmouse;
_root.kursor._y = _root._ymouse;
return undefined;
} else {
removeMovieClip(_root.yiff.deathRay_targeting);
}
if (thereIsASelectedUnit != 0 or severalUnitsSelected eq 1) {
_root.kursor.gotoAndStop(2);
if (_root.mousoveredEnemy != 0) {
_root.kursor.gotoAndStop(3);
}
} else {
_root.kursor.gotoAndStop(1);
}
if (_root.spell_mode > 0) {
_root.kursor._visible = false;
} else {
_root.kursor._visible = true;
}
if (_root.mouseOveredUndead != 0) {
_root.kursor.gotoAndStop(1);
}
}
function doPause() {
if (_root.mainMenu) {
removeMovieClip(_root.mainMenu);
}
if (_root.menuModeGameBlock eq 1 or _root.helpMenu or _root.mainMenu) {
return undefined;
}
if (_root.yiffISpaused eq 1) {
_root.yiffISpaused = 0;
trgtlayer = _root.yiff.dead_layer;
for (var v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip and trgtlayer[v2].thisisDead != 1) {
trgtlayer[v2].play();
trgtlayer[v2].aaa.play();
trgtlayer[v2].aaa.aaa2.play();
trgtlayer[v2].bbb.play();
trgtlayer[v2].bbb.bbb2.bbb3.play();
}
}
_root.yiff.gravity_nuke.play();
_root.yiff.gravity_nuke.aaa.play();
_root.yiff.gravity_nuke.bbb.play();
_root.yiff.gravity_nuke.ccc.play();
_root.yiff.gravity_nuke.ddd.ddd.play();
if (_root.yiff.necropolis.ball._currentframe > 1) {
_root.yiff.necropolis.ball.play();
}
_root.yiff.necropolis.ball.ggg.play();
_root.yiff.necropolis.ball.ggg.bbb.ccc.play();
unitCount = ARR_allUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_allUnits[i];
trgt.stun_anim.play();
trgt.walk_anim.play();
if (trgt.att_anim._currentframe > 1) {
trgt.att_anim.play();
trgt.att_anim.aaa.play();
}
++i;
}
trgtlayer = _root.yiff.shooting_layer;
for (v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
trgtlayer[v2].play();
trgtlayer[v2].aaa.play();
trgtlayer[v2].aaa.aaa2.play();
trgtlayer[v2].aaa.aaa2.bbb.play();
trgtlayer[v2].bbb.play();
trgtlayer[v2].ccc.play();
trgtlayer[v2].bbb.bbb2.bbb3.play();
}
}
trgtlayer = _root.yiff.projectile_layer;
for (v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
trgtlayer[v2].play();
trgtlayer[v2].aaa.play();
trgtlayer[v2].aaa.aaa2.play();
trgtlayer[v2].aaa.aaa2.bbb.play();
trgtlayer[v2].aaa.aaa2.bbb.ccc.play();
trgtlayer[v2].bbb.play();
trgtlayer[v2].aaa.bbb.play();
}
}
trgtlayer = _root.yiff.tactical_layer2;
for (v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
removeMovieClip(trgtlayer[v2]);
}
}
trgtlayer = _root.yiff.tactical_layer;
for (v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
removeMovieClip(trgtlayer[v2]);
}
}
} else {
_root.yiffISpaused = 1;
visualizeTactics();
trgtlayer = _root.yiff.dead_layer;
for (var v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip and trgtlayer[v2].thisisDead != 1) {
trgtlayer[v2].stop();
trgtlayer[v2].aaa.stop();
trgtlayer[v2].aaa.aaa2.stop();
trgtlayer[v2].bbb.stop();
trgtlayer[v2].bbb.bbb2.bbb3.stop();
}
}
_root.yiff.gravity_nuke.stop();
_root.yiff.gravity_nuke.aaa.stop();
_root.yiff.gravity_nuke.bbb.stop();
_root.yiff.gravity_nuke.ccc.stop();
_root.yiff.gravity_nuke.ddd.ddd.stop();
if (_root.yiff.necropolis.ball._currentframe > 1) {
_root.yiff.necropolis.ball.stop();
}
_root.yiff.necropolis.ball.ggg.stop();
_root.yiff.necropolis.ball.ggg.bbb.ccc.stop();
unitCount = ARR_allUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_allUnits[i];
trgt.stun_anim.stop();
trgt.walk_anim.stop();
if (trgt.att_anim._currentframe > 1) {
trgt.att_anim.stop();
trgt.att_anim.aaa.stop();
}
++i;
}
trgtlayer = _root.yiff.shooting_layer;
for (v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
trgtlayer[v2].stop();
trgtlayer[v2].aaa.stop();
trgtlayer[v2].aaa.aaa2.stop();
trgtlayer[v2].aaa.aaa2.bbb.stop();
trgtlayer[v2].bbb.stop();
trgtlayer[v2].bbb.bbb2.bbb3.stop();
trgtlayer[v2].ccc.stop();
}
}
trgtlayer = _root.yiff.projectile_layer;
for (v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
trgtlayer[v2].stop();
trgtlayer[v2].aaa.stop();
trgtlayer[v2].aaa.aaa2.stop();
trgtlayer[v2].aaa.aaa2.bbb.stop();
trgtlayer[v2].aaa.aaa2.bbb.ccc.stop();
trgtlayer[v2].bbb.stop();
trgtlayer[v2].aaa.bbb.stop();
}
}
}
}
function visualizeTactics() {
unitCountZZ = ARR_necroUnits.length;
j = 0;
while (j < unitCountZZ) {
trgt = ARR_necroUnits[j].linktounit;
iyiff = _root.yiff.tactical_layer.getNextHighestDepth();
_root.yiff.tactical_layer.attachMovie('green_circle', 'green_circle' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer['green_circle' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
if (trgt.holdPositionMode eq 1) {
iyiff = _root.yiff.tactical_layer2.getNextHighestDepth();
_root.yiff.tactical_layer2.attachMovie('holdPositionSign', 'holdPositionSign' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer2['holdPositionSign' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
}
if (trgt.forced_destination_x eq 'none' and trgt.targeted_enemy eq 'none') {
distdata = CALC_Dist_Xv_Yv(trgt.slot._x, trgt.slot._y, trgt._x, trgt._y);
distance_to_dest = distdata[0];
iyiff = _root.yiff.tactical_layer.getNextHighestDepth();
_root.yiff.tactical_layer.attachMovie('green_line', 'green_line' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer['green_line' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
trgt2._width = distance_to_dest;
rotation_face_point2(trgt2, trgt.slot._x, trgt.slot._y);
trgt2._rotation += 180;
} else {
if (trgt.forced_destination_x != 'none') {
distdata = CALC_Dist_Xv_Yv(trgt.forced_destination_x, trgt.forced_destination_y, trgt._x, trgt._y);
distance_to_dest = distdata[0];
iyiff = _root.yiff.tactical_layer.getNextHighestDepth();
_root.yiff.tactical_layer.attachMovie('green_line', 'green_line' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer['green_line' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
trgt2._width = distance_to_dest;
rotation_face_point2(trgt2, trgt.forced_destination_x, trgt.forced_destination_y);
trgt2._rotation += 180;
} else {
if (trgt.targeted_enemy != 'none') {
distdata = CALC_Dist_Xv_Yv(trgt.targeted_enemy._x, trgt.targeted_enemy._y, trgt._x, trgt._y);
distance_to_dest = distdata[0];
iyiff = _root.yiff.tactical_layer.getNextHighestDepth();
_root.yiff.tactical_layer.attachMovie('green_line', 'green_line' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer['green_line' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
trgt2._width = distance_to_dest;
rotation_face_point2(trgt2, trgt.targeted_enemy._x, trgt.targeted_enemy._y);
trgt2._rotation += 180;
if (trgt.holdPositionMode eq 1) {
if (trgt.id eq 101 or trgt.id eq 103) {
removeMovieClip(trgt2);
}
}
}
}
}
++j;
}
unitCountZZ = ARR_lightUnits.length;
j = 0;
while (j < unitCountZZ) {
trgt = ARR_lightUnits[j].linktounit;
iyiff = _root.yiff.tactical_layer.getNextHighestDepth();
_root.yiff.tactical_layer.attachMovie('red_circle', 'red_circle' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer['red_circle' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
if (trgt.targeted_enemy != 'none') {
distdata = CALC_Dist_Xv_Yv(trgt.targeted_enemy._x, trgt.targeted_enemy._y, trgt._x, trgt._y);
distance_to_dest = distdata[0];
iyiff = _root.yiff.tactical_layer.getNextHighestDepth();
_root.yiff.tactical_layer.attachMovie('red_line', 'red_line' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer['red_line' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
trgt2._width = distance_to_dest;
rotation_face_point2(trgt2, trgt.targeted_enemy._x, trgt.targeted_enemy._y);
trgt2._rotation += 180;
} else {
iyiff = _root.yiff.tactical_layer.getNextHighestDepth();
_root.yiff.tactical_layer.attachMovie('red_line', 'red_line' + iyiff, iyiff);
trgt2 = _root.yiff.tactical_layer['red_line' + iyiff];
trgt2._x = trgt._x;
trgt2._y = trgt._y;
rotation_toFace_movement(trgt2, trgt.xspeed, trgt.yspeed);
trgt2._rotation += 180;
}
++j;
}
}
function regenerateTacticalData() {
trgtlayer = _root.yiff.tactical_layer2;
for (var v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
removeMovieClip(trgtlayer[v2]);
}
}
trgtlayer = _root.yiff.tactical_layer;
for (v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
removeMovieClip(trgtlayer[v2]);
}
}
visualizeTactics();
}
function spawnUpgradesMenu() {
_root.attachMovie('menuUpgrades', 'upgradesMenu', _root.upgradesMunu_depth);
_root.upgradesMenu._x = 398;
_root.upgradesMenu._y = 267;
if (_root.skill_points > 0) {
_root.upgradesMenu.gotoAndStop(2);
}
}
function spawnUpgradesMenu2() {
_root.attachMovie('menuUpgrades2', 'upgradesMenu', _root.upgradesMunu_depth);
_root.upgradesMenu._x = 398;
_root.upgradesMenu._y = 267;
if (_root.skill_points > 0) {
_root.upgradesMenu.gotoAndStop(2);
}
}
function spawnFInalVictory() {
if (_root.this_is_survival eq 1) {
_root.attachMovie('skirmishCompleted', 'upgradesMenu', _root.upgradesMunu_depth);
} else {
_root.attachMovie('campaignCompleted', 'upgradesMenu', _root.upgradesMunu_depth);
trace('deleting saves');
saveslot000 = SharedObject.getLocal('necroDef_saves');
vl1 = this.saveslot000.data;
vl1.save_exists = 0;
}
_root.upgradesMenu._x = 398;
_root.upgradesMenu._y = 267;
}
function upgradesMenuIntegrity() {
if (_root.spell_skill_2 > 2 and _root.currentLevel > 7) {
_root.upgradesMenu.spellUpgrader_8.gotoAndStop(2);
} else {
_root.upgradesMenu.spellUpgrader_8.gotoAndStop(1);
if (_root.spell_skill_8 > 0) {
_root.skill_points += _root.spell_skill_8;
_root.spell_skill_8 = 0;
}
}
if (_root.spell_skill_8 > 1 and _root.currentLevel > 14) {
_root.upgradesMenu.spellUpgrader_4.gotoAndStop(2);
} else {
_root.upgradesMenu.spellUpgrader_4.gotoAndStop(1);
if (_root.spell_skill_4 > 0) {
_root.skill_points += _root.spell_skill_4;
_root.spell_skill_4 = 0;
}
}
if (_root.spell_skill_1 > 1 and _root.currentLevel > 14) {
_root.upgradesMenu.spellUpgrader_7.gotoAndStop(2);
} else {
_root.upgradesMenu.spellUpgrader_7.gotoAndStop(1);
if (_root.spell_skill_7 > 0) {
_root.skill_points += _root.spell_skill_7;
_root.spell_skill_7 = 0;
}
}
if (_root.spell_skill_7 > 1 and _root.currentLevel > 19) {
_root.upgradesMenu.spellUpgrader_6.gotoAndStop(2);
} else {
_root.upgradesMenu.spellUpgrader_6.gotoAndStop(1);
if (_root.spell_skill_6 > 0) {
_root.skill_points += _root.spell_skill_6;
_root.spell_skill_6 = 0;
}
}
if (_root.currentLevel > 7) {
_root.upgradesMenu.spellUpgrader_5.gotoAndStop(2);
} else {
_root.upgradesMenu.spellUpgrader_5.gotoAndStop(1);
}
if (_root.unit_skill_101 > 2) {
_root.upgradesMenu.unitUpgrader_102.gotoAndStop(2);
} else {
_root.upgradesMenu.unitUpgrader_102.gotoAndStop(1);
if (_root.unit_skill_102 > 0) {
_root.skill_points += _root.unit_skill_102;
_root.unit_skill_102 = 0;
}
}
if (_root.unit_skill_102 > 2 and _root.currentLevel > 13) {
_root.upgradesMenu.unitUpgrader_103.gotoAndStop(2);
} else {
_root.upgradesMenu.unitUpgrader_103.gotoAndStop(1);
if (_root.unit_skill_103 > 0) {
_root.skill_points += _root.unit_skill_103;
_root.unit_skill_103 = 0;
}
}
if (_root.unit_skill_103 > 2 and _root.currentLevel > 14) {
_root.upgradesMenu.unitUpgrader_104.gotoAndStop(2);
} else {
_root.upgradesMenu.unitUpgrader_104.gotoAndStop(1);
if (_root.unit_skill_104 > 0) {
_root.skill_points += _root.unit_skill_104;
_root.unit_skill_104 = 0;
}
}
i = 1;
while (i < 5) {
if (_root['unit_skill_' + (i + 100)] > 0) {
_root['unitAvailable_' + (i + 100)] = 1;
} else {
_root['unitAvailable_' + (i + 100)] = 0;
}
++i;
}
i = 0;
while (i < 9) {
if (_root['spell_skill_' + i] > 0) {
_root['spellAvailable_' + i] = 1;
} else {
_root['spellAvailable_' + i] = 0;
}
++i;
}
if (!_root.upgradesMenu) {
return undefined;
}
i = 0;
while (i < 9) {
_root['hiT_dSpl_' + i] = _root.upgradesMenu['hitzone_Spell_' + i].hitTest(_root._xmouse, _root._ymouse, true);
++i;
}
i = 0;
while (i < 5) {
_root['hT_dUnt_10' + i] = _root.upgradesMenu['hitzone_Unit_10' + i].hitTest(_root._xmouse, _root._ymouse, true);
++i;
}
if (hiT_dSpl_1 != true and hiT_dSpl_2 != true and hiT_dSpl_3 != true and hiT_dSpl_4 != true and hiT_dSpl_5 != true and hiT_dSpl_6 != true and hiT_dSpl_7 != true and hiT_dSpl_8 != true and hiT_dSpl_9 != true and hT_dUnt_101 != true and hT_dUnt_102 != true and hT_dUnt_103 != true and hT_dUnt_104 != true) {
_root.upgradesMenu.descriptor.gotoAndStop(1);
}
if (hiT_dSpl_1 eq true) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(2);
trgt.upgrade_ind.show_upgrade = _root.spell_skill_1 + '/5';
trgt.show_dmg = _root.fireball_dmgMin + '-' + _root.fireball_dmgMax;
trgt.show_stun = Math.floor((_root.fireball_stunTime / 30) * 10) / 10 + 's';
trgt.show_delay = Math.floor((_root.spell_delay_1 / 30) * 10) / 10 + 's';
if (_root.spell_skill_1 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_delay = 'n/a';
}
}
if (hiT_dSpl_2 eq true) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(3);
trgt.upgrade_ind.show_upgrade = _root.spell_skill_2 + '/5';
trgt.show_poison = Math.floor((_root.poisonBlast_POISON / 30) * 10) / 10 + 's';
trgt.show_dmg = _root.poisonBlast_dmgMin + '-' + _root.poisonBlast_dmgMax;
trgt.show_stun = Math.floor((_root.poisonBlast_stunTime / 30) * 10) / 10 + 's';
trgt.show_delay = Math.floor((_root.spell_delay_2 / 30) * 10) / 10 + 's';
if (_root.spell_skill_2 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_delay = 'n/a';
trgt.show_poison = 'n/a';
}
}
if (hiT_dSpl_3 eq true) {
trgt = _root.upgradesMenu.descriptor;
if (trgt._currentframe != 4) {
trace('555' + random(555));
trgt.gotoAndStop(4);
}
trgt.upgrade_ind.show_upgrade = _root.spell_skill_3 + '/5';
trgt.show_dmg = 'none';
trgt.show_stun = Math.floor((_root.shockwaveStunTime / 30) * 10) / 10 + 's';
trgt.show_delay = Math.floor((_root.spell_delay_3 / 30) * 10) / 10 + 's';
}
if (hiT_dSpl_4 eq true) {
if (_root.spell_skill_8 > 1 and _root.currentLevel > 14) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(5);
trgt.upgrade_ind.show_upgrade = _root.spell_skill_4 + '/5';
trgt.show_delay = Math.floor((_root.spell_delay_4 / 30) * 10) / 10 + 's';
trgt.show_duration = Math.floor((_root.madness_duration / 30) * 10) / 10 + 's';
if (_root.spell_skill_3 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_dmg = 'n/a';
trgt.show_duration = 'n/a';
trgt.show_delay = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(14);
}
}
if (hiT_dSpl_5 eq true) {
if (_root.currentLevel > 7) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(6);
trgt.upgrade_ind.show_upgrade = _root.spell_skill_5 + '/5';
trgt.show_duration = Math.floor((_root.healingDuration / 30) * 10) / 10 + 's';
trgt.show_regen = Math.floor(_root.healingAmmount * 30 * 10) / 10 + '/s';
trgt.show_delay = Math.floor((_root.spell_delay_5 / 30) * 10) / 10 + 's';
if (_root.spell_skill_5 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_duration = 'n/a';
trgt.show_regen = 'n/a';
trgt.show_delay = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(15);
}
}
if (hiT_dSpl_6 eq true) {
if (_root.currentLevel > 19 and _root.spell_skill_7 > 1) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(7);
trgt.upgrade_ind.show_upgrade = _root.spell_skill_6 + '/5';
trgt.show_dmg = _root.gravityBlast_min_dmg + '-' + _root.gravityBlast_max_dmg;
trgt.show_stun = '2.6s';
trgt.show_delay = Math.floor((_root.spell_delay_6 / 30) * 10) / 10 + 's';
if (_root.spell_skill_6 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_delay = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(16);
}
}
if (hiT_dSpl_7 eq true) {
if (_root.spell_skill_1 > 1 and _root.currentLevel > 14) {
trgt = _root.upgradesMenu.descriptor;
if (trgt._currentframe != 8) {
trgt.gotoAndStop(8);
}
trgt.upgrade_ind.show_upgrade = _root.spell_skill_7 + '/5';
trgt.show_dmg = _root.deathRayDMG_min + '-' + _root.deathRayDMG_max;
trgt.show_stun = Math.floor((_root.deathRay_STUN / 30) * 10) / 10 + 's';
trgt.show_delay = Math.floor((_root.spell_delay_7 / 30) * 10) / 10 + 's';
if (_root.spell_skill_7 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_delay = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
if (trgt._currentframe != 17) {
trgt.gotoAndStop(17);
}
}
}
if (hiT_dSpl_8 eq true) {
if (_root.spell_skill_2 > 2 and _root.currentLevel > 7) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(9);
trgt.upgrade_ind.show_upgrade = _root.spell_skill_8 + '/5';
trgt.show_effect = (1 - _root.curseSpellEffect) * 100 + '%';
trgt.show_duration = Math.floor((_root.curseSpellTime / 30) * 10) / 10 + 's';
trgt.show_delay = Math.floor((_root.spell_delay_8 / 30) * 10) / 10 + 's';
if (_root.spell_skill_8 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_effect = 'n/a';
trgt.show_duration = 'n/a';
trgt.show_delay = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(18);
}
}
if (hT_dUnt_101 eq true) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(31);
trgt.upgrade_ind.show_upgrade = _root.unit_skill_101 + '/5';
trgt.show_price = unit_price_101 + '$';
trgt.show_hp = unit_hp_101;
trgt.show_dmg = unit_dmg_min_101 + '-' + unit_dmg_max_101;
trgt.show_stun = 'none';
trgt.show_stunRes = unit_stunResistance_101 + '%';
trgt.show_intRes = unit_interaptionResistance_101 + '%';
if (_root.unit_skill_101 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_price = 'n/a';
trgt.show_hp = 'n/a';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_stunRes = 'n/a';
trgt.show_intRes = 'n/a';
}
}
if (hT_dUnt_102 eq true) {
if (_root.unit_skill_101 > 2) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(32);
trgt.upgrade_ind.show_upgrade = _root.unit_skill_102 + '/5';
trgt.show_price = unit_price_102 + '$';
trgt.show_hp = unit_hp_102;
trgt.show_dmg = unit_dmg_min_102 + '-' + unit_dmg_max_102;
trgt.show_stun = 'none';
trgt.show_stunRes = unit_stunResistance_102 + '%';
trgt.show_intRes = unit_interaptionResistance_102 + '%';
if (_root.unit_skill_102 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_price = 'n/a';
trgt.show_hp = 'n/a';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_stunRes = 'n/a';
trgt.show_intRes = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(42);
}
}
if (hT_dUnt_103 eq true) {
if (_root.unit_skill_102 > 2 and _root.currentLevel > 13) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(33);
trgt.upgrade_ind.show_upgrade = _root.unit_skill_103 + '/5';
trgt.show_price = unit_price_103 + '$';
trgt.show_hp = unit_hp_103;
trgt.show_dmg = unit_dmg_min_103 + '-' + unit_dmg_max_103;
trgt.show_stun = Math.floor((_root.DK_att360_stun / 30) * 10) / 10 + 's';
trgt.show_stunRes = unit_stunResistance_103 + '%';
trgt.show_intRes = unit_interaptionResistance_103 + '%';
if (_root.unit_skill_103 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_price = 'n/a';
trgt.show_hp = 'n/a';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_stunRes = 'n/a';
trgt.show_intRes = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
if (trgt._currentframe != 43) {
trgt.gotoAndStop(43);
}
}
}
if (hT_dUnt_104 eq true) {
if (_root.unit_skill_103 > 2) {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(34);
trgt.upgrade_ind.show_upgrade = _root.unit_skill_104 + '/5';
trgt.show_price = unit_price_104 + '$';
trgt.show_hp = unit_hp_104;
trgt.show_dmg = unit_dmg_min_104 + '-' + unit_dmg_max_104;
trgt.show_stun = '1s';
trgt.show_stunRes = unit_stunResistance_104 + '%';
trgt.show_intRes = unit_stunResistance_104 + '%';
if (_root.unit_skill_104 eq 0) {
trgt.upgrade_ind.show_upgrade = 'off';
trgt.show_price = 'n/a';
trgt.show_hp = 'n/a';
trgt.show_dmg = 'n/a';
trgt.show_stun = 'n/a';
trgt.show_stunRes = 'n/a';
trgt.show_intRes = 'n/a';
}
} else {
trgt = _root.upgradesMenu.descriptor;
trgt.gotoAndStop(44);
}
}
saveslot000 = SharedObject.getLocal('necroDef_saves');
svloc = this.saveslot000.data;
_root.upgradesMenu.descriptor.unit201c.showvar = svloc.kills201;
_root.upgradesMenu.descriptor.unit202c.showvar = svloc.kills202;
_root.upgradesMenu.descriptor.unit203c.showvar = svloc.kills203;
_root.upgradesMenu.descriptor.unit204c.showvar = svloc.kills204;
_root.upgradesMenu.descriptor.unit205c.showvar = svloc.kills205;
_root.upgradesMenu.descriptor.unit206c.showvar = svloc.kills206;
_root.upgradesMenu.descriptor.unit207c.showvar = svloc.kills207;
_root.upgradesMenu.descriptor.unit208c.showvar = svloc.kills208;
_root.upgradesMenu.descriptor.unit209c.showvar = svloc.kills209;
_root.upgradesMenu.descriptor.unit210c.showvar = svloc.kills210;
_root.upgradesMenu.descriptor.unit211c.showvar = svloc.kills211;
_root.upgradesMenu.descriptor.cash_saved.showvar = svloc.cashSaved;
_root.upgradesMenu.descriptor.score.showvar = svloc.kills201 * 11 + svloc.kills202 * 20 + svloc.kills203 * 33 + svloc.kills204 * 10 + svloc.kills205 * 50 + svloc.kills206 * 50 + svloc.kills207 * 1000 + svloc.kills208 * 100 + svloc.kills209 * 111 + svloc.kills210 * 12345 + svloc.kills211 * 234 + svloc.cashSaved * 20 + _root.current_wave * 10000;
scoreCampaignVar = svloc.kills201 * 11 + svloc.kills202 * 20 + svloc.kills203 * 33 + svloc.kills204 * 10 + svloc.kills205 * 50 + svloc.kills206 * 50 + svloc.kills207 * 1000 + svloc.kills208 * 100 + svloc.kills209 * 111 + svloc.kills210 * 12345 + svloc.kills211 * 234 + svloc.cashSaved * 20 + _root.current_wave * 10000;
if (_root.current_wave < 50) {
_root.kongregateStats.submit('Campaign', scoreCampaignVar);
}
if (svloc.kills202 > 0) {
_root.upgradesMenu.descriptor.unit202.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit202.gotoAndStop(1);
}
if (svloc.kills203 > 0) {
_root.upgradesMenu.descriptor.unit203.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit203.gotoAndStop(1);
}
if (svloc.kills204 > 0) {
_root.upgradesMenu.descriptor.unit204.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit204.gotoAndStop(1);
}
if (svloc.kills205 > 0) {
_root.upgradesMenu.descriptor.unit205.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit205.gotoAndStop(1);
}
if (svloc.kills206 > 0) {
_root.upgradesMenu.descriptor.unit206.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit206.gotoAndStop(1);
}
if (svloc.kills207 > 0) {
_root.upgradesMenu.descriptor.unit207.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit207.gotoAndStop(1);
}
if (svloc.kills208 > 0) {
_root.upgradesMenu.descriptor.unit208.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit208.gotoAndStop(1);
}
if (svloc.kills209 > 0) {
_root.upgradesMenu.descriptor.unit209.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit209.gotoAndStop(1);
}
if (svloc.kills210 > 0) {
_root.upgradesMenu.descriptor.unit210.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit210.gotoAndStop(1);
}
if (svloc.kills211 > 0) {
_root.upgradesMenu.descriptor.unit211.gotoAndStop(2);
} else {
_root.upgradesMenu.descriptor.unit211.gotoAndStop(1);
}
}
function BTN_startDay() {
removeMovieClip(_root.victory);
trgtlayer = _root.yiff.dead_layer;
for (var v2 in trgtlayer) {
if (trgtlayer[v2] instanceof MovieClip) {
removeMovieClip(trgtlayer[v2]);
}
}
_root.menuModeGameBlock = 0;
doPause();
_root.attachMovie('freetimeCounter', 'freetimeCounter', _root.freetimeCounter_depth);
_root.freetimeCounter._x = 5;
_root.freetimeCounter._y = 44;
if (_root.current_wave > 9 and _root.current_wave < 18) {
_root.Spawn_units(106);
} else {
if (_root.current_wave > 17) {
_root.Spawn_units(107);
}
}
removeMovieClip(_root.upgradesMenu);
}
function spawnDefeatMenu() {
if (_root.this_is_survival eq 1) {
_root.attachMovie('defeatMenu2', 'defeatMenu', _root.victory_depth);
} else {
_root.attachMovie('defeatMenu', 'defeatMenu', _root.victory_depth);
}
_root.defeatMenu._x = 400;
_root.defeatMenu._y = 250;
}
function spawnHelpMenu() {
_root.attachMovie('helpMenu', 'helpMenu', _root.helpMenu_depth);
_root.helpMenu._x = 376;
_root.helpMenu._y = 297;
}
function spawnMainMenu() {
_root.attachMovie('mainMenu', 'mainMenu', _root.helpMenu_depth);
_root.mainMenu._x = 376;
_root.mainMenu._y = 297;
}
function removeMainMenu() {
removeMovieClip(_root.mainMenu);
if (_root.yiffISpaused eq 1) {
doPause();
}
}
function SRV_upgrades_close() {
removeMovieClip(_root.upgradesMenu);
_root.menuModeGameBlock = 0;
doPause();
_root.attachMovie('freetimeCounter', 'freetimeCounter', _root.freetimeCounter_depth);
_root.freetimeCounter._x = 5;
_root.freetimeCounter._y = 44;
spawnHelpMenu();
}
function spellslotsAutoSelection() {
slotCore1 = _root.bottom_menu.spellSlot_1;
slotCore2 = _root.bottom_menu.spellSlot_2;
slotCore3 = _root.bottom_menu.spellSlot_3;
slotCore4 = _root.bottom_menu.spellSlot_4;
if (_root.spell_skill_6 > 0) {
slotCore1.selected_spell = 6;
} else {
if (_root.spell_skill_7 > 0) {
slotCore1.selected_spell = 7;
} else {
if (_root.spell_skill_4 > 0) {
slotCore1.selected_spell = 4;
} else {
if (_root.spell_skill_8 > 0) {
slotCore1.selected_spell = 8;
} else {
if (_root.spell_skill_1 > 0) {
slotCore1.selected_spell = 1;
} else {
if (_root.spell_skill_2 > 0) {
slotCore1.selected_spell = 2;
}
}
}
}
}
}
kl = 0;
while (kl < 2) {
if (_root.spell_skill_6 > 0) {
if (slotCore1.selected_spell != 6 and slotCore2.selected_spell != 6 and slotCore3.selected_spell != 6 and slotCore4.selected_spell != 6) {
slotCore2.selected_spell = 6;
break;
}
}
if (_root.spell_skill_7 > 0) {
if (slotCore1.selected_spell != 7 and slotCore2.selected_spell != 7 and slotCore3.selected_spell != 7 and slotCore4.selected_spell != 7) {
slotCore2.selected_spell = 7;
break;
}
}
if (_root.spell_skill_4 > 0) {
if (slotCore1.selected_spell != 4 and slotCore2.selected_spell != 4 and slotCore3.selected_spell != 4 and slotCore4.selected_spell != 4) {
slotCore2.selected_spell = 4;
break;
}
}
if (_root.spell_skill_8 > 0) {
if (slotCore1.selected_spell != 8 and slotCore2.selected_spell != 8 and slotCore3.selected_spell != 8 and slotCore4.selected_spell != 8) {
slotCore2.selected_spell = 8;
break;
}
}
if (_root.spell_skill_1 > 0) {
if (slotCore1.selected_spell != 1 and slotCore2.selected_spell != 1 and slotCore3.selected_spell != 1 and slotCore4.selected_spell != 1) {
slotCore2.selected_spell = 1;
break;
}
}
if (_root.spell_skill_2 > 0) {
if (slotCore1.selected_spell != 2 and slotCore2.selected_spell != 2 and slotCore3.selected_spell != 2 and slotCore4.selected_spell != 2) {
slotCore2.selected_spell = 2;
break;
}
}
break;
++kl;
}
kl = 0;
while (kl < 2) {
if (_root.spell_skill_6 > 0) {
if (slotCore1.selected_spell != 6 and slotCore2.selected_spell != 6 and slotCore3.selected_spell != 6 and slotCore4.selected_spell != 6) {
slotCore3.selected_spell = 6;
break;
}
}
if (_root.spell_skill_7 > 0) {
if (slotCore1.selected_spell != 7 and slotCore2.selected_spell != 7 and slotCore3.selected_spell != 7 and slotCore4.selected_spell != 7) {
slotCore3.selected_spell = 7;
break;
}
}
if (_root.spell_skill_4 > 0) {
if (slotCore1.selected_spell != 4 and slotCore2.selected_spell != 4 and slotCore3.selected_spell != 4 and slotCore4.selected_spell != 4) {
slotCore3.selected_spell = 4;
break;
}
}
if (_root.spell_skill_8 > 0) {
if (slotCore1.selected_spell != 8 and slotCore2.selected_spell != 8 and slotCore3.selected_spell != 8 and slotCore4.selected_spell != 8) {
slotCore3.selected_spell = 8;
break;
}
}
if (_root.spell_skill_1 > 0) {
if (slotCore1.selected_spell != 1 and slotCore2.selected_spell != 1 and slotCore3.selected_spell != 1 and slotCore4.selected_spell != 1) {
slotCore3.selected_spell = 1;
break;
}
}
if (_root.spell_skill_2 > 0) {
if (slotCore1.selected_spell != 2 and slotCore2.selected_spell != 2 and slotCore3.selected_spell != 2 and slotCore4.selected_spell != 2) {
slotCore3.selected_spell = 2;
break;
}
}
break;
++kl;
}
kl = 0;
while (kl < 2) {
if (_root.spell_skill_6 > 0) {
if (slotCore1.selected_spell != 6 and slotCore2.selected_spell != 6 and slotCore3.selected_spell != 6 and slotCore4.selected_spell != 6) {
slotCore4.selected_spell = 6;
break;
}
}
if (_root.spell_skill_7 > 0) {
if (slotCore1.selected_spell != 7 and slotCore2.selected_spell != 7 and slotCore3.selected_spell != 7 and slotCore4.selected_spell != 7) {
slotCore4.selected_spell = 7;
break;
}
}
if (_root.spell_skill_4 > 0) {
if (slotCore1.selected_spell != 4 and slotCore2.selected_spell != 4 and slotCore3.selected_spell != 4 and slotCore4.selected_spell != 4) {
slotCore4.selected_spell = 4;
break;
}
}
if (_root.spell_skill_8 > 0) {
if (slotCore1.selected_spell != 8 and slotCore2.selected_spell != 8 and slotCore3.selected_spell != 8 and slotCore4.selected_spell != 8) {
slotCore4.selected_spell = 8;
break;
}
}
if (_root.spell_skill_1 > 0) {
if (slotCore1.selected_spell != 1 and slotCore2.selected_spell != 1 and slotCore3.selected_spell != 1 and slotCore4.selected_spell != 1) {
slotCore4.selected_spell = 1;
break;
}
}
if (_root.spell_skill_2 > 0) {
if (slotCore1.selected_spell != 2 and slotCore2.selected_spell != 2 and slotCore3.selected_spell != 2 and slotCore4.selected_spell != 2) {
slotCore4.selected_spell = 2;
break;
}
}
break;
++kl;
}
}
function leveling() {}
function spellUpgradesIntegrity() {
_root.fireball_dmgMax = 110 + _root.spell_skill_1 * 10;
_root.fireball_dmgMin = 70 + _root.spell_skill_1 * 10;
_root.fireball_stunTime = 30 + _root.spell_skill_1 * 10;
_root.spell_delay_1 = 600 - _root.spell_skill_1 * 30;
_root.poisonBlast_POISON = 70 + _root.spell_skill_2 * 30;
_root.poisonBlast_dmgMin = 10 + _root.spell_skill_2 * 10;
_root.poisonBlast_dmgMax = 30 + _root.spell_skill_2 * 10;
_root.poisonBlast_stunTime = 30 + _root.spell_skill_2 * 10;
_root.spell_delay_2 = 330 - _root.spell_skill_2 * 30;
_root.spell_delay_5 = 30 * (20 - _root.spell_skill_5);
_root.healingDuration = 30 * (9 + _root.spell_skill_5);
_root.healingAmmount = 0.27 + _root.spell_skill_5 * 0.03;
_root.spell_delay_3 = 30 * (3 + 1.5 * _root.spell_skill_3);
_root.shockwaveStunTime = Math.floor(30 * (0.5 + _root.spell_skill_3 * 1.5));
_root.spell_delay_8 = 30 * (20 - 1.5 * _root.spell_skill_8);
_root.curseSpellEffect = 0.6 - 0.05 * _root.spell_skill_8;
_root.curseSpellTime = 30 * (5 + 2 * _root.spell_skill_8);
_root.spell_delay_4 = 30 * (40 - 2 * _root.spell_skill_4);
_root.madness_duration = 30 * (15 + 5 * _root.spell_skill_4);
_root.deathRay_STUN = Math.floor(30 * (0.5 + _root.spell_skill_7));
_root.deathRayDMG_min = 60 + _root.spell_skill_7 * 3;
_root.deathRayDMG_max = 120 + _root.spell_skill_7 * 10;
_root.spell_delay_7 = 30 * (17 - _root.spell_skill_7);
_root.spell_delay_6 = 30 * (50 - 3 * _root.spell_skill_6);
_root.gravityBlast_max_dmg = 450 + 50 * _root.spell_skill_6;
_root.gravityBlast_min_dmg = 290 + 10 * _root.spell_skill_6;
unit_price_101 = 90 + _root.unit_skill_101 * 10;
unit_hp_101 = 240 + _root.unit_skill_101 * 10;
unit_dmg_min_101 = 13 + _root.unit_skill_101 * 2;
unit_dmg_max_101 = 27 + _root.unit_skill_101 * 3;
unit_stunResistance_101 = 17 + _root.unit_skill_101 * 3;
unit_price_102 = 130 + _root.unit_skill_102 * 10;
unit_hp_102 = 80 + _root.unit_skill_102 * 20;
unit_dmg_min_102 = 17 + _root.unit_skill_102 * 2;
unit_dmg_max_102 = 26 + _root.unit_skill_102 * 4;
unit_interaptionResistance_102 = 30 + _root.unit_skill_102 * 10;
unit_stunResistance_102 = 13 + _root.unit_skill_102 * 7;
unit_price_103 = 180 + _root.unit_skill_103 * 20;
unit_hp_103 = 900 + _root.unit_skill_103 * 100;
unit_dmg_min_103 = 18 + _root.unit_skill_103 * 3;
unit_dmg_max_103 = 46 + _root.unit_skill_103 * 4;
unit_interaptionResistance_103 = 70;
unit_stunResistance_103 = 60;
_root.DK_att360_stun = 30 + _root.unit_skill_103 * 10;
unit_price_104 = 200 + _root.unit_skill_104 * 20;
unit_hp_104 = 140 + _root.unit_skill_104 * 10;
unit_dmg_min_104 = 13 + _root.unit_skill_104 * 2;
unit_dmg_max_104 = 26 + _root.unit_skill_104 * 4;
}
function SRV_saveANDload(dowhat) {
if (fuckedupeverything eq 1) {
return undefined;
}
saveslot000 = SharedObject.getLocal('necroDef_SRVsaves');
if (dowhat eq 'save') {
trace('saving');
vl1 = this.saveslot000.data;
vl1.save_exists = 1;
vl2 = _root;
} else {
vl2 = this.saveslot000.data;
vl1 = _root;
}
vl1.skill_points = vl2.skill_points;
vl1.spell_skill_1 = vl2.spell_skill_1;
vl1.spell_skill_2 = vl2.spell_skill_2;
vl1.spell_skill_3 = vl2.spell_skill_3;
vl1.spell_skill_4 = vl2.spell_skill_4;
vl1.spell_skill_5 = vl2.spell_skill_5;
vl1.spell_skill_6 = vl2.spell_skill_6;
vl1.spell_skill_7 = vl2.spell_skill_7;
vl1.spell_skill_8 = vl2.spell_skill_8;
vl1.unit_skill_101 = vl2.unit_skill_101;
vl1.unit_skill_102 = vl2.unit_skill_102;
vl1.unit_skill_103 = vl2.unit_skill_103;
vl1.unit_skill_104 = vl2.unit_skill_104;
}
function saveANDload(dowhat) {
if (fuckedupeverything eq 1) {
return undefined;
}
saveslot000 = SharedObject.getLocal('necroDef_saves');
if (dowhat eq 'save') {
vl1 = this.saveslot000.data;
vl1.save_exists = 1;
vl2 = _root;
} else {
vl2 = this.saveslot000.data;
vl1 = _root;
}
vl1.skill_points = vl2.skill_points;
vl1.currentLevel = vl2.currentLevel;
vl1.current_wave = vl2.current_wave;
vl1.exp_ = vl2.exp_;
vl1.spell_skill_1 = vl2.spell_skill_1;
vl1.spell_skill_2 = vl2.spell_skill_2;
vl1.spell_skill_3 = vl2.spell_skill_3;
vl1.spell_skill_4 = vl2.spell_skill_4;
vl1.spell_skill_5 = vl2.spell_skill_5;
vl1.spell_skill_6 = vl2.spell_skill_6;
vl1.spell_skill_7 = vl2.spell_skill_7;
vl1.spell_skill_8 = vl2.spell_skill_8;
vl1.unit_skill_101 = vl2.unit_skill_101;
vl1.unit_skill_102 = vl2.unit_skill_102;
vl1.unit_skill_103 = vl2.unit_skill_103;
vl1.unit_skill_104 = vl2.unit_skill_104;
if (dowhat eq 'save') {
vl1.spellslotSave1 = _root.bottom_menu.spellSlot_1.selected_spell;
vl1.spellslotSave2 = _root.bottom_menu.spellSlot_2.selected_spell;
vl1.spellslotSave3 = _root.bottom_menu.spellSlot_3.selected_spell;
vl1.spellslotSave4 = _root.bottom_menu.spellSlot_4.selected_spell;
} else {
_root.spellSelectorLoad_1 = vl2.spellslotSave1;
_root.spellSelectorLoad_2 = vl2.spellslotSave2;
_root.spellSelectorLoad_3 = vl2.spellslotSave3;
_root.spellSelectorLoad_4 = vl2.spellslotSave4;
}
}
function saveQuickSPells() {
if (_root.menuModeGameBlock eq 1) {
return undefined;
}
saveslot000 = SharedObject.getLocal('necroDef_saves');
vl1 = this.saveslot000.data;
vl2 = _root;
if (_root.bottom_menu.spellSlot_1.selected_spell != 3) {
vl1.spellslotSave1 = _root.bottom_menu.spellSlot_1.selected_spell;
}
if (_root.bottom_menu.spellSlot_2.selected_spell != 3) {
vl1.spellslotSave2 = _root.bottom_menu.spellSlot_2.selected_spell;
}
if (_root.bottom_menu.spellSlot_3.selected_spell != 3) {
vl1.spellslotSave3 = _root.bottom_menu.spellSlot_3.selected_spell;
}
if (_root.bottom_menu.spellSlot_4.selected_spell != 3) {
vl1.spellslotSave4 = _root.bottom_menu.spellSlot_4.selected_spell;
}
}
stop();
_root.this_is_survival = 0;
_root.combat_isMuted = 0;
_root.blackness_depth = 999999;
_root.kursor_depth = 200;
_root.helpMenu_depth = 190;
_root.freetimeCounter_depth = 180;
_root.upgradesMunu_depth = 170;
_root.victory_depth = 165;
_root.bottommenu_depth = 160;
_root.uppermenu_depth = 150;
_root.yiff_depth = 100;
_root.survival_timeLimit = 350;
_root.selection_depth = 3000;
_root.hpshow_layer_depth = 1750;
_root.leaftop_depth = 1650;
_root.gravnuke_depth = 1610;
_root.shooting_layer_depth = 1600;
_root.necropolis_depth = 1550;
_root.unit_slots_depth = 1500;
_root.units_depth = 50;
_root.spellCircles_depth = 20;
_root.dead_depth = 10;
_root.background_depth = 1;
_root.spellAvailable_1 = 1;
_root.spellAvailable_2 = 1;
_root.spellAvailable_3 = 1;
_root.spellAvailable_4 = 1;
_root.spellAvailable_5 = 1;
_root.spellAvailable_6 = 1;
_root.spellAvailable_7 = 1;
_root.spellAvailable_8 = 1;
_root.spell_delay_4 = 30;
_root.spell_delay_6 = 30;
_root.spell_delay_7 = 30;
_root.unitSpawn_delay_101 = 15;
_root.unitSpawn_delay_102 = 30;
_root.unitSpawn_delay_103 = 150;
_root.unitSpawn_delay_104 = 300;
_root.castleHitPoints = 1000;
_root.castleDmg = 0;
_root.regeneration_rate = 0.1;
_root.units_max_count = 100;
_root.unit_slots_max_count = 50;
_root.homing_radius = 200;
radiuscheckSTEP = 3;
RANDOM_NUM_raznosEnemyCHeka = 20;
_root.gravityBlast_max_dmg = 150;
_root.gravityBlast_min_dmg = 80;
_root.shockwaveRadius = 50;
_root.curseSpellRadius = 90;
_root.madnessSpellRadius = 95;
_root.minimum_stun = 10;
_root.unitClickedTimer = 0;
_root.doubleClickSelect_SPEED = 10;
_root.menuModeGameBlock = 0;
_root.yiffISpaused = 0;
_root.skill_points = 0;
_root.currentLevel = 1;
_root.current_wave = 1;
_root.cash = 500;
_root.exp_ = 0;
_root.tremorTimer = 0;
_root.spell_mode = 0;
_root.wave_timer_1 = 0;
thereIsASelectedUnit = 0;
_root.mouseOveredUndead = 0;
_root.mousoveredEnemy = 0;
theMouseIsDown = 0;
severalUnitsSelected = 0;
_root.victory_start_counting = 0;
_root.block_everything_victory = 0;
_root.infotext = '';
_root.gameFailed = 0;
_root.spell_delay_timer_1 = 0;
_root.spell_delay_timer_2 = 0;
_root.spell_delay_timer_3 = 0;
_root.spell_delay_timer_4 = 0;
_root.spell_delay_timer_5 = 0;
_root.spell_delay_timer_6 = 0;
_root.spell_delay_timer_7 = 0;
_root.spell_delay_timer_8 = 0;
_root.unitSpawnDelay_timer_101 = 0;
_root.unitSpawnDelay_timer_102 = 0;
_root.unitSpawnDelay_timer_103 = 0;
_root.unitSpawnDelay_timer_104 = 0;
_root.spell_skill_1 = 0;
_root.spell_skill_2 = 0;
_root.spell_skill_3 = 1;
_root.spell_skill_4 = 0;
_root.spell_skill_5 = 0;
_root.spell_skill_6 = 0;
_root.spell_skill_7 = 0;
_root.spell_skill_8 = 0;
_root.unit_skill_101 = 1;
_root.unit_skill_102 = 0;
_root.unit_skill_103 = 0;
_root.unit_skill_104 = 0;
_root.unitAvailable_102 = 0;
_root.unitAvailable_103 = 0;
_root.unitAvailable_104 = 0;
unit_price_101 = 100;
unit_hp_101 = 250;
unit_dmg_min_101 = 15;
unit_dmg_max_101 = 30;
unit_stunResistance_101 = 20;
unit_speed_101 = 2;
unit_ATTrad_101 = 30;
unit_VISrad_101 = 300;
unit_critical_chance_101 = 5;
unit_critical_mod_101 = 3;
unit_attackDelay_101 = 40;
unit_interaptionResistance_101 = 40;
unit_price_106 = 0;
unit_hp_106 = 1200;
unit_dmg_min_106 = 20;
unit_dmg_max_106 = 50;
_root.ghoulKingStunPower = 60;
unit_stunResistance_106 = 70;
unit_speed_106 = 1.4;
unit_ATTrad_106 = 15;
unit_VISrad_106 = 300;
unit_critical_chance_106 = 5;
unit_critical_mod_106 = 3;
unit_attackDelay_106 = 50;
unit_interaptionResistance_106 = 30;
unit_price_102 = 140;
unit_hp_102 = 120;
unit_dmg_min_102 = 20;
unit_dmg_max_102 = 30;
unit_interaptionResistance_102 = 40;
unit_stunResistance_102 = 20;
unit_speed_102 = 1.7;
unit_ATTrad_102 = 190;
unit_VISrad_102 = 300;
unit_critical_chance_102 = 5;
unit_critical_mod_102 = 3;
unit_attackDelay_102 = 30;
unit_price_103 = 200;
unit_hp_103 = 1000;
unit_dmg_min_103 = 20;
unit_dmg_max_103 = 50;
unit_interaptionResistance_103 = 70;
unit_stunResistance_103 = 60;
_root.DK_att360_stun = 30;
unit_speed_103 = 2;
unit_ATTrad_103 = 50;
unit_VISrad_103 = 300;
unit_critical_chance_103 = 5;
unit_critical_mod_103 = 3;
unit_attackDelay_103 = 80;
_root.DK_att360_radius = 70;
unit_price_107 = 0;
unit_hp_107 = 1300;
unit_dmg_min_107 = 40;
unit_dmg_max_107 = 60;
_root.DK_heroStun = 70;
unit_stunResistance_107 = 99;
unit_speed_107 = 1.5;
unit_ATTrad_107 = 15;
unit_VISrad_107 = 300;
unit_critical_chance_107 = 5;
unit_critical_mod_107 = 3;
unit_attackDelay_107 = 80;
unit_interaptionResistance_107 = 90;
unit_price_104 = 220;
unit_speed_104 = 1.4;
unit_hp_104 = 150;
unit_dmg_min_104 = 20;
unit_dmg_max_104 = 60;
unit_ATTrad_104 = 250;
unit_VISrad_104 = 300;
unit_critical_chance_104 = 5;
unit_critical_mod_104 = 3;
unit_attackDelay_104 = 110;
_root.elisiumTearRadius = 50;
unit_interaptionResistance_104 = 20;
unit_stunResistance_104 = 20;
unit_siegeDMG_201 = 100;
unit_speed_201 = 1.4;
unit_hp_201 = 110;
unit_dmg_min_201 = 10;
unit_dmg_max_201 = 25;
unit_ATTrad_201 = 30;
unit_VISrad_201 = 300;
unit_SIEGErad_201 = 105;
unit_critical_chance_201 = 5;
unit_critical_mod_201 = 3;
unit_attackDelay_201 = 50;
unit_interaptionResistance_201 = 40;
unit_stunResistance_201 = 20;
unit_cash_201 = 25;
unit_exp_201 = 5;
unit_siegeDMG_206 = 200;
unit_speed_206 = 1.4;
unit_hp_206 = 210;
unit_dmg_min_206 = 15;
unit_dmg_max_206 = 35;
unit_ATTrad_206 = 10;
unit_VISrad_206 = 200;
unit_SIEGErad_206 = 105;
unit_critical_chance_206 = 5;
unit_critical_mod_206 = 3;
unit_attackDelay_206 = 50;
unit_interaptionResistance_206 = 50;
unit_stunResistance_206 = 40;
unit_cash_206 = 40;
unit_exp_206 = 10;
unit_siegeDMG_209 = 150;
unit_speed_209 = 1.5;
unit_hp_209 = 600;
unit_dmg_min_209 = 20;
unit_dmg_max_209 = 30;
unit_ATTrad_209 = 10;
unit_VISrad_209 = 300;
unit_SIEGErad_209 = 105;
unit_critical_chance_209 = 5;
unit_critical_mod_209 = 3;
unit_attackDelay_209 = 50;
unit_interaptionResistance_209 = 99;
unit_stunResistance_209 = 50;
unit_cash_209 = 80;
unit_exp_209 = 100;
unit_siegeDMG_211 = 200;
unit_speed_211 = 1.2;
unit_hp_211 = 1000;
unit_dmg_min_211 = 40;
unit_dmg_max_211 = 60;
unit_ATTrad_211 = 10;
unit_VISrad_211 = 300;
unit_SIEGErad_211 = 105;
unit_critical_chance_211 = 5;
unit_critical_mod_211 = 3;
unit_attackDelay_211 = 40;
unit_interaptionResistance_211 = 90;
unit_stunResistance_211 = 90;
unit_cash_211 = 90;
unit_exp_211 = 200;
unit_siegeDMG_207 = 1500;
unit_speed_207 = 1.5;
unit_hp_207 = 2600;
unit_dmg_min_207 = 20;
unit_dmg_max_207 = 30;
_root.boss1AddDMG_min = 5;
_root.boss1AddDMG_max = 15;
unit_ATTrad_207 = 10;
unit_VISrad_207 = 300;
unit_SIEGErad_207 = 105;
unit_critical_chance_207 = 5;
unit_critical_mod_207 = 3;
unit_attackDelay_207 = 50;
unit_interaptionResistance_207 = 20;
unit_stunResistance_207 = 50;
unit_cash_207 = 2000;
unit_exp_207 = 300;
unit_siegeDMG_202 = 100;
unit_speed_202 = 1.3;
unit_hp_202 = 100;
unit_dmg_min_202 = 10;
unit_dmg_max_202 = 30;
unit_ATTrad_202 = 150;
unit_VISrad_202 = 300;
unit_critical_chance_202 = 5;
unit_critical_mod_202 = 3;
unit_attackDelay_202 = 30;
unit_SIEGErad_202 = 105;
unit_interaptionResistance_202 = 40;
unit_stunResistance_202 = 20;
unit_cash_202 = 30;
unit_exp_202 = 7;
unit_siegeDMG_203 = 150;
unit_speed_203 = 1.3;
unit_hp_203 = 100;
unit_dmg_min_203 = 10;
unit_dmg_max_203 = 30;
unit_ATTrad_203 = 189;
unit_VISrad_203 = 300;
unit_critical_chance_203 = 5;
unit_critical_mod_203 = 3;
unit_attackDelay_203 = 50;
unit_SIEGErad_203 = 105;
unit_interaptionResistance_203 = 40;
unit_stunResistance_203 = 20;
unit_cash_203 = 50;
unit_exp_203 = 14;
unit_siegeDMG_205 = 300;
_root.mage_explosion_radius = 35;
unit_speed_205 = 1.3;
unit_hp_205 = 200;
unit_proj_speed_205 = 20;
unit_dmg_min_205 = 40;
unit_dmg_max_205 = 80;
unit_stun_time_205 = 60;
unit_ATTrad_205 = 250;
unit_VISrad_205 = 400;
unit_critical_chance_205 = 5;
unit_critical_mod_205 = 3;
unit_attackDelay_205 = 100;
unit_SIEGErad_205 = 105;
unit_interaptionResistance_205 = 20;
unit_stunResistance_205 = 20;
unit_cash_205 = 60;
unit_exp_205 = 20;
unit_siegeDMG_208 = 500;
_root.mage_explosion_radius_2 = 75;
unit_speed_208 = 1.3;
unit_hp_208 = 200;
unit_proj_speed_208 = 20;
unit_dmg_min_208 = 20;
unit_dmg_max_208 = 70;
unit_stun_time_208 = 90;
unit_ATTrad_208 = 300;
unit_VISrad_208 = 400;
unit_critical_chance_208 = 5;
unit_critical_mod_208 = 3;
unit_attackDelay_208 = 100;
unit_SIEGErad_208 = 108;
unit_interaptionResistance_208 = 30;
unit_stunResistance_208 = 30;
unit_cash_208 = 90;
unit_exp_208 = 30;
unit_siegeDMG_210 = 500000;
_root.boss2_explRadius = 80;
unit_speed_210 = 1.3;
unit_hp_210 = 5000;
unit_proj_speed_210 = 20;
unit_dmg_min_210 = 40;
unit_dmg_max_210 = 90;
unit_stun_time_210 = 90;
unit_ATTrad_210 = 250;
unit_VISrad_210 = 250;
unit_critical_chance_210 = 5;
unit_critical_mod_210 = 3;
unit_attackDelay_210 = 30;
unit_SIEGErad_210 = 108;
unit_interaptionResistance_210 = 90;
unit_stunResistance_210 = 80;
unit_cash_210 = 5000;
unit_exp_210 = 3000;
_root.sound_shell_depth = 999555;
_root.createEmptyMovieClip('sound_shell', _root.sound_shell_depth);
_root.createEmptyMovieClip('music_shell', _root.sound_shell_depth + 1);
musicInitiate();
initiateSounds();
_root.SFX_volume.setVolume(25);
_root.lvlExp_0 = 0;
_root.lvlExp_1 = 70;
_root.lvlExp_2 = 300;
_root.lvlExp_3 = 400;
_root.lvlExp_4 = 600;
_root.lvlExp_5 = 800;
_root.lvlExp_6 = 1000;
_root.lvlExp_7 = 1500;
_root.lvlExp_8 = 2000;
_root.lvlExp_9 = 2500;
_root.lvlExp_10 = 3000;
_root.lvlExp_11 = 4000;
_root.lvlExp_12 = 5000;
_root.lvlExp_13 = 6000;
_root.lvlExp_14 = 7000;
_root.lvlExp_15 = 9000;
_root.lvlExp_16 = 11000;
_root.lvlExp_17 = 13000;
_root.lvlExp_18 = 15000;
_root.lvlExp_19 = 17000;
_root.lvlExp_20 = 20000;
_root.lvlExp_21 = 1000000;
removeMovieClip(cpmstar_childad);
gameMusic.start(0, 9999);
gameMusic.setVolume(30);
_root.this_is_survival = 1;
localkillsNullify();
INIT_yiffing();
spawnUnitSlots();
_root.attachMovie('kursor', 'kursor', _root.kursor_depth);
Mouse.hide();
AI_end();
if (_root.thisIsSandBox eq 1) {
_root.survival_timeLimit = 99999999;
}
_root.current_wave = 100;
if (_root.challenge eq 0) {
_root.currentLevel = 20;
_root.exp_ = 20001;
_root.skill_points = 20;
_root.spell_skill_1 = 1;
_root.spell_skill_2 = 1;
_root.spellSelectorLoad_1 = 3;
_root.spellSelectorLoad_2 = 1;
_root.spellSelectorLoad_3 = 2;
_root.spellSelectorLoad_4 = 3;
_root.spawnLimit = 8;
_root.cash = 2000;
saveslot000 = SharedObject.getLocal('necroDef_SRVsaves');
vl1 = this.saveslot000.data;
if (vl1.save_exists eq 1) {
_root.SRV_saveANDload('load');
}
if (_root.thisIsSandBox eq 1) {
if (_root.sbox_spawnLimitMode eq 1) {
_root.spawnLimit = 8;
} else {
if (_root.sbox_spawnLimitMode eq 2) {
_root.spawnLimit = 10;
} else {
if (_root.sbox_spawnLimitMode eq 3) {
_root.spawnLimit = 20;
}
}
}
}
if (_root.skirmDiff eq 1 and _root.thisIsSandBox != 1) {
_root.cash = 5000;
}
setSandboxRespawnRates();
if (_root.sbox_cheatMode eq 1 and _root.thisIsSandBox eq 1) {
_root.attachMovie('freetimeCounter', 'freetimeCounter', _root.freetimeCounter_depth);
_root.freetimeCounter._x = 5;
_root.freetimeCounter._y = 44;
_root.cash = 999999;
spellSlotsIntegrity();
_root.spell_skill_1 = 5;
_root.spell_skill_2 = 5;
_root.spell_skill_3 = 5;
_root.spell_skill_4 = 5;
_root.spell_skill_5 = 5;
_root.spell_skill_6 = 5;
_root.spell_skill_7 = 5;
_root.spell_skill_8 = 5;
_root.spell_skill_9 = 5;
_root.unit_skill_101 = 5;
_root.unit_skill_102 = 5;
_root.unit_skill_103 = 5;
_root.unit_skill_104 = 5;
_root.spellslotsAutoSelection();
} else {
spawnUpgradesMenu2();
doPause();
_root.menuModeGameBlock = 1;
}
} else {
if (_root.challenge eq 1) {
_root.spawnLimit = 8;
_root.cash = 0;
_root.survival_timeLimit = 200;
_root.Spawn_units(106);
_root.Spawn_units(106);
_root.currentLevel = 5;
_root.exp_ = 666;
_root.skill_points = 0;
_root.spell_skill_1 = 5;
_root.spell_skill_2 = 5;
_root.spellSelectorLoad_1 = 3;
_root.spellSelectorLoad_2 = 1;
_root.spellSelectorLoad_3 = 2;
_root.spellSelectorLoad_4 = 3;
_root.unit_skill_101 = 5;
_root.attachMovie('freetimeCounter', 'freetimeCounter', _root.freetimeCounter_depth);
_root.freetimeCounter._x = 5;
_root.freetimeCounter._y = 44;
} else {
if (_root.challenge eq 2) {
trace('challenge 2 set');
_root.spawnLimit = 9;
_root.cash = 0;
_root.survival_timeLimit = 150;
_root.spawnedUnits = 0;
_root.Spawn_units(107);
_root.Spawn_units(107);
_root.currentLevel = 15;
_root.exp_ = 9999;
_root.skill_points = 0;
_root.spell_skill_1 = 5;
_root.spell_skill_2 = 5;
_root.spell_skill_8 = 5;
_root.spell_skill_4 = 5;
_root.spell_skill_7 = 5;
_root.spellSelectorLoad_1 = 1;
_root.spellSelectorLoad_2 = 8;
_root.spellSelectorLoad_3 = 4;
_root.spellSelectorLoad_4 = 7;
_root.unit_skill_101 = 5;
_root.unit_skill_102 = 5;
_root.attachMovie('freetimeCounter', 'freetimeCounter', _root.freetimeCounter_depth);
_root.freetimeCounter._x = 5;
_root.freetimeCounter._y = 44;
} else {
if (_root.challenge eq 3) {
trace('challenge 2 set');
_root.spawnLimit = 9;
_root.cash = 1800;
_root.survival_timeLimit = 100;
_root.spawnedUnits = 0;
_root.Spawn_units(107);
_root.Spawn_units(107);
_root.Spawn_units(107);
_root.unit_skill_104 = 5;
spellUpgradesIntegrity();
_root.Spawn_units(104);
_root.Spawn_units(104);
_root.Spawn_units(104);
_root.Spawn_units(104);
_root.Spawn_units(104);
_root.Spawn_units(104);
_root.currentLevel = 20;
_root.exp_ = 99999;
_root.skill_points = 0;
_root.spell_skill_6 = 5;
_root.spell_skill_7 = 5;
_root.spell_skill_2 = 5;
_root.spell_skill_8 = 5;
_root.spell_skill_4 = 5;
_root.spell_skill_1 = 5;
_root.spellSelectorLoad_1 = 6;
_root.spellSelectorLoad_2 = 7;
_root.spellSelectorLoad_3 = 1;
_root.spellSelectorLoad_4 = 8;
_root.unit_skill_101 = 5;
_root.unit_skill_102 = 5;
_root.unit_skill_103 = 5;
_root.unit_skill_104 = 5;
_root.attachMovie('freetimeCounter', 'freetimeCounter', _root.freetimeCounter_depth);
_root.freetimeCounter._x = 5;
_root.freetimeCounter._y = 44;
}
}
}
}
onEnterFrame = function () {
if (_root.sbox_cheatMode eq 1 and _root.thisIsSandBox eq 1) {
_root.castleDmg = 0;
_root.spell_delay_timer_1 = 0;
_root.spell_delay_timer_2 = 0;
_root.spell_delay_timer_3 = 0;
_root.spell_delay_timer_4 = 0;
_root.spell_delay_timer_5 = 0;
_root.spell_delay_timer_6 = 0;
_root.spell_delay_timer_7 = 0;
_root.spell_delay_timer_8 = 0;
_root.spell_delay_timer_9 = 0;
}
if (_root.menuModeGameBlock eq 1 or _root.helpMenu or _root.mainMenu) {
if (thereIsASelectedUnit != 0) {
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
}
severalUnitsSelected = 0;
_root.spell_mode = 0;
}
if (_root.block_everything_victory eq 1) {
severalUnitsSelected = 0;
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
}
if (_root.yiffISpaused eq 0) {
if (!_root.freetimeCounter) {
if (_root.wave_timer_1 / 30 > _root.survival_timeLimit) {
} else {
if (_root.challenge eq 0) {
if (_root.thisIsSandBox eq 1) {
_root.SandboxWaves();
} else {
_root['SurvivalWaves_' + _root.skirmDiff]();
}
} else {
if (_root.challenge eq 1) {
challengeWaves_1();
}
if (_root.challenge eq 2) {
challengeWaves_2();
}
if (_root.challenge eq 3) {
challengeWaves_3();
}
}
}
waveEnd();
}
if (_root.castleHitPoints < _root.castleDmg and _root.gameFailed != 1) {
_root.yiff.necropolis.play();
_root.gameFailed = 1;
_root.block_everything_victory = 1;
_root.menuModeGameBlock = 1;
}
leveling();
spellSlotsIntegrity();
upperMenuIntegrity();
bottomMunuIntegrity();
upgradesMenuIntegrity();
mouseIntegrity();
weaponKursorIntegrity();
creatingUnitsArray();
massSelectionIntegrity();
gravityNuke_integrity();
tremor();
boss2SummoningIntegrity();
spellUpgradesIntegrity();
unitCount = ARR_allUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_allUnits[i];
unitsKnowYourPlace(trgt);
unitsKnowYourPlaceTheHardWay(trgt);
UnitsKillCastle(trgt);
moveObject(trgt);
targetingIntegrity1(trgt);
targetingIntegrity2(trgt);
selectionIntegrity(trgt);
death_integrity(trgt);
unitStatIntegrity(trgt);
if (trgt.id eq 210) {
AI_boss2(trgt);
} else {
AI_units(trgt);
}
if (random(3) eq 1) {
force_spread(trgt);
}
renderObject(trgt);
++i;
}
for (var v2 in _root.yiff.projectile_layer) {
++dsfgdfgdfg111;
if (_root.yiff.projectile_layer[v2] instanceof MovieClip) {
if (_root.yiff.projectile_layer[v2].whatisit eq 'projectile') {
projectileIntegrity(_root.yiff.projectile_layer[v2]);
}
}
}
boss1_special();
castleLifeIntegrity();
showHPintegrity();
shldswrd_follow();
} else {
spellSlotsIntegrity();
upperMenuIntegrity();
bottomMunuIntegrity();
upgradesMenuIntegrity();
mouseIntegrity();
weaponKursorIntegrity();
creatingUnitsArray();
massSelectionIntegrity();
spellUpgradesIntegrity();
unitCount = ARR_allUnits.length;
i = 0;
while (i < unitCount) {
trgt = ARR_allUnits[i];
selectionIntegrity(trgt);
++i;
}
showHPintegrity();
}
if (_root.unitClickedTimer > 0) {
--_root.unitClickedTimer;
} else {
_root.unitClickedTimer = 0;
}
};
onMouseUp = function () {
theMouseIsDown = 0;
if (hitTest1 != true and _root.block_everything_victory != 1 and !_root.helpMenu and !_root.mainMenu) {
if (_root.selectAllUnitsActivated != 1) {
doUnitSelection();
}
}
_root.selectAllUnitsActivated = 0;
};
onMouseDown = function () {
_root.selectAllUnitsActivated = 0;
_root.infotext = '';
if (_root.block_everything_victory eq 1 or _root.helpMenu or _root.mainMenu) {
return undefined;
}
if (_root.menuModeGameBlock != 1) {
theMouseIsDown = 1;
lockedMouse_x = _root._xmouse;
lockedMouse_y = _root._ymouse;
if (_root.kursorCancel eq 1) {
if (hitTest1 != true) {
if (thereIsASelectedUnit != 0) {
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
}
severalUnitsSelected = 0;
}
if (_root.spell_selector_mouseovered != 1) {
_root.spell_mode = 0;
}
}
if (hitTest1 != true) {
if (severalUnitsSelected eq 1) {
unitCountZZ = selectedUnitsArray.length;
if (_root.mousoveredEnemy != 0) {
j = 0;
while (j < unitCountZZ) {
trgt = selectedUnitsArray[j];
trgt.targeted_enemy = _root.mousoveredEnemy;
if (trgt.id != 102 and trgt.id != 104) {
trgt.holdPositionMode = 0;
}
trgt.forced_destination_x = 'none';
++j;
}
} else {
if (_root.mouseOveredUndead != 0) {
} else {
j = 0;
while (j < unitCountZZ) {
trgt = selectedUnitsArray[j];
rasstanovka(j);
xxx = _root._xmouse + xplus;
yyy = _root._ymouse + yplus;
trgt.forced_destination_x = xxx;
trgt.forced_destination_y = yyy;
trgt.slot._x = xxx;
trgt.slot._y = yyy;
++j;
}
}
}
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
severalUnitsSelected = 0;
}
if (thereIsASelectedUnit != 0 and severalUnitsSelected != 1) {
if (_root.mousoveredEnemy != 0) {
thereIsASelectedUnit.TIMER_attackDelay = 0;
thereIsASelectedUnit.gotoAndStop(1);
thereIsASelectedUnit.targeted_enemy = _root.mousoveredEnemy;
if (thereIsASelectedUnit.id != 102 and thereIsASelectedUnit.id != 104) {
thereIsASelectedUnit.holdPositionMode = 0;
}
thereIsASelectedUnit.forced_destination_x = 'none';
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
} else {
if (_root.mouseOveredUndead != 0) {
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit = 0;
} else {
thereIsASelectedUnit.iSselected = 0;
thereIsASelectedUnit.forced_destination_x = _root._xmouse;
thereIsASelectedUnit.forced_destination_y = _root._ymouse;
thereIsASelectedUnit.slot._x = _root._xmouse;
thereIsASelectedUnit.slot._y = _root._ymouse;
thereIsASelectedUnit = 0;
}
}
if (_root.yiffISpaused eq 1) {
regenerateTacticalData();
}
}
}
if (_root.yiffISpaused eq 1 and _root.spell_mode != 0) {
doPause();
}
if (_root.spell_selector_mouseovered != 1 and _root.yiffISpaused != 1) {
if (_root.spell_mode eq 1) {
_root.SHoot_fireball(_xmouse, _ymouse);
} else {
if (_root.spell_mode eq 2) {
_root.SHoot_poisonBlast(_xmouse, _ymouse);
} else {
if (_root.spell_mode eq 3) {
_root.shockwave(_xmouse, _ymouse);
} else {
if (_root.spell_mode eq 4) {
_root.spellMadness(_xmouse, _ymouse);
} else {
if (_root.spell_mode eq 5) {
_root.healing(_xmouse, _ymouse);
} else {
if (_root.spell_mode eq 6) {
_root.gravityNuke(_xmouse, _ymouse);
} else {
if (_root.spell_mode eq 7) {
_root.SHoot_deathRay(_xmouse, _ymouse);
} else {
if (_root.spell_mode eq 8) {
_root.curse(_xmouse, _ymouse);
}
}
}
}
}
}
}
}
}
}
};
}
frame 27 {
prevFrame();
}
button 524 {
on (release) {
cacheAsBitmap = true;
}
}
movieClip 528 {
}
movieClip 531 {
}
movieClip 534 {
}
movieClip 535 {
}
movieClip 536 {
instance of movieClip 535 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 537 {
}
movieClip 541 {
}
movieClip 543 {
}
movieClip 545 {
frame 1 {
stop();
}
instance of movieClip 543 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 546 {
instance aaa of movieClip 545 {
onClipEvent (enterFrame) {
persent = Math.floor(100 * (1 - _root.shockwave_delay / _root.shockwave_delaytime));
gotoAndStop(persent);
}
}
}
movieClip 548 {
}
movieClip 550 {
}
button 551 {
on (release, keyPress '4') {
if (_root.block_everything_victory != 1 and !_root.helpMenu) {
_root.thereIsASelectedUnit.iSselected = 0;
_root.severalUnitsSelected = 0;
_root.thereIsASelectedUnit = 0;
if (_root.menuModeGameBlock != 1) {
if (_root.spell_mode eq selected_spell) {
_root.spell_mode = 0;
} else {
_root.activateSpell(selected_spell);
}
}
}
}
on (rollOver, dragOver) {
_root.infotext = 'Cast spell, hotkey: 4';
_root.spell_selector_mouseovered = 1;
}
on (rollOut, dragOut) {
_root.infotext = '';
_root.spell_selector_mouseovered = 0;
}
}
movieClip 553 {
}
movieClip 554 {
}
movieClip 555 {
instance of movieClip 554 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 557 {
on (release) {
gotoAndStop(2);
close_all_but_me = 1;
}
on (rollOver, dragOver) {
_root.infotext = 'Select spell.';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
button 558 {
on (release) {
gotoAndStop(1);
}
}
button 560 {
on (release) {
gotoAndStop(1);
}
}
movieClip 561 {
}
movieClip 563 {
}
movieClip 564 {
}
movieClip 565 {
}
movieClip 566 {
instance of movieClip 565 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 568 {
on (release) {
activated = 1;
}
}
movieClip 569 {
frame 1 {
stop();
}
}
movieClip 571 {
}
movieClip 572 {
}
movieClip 573 {
instance of movieClip 572 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 574 {
}
button 576 {
on (release) {
activated = 1;
}
}
movieClip 577 {
frame 1 {
stop();
}
}
movieClip 578 {
}
movieClip 580 {
}
movieClip 581 {
}
movieClip 582 {
}
movieClip 583 {
instance of movieClip 582 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 585 {
on (release) {
activated = 1;
}
}
movieClip 586 {
frame 1 {
stop();
}
}
movieClip 588 {
}
movieClip 589 {
}
movieClip 590 {
}
movieClip 591 {
instance of movieClip 590 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 593 {
on (release) {
activated = 1;
}
}
movieClip 594 {
frame 1 {
stop();
}
}
movieClip 597 {
}
movieClip 598 {
}
movieClip 599 {
}
movieClip 600 {
instance of movieClip 599 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 602 {
on (release) {
activated = 1;
}
}
movieClip 603 {
frame 1 {
stop();
}
}
movieClip 605 {
}
movieClip 606 {
}
movieClip 607 {
instance of movieClip 606 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 609 {
on (release) {
activated = 1;
}
}
movieClip 610 {
frame 1 {
stop();
}
instance of movieClip 606 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 612 {
on (release) {
activated = 1;
}
}
movieClip 613 {
frame 1 {
stop();
}
}
movieClip 616 {
}
movieClip 617 {
}
button 619 {
on (release) {
activated = 1;
}
}
movieClip 620 {
}
movieClip 621 {
frame 1 {
stop();
}
frame 1 {
_root.saveQuickSPells();
}
frame 2 {
stop();
}
}
movieClip 622 {
}
movieClip 623 {
}
movieClip 624 {
}
movieClip 625 {
}
movieClip 626 {
}
movieClip 627 {
}
movieClip 628 {
}
movieClip 629 {
}
movieClip 630 {
}
movieClip 631 {
}
movieClip 632 {
}
movieClip 633 {
}
movieClip 634 {
frame 1 {
stop();
if (selected_spell > -999) {
} else {
selected_spell = 3;
}
}
}
movieClip 636 {
}
movieClip 637 {
}
movieClip 639 {
}
movieClip 641 {
}
movieClip 643 {
}
movieClip 647 {
frame 1 {
stop();
}
}
movieClip 648 {
instance of movieClip 639 {
onClipEvent (enterFrame) {
if (random(10) eq 1) {
showvar = _root.exp_ + '/' + _root['lvlExp_' + _root.currentLevel];
if (_root.this_is_survival eq 1) {
showvar = 'max';
}
}
}
}
}
movieClip 652 {
}
movieClip 653 {
}
movieClip 656 {
}
movieClip 657 {
}
movieClip 658 {
}
movieClip 660 {
}
movieClip 661 {
}
movieClip 663 {
}
movieClip 664 {
}
movieClip 666 {
}
movieClip 667 {
}
movieClip 668 {
}
movieClip 670 {
}
movieClip 671 {
}
movieClip 672 {
}
movieClip 673 {
}
movieClip 674 {
instance of movieClip 673 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 675 {
frame 10 {
stop();
}
}
button 676 {
on (release, keyPress 'w') {
if (_root.menuModeGameBlock != 1) {
_root.Spawn_units(102);
}
}
on (keyPress 'W') {
if (_root.menuModeGameBlock != 1) {
_root.Spawn_units(102);
}
}
on (rollOver, dragOver) {
_root.infotext = 'Spawn Dark Acolyte [' + _root.unit_price_102 + '$], hotkey: W';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
movieClip 677 {
frame 1 {
stop();
}
}
movieClip 679 {
}
movieClip 681 {
}
movieClip 682 {
}
movieClip 683 {
}
movieClip 684 {
}
movieClip 685 {
instance of movieClip 684 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 686 {
frame 10 {
stop();
}
}
button 687 {
on (release, keyPress 'e') {
if (_root.menuModeGameBlock != 1) {
if (_root.deathKnightCOUNT < 2 or _root.thisIsSandBox eq 1) {
_root.Spawn_units(103);
}
}
}
on (keyPress 'E') {
if (_root.menuModeGameBlock != 1) {
if (_root.deathKnightCOUNT < 2 or _root.thisIsSandBox eq 1) {
_root.Spawn_units(103);
}
}
}
on (rollOver, dragOver) {
_root.infotext = 'Spawn Death Knight [' + _root.unit_price_103 + '$], hotkey: E';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
movieClip 688 {
frame 1 {
stop();
}
}
movieClip 691 {
}
movieClip 693 {
}
movieClip 695 {
}
movieClip 696 {
}
movieClip 698 {
}
movieClip 700 {
}
movieClip 702 {
}
movieClip 703 {
}
movieClip 704 {
}
movieClip 705 {
instance of movieClip 704 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 706 {
frame 10 {
stop();
}
}
button 707 {
on (release, keyPress 'r') {
if (_root.menuModeGameBlock != 1) {
if (_root.lichCOUNT < 2 or _root.thisIsSandBox eq 1) {
_root.Spawn_units(104);
}
}
}
on (keyPress 'R') {
if (_root.menuModeGameBlock != 1) {
if (_root.lichCOUNT < 2 or _root.thisIsSandBox eq 1) {
_root.Spawn_units(104);
}
}
}
on (rollOver, dragOver) {
_root.infotext = 'Spawn Lich [' + _root.unit_price_104 + '$], hotkey: R';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
movieClip 708 {
frame 1 {
stop();
}
}
movieClip 711 {
}
movieClip 712 {
instance of movieClip 711 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 714 {
}
movieClip 717 {
}
movieClip 718 {
}
movieClip 719 {
}
movieClip 720 {
}
movieClip 721 {
instance of movieClip 720 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 722 {
}
movieClip 723 {
instance of movieClip 722 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 726 {
}
movieClip 727 {
}
movieClip 728 {
instance of movieClip 727 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 730 {
}
movieClip 731 {
instance of movieClip 730 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 732 {
}
movieClip 733 {
}
movieClip 734 {
instance of movieClip 733 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 735 {
}
movieClip 736 {
frame 10 {
stop();
}
}
button 737 {
on (release, keyPress 'q') {
if (_root.menuModeGameBlock != 1) {
_root.Spawn_units(101);
}
}
on (keyPress 'Q') {
if (_root.menuModeGameBlock != 1) {
_root.Spawn_units(101);
}
}
on (rollOver, dragOver) {
_root.infotext = 'Spawn Ghoul [' + _root.unit_price_101 + '$], hotkey: Q';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
movieClip 738 {
}
movieClip 740 {
}
movieClip 742 {
}
movieClip 743 {
}
movieClip 744 {
}
movieClip 745 {
}
movieClip 746 {
instance of movieClip 745 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 748 {
}
movieClip 749 {
}
movieClip 750 {
}
movieClip 751 {
}
movieClip 755 {
}
movieClip 756 {
instance of movieClip 755 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 758 {
on (release, keyPress 'r') {
_root.thereIsASelectedUnit.iSselected = 0;
_root.severalUnitsSelected = 0;
_root.thereIsASelectedUnit = 0;
}
on (keyPress 'R') {
_root.thereIsASelectedUnit.iSselected = 0;
_root.severalUnitsSelected = 0;
_root.thereIsASelectedUnit = 0;
}
on (rollOver, dragOver) {
_root.infotext = 'Deselect units/Cancel selection. Hotkey: R';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
movieClip 760 {
}
movieClip 762 {
}
movieClip 763 {
}
movieClip 764 {
}
movieClip 765 {
}
movieClip 766 {
}
button 768 {
on (release, keyPress 'w') {
_root.orderHoldPosition();
}
on (keyPress 'W') {
_root.orderHoldPosition();
}
on (rollOver, dragOver) {
_root.infotext = 'Toggle Hold Position / Free Engage. Hotkey: W';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
button 770 {
on (release, keyPress 'w') {
_root.orderHoldPosition();
}
on (keyPress 'W') {
_root.orderHoldPosition();
}
on (rollOver, dragOver) {
_root.infotext = 'Toggle Hold Position / Free Engage. Hotkey: W';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
button 771 {
on (release, keyPress 'w') {
_root.orderFreeAttack();
}
on (keyPress 'W') {
_root.orderFreeAttack();
}
on (rollOver, dragOver) {
_root.infotext = 'Toggle Hold Position / Free Engage. Hotkey: W';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
movieClip 772 {
}
movieClip 774 {
}
movieClip 775 {
}
button 777 {
on (release, keyPress 'q') {
_root.Command_EngageEnemy();
}
on (keyPress 'Q') {
_root.Command_EngageEnemy();
}
on (rollOver, dragOver) {
_root.infotext = 'COMMAND: Engage nearest enemy. Hotkey: Q';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
movieClip 779 {
}
button 780 {
on (release, keyPress 'e') {
_root.TotalRecall();
}
on (keyPress 'E') {
_root.TotalRecall();
}
on (rollOver, dragOver) {
_root.infotext = 'Recall selected units. Hotkey: E';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
movieClip 782 {
}
movieClip 783 {
frame 1 {
stop();
}
instance of movieClip 746 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_root.unit_price_101 > _root.cash) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 746 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_root.unit_price_102 > _root.cash) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 746 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_root.unit_price_103 > _root.cash) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 746 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_root.unit_price_104 > _root.cash) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 751 {
onClipEvent (enterFrame) {
if (_root.deathKnightCOUNT > 1 and _root.thisIsSandBox != 1) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 751 {
onClipEvent (enterFrame) {
if (_root.lichCOUNT > 1 and _root.thisIsSandBox != 1) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 756 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_root.spawnedUnits < _root.spawnLimit) {
_visible = false;
} else {
_visible = true;
}
}
}
frame 2 {
stop();
}
}
button 784 {
on (release, keyPress '3') {
if (_root.block_everything_victory != 1 and !_root.helpMenu) {
_root.thereIsASelectedUnit.iSselected = 0;
_root.severalUnitsSelected = 0;
_root.thereIsASelectedUnit = 0;
if (_root.menuModeGameBlock != 1) {
if (_root.spell_mode eq selected_spell) {
_root.spell_mode = 0;
} else {
_root.activateSpell(selected_spell);
}
}
}
}
on (rollOver, dragOver) {
_root.infotext = 'Cast spell, hotkey: 3';
_root.spell_selector_mouseovered = 1;
}
on (rollOut, dragOut) {
_root.infotext = '';
_root.spell_selector_mouseovered = 0;
}
}
movieClip 785 {
frame 1 {
stop();
if (selected_spell > -999) {
} else {
selected_spell = 3;
}
}
}
button 786 {
on (release, keyPress '2') {
if (_root.block_everything_victory != 1 and !_root.helpMenu) {
_root.thereIsASelectedUnit.iSselected = 0;
_root.severalUnitsSelected = 0;
_root.thereIsASelectedUnit = 0;
if (_root.menuModeGameBlock != 1) {
if (_root.spell_mode eq selected_spell) {
_root.spell_mode = 0;
} else {
_root.activateSpell(selected_spell);
}
}
}
}
on (rollOver, dragOver) {
_root.infotext = 'Cast spell, hotkey: 2';
_root.spell_selector_mouseovered = 1;
}
on (rollOut, dragOut) {
_root.infotext = '';
_root.spell_selector_mouseovered = 0;
}
}
movieClip 787 {
frame 1 {
stop();
if (selected_spell > -999) {
} else {
selected_spell = 3;
}
}
}
button 788 {
on (release, keyPress '1') {
if (_root.block_everything_victory != 1 and !_root.helpMenu) {
_root.thereIsASelectedUnit.iSselected = 0;
_root.severalUnitsSelected = 0;
_root.thereIsASelectedUnit = 0;
if (_root.menuModeGameBlock != 1) {
if (_root.spell_mode eq selected_spell) {
_root.spell_mode = 0;
} else {
_root.activateSpell(selected_spell);
}
}
}
}
on (rollOver, dragOver) {
_root.infotext = 'Cast spell, hotkey: 1';
_root.spell_selector_mouseovered = 1;
}
on (rollOut, dragOut) {
_root.infotext = '';
_root.spell_selector_mouseovered = 0;
}
}
button 789 {
on (release) {
gotoAndStop(2);
close_all_but_me = 1;
}
on (rollOver, dragOver) {
_root.infotext = 'Select spell.';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
button 790 {
on (release) {
gotoAndStop(1);
}
}
button 791 {
on (release) {
gotoAndStop(1);
}
}
movieClip 792 {
frame 1 {
stop();
}
frame 1 {
_root.saveQuickSPells();
}
frame 2 {
stop();
}
}
movieClip 793 {
frame 1 {
stop();
if (selected_spell > -999) {
} else {
selected_spell = 3;
}
}
}
movieClip 795 {
}
movieClip 796 {
}
movieClip 798 {
}
movieClip 799 {
instance ind of movieClip 796 {
onClipEvent (load) {
gotoAndStop(100);
}
}
instance of movieClip 798 {
onClipEvent (enterFrame) {
if (random(10) eq 1) {
showvar = Math.floor(_root.castleHitPoints - _root.castleDmg) + '/' + _root.castleHitPoints;
}
}
}
}
movieClip 802 {
}
movieClip 803 {
}
movieClip 806 {
}
movieClip 809 {
}
movieClip 812 {
}
button 821 {
on (release, keyPress '<Space>') {
if (_root.block_everything_victory != 1) {
_root.doPause();
}
}
on (rollOver, dragOver) {
_root.infotext = 'Tactical pause. Hotkey: SPACE';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
movieClip 824 {
}
movieClip 827 {
}
button 829 {
on (release, keyPress '<Space>') {
if (_root.block_everything_victory != 1) {
_root.doPause();
}
}
on (rollOver, dragOver) {
_root.infotext = 'Unpause game. Hotkey: SPACE';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
movieClip 830 {
}
movieClip 832 {
}
movieClip 834 {
}
movieClip 835 {
}
movieClip 837 {
}
movieClip 839 {
}
movieClip 840 {
}
// unknown tag 88 length 64
button 844 {
on (release) {
_root.spawnMainMenu();
}
}
button 847 {
on (release) {
_root.bottom_menu.hud_explanation._visible = false;
_root.spawnHelpMenu();
}
on (rollOver, dragOver) {
_root.bottom_menu.hud_explanation._visible = true;
}
on (rollOut, dragOut) {
play();
_root.bottom_menu.hud_explanation._visible = false;
}
}
movieClip 848 {
}
movieClip 850 {
}
movieClip 851 {
}
button 853 {
on (rollOver, dragOver) {
_root.infotext = 'Castle Hit Points: ' + Math.floor(_root.castleHitPoints - _root.castleDmg) + '/' + _root.castleHitPoints;
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
button 854 {
on (rollOver, dragOver) {
_root.infotext = 'Experience: ' + _root.exp_ + '/' + _root['lvlExp_' + _root.currentLevel];
if (_root.this_is_survival eq 1) {
_root.infotext = 'Experience: Max';
}
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
movieClip 856 {
}
movieClip 859 {
}
// unknown tag 88 length 63
movieClip 864 {
}
movieClip 867 {
}
movieClip 870 {
}
movieClip 873 {
}
movieClip 876 {
}
movieClip 881 {
}
movieClip 883 {
}
movieClip 884 {
}
movieClip 886 {
}
movieClip 888 {
frame 1 {
stop();
}
instance of movieClip 886 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 889 bottom_menu {
instance of movieClip 531 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 803 {
onClipEvent (enterFrame) {
if (_root.yiffISpaused eq 0) {
gotoAndStop(1);
} else {
play();
}
}
}
instance of movieClip 806 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 809 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 809 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 809 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 809 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 830 {
onClipEvent (enterFrame) {
if (_root.menuModeGameBlock eq 1 or _root.freetimeCounter) {
gotoAndStop(1);
} else {
if (_root.yiffISpaused eq 0) {
gotoAndStop(2);
} else {
gotoAndStop(3);
}
}
}
}
instance of movieClip 832 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 848 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_root.menuModeGameBlock != 1 and _root.yiffISpaused eq 1 and !_root.freetimeCounter and !_root.block_everything_victory and !_root.helpMenu and _root.menuModeGameBlock != 1 and !_root.upgradesMenu) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 856 {
onClipEvent (enterFrame) {
showvar = _root.infotext;
}
}
instance of movieClip 859 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_root.menuModeGameBlock eq 1) {
_visible = true;
} else {
_visible = false;
}
}
}
instance hud_explanation of movieClip 884 {
onClipEvent (load) {
cacheAsBitmap = true;
_visible = false;
}
}
}
movieClip 892 {
}
movieClip 893 {
}
movieClip 895 {
}
movieClip 896 {
}
movieClip 901 {
}
movieClip 906 {
}
button 908 {
on (release) {
if (_root.spell_mode eq 0) {
iSselected = 1;
_root.mouseOveredUndead = 0;
_root.doubleClickSelect(this);
}
}
on (rollOver, dragOver) {
_root.mouseOveredUndead = this;
}
on (rollOut, dragOut) {
_root.mouseOveredUndead = 0;
}
}
movieClip 910 {
}
movieClip 912 {
}
movieClip 914 {
}
movieClip 916 {
}
movieClip 918 {
}
movieClip 920 {
}
movieClip 922 {
}
movieClip 924 {
}
movieClip 925 {
frame 1 {
stop();
}
frame 5 {
_root.electrohit.start();
}
frame 13 {
gotoAndStop(1);
_visible = false;
}
}
movieClip 952 {
frame 1 {
do_dmg = 0;
}
frame 9 {
do_dmg = 1;
}
frame 36 {
do_dmg = 0;
}
}
movieClip 983 {
}
movieClip 984 unit_101 {
frame 1 {
stop();
}
instance selection_ of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance healingShow of movieClip 896 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance shockAnim of movieClip 925 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 986 {
}
movieClip 987 unit_slot {
instance of movieClip 986 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 991 {
}
movieClip 992 {
}
movieClip 993 {
instance of movieClip 992 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 995 {
on (release, keyPress 'A') {
if (_root.hitTest1 != true and _root.block_everything_victory != 1 and !_root.helpMenu and !_root.mainMenu) {
_root.selectAllUnitsActivated = 1;
_root.selectALLunits();
}
}
on (keyPress 'a') {
if (_root.hitTest1 != true and _root.block_everything_victory != 1 and !_root.helpMenu and !_root.mainMenu) {
_root.selectAllUnitsActivated = 1;
_root.selectALLunits();
}
}
on (rollOver, dragOver) {
_root.infotext = 'Select ALL units, Hotkey : A';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
movieClip 1008 {
}
movieClip 1009 {
}
movieClip 1010 {
}
movieClip 1012 {
}
movieClip 1013 {
frame 1 {
stop();
}
frame 21 {
gotoAndStop(1);
}
frame 40 {
gotoAndStop(1);
}
frame 58 {
gotoAndStop(1);
}
frame 77 {
gotoAndStop(1);
}
frame 96 {
gotoAndStop(1);
}
frame 115 {
gotoAndStop(1);
}
}
movieClip 1014 {
instance of movieClip 992 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 1019 {
frame 21 {
stop();
}
}
movieClip 1020 necropolis {
frame 1 {
stop();
}
instance of movieClip 992 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
frame 2 {
_root.castleBoom(-61, 26);
}
frame 4 {
_root.castleBoom(11, 4);
}
frame 7 {
_root.castleBoom(-33, -30);
}
frame 10 {
_root.castleBoom(14, -55);
}
frame 13 {
_root.castleBoom(-33, -30);
}
frame 16 {
_root.castleBoom(11, 4);
}
frame 18 {
_root.castleBoom(-61, 26);
}
frame 19 {
_root.castleDeath();
}
frame 79 {
stop();
_root.menuModeGameBlock = 0;
if (_root.yiffISpaused != 1) {
_root.doPause();
}
_root.menuModeGameBlock = 1;
_root.gameMusic.stop();
_root.spawnDefeatMenu();
_root.defeatSND.start();
}
}
movieClip 1022 {
}
movieClip 1023 dead_101 {
frame 83 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 1025 {
}
movieClip 1026 {
instance of movieClip 1025 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 1028 {
}
movieClip 1031 {
}
movieClip 1032 {
}
movieClip 1033 {
instance of movieClip 1032 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 1035 {
}
movieClip 1036 {
instance of movieClip 1035 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 1038 {
}
movieClip 1039 {
}
movieClip 1040 {
instance of movieClip 1039 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 1042 {
}
movieClip 1043 {
}
movieClip 1046 {
}
movieClip 1048 {
}
movieClip 1049 {
}
movieClip 1050 {
instance of movieClip 1049 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 1052 {
}
movieClip 1054 dead_201 {
frame 83 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 1057 {
}
movieClip 1058 otletalka {
frame 35 {
removeMovieClip(this);
}
}
movieClip 1060 {
}
movieClip 1061 {
instance of movieClip 1060 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 1063 {
}
movieClip 1064 {
}
movieClip 1066 {
}
movieClip 1067 {
}
movieClip 1069 {
}
movieClip 1070 {
frame 11 {
stop();
_visible = false;
}
}
button 1071 {
on (rollOver, dragOver) {
_root.mousoveredEnemy = this;
}
on (rollOut, dragOut) {
_root.mousoveredEnemy = 0;
}
}
movieClip 1112 {
frame 1 {
do_dmg = 0;
}
frame 13 {
do_dmg = 1;
}
frame 30 {
do_dmg = 0;
}
}
movieClip 1139 {
}
movieClip 1140 unit_201 {
frame 1 {
stop();
}
instance curseInd of movieClip 1061 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1064 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
}
button 1143 {
on (release) {
if (_root.spell_mode eq 0) {
iSselected = 1;
_root.mouseOveredUndead = 0;
_root.doubleClickSelect(this);
}
}
on (rollOver, dragOver) {
_root.mouseOveredUndead = this;
}
on (rollOut, dragOut) {
_root.mouseOveredUndead = 0;
}
}
movieClip 1146 {
}
movieClip 1149 {
}
movieClip 1152 {
}
movieClip 1155 {
}
movieClip 1158 {
}
movieClip 1161 {
}
movieClip 1164 {
}
movieClip 1165 {
}
movieClip 1234 {
frame 1 {
do_dmg = 0;
}
frame 18 {
do_dmg = 1;
}
frame 34 {
do_dmg = 0;
}
}
movieClip 1264 {
}
movieClip 1265 unit_102 {
frame 1 {
stop();
}
instance healingShow of movieClip 896 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance shockAnim of movieClip 925 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 1267 arrow_fly {
frame 3 {
if (diefast eq 1) {
removeMovieClip(this);
}
}
frame 6 {
removeMovieClip(this);
}
}
movieClip 1297 {
frame 1 {
do_dmg = 0;
}
frame 7 {
do_dmg = 1;
}
frame 15 {
do_dmg = 0;
stop();
}
}
movieClip 1328 {
}
movieClip 1329 unit_202 {
frame 1 {
stop();
}
instance curseInd of movieClip 1061 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1064 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 1355 {
}
movieClip 1374 {
frame 1 {
do_dmg = 0;
}
frame 34 {
do_dmg = 1;
}
frame 53 {
do_dmg = 0;
}
}
movieClip 1403 {
}
movieClip 1404 unit_205 {
instance curseInd of movieClip 1061 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1064 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 1407 projectile_205 {
}
movieClip 1421 {
frame 17 {
stop();
}
}
movieClip 1425 explosion_small_1 {
frame 20 {
removeMovieClip(this);
}
}
movieClip 1427 {
}
movieClip 1430 explosion_small_2 {
frame 20 {
removeMovieClip(this);
}
}
movieClip 1451 {
frame 20 {
stop();
}
}
movieClip 1456 explosion_small_3 {
frame 20 {
removeMovieClip(this);
}
}
movieClip 1472 {
frame 15 {
stop();
}
}
movieClip 1482 explosion_small_4 {
frame 20 {
removeMovieClip(this);
}
}
movieClip 1487 {
}
movieClip 1488 {
}
movieClip 1494 {
}
movieClip 1495 enemy_projectile_33 {
frame 10 {
stop();
}
}
movieClip 1496 projectile_1 {
frame 24 {
stop();
}
}
movieClip 1498 {
}
movieClip 1501 {
frame 1 {
gotoAndStop(random(2) + 2);
}
instance of movieClip 1498 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 1502 {
}
movieClip 1503 trail1 {
frame 16 {
removeMovieClip(this);
}
}
movieClip 1507 {
}
movieClip 1520 explosion_poison {
frame 21 {
removeMovieClip(this);
}
}
movieClip 1521 projectile_2 {
frame 24 {
stop();
}
}
movieClip 1525 {
frame 1 {
gotoAndStop(2 + random(4));
}
instance of movieClip 1498 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 1526 trail2 {
frame 15 {
removeMovieClip(this);
}
}
movieClip 1569 explosion_big_1 {
frame 22 {
removeMovieClip(this);
}
}
movieClip 1612 explosion_big_2 {
frame 22 {
removeMovieClip(this);
}
}
movieClip 1655 explosion_big_4 {
frame 22 {
removeMovieClip(this);
}
}
movieClip 1698 explosion_big_3 {
frame 22 {
removeMovieClip(this);
stop();
}
}
movieClip 1700 {
}
movieClip 1702 {
}
movieClip 1704 {
}
movieClip 1706 {
}
movieClip 1708 {
}
movieClip 1709 {
}
movieClip 1711 {
}
movieClip 1712 dead_202 {
frame 83 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 1714 {
}
movieClip 1719 {
}
movieClip 1720 {
}
movieClip 1721 {
}
movieClip 1723 {
}
movieClip 1725 {
}
movieClip 1727 {
}
movieClip 1729 {
}
movieClip 1730 {
}
movieClip 1731 {
}
movieClip 1735 {
frame 17 {
stop();
}
}
movieClip 1762 {
frame 14 {
stop();
}
}
movieClip 1767 dead_205 {
frame 29 {
parent.cacheAsBitmap = true;
removeMovieClip(this);
}
}
movieClip 1768 dead_102 {
frame 83 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 1770 {
}
movieClip 1771 {
}
movieClip 1772 arrow_fly_2 {
frame 3 {
if (diefast eq 1) {
removeMovieClip(this);
}
}
frame 6 {
removeMovieClip(this);
}
}
button 1775 {
on (release) {
if (_root.spell_mode eq 0) {
iSselected = 1;
_root.mouseOveredUndead = 0;
_root.doubleClickSelect(this);
}
}
on (rollOver, dragOver) {
_root.mouseOveredUndead = this;
}
on (rollOut, dragOut) {
_root.mouseOveredUndead = 0;
}
}
movieClip 1817 {
frame 1 {
do_dmg = 0;
}
frame 14 {
do_dmg = 1;
}
frame 21 {
do_dmg = 0;
}
frame 24 {
_parent.gotoAndStop(1);
}
}
movieClip 1854 {
}
movieClip 1855 unit_103 {
frame 1 {
stop();
}
instance healingShow of movieClip 896 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance shockAnim of movieClip 925 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 1859 dead_103_upper {
frame 40 {
removeMovieClip(this);
}
}
movieClip 1880 {
frame 21 {
stop();
}
}
movieClip 1881 {
}
movieClip 1882 elisiumTear {
frame 6 {
_root.thunderboltSnd.start();
}
frame 9 {
_root.elisiumTearEffect(_x, _y);
}
frame 25 {
removeMovieClip(this);
}
}
movieClip 1949 {
frame 1 {
do_dmg = 0;
}
frame 24 {
do_dmg = 1;
}
frame 32 {
do_dmg = 0;
}
}
movieClip 1999 {
}
movieClip 2000 unit_104 {
frame 1 {
stop();
}
instance healingShow of movieClip 896 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance shockAnim of movieClip 925 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 2001 {
}
movieClip 2005 dead_104 {
frame 14 {
i = 0;
while (i < 5) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = _x;
ttrrggtt._y = _y;
++i;
}
}
frame 15 {
i = 0;
while (i < 5) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = _x;
ttrrggtt._y = _y;
++i;
}
}
frame 16 {
i = 0;
while (i < 5) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = _x;
ttrrggtt._y = _y;
++i;
}
}
frame 17 {
i = 0;
while (i < 5) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_1', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = _x;
ttrrggtt._y = _y;
++i;
}
}
frame 31 {
parent.cacheAsBitmap = true;
removeMovieClip(this);
}
}
movieClip 2007 {
}
movieClip 2008 hpIndicator {
}
movieClip 2011 {
}
movieClip 2012 leaf_top {
}
movieClip 2015 {
}
movieClip 2016 {
}
movieClip 2017 {
}
movieClip 2018 particle_1 {
frame 21 {
removeMovieClip(this);
}
}
movieClip 2025 {
}
movieClip 2026 warping_unit {
frame 21 {
removeMovieClip(this);
}
}
movieClip 2029 {
}
movieClip 2030 particle_3 {
instance aaa of movieClip 2029 {
onClipEvent (load) {
_visible = false;
}
}
frame 2 {
if (random(3) eq 1) {
play();
} else {
gotoAndPlay(1);
}
}
frame 10 {
removeMovieClip(this);
}
}
movieClip 2032 {
}
movieClip 2033 {
}
movieClip 2035 {
}
movieClip 2036 {
}
movieClip 2037 {
}
movieClip 2038 {
}
movieClip 2039 {
}
movieClip 2040 kursor {
frame 1 {
stop();
}
}
movieClip 2042 {
}
movieClip 2043 {
}
movieClip 2045 {
}
movieClip 2046 {
}
movieClip 2048 {
}
movieClip 2050 {
}
movieClip 2051 {
}
movieClip 2057 {
}
movieClip 2058 {
}
movieClip 2059 {
}
movieClip 2060 spellCircle_1 {
}
movieClip 2062 {
}
movieClip 2063 {
}
movieClip 2068 {
}
movieClip 2069 {
}
movieClip 2071 {
}
movieClip 2072 {
}
movieClip 2073 {
}
movieClip 2074 spellCircle_2 {
}
movieClip 2075 {
}
movieClip 2076 selectionField {
}
movieClip 2077 selectionField2 {
}
movieClip 2080 {
}
movieClip 2083 {
}
movieClip 2084 spellCircle_3 {
}
movieClip 2086 {
}
movieClip 2089 {
}
movieClip 2090 {
}
movieClip 2091 {
}
movieClip 2092 {
}
movieClip 2093 {
}
movieClip 2094 {
}
movieClip 2096 {
}
movieClip 2097 {
}
movieClip 2098 {
}
movieClip 2101 {
}
movieClip 2102 {
}
movieClip 2103 {
}
movieClip 2104 {
}
movieClip 2105 {
}
movieClip 2106 {
}
movieClip 2107 {
}
movieClip 2108 {
}
movieClip 2109 {
}
movieClip 2110 {
}
movieClip 2111 {
}
movieClip 2112 {
}
movieClip 2113 {
}
movieClip 2114 {
}
movieClip 2115 {
}
movieClip 2116 {
}
movieClip 2117 {
}
movieClip 2118 {
}
movieClip 2120 {
}
movieClip 2121 shockwave {
frame 2 {
_root.shockwaveSND.start();
}
frame 26 {
removeMovieClip(this);
}
}
movieClip 2123 {
}
movieClip 2148 {
}
movieClip 2149 {
}
movieClip 2150 castMadness_top {
frame 19 {
removeMovieClip(this);
}
}
movieClip 2151 {
}
movieClip 2153 {
}
movieClip 2159 {
}
movieClip 2160 {
}
movieClip 2161 {
}
movieClip 2162 {
}
movieClip 2163 {
}
movieClip 2165 {
}
movieClip 2166 spellCircle_4 {
}
movieClip 2168 {
}
movieClip 2169 castMadness_bottom {
frame 19 {
removeMovieClip(this);
}
}
movieClip 2174 {
}
movieClip 2175 {
}
movieClip 2177 {
}
movieClip 2179 {
}
movieClip 2181 {
}
movieClip 2182 {
}
movieClip 2183 {
}
movieClip 2184 spellCircle_5 {
}
movieClip 2210 {
}
movieClip 2211 {
}
movieClip 2214 {
}
movieClip 2215 spellHealingAnimation {
instance of movieClip 2211 {
onClipEvent (load) {
_visible = false;
}
}
frame 39 {
removeMovieClip(this);
}
}
movieClip 2217 {
}
movieClip 2218 {
}
movieClip 2219 {
}
movieClip 2220 {
}
movieClip 2222 {
}
movieClip 2224 {
}
movieClip 2226 {
}
movieClip 2227 {
}
movieClip 2228 {
}
movieClip 2229 {
}
movieClip 2230 {
}
movieClip 2231 spellCircle_6 {
}
movieClip 2233 {
}
movieClip 2234 {
}
movieClip 2259 {
}
movieClip 2260 {
}
movieClip 2266 {
}
movieClip 2289 {
frame 35 {
stop();
}
}
movieClip 2307 {
}
movieClip 2349 gravity_nuke {
frame 2 {
_root.portalcastSND.start();
}
frame 8 {
suction = 1;
}
frame 8 {
_root.Explosion_3.start();
}
frame 33 {
suction = 0;
}
frame 33 {
_root.Explosion_6.start();
}
frame 36 {
blast = 1;
}
frame 56 {
removeMovieClip(this);
}
}
movieClip 2351 {
}
movieClip 2352 {
}
movieClip 2353 marker_0 {
}
movieClip 2356 {
}
movieClip 2357 {
}
movieClip 2358 {
}
movieClip 2359 {
}
movieClip 2360 deathRay_targeting {
}
movieClip 2361 {
frame 17 {
stop();
}
}
movieClip 2362 deathRayProjectile {
instance bbb of movieClip 2361 {
onClipEvent (load) {
aaa2.stop();
}
}
frame 61 {
stop();
}
}
movieClip 2364 {
}
movieClip 2365 trail_333 {
frame 24 {
removeMovieClip(this);
}
}
movieClip 2366 {
}
movieClip 2367 {
}
movieClip 2369 {
}
movieClip 2371 {
}
movieClip 2372 {
}
movieClip 2378 {
}
movieClip 2379 {
}
movieClip 2380 {
}
movieClip 2381 castCurse {
instance of movieClip 2369 {
onClipEvent (load) {
_visible = false;
}
}
frame 52 {
removeMovieClip(this);
}
}
movieClip 2382 {
}
movieClip 2384 {
}
movieClip 2385 {
}
movieClip 2386 spellCircle_8 {
}
movieClip 2389 {
}
movieClip 2390 unitEnterCastle {
frame 17 {
removeMovieClip(this);
}
}
movieClip 2391 holdPositionAnimation {
instance of movieClip 760 {
onClipEvent (load) {
_visible = false;
}
}
frame 22 {
removeMovieClip(this);
}
}
movieClip 2392 {
}
movieClip 2394 {
}
movieClip 2396 freeEngageAnimation {
frame 21 {
removeMovieClip(this);
}
}
movieClip 2397 {
}
movieClip 2398 holdPositionSign {
}
movieClip 2400 {
}
movieClip 2401 green_line {
}
movieClip 2403 {
}
movieClip 2404 {
}
movieClip 2405 red_line {
}
movieClip 2407 {
}
movieClip 2408 {
}
movieClip 2409 red_circle {
}
movieClip 2411 {
}
movieClip 2412 {
}
movieClip 2413 green_circle {
}
movieClip 2433 {
}
movieClip 2434 {
instance bbb of movieClip 2433 {
onClipEvent (load) {
gotoAndPlay(random(38) + 1);
}
}
}
movieClip 2435 rezinka_blue {
frame 10 {
removeMovieClip(this);
}
}
movieClip 2438 {
}
movieClip 2439 {
}
movieClip 2440 {
}
movieClip 2442 {
}
button 2444 {
on (release) {
if (!_root.helpMenu) {
if (_root.yiffISpaused eq 1) {
_root.doPause();
}
ji = 0;
while (ji < 9) {
if (_root['spell_delay_timer_' + ji] > 0) {
_root['spell_delay_timer_' + ji] = 0;
}
++ji;
}
removeMovieClip(this);
}
}
}
movieClip 2445 freetimeCounter {
instance of movieClip 2440 {
onClipEvent (load) {
zuzuka = 20;
}
onClipEvent (enterFrame) {
if (!_root.helpMenu) {
zuzuka -= 0.03333333333333333;
if (zuzuka < 0) {
zuzuka = 0;
}
aaa.aaa.showvar = Math.floor(zuzuka);
if (zuzuka eq 0) {
if (_root.yiffISpaused eq 1) {
_root.doPause();
}
ji = 0;
while (ji < 9) {
if (_root['spell_delay_timer_' + ji] > 0) {
_root['spell_delay_timer_' + ji] = 0;
}
++ji;
}
removeMovieClip(_parent);
}
}
}
}
}
movieClip 2447 {
}
movieClip 2448 {
}
movieClip 2449 {
instance of movieClip 2448 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2450 {
}
movieClip 2451 {
instance of movieClip 2450 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2454 {
}
movieClip 2455 {
}
movieClip 2456 {
}
movieClip 2459 {
}
movieClip 2461 {
}
movieClip 2462 {
}
movieClip 2464 {
instance of movieClip 2462 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2466 {
}
movieClip 2467 dead_206 {
frame 83 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 2511 {
frame 1 {
do_dmg = 0;
}
frame 13 {
do_dmg = 1;
}
frame 30 {
do_dmg = 0;
}
}
movieClip 2537 {
}
movieClip 2538 unit_206 {
instance curseInd of movieClip 1061 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1064 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 2539 {
}
movieClip 2540 {
}
movieClip 2541 {
}
button 2544 {
on (release) {
if (_root.spell_mode eq 0) {
iSselected = 1;
_root.mouseOveredUndead = 0;
_root.doubleClickSelect(this);
}
}
on (rollOver, dragOver) {
_root.mouseOveredUndead = this;
}
on (rollOut, dragOut) {
_root.mouseOveredUndead = 0;
}
}
movieClip 2559 {
}
movieClip 2578 {
frame 1 {
do_dmg = 0;
}
frame 9 {
do_dmg = 1;
}
frame 36 {
do_dmg = 0;
}
}
movieClip 2608 {
}
movieClip 2609 unit_106 {
frame 1 {
stop();
}
instance of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance healingShow of movieClip 896 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 2541 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance shockAnim of movieClip 925 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 2610 {
frame 35 {
stop();
}
}
movieClip 2611 dead_106 {
frame 81 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
instance of movieClip 1022 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 2610 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2614 {
}
movieClip 2656 {
frame 1 {
do_dmg = 0;
}
frame 13 {
do_dmg = 1;
}
frame 30 {
do_dmg = 0;
_parent.gotoAndStop(1);
}
}
movieClip 2681 {
}
movieClip 2682 unit_207 {
instance curseInd of movieClip 1061 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1064 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 2684 {
}
movieClip 2685 {
instance of movieClip 2684 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2687 {
}
movieClip 2689 {
}
movieClip 2690 {
}
movieClip 2691 {
instance of movieClip 2690 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2693 {
}
movieClip 2695 {
}
movieClip 2696 {
}
movieClip 2698 {
}
movieClip 2699 {
instance of movieClip 2693 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2700 {
}
movieClip 2702 {
}
movieClip 2704 {
}
movieClip 2706 {
}
movieClip 2707 {
}
movieClip 2708 {
}
movieClip 2709 {
instance of movieClip 2708 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2712 {
}
movieClip 2713 {
}
movieClip 2714 {
}
movieClip 2717 {
}
movieClip 2719 {
}
movieClip 2720 {
}
movieClip 2722 {
instance of movieClip 2720 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2724 {
}
movieClip 2725 {
frame 21 {
stop();
}
}
movieClip 2726 dead_207 {
frame 35 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 2727 unit_203 {
frame 1 {
stop();
}
instance curseInd of movieClip 1061 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1064 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 2728 {
frame 25 {
stop();
}
}
movieClip 2729 dead_203 {
frame 83 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 2730 {
}
movieClip 2731 arrow_fly_3 {
frame 3 {
if (diefast eq 1) {
removeMovieClip(this);
}
}
frame 6 {
removeMovieClip(this);
}
}
movieClip 2734 {
frame 21 {
stop();
}
}
movieClip 2736 {
}
movieClip 2738 {
}
movieClip 2740 {
}
movieClip 2742 {
}
movieClip 2744 {
}
movieClip 2746 {
}
movieClip 2748 {
}
movieClip 2750 {
}
movieClip 2752 {
}
movieClip 2754 {
}
movieClip 2756 {
}
movieClip 2757 {
frame 12 {
stop();
}
}
movieClip 2758 mage2explosion {
frame 22 {
removeMovieClip(this);
}
}
movieClip 2761 {
}
movieClip 2762 projectile_208 {
}
movieClip 2763 {
}
movieClip 2764 {
}
movieClip 2765 {
}
movieClip 2766 {
}
movieClip 2767 {
}
movieClip 2768 {
}
movieClip 2769 {
}
movieClip 2770 {
}
movieClip 2771 {
}
movieClip 2772 {
}
movieClip 2773 {
}
movieClip 2774 {
}
movieClip 2775 {
}
movieClip 2777 {
}
movieClip 2779 {
}
movieClip 2780 {
frame 1 {
if (random(3) eq 1 and _root.yiffISpaused eq 0) {
gotoAndPlay(3);
}
}
instance of movieClip 2777 {
onClipEvent (load) {
_visible = false;
}
}
frame 2 {
gotoAndPlay(1);
}
}
movieClip 2783 {
}
movieClip 2784 {
}
movieClip 2785 {
}
movieClip 2786 {
}
movieClip 2787 {
}
movieClip 2788 {
}
movieClip 2789 {
}
movieClip 2790 {
frame 1 {
do_dmg = 0;
}
frame 33 {
do_dmg = 1;
}
frame 53 {
do_dmg = 0;
}
}
movieClip 2791 unit_208 {
instance curseInd of movieClip 1061 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1064 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 2794 dead_208 {
frame 29 {
removeMovieClip(this);
}
}
movieClip 2822 {
frame 1 {
do_dmg = 0;
}
frame 10 {
do_dmg = 1;
}
frame 23 {
do_dmg = 0;
_parent.gotoAndStop(1);
}
}
movieClip 2861 {
}
movieClip 2862 unit_209 {
instance curseInd of movieClip 1061 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1064 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 2864 {
}
movieClip 2866 {
}
movieClip 2869 {
}
movieClip 2872 {
}
movieClip 2873 {
}
movieClip 2875 {
}
movieClip 2877 {
}
movieClip 2880 {
frame 15 {
stop();
}
}
movieClip 2882 {
}
movieClip 2884 {
}
movieClip 2890 {
}
movieClip 2892 {
frame 20 {
stop();
}
}
movieClip 2893 dead_209 {
frame 45 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 2895 {
}
movieClip 2897 {
frame 1 {
stop();
}
}
movieClip 2898 {
instance of movieClip 2895 {
onClipEvent (load) {
_visible = false;
}
}
frame 2 {
if (random(8) != 1 or _root.yiffISpaused eq 1) {
gotoAndPlay(1);
}
}
}
movieClip 2899 boss2_summon_bottom {
}
movieClip 2908 {
}
movieClip 2909 {
frame 126 {
gogogo = 1;
}
}
movieClip 2910 boss2_summon_top {
frame 3 {
stop();
}
}
movieClip 2914 {
}
movieClip 2915 boss2_summonSHockwave {
frame 28 {
removeMovieClip(this);
}
}
movieClip 2917 {
}
movieClip 2919 {
}
movieClip 2920 {
}
movieClip 2923 {
}
movieClip 2925 {
}
movieClip 2927 {
}
movieClip 2929 {
}
movieClip 2930 {
}
movieClip 2931 {
}
movieClip 2933 {
frame 1 {
zzz.gotoAndPlay(1);
do_dmg = 0;
}
frame 31 {
do_dmg = 1;
}
frame 45 {
do_dmg = 0;
_parent.gotoAndStop(1);
}
}
movieClip 2934 unit_210 {
instance curseInd of movieClip 1061 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1064 {
onClipEvent (load) {
_visible = false;
}
}
instance of movieClip 2929 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
instance of movieClip 2929 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2937 {
}
movieClip 2938 projectile_210 {
frame 6 {
stop();
}
frame 7 {
prevFrame();
}
}
movieClip 2941 {
}
movieClip 2984 {
frame 1 {
do_dmg = 0;
}
frame 12 {
do_dmg = 1;
}
frame 21 {
do_dmg = 0;
}
frame 24 {
_parent.gotoAndStop(1);
}
}
movieClip 3020 {
}
movieClip 3021 unit_107 {
frame 1 {
stop();
}
instance healingShow of movieClip 896 {
onClipEvent (load) {
_visible = false;
}
}
instance of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 2541 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance shockAnim of movieClip 925 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 3022 dead_107 {
frame 3 {
i = 0;
while (i < 5) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_2', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = _x;
ttrrggtt._y = _y;
++i;
}
}
frame 5 {
i = 0;
while (i < 5) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_2', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = _x;
ttrrggtt._y = _y;
++i;
}
}
frame 7 {
i = 0;
while (i < 5) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_2', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = _x;
ttrrggtt._y = _y;
++i;
}
}
frame 9 {
i = 0;
while (i < 5) {
iyiff = _root.yiff.shooting_layer.getNextHighestDepth();
_root.yiff.shooting_layer.attachMovie('particle_2', 'particle_' + iyiff, iyiff);
ttrrggtt = _root.yiff.shooting_layer['particle_' + iyiff];
ttrrggtt._rotation = random(360);
ttrrggtt._x = _x;
ttrrggtt._y = _y;
++i;
}
}
frame 25 {
removeMovieClip(this);
}
}
movieClip 3023 particle_2 {
frame 21 {
removeMovieClip(this);
}
}
movieClip 3026 {
}
movieClip 3028 {
}
movieClip 3029 bodyCountFX {
frame 14 {
removeMovieClip(this);
}
}
movieClip 3092 {
frame 1 {
do_dmg = 0;
}
frame 21 {
do_dmg = 1;
}
frame 36 {
do_dmg = 0;
_parent.gotoAndStop(1);
}
}
movieClip 3142 {
}
movieClip 3143 unit_211 {
instance curseInd of movieClip 1061 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 893 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1064 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 906 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 3145 {
}
movieClip 3147 {
}
movieClip 3149 {
}
movieClip 3151 {
}
movieClip 3154 {
}
movieClip 3155 {
}
movieClip 3157 {
}
movieClip 3158 {
frame 45 {
stop();
}
}
movieClip 3159 dead_211 {
frame 45 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 3161 {
}
movieClip 3163 {
}
movieClip 3164 lvlupSign {
frame 28 {
if (_root.yiffISpaused != 1) {
_root.doPause();
}
_root.attachMovie('menuUpgrades2', 'upgradesMenu', _root.upgradesMunu_depth);
trace(_root.upgradesMunu_depth);
_root.upgradesMenu._x = 398;
_root.upgradesMenu._y = 267;
_root.menuModeGameBlock = 1;
removeMovieClip(this);
}
}
movieClip 3169 {
}
movieClip 3170 {
}
movieClip 3172 {
}
// unknown tag 88 length 185
movieClip 3176 {
}
movieClip 3180 {
frame 1 {
stop();
}
instance of movieClip 3172 {
onClipEvent (load) {
_visible = false;
}
}
instance of movieClip 3176 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_root.yiffISpaused eq 1 and _root.menuModeGameBlock != 1) {
_visible = true;
} else {
_visible = false;
}
}
}
}
movieClip 3183 {
}
movieClip 3186 {
}
movieClip 3189 {
}
movieClip 3191 {
}
movieClip 3193 {
}
movieClip 3195 {
}
movieClip 3197 {
}
movieClip 3198 {
}
movieClip 3199 {
instance of movieClip 3198 {
onClipEvent (enterFrame) {
if (_root._quality eq 'LOW') {
gotoAndStop(1);
} else {
if (_root._quality eq 'MEDIUM') {
gotoAndStop(2);
} else {
if (_root._quality eq 'HIGH') {
gotoAndStop(3);
} else {
if (_root._quality eq 'BEST') {
gotoAndStop(4);
}
}
}
}
}
}
}
movieClip 3201 {
}
button 3202 {
on (release) {
miscDescr.gotoAndStop(1);
if (_root.freetimeCounter) {
ji = 0;
while (ji < 9) {
if (_root['spell_delay_timer_' + ji] > 0) {
_root['spell_delay_timer_' + ji] = 0;
}
++ji;
}
removeMovieClip(_root.freetimeCounter);
}
if (_root.yiffISpaused eq 0) {
_root.doPause();
}
_root.upper_menu.sound_menu._visible = false;
_root.spawnMainMenu();
}
on (rollOver, dragOver) {
miscDescr.gotoAndStop(2);
}
on (rollOut, dragOut) {
miscDescr.gotoAndStop(1);
}
}
movieClip 3204 {
}
button 3205 {
on (release) {
if (_root.upper_menu.sound_menu._visible eq false) {
_root.upper_menu.sound_menu._visible = true;
} else {
_root.upper_menu.sound_menu._visible = false;
}
}
on (rollOver, dragOver) {
miscDescr.gotoAndStop(3);
}
on (rollOut, dragOut) {
miscDescr.gotoAndStop(1);
}
}
movieClip 3207 {
}
button 3208 {
on (release) {
if (_root._quality eq 'LOW') {
_root._quality = 'MEDIUM';
} else {
if (_root._quality eq 'MEDIUM') {
_root._quality = 'HIGH';
} else {
if (_root._quality eq 'HIGH') {
_root._quality = 'BEST';
} else {
if (_root._quality eq 'BEST') {
_root._quality = 'LOW';
}
}
}
}
}
on (rollOver, dragOver) {
miscDescr.gotoAndStop(4);
}
on (rollOut, dragOut) {
miscDescr.gotoAndStop(1);
}
}
movieClip 3210 {
}
movieClip 3212 {
}
movieClip 3214 {
}
movieClip 3215 {
frame 1 {
stop();
}
}
movieClip 3220 {
}
button 3222 {
on (release) {
aaa1.play();
_root.SFX_volume.setVolume(0);
}
}
button 3223 {
on (release) {
aaa2.play();
_root.gameMusic.setVolume(0);
}
}
button 3224 {
on (release) {
_visible = false;
}
}
button 3225 {
on (release) {
if (aaa > a_min) {
aaa -= 5;
}
}
}
button 3226 {
on (release) {
if (aaa < a_max) {
aaa += 5;
}
}
}
movieClip 3228 {
}
movieClip 3229 {
frame 1 {
stop();
}
instance of movieClip 3228 {
onClipEvent (enterFrame) {
a_min = 0;
a_max = 100;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.SFX_volume.getVolume();
} else {
_root.SFX_volume.setVolume(aaa);
}
display_var = aaa + '%';
}
}
}
movieClip 3230 {
frame 1 {
stop();
}
instance of movieClip 3228 {
onClipEvent (enterFrame) {
a_min = 0;
a_max = 100;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.gameMusic.getVolume();
} else {
_root.gameMusic.setVolume(aaa);
}
display_var = aaa + '%';
}
}
}
button 3231 {
on (release) {
if (_root.combat_isMuted eq 1) {
_root.initiateSounds('allOnn');
} else {
_root.initiateSounds('muteCombat');
}
}
}
movieClip 3233 {
}
movieClip 3234 {
frame 1 {
stop();
}
instance of movieClip 3215 {
onClipEvent (enterFrame) {
gotoAndStop(_root.combat_isMuted + 1);
}
}
}
movieClip 3236 {
}
movieClip 3237 upper_menu {
frame 1 {
stop();
}
instance of movieClip 3170 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3199 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance sound_menu of movieClip 3234 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_visible eq false) {
gotoAndStop(2);
} else {
gotoAndStop(1);
}
}
}
instance of movieClip 3236 {
onClipEvent (load) {
timeA = 0;
ghghgyiffhgjt = 999;
median_fps_sum = 0;
median_fps_mod = 5;
median_fps_count = 0;
median_fps_sum2 = 0;
median_fps_mod2 = 25;
median_fps_count2 = 0;
}
onClipEvent (enterFrame) {
timeB = getTimer();
var fps_rough = Math.floor(1000 / (this.timeB - this.timeA));
timeA = timeB;
if (median_fps_count < median_fps_mod) {
++median_fps_count;
median_fps_sum += fps_rough;
} else {
this.current_fps = Math.floor(median_fps_sum / this.median_fps_count);
this.median_fps_sum = 0;
this.median_fps_count = 0;
}
if (median_fps_count2 < median_fps_mod2) {
++median_fps_count2;
median_fps_sum2 += fps_rough;
} else {
this.current_fps2 = Math.floor(median_fps_sum2 / this.median_fps_count2);
this.median_fps_sum2 = 0;
this.median_fps_count2 = 0;
}
ghghgyiffhgjt += 0.03333333333333333;
if (ghghgyiffhgjt > 0.5) {
ghghgyiffhgjt = 30;
if (inmenu eq 1) {
showvar = 'fps: ' + current_fps + ' ';
} else {
showvar = ' fps: ' + current_fps + ' ';
}
}
}
}
}
movieClip 3239 blackness {
}
movieClip 3241 {
}
movieClip 3243 {
}
movieClip 3245 {
}
movieClip 3246 {
}
movieClip 3247 {
instance of movieClip 3246 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3251 {
}
movieClip 3254 {
}
button 3256 {
on (release) {
removeMovieClip(this);
}
}
movieClip 3259 {
}
button 3264 {
on (release) {
nextFrame();
}
}
button 3265 {
on (release) {
prevFrame();
}
}
movieClip 3268 {
frame 243 {
gotoAndStop(1);
}
}
movieClip 3285 {
frame 100 {
gotoAndStop(1);
}
}
button 3287 {
on (release, keyPress 'e') {
_root.thereIsASelectedUnit.iSselected = 0;
_root.severalUnitsSelected = 0;
_root.thereIsASelectedUnit = 0;
}
on (keyPress 'E') {
_root.thereIsASelectedUnit.iSselected = 0;
_root.severalUnitsSelected = 0;
_root.thereIsASelectedUnit = 0;
}
on (rollOver, dragOver) {
_root.infotext = 'Deselect units/Cancel selection. Hotkey: E';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
movieClip 3292 {
frame 62 {
gotoAndStop(1);
}
}
movieClip 3299 helpMenu {
frame 1 {
stop();
}
instance of movieClip 3268 {
onClipEvent (load) {
stop();
aaa = 0;
thisFRAMERATE = 3;
}
onClipEvent (enterFrame) {
++aaa;
if (aaa eq thisFRAMERATE) {
aaa = 0;
nextFrame();
}
}
}
instance of movieClip 3285 {
onClipEvent (load) {
stop();
aaa = 0;
thisFRAMERATE = 4;
}
onClipEvent (enterFrame) {
++aaa;
if (aaa eq thisFRAMERATE) {
aaa = 0;
nextFrame();
}
}
}
instance of movieClip 775 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3292 {
onClipEvent (load) {
stop();
aaa = 0;
thisFRAMERATE = 4;
}
onClipEvent (enterFrame) {
++aaa;
if (aaa eq thisFRAMERATE) {
aaa = 0;
nextFrame();
}
}
}
}
movieClip 3303 {
}
movieClip 3307 {
}
movieClip 3308 {
}
movieClip 3311 {
}
movieClip 3314 {
}
movieClip 3317 {
}
movieClip 3320 {
}
movieClip 3323 {
}
movieClip 3325 {
}
movieClip 3326 {
}
movieClip 3327 {
}
movieClip 3330 {
}
movieClip 3332 {
}
movieClip 3333 {
}
movieClip 3334 {
frame 17 {
stop();
}
}
movieClip 3336 {
}
movieClip 3338 {
}
movieClip 3339 {
instance of movieClip 3338 {
onClipEvent (enterFrame) {
showvar = _root.bodycount;
}
}
}
movieClip 3340 {
}
movieClip 3341 {
}
movieClip 3342 victory {
frame 32 {
stop();
_root.victory_start_counting = 1;
}
}
movieClip 3345 {
}
movieClip 3348 {
}
movieClip 3351 {
}
movieClip 3354 {
}
movieClip 3356 {
}
movieClip 3359 {
}
movieClip 3360 {
}
movieClip 3363 {
}
movieClip 3364 {
}
movieClip 3365 {
}
movieClip 3367 {
}
movieClip 3368 {
}
movieClip 3369 {
instance of movieClip 3365 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3368 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3371 {
}
movieClip 3374 {
}
button 3376 {
on (release) {
_root.gotoAndPlay(22);
}
}
movieClip 3379 {
}
button 3381 {
on (release) {
getURL('http://www.armorgames.com/', '_blank');
}
}
movieClip 3384 {
}
button 3385 {
on (release) {
_root.returntotitle = 1;
_root.gotoAndPlay(22);
}
}
movieClip 3386 defeatMenu {
frame 65 {
stop();
}
instance of movieClip 3371 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3390 {
}
movieClip 3393 {
}
// unknown tag 88 length 68
movieClip 3397 {
}
movieClip 3399 {
}
movieClip 3402 {
}
movieClip 3403 {
}
button 3404 {
on (release) {
_root.gotoAndPlay(25);
}
}
movieClip 3406 {
}
movieClip 3407 {
}
movieClip 3408 {
}
movieClip 3409 defeatMenu2 {
frame 65 {
stop();
}
instance of movieClip 3403 {
onClipEvent (load) {
saveslot000 = SharedObject.getLocal('necroDef_saves');
svloc = this.saveslot000.data;
unit201c.showvar = _root.localkills201;
unit202c.showvar = _root.localkills202;
unit203c.showvar = _root.localkills203;
unit204c.showvar = _root.localkills204;
unit205c.showvar = _root.localkills205;
unit206c.showvar = _root.localkills206;
unit207c.showvar = _root.localkills207;
unit208c.showvar = _root.localkills208;
unit209c.showvar = _root.localkills209;
unit210c.showvar = _root.localkills210;
unit211c.showvar = _root.localkills211;
cash_saved.showvar = _root.cash;
score.showvar = _root.localkills201 * 11 + _root.localkills202 * 20 + _root.localkills203 * 33 + _root.localkills204 * 10 + _root.localkills205 * 50 + _root.localkills206 * 50 + _root.localkills207 * 1000 + _root.localkills208 * 100 + _root.localkills209 * 111 + _root.localkills210 * 12345 + _root.localkills211 * 234 + _root.cash * 100;
highScoreVar = _root.localkills201 * 11 + _root.localkills202 * 20 + _root.localkills203 * 33 + _root.localkills204 * 10 + _root.localkills205 * 50 + _root.localkills206 * 50 + _root.localkills207 * 1000 + _root.localkills208 * 100 + _root.localkills209 * 111 + _root.localkills210 * 12345 + _root.localkills211 * 234 + _root.cash * 100;
if (_root.challenge eq 0) {
if (_root.thisIsSandBox eq 1) {
} else {}
} else {}
}
}
instance of movieClip 3408 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3414 {
}
button 3415 {
on (release) {
nextFrame();
}
}
movieClip 3417 {
}
movieClip 3419 {
}
movieClip 3421 {
}
movieClip 3423 {
}
button 3424 {
on (release) {
_root.BTN_startDay();
}
}
movieClip 3426 {
}
// unknown tag 88 length 65
movieClip 3433 {
instance of movieClip 3292 {
onClipEvent (load) {
stop();
aaa = 0;
thisFRAMERATE = 4;
}
onClipEvent (enterFrame) {
++aaa;
if (aaa eq thisFRAMERATE) {
aaa = 0;
nextFrame();
}
}
}
}
movieClip 3434 {
}
movieClip 3439 {
}
movieClip 3443 {
}
movieClip 3444 {
}
movieClip 3446 {
}
movieClip 3447 {
}
button 3448 {
on (release) {
if (aaa > a_min) {
--aaa;
++_root.skill_points;
}
}
}
button 3449 {
on (release) {
if (aaa < a_max and _root.skill_points > 0) {
++aaa;
--_root.skill_points;
}
}
}
movieClip 3451 {
}
movieClip 3452 {
instance of movieClip 3451 {
onClipEvent (enterFrame) {
a_min = 1;
a_max = 5;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.spell_skill_3;
} else {
_root.spell_skill_3 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
}
movieClip 3453 {
}
movieClip 3454 {
instance of movieClip 3451 {
onClipEvent (enterFrame) {
a_min = 0;
a_max = 5;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.spell_skill_2;
} else {
_root.spell_skill_2 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
}
movieClip 3456 {
instance of movieClip 535 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3457 {
}
movieClip 3458 {
instance of movieClip 3451 {
onClipEvent (enterFrame) {
a_min = 0;
a_max = 5;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.spell_skill_1;
} else {
_root.spell_skill_1 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
}
movieClip 3459 {
instance of movieClip 582 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3460 {
instance of movieClip 3451 {
onClipEvent (enterFrame) {
a_min = 0;
a_max = 5;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.spell_skill_8;
} else {
_root.spell_skill_8 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
}
movieClip 3462 {
instance of movieClip 599 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3463 {
instance of movieClip 3451 {
onClipEvent (enterFrame) {
a_min = 0;
a_max = 5;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.spell_skill_4;
} else {
_root.spell_skill_4 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
}
movieClip 3464 {
instance of movieClip 590 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3465 {
instance of movieClip 3451 {
onClipEvent (enterFrame) {
a_min = 0;
a_max = 5;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.spell_skill_5;
} else {
_root.spell_skill_5 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
}
movieClip 3467 {
instance of movieClip 565 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3468 {
instance of movieClip 3451 {
onClipEvent (enterFrame) {
a_min = 0;
a_max = 5;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.spell_skill_7;
} else {
_root.spell_skill_7 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
}
movieClip 3470 {
}
movieClip 3471 {
instance of movieClip 3451 {
onClipEvent (enterFrame) {
a_min = 0;
a_max = 5;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.spell_skill_6;
} else {
_root.spell_skill_6 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
}
movieClip 3474 {
}
movieClip 3475 {
instance of movieClip 3451 {
onClipEvent (enterFrame) {
a_min = 1;
a_max = 5;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.unit_skill_101;
} else {
_root.unit_skill_101 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
}
movieClip 3476 {
instance of movieClip 3451 {
onClipEvent (enterFrame) {
a_min = 0;
a_max = 5;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.unit_skill_102;
} else {
_root.unit_skill_102 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
}
movieClip 3477 {
instance of movieClip 3451 {
onClipEvent (enterFrame) {
a_min = 0;
a_max = 5;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.unit_skill_103;
} else {
_root.unit_skill_103 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
}
movieClip 3478 {
instance of movieClip 3451 {
onClipEvent (enterFrame) {
a_min = 0;
a_max = 5;
if (yiffffffff != 'fhtagn') {
yiffffffff = 'fhtagn';
aaa = _root.unit_skill_104;
} else {
_root.unit_skill_104 = aaa;
}
display_var = aaa + '/' + a_max;
}
}
}
movieClip 3479 {
instance of movieClip 809 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 809 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 809 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 809 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 809 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 809 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 809 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 809 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3480 {
}
movieClip 3482 {
}
movieClip 3484 {
}
movieClip 3486 {
}
movieClip 3487 {
}
movieClip 3488 {
}
movieClip 3489 {
}
movieClip 3490 {
}
movieClip 3491 {
}
movieClip 3492 {
}
movieClip 3493 {
}
movieClip 3494 {
instance of movieClip 2929 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3495 {
instance of movieClip 2929 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3496 {
}
movieClip 3498 {
}
movieClip 3508 {
}
movieClip 3510 {
}
movieClip 3519 {
}
movieClip 3520 {
}
movieClip 3526 {
}
movieClip 3532 {
}
movieClip 3539 {
}
movieClip 3545 {
}
movieClip 3548 {
}
movieClip 3562 {
}
movieClip 3564 {
}
movieClip 3565 {
}
movieClip 3601 {
instance of movieClip 3419 {
onClipEvent (load) {
showvar = 'Day: ' + _root.current_wave + ' Level: ' + _root.currentLevel;
}
}
instance of movieClip 3421 {
onClipEvent (load) {
showvar = 'Experience: ' + _root.exp_ + '/' + _root['lvlExp_' + _root.currentLevel];
}
}
}
button 3602 {
on (release) {
slotCore1 = _root.bottom_menu.spellSlot_1;
slotCore2 = _root.bottom_menu.spellSlot_2;
slotCore3 = _root.bottom_menu.spellSlot_3;
slotCore4 = _root.bottom_menu.spellSlot_4;
if (_root.spellAvailable_1 eq 1) {
if (slotCore1.selected_spell eq 3 and slotCore2.selected_spell != 1 and slotCore3.selected_spell != 1 and slotCore4.selected_spell != 1) {
if (slotCore2.selected_spell eq 3) {
slotCore2.selected_spell = 1;
} else {
if (slotCore3.selected_spell eq 3) {
slotCore3.selected_spell = 1;
} else {
if (slotCore4.selected_spell eq 3) {
slotCore4.selected_spell = 1;
}
}
}
}
}
if (_root.spellAvailable_2 eq 1) {
if (slotCore1.selected_spell eq 3 and slotCore2.selected_spell != 2 and slotCore3.selected_spell != 2 and slotCore4.selected_spell != 2) {
if (slotCore2.selected_spell eq 3) {
slotCore2.selected_spell = 2;
} else {
if (slotCore3.selected_spell eq 3) {
slotCore3.selected_spell = 2;
} else {
if (slotCore4.selected_spell eq 3) {
slotCore4.selected_spell = 2;
}
}
}
}
}
if (_root.spellAvailable_5 eq 1) {
if (slotCore1.selected_spell eq 3 and slotCore2.selected_spell != 5 and slotCore3.selected_spell != 5 and slotCore4.selected_spell != 5) {
if (slotCore2.selected_spell eq 3) {
slotCore2.selected_spell = 5;
} else {
if (slotCore3.selected_spell eq 3) {
slotCore3.selected_spell = 5;
} else {
if (slotCore4.selected_spell eq 3) {
slotCore4.selected_spell = 5;
}
}
}
}
}
_root.saveANDload('save');
prevFrame();
}
}
movieClip 3604 {
}
movieClip 3606 {
}
movieClip 3607 {
}
movieClip 3609 {
}
movieClip 3610 {
}
movieClip 3614 {
instance of movieClip 3292 {
onClipEvent (load) {
stop();
aaa = 0;
thisFRAMERATE = 4;
}
onClipEvent (enterFrame) {
++aaa;
if (aaa eq thisFRAMERATE) {
aaa = 0;
nextFrame();
}
}
}
}
movieClip 3617 menuUpgrades {
frame 1 {
stop();
}
instance of movieClip 3365 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3417 {
onClipEvent (load) {
showvar = 'Skill points: ' + _root.skill_points;
}
}
instance of movieClip 3419 {
onClipEvent (load) {
showvar = 'Day: ' + _root.current_wave + ' Level: ' + _root.currentLevel;
}
}
instance of movieClip 3421 {
onClipEvent (load) {
showvar = 'Experience: ' + _root.exp_ + '/' + _root['lvlExp_' + _root.currentLevel];
}
}
instance of movieClip 3368 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3444 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3480 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3604 {
onClipEvent (enterFrame) {
showvar = _root.currentLevel;
}
}
instance of movieClip 3606 {
onClipEvent (enterFrame) {
showvar = _root.skill_points;
}
}
}
movieClip 3619 {
}
button 3620 {
on (release) {
_root.removeMainMenu();
}
}
button 3623 {
on (release) {
if (_root._quality eq 'LOW') {
_root._quality = 'MEDIUM';
} else {
if (_root._quality eq 'MEDIUM') {
_root._quality = 'HIGH';
} else {
if (_root._quality eq 'HIGH') {
_root._quality = 'BEST';
} else {
if (_root._quality eq 'BEST') {
_root._quality = 'LOW';
}
}
}
}
}
}
movieClip 3624 {
instance of movieClip 3198 {
onClipEvent (enterFrame) {
if (_root._quality eq 'LOW') {
gotoAndStop(1);
} else {
if (_root._quality eq 'MEDIUM') {
gotoAndStop(2);
} else {
if (_root._quality eq 'HIGH') {
gotoAndStop(3);
} else {
if (_root._quality eq 'BEST') {
gotoAndStop(4);
}
}
}
}
}
}
}
movieClip 3625 {
}
movieClip 3626 {
}
movieClip 3631 {
}
movieClip 3632 {
instance of movieClip 3215 {
onClipEvent (enterFrame) {
gotoAndStop(_root.combat_isMuted + 1);
}
}
}
movieClip 3635 {
}
movieClip 3637 {
}
movieClip 3638 {
}
movieClip 3639 mainMenu {
frame 1 {
stop();
}
instance of movieClip 3631 {
onClipEvent (enterFrame) {
if (_root._quality eq 'LOW') {
gotoAndStop(1);
} else {
if (_root._quality eq 'MEDIUM') {
gotoAndStop(2);
} else {
if (_root._quality eq 'HIGH') {
gotoAndStop(3);
} else {
if (_root._quality eq 'BEST') {
gotoAndStop(4);
}
}
}
}
}
}
instance of movieClip 3635 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3638 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3641 {
}
movieClip 3642 {
}
movieClip 3646 {
}
movieClip 3647 campaignCompleted {
instance of movieClip 3642 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3403 {
onClipEvent (load) {
saveslot000 = SharedObject.getLocal('necroDef_saves');
svloc = this.saveslot000.data;
cash_saved.cash_saved = svloc.cashSaved;
unit201c.showvar = svloc.kills201;
unit202c.showvar = svloc.kills202;
unit203c.showvar = svloc.kills203;
unit204c.showvar = svloc.kills204;
unit205c.showvar = svloc.kills205;
unit206c.showvar = svloc.kills206;
unit207c.showvar = svloc.kills207;
unit208c.showvar = svloc.kills208;
unit209c.showvar = svloc.kills209;
unit210c.showvar = svloc.kills210;
unit211c.showvar = svloc.kills211;
score.showvar = svloc.kills201 * 11 + svloc.kills202 * 20 + svloc.kills203 * 33 + svloc.kills204 * 10 + svloc.kills205 * 50 + svloc.kills206 * 50 + svloc.kills207 * 1000 + svloc.kills208 * 100 + svloc.kills209 * 111 + svloc.kills210 * 12345 + svloc.kills211 * 234 + svloc.cashSaved * 20 + _root.current_wave * 10000;
submitthisasscore = svloc.kills201 * 11 + svloc.kills202 * 20 + svloc.kills203 * 33 + svloc.kills204 * 10 + svloc.kills205 * 50 + svloc.kills206 * 50 + svloc.kills207 * 1000 + svloc.kills208 * 100 + svloc.kills209 * 111 + svloc.kills210 * 12345 + svloc.kills211 * 234 + svloc.cashSaved * 20 + _root.current_wave * 10000;
}
}
instance of movieClip 3408 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3682 {
}
button 3683 {
on (release) {
_root.SRV_saveANDload('save');
_root.spellslotsAutoSelection();
_root.SRV_upgrades_close();
}
}
movieClip 3684 menuUpgrades2 {
instance of movieClip 3444 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3480 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3604 {
onClipEvent (enterFrame) {
showvar = _root.currentLevel;
}
}
instance of movieClip 3606 {
onClipEvent (enterFrame) {
showvar = _root.skill_points;
}
}
}
movieClip 3686 skirmishCompleted {
instance of movieClip 3642 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3403 {
onClipEvent (load) {
unit201c.showvar = _root.localkills201;
unit202c.showvar = _root.localkills202;
unit203c.showvar = _root.localkills203;
unit204c.showvar = _root.localkills204;
unit205c.showvar = _root.localkills205;
unit206c.showvar = _root.localkills206;
unit207c.showvar = _root.localkills207;
unit208c.showvar = _root.localkills208;
unit209c.showvar = _root.localkills209;
unit210c.showvar = _root.localkills210;
unit211c.showvar = _root.localkills211;
cash_saved.showvar = _root.cash;
score.showvar = _root.localkills201 * 11 + _root.localkills202 * 20 + _root.localkills203 * 33 + _root.localkills204 * 10 + _root.localkills205 * 50 + _root.localkills206 * 50 + _root.localkills207 * 1000 + _root.localkills208 * 100 + _root.localkills209 * 111 + _root.localkills210 * 12345 + _root.localkills211 * 234 + _root.cash * 20;
highScoreVar = _root.localkills201 * 11 + _root.localkills202 * 20 + _root.localkills203 * 33 + _root.localkills204 * 10 + _root.localkills205 * 50 + _root.localkills206 * 50 + _root.localkills207 * 1000 + _root.localkills208 * 100 + _root.localkills209 * 111 + _root.localkills210 * 12345 + _root.localkills211 * 234 + _root.cash * 20;
if (_root.challenge eq 0) {
if (_root.thisIsSandBox eq 1) {
} else {}
} else {}
}
}
instance of movieClip 3408 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3687 {
instance of movieClip 2121 shockwave {
onClipEvent (load) {
stop();
}
}
instance of movieClip 2150 castMadness_top {
onClipEvent (load) {
stop();
}
}
instance teh_nuke of movieClip 2349 gravity_nuke {
onClipEvent (load) {
stop();
}
}
instance shield of movieClip 2391 holdPositionAnimation {
onClipEvent (load) {
_visible = false;
}
}
instance swords of movieClip 2396 freeEngageAnimation {
onClipEvent (load) {
_visible = false;
}
}
}
instance of movieClip 3687 {
onClipEvent (load) {
_visible = false;
}
}
frame 31 {
menuMusic.stop();
if (_root.newYIFFwhat eq 'camp') {
gotoAndPlay(22);
} else {
if (_root.newYIFFwhat eq 'skirm') {
gotoAndPlay(25);
} else {
stop();
}
}
}
frame 45 {
stop();
}
movieClip 3689 {
}
button 3691 {
on (release) {
play();
}
}
movieClip 3694 {
}
movieClip 3696 {
}
movieClip 3698 {
}
movieClip 3700 {
}
movieClip 3703 {
}
movieClip 3705 {
}
movieClip 3707 {
}
movieClip 3710 {
}
movieClip 3713 {
}
movieClip 3715 {
}
movieClip 3717 {
}
movieClip 3719 {
}
movieClip 3721 {
}
movieClip 3723 {
}
movieClip 3725 {
}
movieClip 3727 {
}
movieClip 3729 {
frame 38 {
stop();
}
}
movieClip 3731 {
}
movieClip 3732 {
}
movieClip 3734 {
}
movieClip 3736 {
}
movieClip 3738 {
}
movieClip 3740 {
}
movieClip 3742 {
}
movieClip 3744 {
}
movieClip 3746 {
}
movieClip 3748 {
}
movieClip 3750 {
}
movieClip 3752 {
}
movieClip 3753 {
frame 37 {
stop();
}
}
movieClip 3755 {
}
movieClip 3756 {
}
movieClip 3759 {
}
movieClip 3760 {
}
movieClip 3761 {
instance of movieClip 3760 {
onClipEvent (enterFrame) {
aa._rotation += 0.5;
}
}
}
movieClip 3764 {
}
movieClip 3765 {
instance of movieClip 3764 {
onClipEvent (enterFrame) {
_rotation = _rotation - 0.1;
}
}
}
movieClip 3767 {
frame 164 {
_root.play();
}
}
instance of movieClip 3767 {
}
frame 46 {
stop();
}
frame 46 {
stop();
}
movieClip 3768 {
}
movieClip 3772 {
}
movieClip 3773 {
frame 117 {
_root.play();
}
}
frame 47 {
gotoAndStop(7);
}