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 {
function __com_mochibot__(swfid, mc, lv, trk) {
var x;
var g;
var s;
var fv;
var sb;
var u;
var res;
var mb;
var mbc;
var pv;
mb = '__mochibot__';
mbc = 'mochibot.com';
g = _global ? _global : _level0._root;
if (g[mb + swfid]) {
return g[mb + swfid];
}
s = System.security;
x = mc._root.getSWFVersion;
fv = x ? mc.getSWFVersion() : (_global ? 6 : 5);
if (!s) {
s = {};
}
sb = s.sandboxType;
if (sb == 'localWithFile') {
return null;
}
x = s.allowDomain;
if (x) {
s.allowDomain(mbc);
}
x = s.allowInsecureDomain;
if (x) {
s.allowInsecureDomain(mbc);
}
pv = (fv == 5) ? /:$version : System.capabilities.version;
u = 'http://' + mbc + '/my/core.swf?mv=8&fv=' + fv + '&v=' + escape(pv) + '&swfid=' + escape(swfid) + '&l=' + lv + '&f=' + mc + (sb ? '&sb=' + sb : '') + (trk ? '&t=1' : '');
lv = fv > 6 ? mc.getNextHighestDepth() : (g[mb + 'level'] ? g[mb + 'level'] + 1 : lv);
g[mb + 'level'] = lv;
if (fv == 5) {
res = '_level' + lv;
if (!eval(res)) {
loadMovieNum(u, lv);
}
return res;
}
res = mc.createEmptyMovieClip(mb + swfid, lv);
res.loadMovie(u);
return res;
}
_root.kongregateServices.connect();
stop();
fscommand('fullscreen', 'false');
fscommand('allowscale', 'false');
fscommand('showmenu', 'false');
__com_mochibot__('a6927b2b', this, 10301, true);
urla = _url;
gtfomycode_bitch_FUCKOFFSRSLY_DONTSTEALMYGAME = 'kongregate.com';
if (urla.indexOf(gtfomycode_bitch_FUCKOFFSRSLY_DONTSTEALMYGAME) != -1) {
_root.thisiskong = 1;
} else {
_root.thisiskong = 0;
}
_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 56 {
}
movieClip 58 {
}
movieClip 60 {
}
movieClip 62 {
}
movieClip 64 {
}
movieClip 66 {
}
movieClip 67 {
}
movieClip 68 {
}
movieClip 71 {
}
movieClip 73 {
frame 1 {
System.security.allowDomain('kongnet.net');
var kongadvert = _root.adbox;
MCL = new MovieClipLoader();
MCL.loadClip('http://www.kongnet.net/www/delivery/avw.php?zoneid=12&cb=8971325&n=a0cd0099', kongadvert);
MCL.onLoadComplete = function () {
kongadvert.onRelease = function () {
getURL('http://www.kongnet.net/www/delivery/ck.php?n=a0cd0099&cb=9789182', '_blank');
};
};
}
}
movieClip 76 {
}
movieClip 82 {
}
movieClip 83 {
}
movieClip 84 {
}
movieClip 85 {
instance of movieClip 84 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 88 {
}
button 89 {
on (release) {
getURL('http://dz2001.newgrounds.com/', '_blank');
}
}
// unknown tag 88 length 144
movieClip 94 {
}
button 96 {
on (release) {
getURL('http://www.kongregate.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 100 {
}
movieClip 103 {
}
movieClip 106 {
}
movieClip 110 {
}
movieClip 111 {
}
movieClip 112 {
}
instance of movieClip 112 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
movieClip 116 {
}
button 119 {
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 122 {
}
button 124 {
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 127 {
}
button 129 {
on (release) {
getURL('http://www.kongregate.com', '_blank');
}
}
movieClip 132 {
}
button 134 {
on (release) {
getURL('http://dz2001.newgrounds.com/', '_blank');
}
}
movieClip 137 {
}
button 139 {
on (release) {
credits._visible = true;
}
}
movieClip 142 {
}
button 144 {
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 147 {
}
button 149 {
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 151 {
}
movieClip 154 {
}
// unknown tag 88 length 73
movieClip 160 {
frame 2 {
stop();
}
}
instance menudescriptor of movieClip 160 {
onClipEvent (load) {
_visible = false;
}
}
// unknown tag 88 length 78
movieClip 216 {
frame 1 {
stop();
}
}
instance of movieClip 216 {
onClipEvent (load) {
stop();
_visible = false;
}
}
movieClip 220 {
}
movieClip 223 {
}
button 225 {
on (release) {
_visible = false;
}
}
movieClip 227 {
}
movieClip 230 {
}
button 232 {
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 234 {
}
button 236 {
on (release) {
_root.newYIFFwhat = 'camp';
_root.gotoAndPlay(29);
}
}
movieClip 237 {
}
// unknown tag 88 length 27
// unknown tag 88 length 69
button 246 {
on (release) {
saveslot000 = SharedObject.getLocal('necroDef_saves');
vl1 = this.saveslot000.data;
vl1.save_exists = 0;
_root.newYIFFwhat = 'camp';
_root.gotoAndPlay(29);
}
}
button 250 {
on (release) {
gotoAndStop(2);
}
}
movieClip 252 {
}
button 254 {
on (release) {
_root.newYIFFwhat = 'skirm';
_root.thisIsSandBox = 0;
_root.skirmDiff = 1;
_root.gotoAndPlay(29);
}
}
movieClip 257 {
}
button 259 {
on (release) {
_root.newYIFFwhat = 'skirm';
_root.thisIsSandBox = 0;
_root.skirmDiff = 2;
_root.gotoAndPlay(29);
}
}
movieClip 262 {
}
button 264 {
on (release) {
_root.newYIFFwhat = 'skirm';
_root.thisIsSandBox = 0;
_root.skirmDiff = 3;
_root.gotoAndPlay(29);
}
}
movieClip 268 {
}
movieClip 269 {
}
movieClip 270 {
}
movieClip 273 {
}
movieClip 274 {
}
movieClip 275 {
}
movieClip 276 {
}
movieClip 278 {
}
button 280 {
on (release) {
_root.newYIFFwhat = 'skirm';
_root.thisIsSandBox = 0;
_root.challenge = 1;
_root.gotoAndPlay(29);
}
}
movieClip 282 {
}
button 284 {
on (release) {
_root.newYIFFwhat = 'skirm';
_root.thisIsSandBox = 0;
_root.challenge = 2;
_root.gotoAndPlay(29);
}
}
movieClip 285 {
}
movieClip 287 {
}
button 289 {
on (release) {
_root.newYIFFwhat = 'skirm';
_root.thisIsSandBox = 0;
_root.challenge = 3;
_root.gotoAndPlay(29);
}
}
movieClip 290 {
}
movieClip 293 {
}
movieClip 296 {
}
button 298 {
on (release) {
getURL('http://www.kongregate.com/games/dz2001/necropolis-defence', '');
}
}
movieClip 299 {
frame 2 {
stop();
}
instance of movieClip 237 {
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 269 {
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 270 {
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 274 {
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 275 {
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 276 {
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 285 {
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 290 {
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 299 {
onClipEvent (load) {
_visible = false;
}
}
// unknown tag 88 length 64
movieClip 308 {
}
movieClip 310 {
}
button 312 {
on (release) {
_root.sbox_crushMode = 1;
}
}
button 313 {
on (release) {
_root.sbox_crushMode = 0;
}
}
movieClip 315 {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
button 317 {
on (release) {
_root.sbox_cheatMode = 1;
}
}
button 318 {
on (release) {
_root.sbox_cheatMode = 0;
}
}
movieClip 319 {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 320 {
instance of movieClip 315 {
onClipEvent (enterFrame) {
if (!_root.sbox_crushMode) {
_root.sbox_crushMode = 0;
}
gotoAndStop(_root.sbox_crushMode + 1);
}
}
instance of movieClip 319 {
onClipEvent (enterFrame) {
if (!_root.sbox_cheatMode) {
_root.sbox_cheatMode = 0;
}
gotoAndStop(_root.sbox_cheatMode + 1);
}
}
}
movieClip 323 {
}
button 325 {
on (release) {
gotoAndPlay(4);
}
}
movieClip 327 {
}
button 329 {
on (release) {
gotoAndPlay(2);
}
}
movieClip 332 {
}
movieClip 335 {
}
movieClip 339 {
}
movieClip 340 {
}
movieClip 343 {
}
movieClip 346 {
}
movieClip 347 {
}
movieClip 349 {
}
movieClip 351 {
}
movieClip 352 {
}
movieClip 355 {
}
movieClip 358 {
}
button 362 {
on (release) {
if (aaa > a_min) {
--aaa;
}
}
}
movieClip 365 {
}
button 369 {
on (release) {
if (aaa < a_max) {
++aaa;
}
}
}
movieClip 371 {
}
// unknown tag 88 length 62
movieClip 374 {
frame 1 {
stop();
}
instance of movieClip 371 {
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 371 {
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 371 {
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 371 {
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 371 {
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 371 {
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 371 {
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 371 {
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 376 {
on (release) {
if (aaa > a_min) {
--aaa;
if (aaa > 20) {
aaa -= 4;
}
}
}
}
button 377 {
on (release) {
if (aaa < a_max) {
++aaa;
if (aaa > 20) {
aaa += 4;
}
}
}
}
movieClip 379 {
}
movieClip 380 {
instance of movieClip 379 {
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 383 {
}
movieClip 385 {
}
movieClip 387 {
}
movieClip 389 {
}
button 391 {
on (release) {
_root.sbox_spawnLimitMode = 2;
}
}
movieClip 393 {
}
movieClip 394 {
}
button 395 {
on (release) {
_root.sbox_spawnLimitMode = 3;
}
}
movieClip 396 {
}
button 397 {
on (release) {
_root.sbox_spawnLimitMode = 1;
}
}
movieClip 398 {
instance of movieClip 396 {
onClipEvent (enterFrame) {
gotoAndStop(_root.sbox_crushMode + 1);
}
}
}
movieClip 399 {
instance of movieClip 398 {
onClipEvent (enterFrame) {
if (!_root.sbox_spawnLimitMode) {
_root.sbox_spawnLimitMode = 1;
}
gotoAndStop(_root.sbox_spawnLimitMode);
}
}
}
movieClip 401 {
}
button 403 {
on (release) {
_root.newYIFFwhat = 'skirm';
_root.thisIsSandBox = 1;
_root.gotoAndPlay(29);
}
}
movieClip 405 {
}
movieClip 406 {
}
instance sandboxMenu of movieClip 406 {
onClipEvent (load) {
_visible = false;
}
}
button 408 {
on (release) {
_visible = false;
}
}
movieClip 409 {
}
movieClip 411 {
}
// unknown tag 88 length 190
movieClip 415 {
}
movieClip 423 {
}
button 425 {
on (release) {
_visible = false;
}
}
movieClip 427 {
}
button 429 {
on (release) {
++azaza;
if (azaza > 30) {
gotoAndStop(2);
azaza = 0;
}
}
}
button 433 {
on (release) {
getURL('http://dz2001.newgrounds.com/', '_blank');
}
}
button 435 {
on (release) {
getURL('http://www.deborahsaez.com/', '_blank');
}
}
button 436 {
on (release) {
getURL('http://kalong.deviantart.com/', '_blank');
}
}
button 437 {
on (release) {
getURL('http://juanico-el-muertes.deviantart.com/', '_blank');
}
}
button 438 {
on (release) {
getURL('http://requie.deviantart.com/', '_blank');
}
}
button 439 {
on (release) {
getURL('http://adeafbat.newgrounds.com/audio/', '_blank');
}
}
button 441 {
on (release) {
getURL('http://bezo.newgrounds.com/audio/', '_blank');
}
}
movieClip 444 {
}
button 445 {
on (press) {
photos.gotoAndStop(1);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
movieClip 448 {
}
button 449 {
on (press) {
photos.gotoAndStop(2);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
movieClip 452 {
}
button 453 {
on (press) {
photos.gotoAndStop(3);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
movieClip 456 {
}
button 457 {
on (press) {
photos.gotoAndStop(4);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
movieClip 460 {
}
button 461 {
on (press) {
photos.gotoAndStop(5);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
movieClip 464 {
}
button 465 {
on (press) {
photos.gotoAndStop(6);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
movieClip 468 {
}
button 469 {
on (press) {
photos.gotoAndStop(7);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
movieClip 472 {
}
button 473 {
on (press) {
photos.gotoAndStop(8);
photos._visible = true;
}
on (release, releaseOutside) {
photos._visible = false;
}
}
button 474 {
on (release) {
gotoAndStop(1);
}
}
movieClip 476 {
}
button 478 {
on (release) {
saveslot000 = SharedObject.getLocal('necroDef_saves');
svloc = this.saveslot000.data;
svloc.cashSaved = 0;
}
}
movieClip 480 {
}
movieClip 482 {
}
movieClip 483 {
}
movieClip 485 {
}
movieClip 487 {
}
movieClip 489 {
}
movieClip 491 {
}
movieClip 493 {
}
movieClip 495 {
}
movieClip 496 {
frame 1 {
stop();
}
}
movieClip 497 {
frame 1 {
stop();
azaza = 0;
}
instance photos of movieClip 496 {
onClipEvent (load) {
_visible = false;
}
}
}
instance credits of movieClip 497 {
onClipEvent (load) {
_visible = false;
}
}
movieClip 522 {
}
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 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 v41 = new Sound(sound_shell);
v41.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 v47 = new Sound(sound_shell);
v47.attachSound('mage_shot');
var v32 = new Sound(sound_shell);
v32.attachSound('mageFIreballDetonate');
var v37 = new Sound(sound_shell);
v37.attachSound('blunt_swing_1');
var v44 = new Sound(sound_shell);
v44.attachSound('blunt_swing_2');
var v42 = new Sound(sound_shell);
v42.attachSound('blunt_swing_3');
var v50 = new Sound(sound_shell);
v50.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 v45 = new Sound(sound_shell);
v45.attachSound('melee_swing_1');
var v43 = new Sound(sound_shell);
v43.attachSound('melee_swing_2');
var v40 = new Sound(sound_shell);
v40.attachSound('melee_swing_3');
var v39 = new Sound(sound_shell);
v39.attachSound('melee_swing_4');
var v54 = new Sound(sound_shell);
v54.attachSound('blade_hit_1');
var v53 = new Sound(sound_shell);
v53.attachSound('blade_hit_2');
var v51 = new Sound(sound_shell);
v51.attachSound('blade_hit_3');
var v48 = new Sound(sound_shell);
v48.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 v49 = new Sound(sound_shell);
v49.attachSound('assultSnd_3');
var v46 = new Sound(sound_shell);
v46.attachSound('assultSnd_3');
var v52 = new Sound(sound_shell);
v52.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;
v41 = new Sound(sound_shell);
v34 = new Sound(sound_shell);
v36 = new Sound(sound_shell);
v47 = 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);
v44 = new Sound(sound_shell);
v42 = new Sound(sound_shell);
v50 = new Sound(sound_shell);
v38 = new Sound(sound_shell);
v35 = new Sound(sound_shell);
v45 = new Sound(sound_shell);
v43 = new Sound(sound_shell);
v40 = new Sound(sound_shell);
v39 = new Sound(sound_shell);
v54 = new Sound(sound_shell);
v53 = new Sound(sound_shell);
v51 = new Sound(sound_shell);
v48 = 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);
v49 = new Sound(sound_shell);
v46 = new Sound(sound_shell);
v52 = new Sound(sound_shell);
}
_root.unit_attack_202 = v31;
_root.unit_attack_203 = v33;
_root.electrohit = v29;
_root.curseCastSound = v19;
_root.sorcBoom1 = v41;
_root.sorcBoom2 = v34;
_root.sorcBoom3 = v36;
_root.portalcastSND = v3;
_root.mage_shot = v47;
_root.mageFIreballDetonate = v32;
_root.blunt_swing_1 = v37;
_root.blunt_swing_2 = v44;
_root.blunt_swing_3 = v42;
_root.blunt_swing_4 = v50;
_root.att_sound_201_1 = v38;
_root.att_sound_201_2 = v35;
_root.melee_swing_1 = v45;
_root.melee_swing_2 = v43;
_root.melee_swing_3 = v40;
_root.melee_swing_4 = v39;
_root.blade_hit_1 = v54;
_root.blade_hit_2 = v53;
_root.blade_hit_3 = v51;
_root.blade_hit_4 = v48;
_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 = v49;
_root.assultSnd_3 = v46;
_root.assultSnd_1 = v52;
_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 __com_mochibot__(swfid, mc, lv, trk) {
var x;
var g;
var s;
var fv;
var sb;
var u;
var res;
var mb;
var mbc;
var pv;
mb = '__mochibot__';
mbc = 'mochibot.com';
g = _global ? _global : _level0._root;
if (g[mb + swfid]) {
return g[mb + swfid];
}
s = System.security;
x = mc._root.getSWFVersion;
fv = x ? mc.getSWFVersion() : (_global ? 6 : 5);
if (!s) {
s = {};
}
sb = s.sandboxType;
if (sb == 'localWithFile') {
return null;
}
x = s.allowDomain;
if (x) {
s.allowDomain(mbc);
}
x = s.allowInsecureDomain;
if (x) {
s.allowInsecureDomain(mbc);
}
pv = (fv == 5) ? /:$version : System.capabilities.version;
u = 'http://' + mbc + '/my/core.swf?mv=8&fv=' + fv + '&v=' + escape(pv) + '&swfid=' + escape(swfid) + '&l=' + lv + '&f=' + mc + (sb ? '&sb=' + sb : '') + (trk ? '&t=1' : '');
lv = fv > 6 ? mc.getNextHighestDepth() : (g[mb + 'level'] ? g[mb + 'level'] + 1 : lv);
g[mb + 'level'] = lv;
if (fv == 5) {
res = '_level' + lv;
if (!eval(res)) {
loadMovieNum(u, lv);
}
return res;
}
res = mc.createEmptyMovieClip(mb + swfid, lv);
res.loadMovie(u);
return res;
}
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;
}
if (_root.current_wave eq 3) {
__com_mochibot__('ee432817', this, 10301, true);
} else {
if (_root.current_wave eq 10) {
__com_mochibot__('40a7b86a', this, 10301, true);
} else {
if (_root.current_wave eq 20) {
__com_mochibot__('8da1f9ef', this, 10301, true);
}
}
}
saveKills();
saveslot000 = SharedObject.getLocal('necroDef_saves');
svloc = this.saveslot000.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;
_root.kongregateStats.submit('Campaign Score', 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;
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 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 v41 = new Sound(sound_shell);
v41.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 v47 = new Sound(sound_shell);
v47.attachSound('mage_shot');
var v32 = new Sound(sound_shell);
v32.attachSound('mageFIreballDetonate');
var v37 = new Sound(sound_shell);
v37.attachSound('blunt_swing_1');
var v44 = new Sound(sound_shell);
v44.attachSound('blunt_swing_2');
var v42 = new Sound(sound_shell);
v42.attachSound('blunt_swing_3');
var v50 = new Sound(sound_shell);
v50.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 v45 = new Sound(sound_shell);
v45.attachSound('melee_swing_1');
var v43 = new Sound(sound_shell);
v43.attachSound('melee_swing_2');
var v40 = new Sound(sound_shell);
v40.attachSound('melee_swing_3');
var v39 = new Sound(sound_shell);
v39.attachSound('melee_swing_4');
var v54 = new Sound(sound_shell);
v54.attachSound('blade_hit_1');
var v53 = new Sound(sound_shell);
v53.attachSound('blade_hit_2');
var v51 = new Sound(sound_shell);
v51.attachSound('blade_hit_3');
var v48 = new Sound(sound_shell);
v48.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 v49 = new Sound(sound_shell);
v49.attachSound('assultSnd_3');
var v46 = new Sound(sound_shell);
v46.attachSound('assultSnd_3');
var v52 = new Sound(sound_shell);
v52.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;
v41 = new Sound(sound_shell);
v34 = new Sound(sound_shell);
v36 = new Sound(sound_shell);
v47 = 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);
v44 = new Sound(sound_shell);
v42 = new Sound(sound_shell);
v50 = new Sound(sound_shell);
v38 = new Sound(sound_shell);
v35 = new Sound(sound_shell);
v45 = new Sound(sound_shell);
v43 = new Sound(sound_shell);
v40 = new Sound(sound_shell);
v39 = new Sound(sound_shell);
v54 = new Sound(sound_shell);
v53 = new Sound(sound_shell);
v51 = new Sound(sound_shell);
v48 = 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);
v49 = new Sound(sound_shell);
v46 = new Sound(sound_shell);
v52 = new Sound(sound_shell);
}
_root.unit_attack_202 = v31;
_root.unit_attack_203 = v33;
_root.electrohit = v29;
_root.curseCastSound = v19;
_root.sorcBoom1 = v41;
_root.sorcBoom2 = v34;
_root.sorcBoom3 = v36;
_root.portalcastSND = v3;
_root.mage_shot = v47;
_root.mageFIreballDetonate = v32;
_root.blunt_swing_1 = v37;
_root.blunt_swing_2 = v44;
_root.blunt_swing_3 = v42;
_root.blunt_swing_4 = v50;
_root.att_sound_201_1 = v38;
_root.att_sound_201_2 = v35;
_root.melee_swing_1 = v45;
_root.melee_swing_2 = v43;
_root.melee_swing_3 = v40;
_root.melee_swing_4 = v39;
_root.blade_hit_1 = v54;
_root.blade_hit_2 = v53;
_root.blade_hit_3 = v51;
_root.blade_hit_4 = v48;
_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 = v49;
_root.assultSnd_3 = v46;
_root.assultSnd_1 = v52;
_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;
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 529 {
on (release) {
cacheAsBitmap = true;
}
}
movieClip 533 {
}
movieClip 536 {
}
movieClip 539 {
}
movieClip 540 {
}
movieClip 541 {
instance of movieClip 540 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 542 {
}
movieClip 546 {
}
movieClip 548 {
}
movieClip 550 {
frame 1 {
stop();
}
instance of movieClip 548 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 551 {
instance aaa of movieClip 550 {
onClipEvent (enterFrame) {
persent = Math.floor(100 * (1 - _root.shockwave_delay / _root.shockwave_delaytime));
gotoAndStop(persent);
}
}
}
movieClip 553 {
}
movieClip 555 {
}
button 556 {
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 558 {
}
movieClip 559 {
}
movieClip 560 {
instance of movieClip 559 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 562 {
on (release) {
gotoAndStop(2);
close_all_but_me = 1;
}
on (rollOver, dragOver) {
_root.infotext = 'Select spell.';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
button 563 {
on (release) {
gotoAndStop(1);
}
}
button 565 {
on (release) {
gotoAndPlay(1);
}
}
movieClip 566 {
}
movieClip 568 {
}
movieClip 569 {
}
movieClip 570 {
}
movieClip 571 {
instance of movieClip 570 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 573 {
on (release) {
activated = 1;
}
}
movieClip 574 {
frame 1 {
stop();
}
}
movieClip 576 {
}
movieClip 577 {
}
movieClip 578 {
instance of movieClip 577 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 579 {
}
button 581 {
on (release) {
activated = 1;
}
}
movieClip 582 {
frame 1 {
stop();
}
}
movieClip 583 {
}
movieClip 585 {
}
movieClip 586 {
}
movieClip 587 {
}
movieClip 588 {
instance of movieClip 587 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 590 {
on (release) {
activated = 1;
}
}
movieClip 591 {
frame 1 {
stop();
}
}
movieClip 593 {
}
movieClip 594 {
}
movieClip 595 {
}
movieClip 596 {
instance of movieClip 595 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 598 {
on (release) {
activated = 1;
}
}
movieClip 599 {
frame 1 {
stop();
}
}
movieClip 602 {
}
movieClip 603 {
}
movieClip 604 {
}
movieClip 605 {
instance of movieClip 604 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 607 {
on (release) {
activated = 1;
}
}
movieClip 608 {
frame 1 {
stop();
}
}
movieClip 610 {
}
movieClip 611 {
}
movieClip 612 {
instance of movieClip 611 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 614 {
on (release) {
activated = 1;
}
}
movieClip 615 {
frame 1 {
stop();
}
instance of movieClip 611 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 617 {
on (release) {
activated = 1;
}
}
movieClip 618 {
frame 1 {
stop();
}
}
movieClip 621 {
}
movieClip 622 {
}
button 624 {
on (release) {
activated = 1;
}
}
movieClip 625 {
}
movieClip 626 {
frame 1 {
stop();
}
frame 1 {
_root.saveQuickSPells();
}
frame 2 {
stop();
}
}
movieClip 627 {
}
movieClip 628 {
}
movieClip 629 {
}
movieClip 630 {
}
movieClip 631 {
}
movieClip 632 {
}
movieClip 633 {
}
movieClip 634 {
}
movieClip 635 {
}
movieClip 636 {
}
movieClip 637 {
}
movieClip 638 {
}
movieClip 639 {
frame 1 {
stop();
if (selected_spell > -999) {
} else {
selected_spell = 3;
}
}
}
movieClip 641 {
}
movieClip 642 {
}
movieClip 644 {
}
movieClip 646 {
}
movieClip 648 {
}
movieClip 652 {
frame 1 {
stop();
}
}
movieClip 653 {
instance of movieClip 644 {
onClipEvent (enterFrame) {
if (random(10) eq 1) {
showvar = _root.exp_ + '/' + _root['lvlExp_' + _root.currentLevel];
if (_root.this_is_survival eq 1) {
showvar = 'max';
}
}
}
}
}
movieClip 657 {
}
movieClip 658 {
}
movieClip 661 {
}
movieClip 662 {
}
movieClip 663 {
}
movieClip 665 {
}
movieClip 666 {
}
movieClip 668 {
}
movieClip 669 {
}
movieClip 671 {
}
movieClip 672 {
}
movieClip 673 {
}
movieClip 675 {
}
movieClip 676 {
}
movieClip 677 {
}
movieClip 678 {
}
movieClip 679 {
instance of movieClip 678 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 680 {
frame 10 {
stop();
}
}
button 681 {
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 682 {
frame 1 {
stop();
}
}
movieClip 684 {
}
movieClip 686 {
}
movieClip 687 {
}
movieClip 688 {
}
movieClip 689 {
}
movieClip 690 {
instance of movieClip 689 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 691 {
frame 10 {
stop();
}
}
button 692 {
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 693 {
frame 1 {
stop();
}
}
movieClip 696 {
}
movieClip 698 {
}
movieClip 700 {
}
movieClip 701 {
}
movieClip 703 {
}
movieClip 705 {
}
movieClip 707 {
}
movieClip 708 {
}
movieClip 709 {
}
movieClip 710 {
instance of movieClip 709 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 711 {
frame 10 {
stop();
}
}
button 712 {
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 713 {
frame 1 {
stop();
}
}
movieClip 716 {
}
movieClip 717 {
instance of movieClip 716 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 719 {
}
movieClip 722 {
}
movieClip 723 {
}
movieClip 724 {
}
movieClip 725 {
}
movieClip 726 {
instance of movieClip 725 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 727 {
}
movieClip 728 {
instance of movieClip 727 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 731 {
}
movieClip 732 {
}
movieClip 733 {
instance of movieClip 732 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 735 {
}
movieClip 736 {
instance of movieClip 735 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 737 {
}
movieClip 738 {
}
movieClip 739 {
instance of movieClip 738 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 740 {
}
movieClip 741 {
frame 10 {
stop();
}
}
button 742 {
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 743 {
}
movieClip 745 {
}
movieClip 747 {
}
movieClip 748 {
}
movieClip 749 {
}
movieClip 750 {
}
movieClip 751 {
instance of movieClip 750 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 753 {
}
movieClip 754 {
}
movieClip 755 {
}
movieClip 756 {
}
movieClip 760 {
}
movieClip 761 {
instance of movieClip 760 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 763 {
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 765 {
}
movieClip 767 {
}
movieClip 768 {
}
movieClip 770 {
}
movieClip 771 {
}
movieClip 772 {
}
button 774 {
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 776 {
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 777 {
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 778 {
}
movieClip 780 {
}
movieClip 781 {
}
button 783 {
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 785 {
}
button 786 {
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 788 {
}
movieClip 789 {
frame 1 {
stop();
}
instance of movieClip 751 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_root.unit_price_101 > _root.cash) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 751 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_root.unit_price_102 > _root.cash) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 751 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_root.unit_price_103 > _root.cash) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 751 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_root.unit_price_104 > _root.cash) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 756 {
onClipEvent (enterFrame) {
if (_root.deathKnightCOUNT > 1 and _root.thisIsSandBox != 1) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 756 {
onClipEvent (enterFrame) {
if (_root.lichCOUNT > 1 and _root.thisIsSandBox != 1) {
_visible = true;
} else {
_visible = false;
}
}
}
instance of movieClip 761 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_root.spawnedUnits < _root.spawnLimit) {
_visible = false;
} else {
_visible = true;
}
}
}
frame 2 {
stop();
}
}
button 790 {
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 791 {
frame 1 {
stop();
if (selected_spell > -999) {
} else {
selected_spell = 3;
}
}
}
button 792 {
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 793 {
frame 1 {
stop();
if (selected_spell > -999) {
} else {
selected_spell = 3;
}
}
}
button 794 {
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 795 {
on (release) {
gotoAndStop(2);
close_all_but_me = 1;
}
on (rollOver, dragOver) {
_root.infotext = 'Select spell.';
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
button 796 {
on (release) {
gotoAndStop(1);
}
}
button 797 {
on (release) {
gotoAndStop(1);
}
}
movieClip 798 {
frame 1 {
stop();
}
frame 1 {
_root.saveQuickSPells();
}
frame 2 {
stop();
}
}
movieClip 799 {
frame 1 {
stop();
if (selected_spell > -999) {
} else {
selected_spell = 3;
}
}
}
movieClip 801 {
}
movieClip 802 {
}
movieClip 804 {
}
movieClip 805 {
instance ind of movieClip 802 {
onClipEvent (load) {
gotoAndStop(100);
}
}
instance of movieClip 804 {
onClipEvent (enterFrame) {
if (random(10) eq 1) {
showvar = Math.floor(_root.castleHitPoints - _root.castleDmg) + '/' + _root.castleHitPoints;
}
}
}
}
movieClip 808 {
}
movieClip 809 {
}
movieClip 812 {
}
movieClip 815 {
}
movieClip 818 {
}
button 827 {
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 830 {
}
movieClip 833 {
}
button 835 {
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 836 {
}
movieClip 838 {
}
movieClip 840 {
}
movieClip 841 {
}
movieClip 843 {
}
movieClip 845 {
}
movieClip 846 {
}
// unknown tag 88 length 64
button 850 {
on (release) {
_root.spawnMainMenu();
}
}
button 853 {
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 854 {
}
movieClip 856 {
}
movieClip 857 {
}
button 859 {
on (rollOver, dragOver) {
_root.infotext = 'Castle Hit Points: ' + Math.floor(_root.castleHitPoints - _root.castleDmg) + '/' + _root.castleHitPoints;
}
on (rollOut, dragOut) {
_root.infotext = '';
}
}
button 860 {
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 862 {
}
movieClip 865 {
}
// unknown tag 88 length 63
movieClip 870 {
}
movieClip 873 {
}
movieClip 876 {
}
movieClip 879 {
}
movieClip 882 {
}
movieClip 887 {
}
movieClip 889 {
}
movieClip 890 {
}
movieClip 892 {
}
movieClip 894 {
frame 1 {
stop();
}
instance of movieClip 892 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 895 bottom_menu {
instance of movieClip 536 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 809 {
onClipEvent (enterFrame) {
if (_root.yiffISpaused eq 0) {
gotoAndStop(1);
} else {
play();
}
}
}
instance of movieClip 812 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 815 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 815 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 815 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 815 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 836 {
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 838 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 854 {
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 862 {
onClipEvent (enterFrame) {
showvar = _root.infotext;
}
}
instance of movieClip 865 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_root.menuModeGameBlock eq 1) {
_visible = true;
} else {
_visible = false;
}
}
}
instance hud_explanation of movieClip 890 {
onClipEvent (load) {
cacheAsBitmap = true;
_visible = false;
}
}
}
movieClip 898 {
}
movieClip 899 {
}
movieClip 901 {
}
movieClip 902 {
}
movieClip 907 {
}
movieClip 912 {
}
button 914 {
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 916 {
}
movieClip 918 {
}
movieClip 920 {
}
movieClip 922 {
}
movieClip 924 {
}
movieClip 926 {
}
movieClip 928 {
}
movieClip 930 {
}
movieClip 931 {
frame 1 {
stop();
}
frame 5 {
_root.electrohit.start();
}
frame 13 {
gotoAndStop(1);
_visible = false;
}
}
movieClip 958 {
frame 1 {
do_dmg = 0;
}
frame 9 {
do_dmg = 1;
}
frame 36 {
do_dmg = 0;
}
}
movieClip 989 {
}
movieClip 990 unit_101 {
frame 1 {
stop();
}
instance selection_ of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance healingShow of movieClip 902 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance shockAnim of movieClip 931 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 992 {
}
movieClip 993 unit_slot {
instance of movieClip 992 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 997 {
}
movieClip 998 {
}
movieClip 999 {
instance of movieClip 998 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
button 1001 {
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 1014 {
}
movieClip 1015 {
}
movieClip 1016 {
}
movieClip 1018 {
}
movieClip 1019 {
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 1020 {
instance of movieClip 998 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 1025 {
frame 21 {
stop();
}
}
movieClip 1026 necropolis {
frame 1 {
stop();
}
instance of movieClip 998 {
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 1028 {
}
movieClip 1029 dead_101 {
frame 83 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 1031 {
}
movieClip 1032 {
instance of movieClip 1031 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 1034 {
}
movieClip 1037 {
}
movieClip 1038 {
}
movieClip 1039 {
instance of movieClip 1038 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 1041 {
}
movieClip 1042 {
instance of movieClip 1041 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 1044 {
}
movieClip 1045 {
}
movieClip 1046 {
instance of movieClip 1045 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 1048 {
}
movieClip 1049 {
}
movieClip 1052 {
}
movieClip 1054 {
}
movieClip 1055 {
}
movieClip 1056 {
instance of movieClip 1055 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 1058 {
}
movieClip 1060 dead_201 {
frame 83 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 1063 {
}
movieClip 1064 otletalka {
frame 35 {
removeMovieClip(this);
}
}
movieClip 1066 {
}
movieClip 1067 {
instance of movieClip 1066 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 1069 {
}
movieClip 1070 {
}
movieClip 1072 {
}
movieClip 1073 {
}
movieClip 1075 {
}
movieClip 1076 {
frame 11 {
stop();
_visible = false;
}
}
button 1077 {
on (rollOver, dragOver) {
_root.mousoveredEnemy = this;
}
on (rollOut, dragOut) {
_root.mousoveredEnemy = 0;
}
}
movieClip 1118 {
frame 1 {
do_dmg = 0;
}
frame 13 {
do_dmg = 1;
}
frame 30 {
do_dmg = 0;
}
}
movieClip 1145 {
}
movieClip 1146 unit_201 {
frame 1 {
stop();
}
instance curseInd of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1073 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1076 {
onClipEvent (load) {
_visible = false;
}
}
}
button 1149 {
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 1152 {
}
movieClip 1155 {
}
movieClip 1158 {
}
movieClip 1161 {
}
movieClip 1164 {
}
movieClip 1167 {
}
movieClip 1170 {
}
movieClip 1171 {
}
movieClip 1240 {
frame 1 {
do_dmg = 0;
}
frame 18 {
do_dmg = 1;
}
frame 34 {
do_dmg = 0;
}
}
movieClip 1270 {
}
movieClip 1271 unit_102 {
frame 1 {
stop();
}
instance healingShow of movieClip 902 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance shockAnim of movieClip 931 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 1273 arrow_fly {
frame 3 {
if (diefast eq 1) {
removeMovieClip(this);
}
}
frame 6 {
removeMovieClip(this);
}
}
movieClip 1303 {
frame 1 {
do_dmg = 0;
}
frame 7 {
do_dmg = 1;
}
frame 15 {
do_dmg = 0;
stop();
}
}
movieClip 1334 {
}
movieClip 1335 unit_202 {
frame 1 {
stop();
}
instance curseInd of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1073 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1076 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 1361 {
}
movieClip 1380 {
frame 1 {
do_dmg = 0;
}
frame 34 {
do_dmg = 1;
}
frame 53 {
do_dmg = 0;
}
}
movieClip 1409 {
}
movieClip 1410 unit_205 {
instance curseInd of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1073 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1076 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 1413 projectile_205 {
}
movieClip 1427 {
frame 17 {
stop();
}
}
movieClip 1431 explosion_small_1 {
frame 20 {
removeMovieClip(this);
}
}
movieClip 1433 {
}
movieClip 1436 explosion_small_2 {
frame 20 {
removeMovieClip(this);
}
}
movieClip 1457 {
frame 20 {
stop();
}
}
movieClip 1462 explosion_small_3 {
frame 20 {
removeMovieClip(this);
}
}
movieClip 1478 {
frame 15 {
stop();
}
}
movieClip 1488 explosion_small_4 {
frame 20 {
removeMovieClip(this);
}
}
movieClip 1493 {
}
movieClip 1494 {
}
movieClip 1500 {
}
movieClip 1501 enemy_projectile_33 {
frame 10 {
stop();
}
}
movieClip 1502 projectile_1 {
frame 24 {
stop();
}
}
movieClip 1504 {
}
movieClip 1507 {
frame 1 {
gotoAndStop(random(2) + 2);
}
instance of movieClip 1504 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 1508 {
}
movieClip 1509 trail1 {
frame 16 {
removeMovieClip(this);
}
}
movieClip 1513 {
}
movieClip 1526 explosion_poison {
frame 21 {
removeMovieClip(this);
}
}
movieClip 1527 projectile_2 {
frame 24 {
stop();
}
}
movieClip 1531 {
frame 1 {
gotoAndStop(2 + random(4));
}
instance of movieClip 1504 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 1532 trail2 {
frame 15 {
removeMovieClip(this);
}
}
movieClip 1575 explosion_big_1 {
frame 22 {
removeMovieClip(this);
}
}
movieClip 1618 explosion_big_2 {
frame 22 {
removeMovieClip(this);
}
}
movieClip 1661 explosion_big_4 {
frame 22 {
removeMovieClip(this);
}
}
movieClip 1704 explosion_big_3 {
frame 22 {
removeMovieClip(this);
stop();
}
}
movieClip 1706 {
}
movieClip 1708 {
}
movieClip 1710 {
}
movieClip 1712 {
}
movieClip 1714 {
}
movieClip 1715 {
}
movieClip 1717 {
}
movieClip 1718 dead_202 {
frame 83 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 1720 {
}
movieClip 1725 {
}
movieClip 1726 {
}
movieClip 1727 {
}
movieClip 1729 {
}
movieClip 1731 {
}
movieClip 1733 {
}
movieClip 1735 {
}
movieClip 1736 {
}
movieClip 1737 {
}
movieClip 1741 {
frame 17 {
stop();
}
}
movieClip 1768 {
frame 14 {
stop();
}
}
movieClip 1773 dead_205 {
frame 29 {
parent.cacheAsBitmap = true;
removeMovieClip(this);
}
}
movieClip 1774 dead_102 {
frame 83 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 1776 {
}
movieClip 1777 {
}
movieClip 1778 arrow_fly_2 {
frame 3 {
if (diefast eq 1) {
removeMovieClip(this);
}
}
frame 6 {
removeMovieClip(this);
}
}
button 1781 {
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 1823 {
frame 1 {
do_dmg = 0;
}
frame 14 {
do_dmg = 1;
}
frame 21 {
do_dmg = 0;
}
frame 24 {
_parent.gotoAndStop(1);
}
}
movieClip 1860 {
}
movieClip 1861 unit_103 {
frame 1 {
stop();
}
instance healingShow of movieClip 902 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance shockAnim of movieClip 931 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 1865 dead_103_upper {
frame 40 {
removeMovieClip(this);
}
}
movieClip 1886 {
frame 21 {
stop();
}
}
movieClip 1887 {
}
movieClip 1889 elisiumTear {
frame 9 {
_root.elisiumTearEffect(_x, _y);
}
frame 25 {
removeMovieClip(this);
}
}
movieClip 1956 {
frame 1 {
do_dmg = 0;
}
frame 24 {
do_dmg = 1;
}
frame 32 {
do_dmg = 0;
}
}
movieClip 2006 {
}
movieClip 2007 unit_104 {
frame 1 {
stop();
}
instance healingShow of movieClip 902 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance shockAnim of movieClip 931 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 2008 {
}
movieClip 2012 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 2014 {
}
movieClip 2015 hpIndicator {
}
movieClip 2018 {
}
movieClip 2019 leaf_top {
}
movieClip 2022 {
}
movieClip 2023 {
}
movieClip 2024 {
}
movieClip 2025 particle_1 {
frame 21 {
removeMovieClip(this);
}
}
movieClip 2032 {
}
movieClip 2033 warping_unit {
frame 21 {
removeMovieClip(this);
}
}
movieClip 2036 {
}
movieClip 2037 particle_3 {
instance aaa of movieClip 2036 {
onClipEvent (load) {
_visible = false;
}
}
frame 2 {
if (random(3) eq 1) {
play();
} else {
gotoAndPlay(1);
}
}
frame 10 {
removeMovieClip(this);
}
}
movieClip 2039 {
}
movieClip 2040 {
}
movieClip 2042 {
}
movieClip 2043 {
}
movieClip 2044 {
}
movieClip 2045 {
}
movieClip 2046 {
}
movieClip 2047 kursor {
frame 1 {
stop();
}
}
movieClip 2049 {
}
movieClip 2050 {
}
movieClip 2052 {
}
movieClip 2053 {
}
movieClip 2055 {
}
movieClip 2057 {
}
movieClip 2058 {
}
movieClip 2064 {
}
movieClip 2065 {
}
movieClip 2066 {
}
movieClip 2067 spellCircle_1 {
}
movieClip 2069 {
}
movieClip 2070 {
}
movieClip 2075 {
}
movieClip 2076 {
}
movieClip 2078 {
}
movieClip 2079 {
}
movieClip 2080 {
}
movieClip 2081 spellCircle_2 {
}
movieClip 2082 {
}
movieClip 2083 selectionField {
}
movieClip 2084 selectionField2 {
}
movieClip 2087 {
}
movieClip 2090 {
}
movieClip 2091 spellCircle_3 {
}
movieClip 2093 {
}
movieClip 2096 {
}
movieClip 2097 {
}
movieClip 2098 {
}
movieClip 2099 {
}
movieClip 2100 {
}
movieClip 2101 {
}
movieClip 2103 {
}
movieClip 2104 {
}
movieClip 2105 {
}
movieClip 2108 {
}
movieClip 2109 {
}
movieClip 2110 {
}
movieClip 2111 {
}
movieClip 2112 {
}
movieClip 2113 {
}
movieClip 2114 {
}
movieClip 2115 {
}
movieClip 2116 {
}
movieClip 2117 {
}
movieClip 2118 {
}
movieClip 2119 {
}
movieClip 2120 {
}
movieClip 2121 {
}
movieClip 2122 {
}
movieClip 2123 {
}
movieClip 2124 {
}
movieClip 2125 {
}
movieClip 2127 {
}
movieClip 2128 shockwave {
frame 2 {
_root.shockwaveSND.start();
}
frame 26 {
removeMovieClip(this);
}
}
movieClip 2130 {
}
movieClip 2155 {
}
movieClip 2156 {
}
movieClip 2157 castMadness_top {
frame 19 {
removeMovieClip(this);
}
}
movieClip 2158 {
}
movieClip 2160 {
}
movieClip 2166 {
}
movieClip 2167 {
}
movieClip 2168 {
}
movieClip 2169 {
}
movieClip 2170 {
}
movieClip 2172 {
}
movieClip 2173 spellCircle_4 {
}
movieClip 2175 {
}
movieClip 2176 castMadness_bottom {
frame 19 {
removeMovieClip(this);
}
}
movieClip 2181 {
}
movieClip 2182 {
}
movieClip 2184 {
}
movieClip 2186 {
}
movieClip 2188 {
}
movieClip 2189 {
}
movieClip 2190 {
}
movieClip 2191 spellCircle_5 {
}
movieClip 2217 {
}
movieClip 2218 {
}
movieClip 2221 {
}
movieClip 2222 spellHealingAnimation {
instance of movieClip 2218 {
onClipEvent (load) {
_visible = false;
}
}
frame 39 {
removeMovieClip(this);
}
}
movieClip 2224 {
}
movieClip 2225 {
}
movieClip 2226 {
}
movieClip 2227 {
}
movieClip 2229 {
}
movieClip 2231 {
}
movieClip 2233 {
}
movieClip 2234 {
}
movieClip 2235 {
}
movieClip 2236 {
}
movieClip 2237 {
}
movieClip 2238 spellCircle_6 {
}
movieClip 2240 {
}
movieClip 2241 {
}
movieClip 2266 {
}
movieClip 2267 {
}
movieClip 2273 {
}
movieClip 2296 {
frame 35 {
stop();
}
}
movieClip 2314 {
}
movieClip 2356 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 2358 {
}
movieClip 2359 {
}
movieClip 2360 marker_0 {
}
movieClip 2363 {
}
movieClip 2364 {
}
movieClip 2365 {
}
movieClip 2366 {
}
movieClip 2367 deathRay_targeting {
}
movieClip 2368 {
frame 17 {
stop();
}
}
movieClip 2369 deathRayProjectile {
instance bbb of movieClip 2368 {
onClipEvent (load) {
aaa2.stop();
}
}
frame 61 {
stop();
}
}
movieClip 2371 {
}
movieClip 2372 trail_333 {
frame 24 {
removeMovieClip(this);
}
}
movieClip 2373 {
}
movieClip 2374 {
}
movieClip 2376 {
}
movieClip 2378 {
}
movieClip 2379 {
}
movieClip 2385 {
}
movieClip 2386 {
}
movieClip 2387 {
}
movieClip 2388 castCurse {
instance of movieClip 2376 {
onClipEvent (load) {
_visible = false;
}
}
frame 52 {
removeMovieClip(this);
}
}
movieClip 2389 {
}
movieClip 2391 {
}
movieClip 2392 {
}
movieClip 2393 spellCircle_8 {
}
movieClip 2396 {
}
movieClip 2397 unitEnterCastle {
frame 17 {
removeMovieClip(this);
}
}
movieClip 2398 holdPositionAnimation {
instance of movieClip 765 {
onClipEvent (load) {
_visible = false;
}
}
frame 22 {
removeMovieClip(this);
}
}
movieClip 2399 {
}
movieClip 2401 {
}
movieClip 2403 freeEngageAnimation {
frame 21 {
removeMovieClip(this);
}
}
movieClip 2404 {
}
movieClip 2405 holdPositionSign {
}
movieClip 2407 {
}
movieClip 2408 green_line {
}
movieClip 2410 {
}
movieClip 2411 {
}
movieClip 2412 red_line {
}
movieClip 2414 {
}
movieClip 2415 {
}
movieClip 2416 red_circle {
}
movieClip 2418 {
}
movieClip 2419 {
}
movieClip 2420 green_circle {
}
movieClip 2440 {
}
movieClip 2441 {
instance bbb of movieClip 2440 {
onClipEvent (load) {
gotoAndPlay(random(38) + 1);
}
}
}
movieClip 2442 rezinka_blue {
frame 10 {
removeMovieClip(this);
}
}
movieClip 2445 {
}
movieClip 2446 {
}
movieClip 2447 {
}
movieClip 2449 {
}
button 2451 {
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 2452 freetimeCounter {
instance of movieClip 2447 {
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 2454 {
}
movieClip 2455 {
}
movieClip 2456 {
instance of movieClip 2455 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2457 {
}
movieClip 2458 {
instance of movieClip 2457 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2461 {
}
movieClip 2462 {
}
movieClip 2463 {
}
movieClip 2466 {
}
movieClip 2468 {
}
movieClip 2469 {
}
movieClip 2471 {
instance of movieClip 2469 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2473 {
}
movieClip 2474 dead_206 {
frame 83 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 2518 {
frame 1 {
do_dmg = 0;
}
frame 13 {
do_dmg = 1;
}
frame 30 {
do_dmg = 0;
}
}
movieClip 2544 {
}
movieClip 2545 unit_206 {
instance curseInd of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1073 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1076 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 2546 {
}
movieClip 2547 {
}
movieClip 2548 {
}
button 2551 {
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 2566 {
}
movieClip 2585 {
frame 1 {
do_dmg = 0;
}
frame 9 {
do_dmg = 1;
}
frame 36 {
do_dmg = 0;
}
}
movieClip 2615 {
}
movieClip 2616 unit_106 {
frame 1 {
stop();
}
instance of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance healingShow of movieClip 902 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 2548 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance shockAnim of movieClip 931 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 2617 {
frame 35 {
stop();
}
}
movieClip 2618 dead_106 {
frame 81 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
instance of movieClip 1028 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 2617 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2621 {
}
movieClip 2663 {
frame 1 {
do_dmg = 0;
}
frame 13 {
do_dmg = 1;
}
frame 30 {
do_dmg = 0;
_parent.gotoAndStop(1);
}
}
movieClip 2688 {
}
movieClip 2689 unit_207 {
instance curseInd of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1073 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1076 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 2691 {
}
movieClip 2692 {
instance of movieClip 2691 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2694 {
}
movieClip 2696 {
}
movieClip 2697 {
}
movieClip 2698 {
instance of movieClip 2697 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2700 {
}
movieClip 2702 {
}
movieClip 2703 {
}
movieClip 2705 {
}
movieClip 2706 {
instance of movieClip 2700 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2707 {
}
movieClip 2709 {
}
movieClip 2711 {
}
movieClip 2713 {
}
movieClip 2714 {
}
movieClip 2715 {
}
movieClip 2716 {
instance of movieClip 2715 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2719 {
}
movieClip 2720 {
}
movieClip 2721 {
}
movieClip 2724 {
}
movieClip 2726 {
}
movieClip 2727 {
}
movieClip 2729 {
instance of movieClip 2727 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2731 {
}
movieClip 2732 {
frame 21 {
stop();
}
}
movieClip 2733 dead_207 {
frame 35 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 2734 unit_203 {
frame 1 {
stop();
}
instance curseInd of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1073 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1076 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 2735 {
frame 25 {
stop();
}
}
movieClip 2736 dead_203 {
frame 83 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 2737 {
}
movieClip 2738 arrow_fly_3 {
frame 3 {
if (diefast eq 1) {
removeMovieClip(this);
}
}
frame 6 {
removeMovieClip(this);
}
}
movieClip 2741 {
frame 21 {
stop();
}
}
movieClip 2743 {
}
movieClip 2745 {
}
movieClip 2747 {
}
movieClip 2749 {
}
movieClip 2751 {
}
movieClip 2753 {
}
movieClip 2755 {
}
movieClip 2757 {
}
movieClip 2759 {
}
movieClip 2761 {
}
movieClip 2763 {
}
movieClip 2764 {
frame 12 {
stop();
}
}
movieClip 2765 mage2explosion {
frame 22 {
removeMovieClip(this);
}
}
movieClip 2768 {
}
movieClip 2769 projectile_208 {
}
movieClip 2770 {
}
movieClip 2771 {
}
movieClip 2772 {
}
movieClip 2773 {
}
movieClip 2774 {
}
movieClip 2775 {
}
movieClip 2776 {
}
movieClip 2777 {
}
movieClip 2778 {
}
movieClip 2779 {
}
movieClip 2780 {
}
movieClip 2781 {
}
movieClip 2782 {
}
movieClip 2784 {
}
movieClip 2786 {
}
movieClip 2787 {
frame 1 {
if (random(3) eq 1 and _root.yiffISpaused eq 0) {
gotoAndPlay(3);
}
}
instance of movieClip 2784 {
onClipEvent (load) {
_visible = false;
}
}
frame 2 {
gotoAndPlay(1);
}
}
movieClip 2790 {
}
movieClip 2791 {
}
movieClip 2792 {
}
movieClip 2793 {
}
movieClip 2794 {
}
movieClip 2795 {
}
movieClip 2796 {
}
movieClip 2797 {
frame 1 {
do_dmg = 0;
}
frame 33 {
do_dmg = 1;
}
frame 53 {
do_dmg = 0;
}
}
movieClip 2798 unit_208 {
instance curseInd of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1073 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1076 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 2801 dead_208 {
frame 29 {
removeMovieClip(this);
}
}
movieClip 2829 {
frame 1 {
do_dmg = 0;
}
frame 10 {
do_dmg = 1;
}
frame 23 {
do_dmg = 0;
_parent.gotoAndStop(1);
}
}
movieClip 2868 {
}
movieClip 2869 unit_209 {
instance curseInd of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1073 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1076 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 2871 {
}
movieClip 2873 {
}
movieClip 2876 {
}
movieClip 2879 {
}
movieClip 2880 {
}
movieClip 2882 {
}
movieClip 2884 {
}
movieClip 2887 {
frame 15 {
stop();
}
}
movieClip 2889 {
}
movieClip 2891 {
}
movieClip 2897 {
}
movieClip 2899 {
frame 20 {
stop();
}
}
movieClip 2900 dead_209 {
frame 45 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 2902 {
}
movieClip 2904 {
frame 1 {
stop();
}
}
movieClip 2905 {
instance of movieClip 2902 {
onClipEvent (load) {
_visible = false;
}
}
frame 2 {
if (random(8) != 1 or _root.yiffISpaused eq 1) {
gotoAndPlay(1);
}
}
}
movieClip 2906 boss2_summon_bottom {
}
movieClip 2915 {
}
movieClip 2916 {
frame 126 {
gogogo = 1;
}
}
movieClip 2917 boss2_summon_top {
frame 3 {
stop();
}
}
movieClip 2921 {
}
movieClip 2922 boss2_summonSHockwave {
frame 28 {
removeMovieClip(this);
}
}
movieClip 2924 {
}
movieClip 2926 {
}
movieClip 2927 {
}
movieClip 2930 {
}
movieClip 2932 {
}
movieClip 2934 {
}
movieClip 2936 {
}
movieClip 2937 {
}
movieClip 2938 {
}
movieClip 2940 {
frame 1 {
zzz.gotoAndPlay(1);
do_dmg = 0;
}
frame 31 {
do_dmg = 1;
}
frame 45 {
do_dmg = 0;
_parent.gotoAndStop(1);
}
}
movieClip 2941 unit_210 {
instance curseInd of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
instance of movieClip 2936 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1076 {
onClipEvent (load) {
_visible = false;
}
}
instance of movieClip 2936 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 2944 {
}
movieClip 2945 projectile_210 {
frame 6 {
stop();
}
frame 7 {
prevFrame();
}
}
movieClip 2948 {
}
movieClip 2991 {
frame 1 {
do_dmg = 0;
}
frame 12 {
do_dmg = 1;
}
frame 21 {
do_dmg = 0;
}
frame 24 {
_parent.gotoAndStop(1);
}
}
movieClip 3027 {
}
movieClip 3028 unit_107 {
frame 1 {
stop();
}
instance healingShow of movieClip 902 {
onClipEvent (load) {
_visible = false;
}
}
instance of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 2548 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance shockAnim of movieClip 931 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 3029 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 3030 particle_2 {
frame 21 {
removeMovieClip(this);
}
}
movieClip 3033 {
}
movieClip 3035 {
}
movieClip 3036 bodyCountFX {
frame 14 {
removeMovieClip(this);
}
}
movieClip 3099 {
frame 1 {
do_dmg = 0;
}
frame 21 {
do_dmg = 1;
}
frame 36 {
do_dmg = 0;
_parent.gotoAndStop(1);
}
}
movieClip 3149 {
}
movieClip 3150 unit_211 {
instance curseInd of movieClip 1067 {
onClipEvent (load) {
_visible = false;
}
}
instance selection_ of movieClip 899 {
onClipEvent (load) {
_visible = false;
}
}
instance poisonAn of movieClip 1070 {
onClipEvent (load) {
_visible = false;
}
}
instance madness_show of movieClip 1073 {
onClipEvent (load) {
_visible = false;
}
}
instance stun_anim of movieClip 912 {
onClipEvent (load) {
_visible = false;
}
}
instance darker of movieClip 1076 {
onClipEvent (load) {
_visible = false;
}
}
}
movieClip 3152 {
}
movieClip 3154 {
}
movieClip 3156 {
}
movieClip 3158 {
}
movieClip 3161 {
}
movieClip 3162 {
}
movieClip 3164 {
}
movieClip 3165 {
frame 45 {
stop();
}
}
movieClip 3166 dead_211 {
frame 45 {
stop();
cacheAsBitmap = true;
parent.cacheAsBitmap = true;
}
}
movieClip 3168 {
}
movieClip 3170 {
}
movieClip 3171 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 3176 {
}
movieClip 3177 {
}
movieClip 3179 {
}
// unknown tag 88 length 185
movieClip 3183 {
}
movieClip 3187 {
frame 1 {
stop();
}
instance of movieClip 3179 {
onClipEvent (load) {
_visible = false;
}
}
instance of movieClip 3183 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_root.yiffISpaused eq 1 and _root.menuModeGameBlock != 1) {
_visible = true;
} else {
_visible = false;
}
}
}
}
movieClip 3190 {
}
movieClip 3193 {
}
movieClip 3196 {
}
movieClip 3198 {
}
movieClip 3200 {
}
movieClip 3202 {
}
movieClip 3204 {
}
movieClip 3205 {
}
movieClip 3206 {
instance of movieClip 3205 {
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 3208 {
}
button 3209 {
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 3211 {
}
button 3212 {
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 3214 {
}
button 3215 {
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 3217 {
}
movieClip 3219 {
}
movieClip 3221 {
}
movieClip 3222 {
frame 1 {
stop();
}
}
movieClip 3227 {
}
button 3229 {
on (release) {
aaa1.play();
_root.SFX_volume.setVolume(0);
}
}
button 3230 {
on (release) {
aaa2.play();
_root.gameMusic.setVolume(0);
}
}
button 3231 {
on (release) {
_visible = false;
}
}
button 3232 {
on (release) {
if (aaa > a_min) {
aaa -= 5;
}
}
}
button 3233 {
on (release) {
if (aaa < a_max) {
aaa += 5;
}
}
}
movieClip 3235 {
}
movieClip 3236 {
frame 1 {
stop();
}
instance of movieClip 3235 {
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 3237 {
frame 1 {
stop();
}
instance of movieClip 3235 {
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 3238 {
on (release) {
if (_root.combat_isMuted eq 1) {
_root.initiateSounds('allOnn');
} else {
_root.initiateSounds('muteCombat');
}
}
}
movieClip 3240 {
}
movieClip 3241 {
frame 1 {
stop();
}
instance of movieClip 3222 {
onClipEvent (enterFrame) {
gotoAndStop(_root.combat_isMuted + 1);
}
}
}
movieClip 3243 {
}
movieClip 3244 upper_menu {
frame 1 {
stop();
}
instance of movieClip 3177 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3206 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance sound_menu of movieClip 3241 {
onClipEvent (load) {
_visible = false;
}
onClipEvent (enterFrame) {
if (_visible eq false) {
gotoAndStop(2);
} else {
gotoAndStop(1);
}
}
}
instance of movieClip 3243 {
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 3246 blackness {
}
movieClip 3248 {
}
movieClip 3250 {
}
movieClip 3252 {
}
movieClip 3253 {
}
movieClip 3254 {
instance of movieClip 3253 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3258 {
}
movieClip 3261 {
}
button 3263 {
on (release) {
removeMovieClip(this);
}
}
movieClip 3266 {
}
button 3271 {
on (release) {
nextFrame();
}
}
button 3272 {
on (release) {
prevFrame();
}
}
movieClip 3275 {
frame 243 {
gotoAndStop(1);
}
}
movieClip 3292 {
frame 100 {
gotoAndStop(1);
}
}
button 3294 {
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 3299 {
frame 62 {
gotoAndStop(1);
}
}
movieClip 3306 helpMenu {
frame 1 {
stop();
}
instance of movieClip 3275 {
onClipEvent (load) {
stop();
aaa = 0;
thisFRAMERATE = 3;
}
onClipEvent (enterFrame) {
++aaa;
if (aaa eq thisFRAMERATE) {
aaa = 0;
nextFrame();
}
}
}
instance of movieClip 3292 {
onClipEvent (load) {
stop();
aaa = 0;
thisFRAMERATE = 4;
}
onClipEvent (enterFrame) {
++aaa;
if (aaa eq thisFRAMERATE) {
aaa = 0;
nextFrame();
}
}
}
instance of movieClip 781 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3299 {
onClipEvent (load) {
stop();
aaa = 0;
thisFRAMERATE = 4;
}
onClipEvent (enterFrame) {
++aaa;
if (aaa eq thisFRAMERATE) {
aaa = 0;
nextFrame();
}
}
}
}
movieClip 3310 {
}
movieClip 3314 {
}
movieClip 3315 {
}
movieClip 3318 {
}
movieClip 3321 {
}
movieClip 3324 {
}
movieClip 3327 {
}
movieClip 3330 {
}
movieClip 3332 {
}
movieClip 3333 {
}
movieClip 3334 {
}
movieClip 3337 {
}
movieClip 3339 {
}
movieClip 3340 {
}
movieClip 3341 {
frame 17 {
stop();
}
}
movieClip 3343 {
}
movieClip 3345 {
}
movieClip 3346 {
instance of movieClip 3345 {
onClipEvent (enterFrame) {
showvar = _root.bodycount;
}
}
}
movieClip 3347 {
}
movieClip 3348 {
}
movieClip 3349 victory {
frame 32 {
stop();
_root.victory_start_counting = 1;
}
}
movieClip 3352 {
}
movieClip 3355 {
}
movieClip 3358 {
}
movieClip 3361 {
}
movieClip 3363 {
}
movieClip 3366 {
}
movieClip 3367 {
}
movieClip 3370 {
}
movieClip 3371 {
}
movieClip 3372 {
}
movieClip 3374 {
}
movieClip 3375 {
}
movieClip 3376 {
instance of movieClip 3372 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3375 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3378 {
}
movieClip 3381 {
}
button 3383 {
on (release) {
_root.gotoAndPlay(22);
}
}
movieClip 3386 {
}
button 3388 {
on (release) {
getURL('http://www.kongregate.com', '_blank');
}
}
movieClip 3391 {
}
button 3392 {
on (release) {
_root.returntotitle = 1;
_root.gotoAndPlay(22);
}
}
movieClip 3393 defeatMenu {
frame 65 {
stop();
}
instance of movieClip 3378 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3397 {
}
movieClip 3400 {
}
// unknown tag 88 length 68
movieClip 3404 {
}
movieClip 3406 {
}
movieClip 3409 {
}
movieClip 3410 {
}
button 3411 {
on (release) {
_root.gotoAndPlay(25);
}
}
movieClip 3413 {
}
movieClip 3414 {
}
movieClip 3415 {
}
movieClip 3416 defeatMenu2 {
frame 65 {
stop();
}
instance of movieClip 3410 {
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;
if (_root.challenge eq 0) {
if (_root.thisIsSandBox eq 1) {
} else {
if (_root.skirmDiff eq 1) {
_root.kongregateStats.submit('Skirmish Easy', score.showvar);
}
if (_root.skirmDiff eq 2) {
_root.kongregateStats.submit('Skirmish Medium', score.showvar);
}
if (_root.skirmDiff eq 3) {
_root.kongregateStats.submit('Skirmish Hard', score.showvar);
}
}
} else {
if (_root.challenge eq 1) {
_root.kongregateStats.submit('Challenge 1', score.showvar);
}
if (_root.challenge eq 2) {
_root.kongregateStats.submit('Challenge 2', score.showvar);
}
if (_root.challenge eq 3) {
_root.kongregateStats.submit('Challenge 3', score.showvar);
}
}
}
}
instance of movieClip 3415 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3421 {
}
button 3422 {
on (release) {
nextFrame();
}
}
movieClip 3424 {
}
movieClip 3426 {
}
movieClip 3428 {
}
movieClip 3430 {
}
button 3431 {
on (release) {
_root.BTN_startDay();
}
}
movieClip 3433 {
}
// unknown tag 88 length 65
movieClip 3440 {
instance of movieClip 3299 {
onClipEvent (load) {
stop();
aaa = 0;
thisFRAMERATE = 4;
}
onClipEvent (enterFrame) {
++aaa;
if (aaa eq thisFRAMERATE) {
aaa = 0;
nextFrame();
}
}
}
}
movieClip 3441 {
}
movieClip 3446 {
}
movieClip 3450 {
}
movieClip 3451 {
}
movieClip 3453 {
}
movieClip 3454 {
}
button 3455 {
on (release) {
if (aaa > a_min) {
--aaa;
++_root.skill_points;
}
}
}
button 3456 {
on (release) {
if (aaa < a_max and _root.skill_points > 0) {
++aaa;
--_root.skill_points;
}
}
}
movieClip 3458 {
}
movieClip 3459 {
instance of movieClip 3458 {
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 3460 {
}
movieClip 3461 {
instance of movieClip 3458 {
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 3463 {
instance of movieClip 540 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3464 {
}
movieClip 3465 {
instance of movieClip 3458 {
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 3466 {
instance of movieClip 587 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3467 {
instance of movieClip 3458 {
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 3469 {
instance of movieClip 604 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3470 {
instance of movieClip 3458 {
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 3471 {
instance of movieClip 595 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3472 {
instance of movieClip 3458 {
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 3474 {
instance of movieClip 570 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3475 {
instance of movieClip 3458 {
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 3477 {
}
movieClip 3478 {
instance of movieClip 3458 {
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 3481 {
}
movieClip 3482 {
instance of movieClip 3458 {
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 3483 {
instance of movieClip 3458 {
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 3484 {
instance of movieClip 3458 {
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 3485 {
instance of movieClip 3458 {
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 3486 {
instance of movieClip 815 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 815 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 815 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 815 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 815 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 815 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 815 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 815 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3487 {
}
movieClip 3489 {
}
movieClip 3491 {
}
movieClip 3493 {
}
movieClip 3494 {
}
movieClip 3495 {
}
movieClip 3496 {
}
movieClip 3497 {
}
movieClip 3498 {
}
movieClip 3499 {
}
movieClip 3500 {
}
movieClip 3501 {
instance of movieClip 2936 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3502 {
instance of movieClip 2936 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3503 {
}
movieClip 3505 {
}
movieClip 3515 {
}
movieClip 3517 {
}
movieClip 3526 {
}
movieClip 3527 {
}
movieClip 3533 {
}
movieClip 3539 {
}
movieClip 3546 {
}
movieClip 3552 {
}
movieClip 3555 {
}
movieClip 3569 {
}
movieClip 3571 {
}
movieClip 3572 {
}
movieClip 3608 {
instance of movieClip 3426 {
onClipEvent (load) {
showvar = 'Day: ' + _root.current_wave + ' Level: ' + _root.currentLevel;
}
}
instance of movieClip 3428 {
onClipEvent (load) {
showvar = 'Experience: ' + _root.exp_ + '/' + _root['lvlExp_' + _root.currentLevel];
}
}
}
button 3609 {
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 3611 {
}
movieClip 3613 {
}
movieClip 3614 {
}
movieClip 3616 {
}
movieClip 3617 {
}
movieClip 3621 {
instance of movieClip 3299 {
onClipEvent (load) {
stop();
aaa = 0;
thisFRAMERATE = 4;
}
onClipEvent (enterFrame) {
++aaa;
if (aaa eq thisFRAMERATE) {
aaa = 0;
nextFrame();
}
}
}
}
movieClip 3624 menuUpgrades {
frame 1 {
stop();
}
instance of movieClip 3372 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3424 {
onClipEvent (load) {
showvar = 'Skill points: ' + _root.skill_points;
}
}
instance of movieClip 3426 {
onClipEvent (load) {
showvar = 'Day: ' + _root.current_wave + ' Level: ' + _root.currentLevel;
}
}
instance of movieClip 3428 {
onClipEvent (load) {
showvar = 'Experience: ' + _root.exp_ + '/' + _root['lvlExp_' + _root.currentLevel];
}
}
instance of movieClip 3375 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3451 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3487 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3611 {
onClipEvent (enterFrame) {
showvar = _root.currentLevel;
}
}
instance of movieClip 3613 {
onClipEvent (enterFrame) {
showvar = _root.skill_points;
}
}
}
movieClip 3626 {
}
button 3627 {
on (release) {
_root.removeMainMenu();
}
}
button 3630 {
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 3631 {
instance of movieClip 3205 {
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 3632 {
}
movieClip 3633 {
}
movieClip 3638 {
}
movieClip 3639 {
instance of movieClip 3222 {
onClipEvent (enterFrame) {
gotoAndStop(_root.combat_isMuted + 1);
}
}
}
movieClip 3642 {
}
movieClip 3644 {
}
movieClip 3645 {
}
movieClip 3646 mainMenu {
frame 1 {
stop();
}
instance of movieClip 3638 {
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 3642 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3645 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3648 {
}
movieClip 3649 {
}
movieClip 3653 {
}
movieClip 3654 campaignCompleted {
instance of movieClip 3649 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3410 {
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;
_root.kongregateStats.submit('Campaign', score.showvar);
}
}
instance of movieClip 3415 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3689 {
}
button 3690 {
on (release) {
_root.SRV_saveANDload('save');
_root.spellslotsAutoSelection();
_root.SRV_upgrades_close();
}
}
movieClip 3691 menuUpgrades2 {
instance of movieClip 3451 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3487 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3611 {
onClipEvent (enterFrame) {
showvar = _root.currentLevel;
}
}
instance of movieClip 3613 {
onClipEvent (enterFrame) {
showvar = _root.skill_points;
}
}
}
movieClip 3693 skirmishCompleted {
instance of movieClip 3649 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
instance of movieClip 3410 {
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;
if (_root.challenge eq 0) {
if (_root.thisIsSandBox eq 1) {
} else {
if (_root.skirmDiff eq 1) {
_root.kongregateStats.submit('Skirmish Easy', score.showvar);
}
if (_root.skirmDiff eq 2) {
_root.kongregateStats.submit('Skirmish Medium', score.showvar);
}
if (_root.skirmDiff eq 3) {
_root.kongregateStats.submit('Skirmish Hard', score.showvar);
}
}
} else {
if (_root.challenge eq 1) {
_root.kongregateStats.submit('Challenge 1', score.showvar);
}
if (_root.challenge eq 2) {
_root.kongregateStats.submit('Challenge 2', score.showvar);
}
if (_root.challenge eq 3) {
_root.kongregateStats.submit('Challenge 3', score.showvar);
}
}
}
}
instance of movieClip 3415 {
onClipEvent (load) {
cacheAsBitmap = true;
}
}
}
movieClip 3694 {
instance of movieClip 2128 shockwave {
onClipEvent (load) {
stop();
}
}
instance of movieClip 2157 castMadness_top {
onClipEvent (load) {
stop();
}
}
instance teh_nuke of movieClip 2356 gravity_nuke {
onClipEvent (load) {
stop();
}
}
instance shield of movieClip 2398 holdPositionAnimation {
onClipEvent (load) {
_visible = false;
}
}
instance swords of movieClip 2403 freeEngageAnimation {
onClipEvent (load) {
_visible = false;
}
}
}
instance of movieClip 3694 {
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 3696 {
}
button 3698 {
on (release) {
play();
}
}
movieClip 3701 {
}
movieClip 3703 {
}
movieClip 3705 {
}
movieClip 3707 {
}
movieClip 3710 {
}
movieClip 3712 {
}
movieClip 3714 {
}
movieClip 3717 {
}
movieClip 3720 {
}
movieClip 3722 {
}
movieClip 3724 {
}
movieClip 3726 {
}
movieClip 3728 {
}
movieClip 3730 {
}
movieClip 3732 {
}
movieClip 3734 {
}
movieClip 3736 {
frame 38 {
stop();
}
}
movieClip 3738 {
}
movieClip 3739 {
}
movieClip 3741 {
}
movieClip 3743 {
}
movieClip 3745 {
}
movieClip 3747 {
}
movieClip 3749 {
}
movieClip 3751 {
}
movieClip 3753 {
}
movieClip 3755 {
}
movieClip 3757 {
}
movieClip 3759 {
}
movieClip 3760 {
frame 37 {
stop();
}
}
movieClip 3762 {
}
movieClip 3763 {
}
movieClip 3766 {
}
movieClip 3767 {
}
movieClip 3768 {
instance of movieClip 3767 {
onClipEvent (enterFrame) {
aa._rotation += 0.5;
}
}
}
movieClip 3771 {
}
movieClip 3772 {
instance of movieClip 3771 {
onClipEvent (enterFrame) {
_rotation = _rotation - 0.1;
}
}
}
movieClip 3774 {
frame 164 {
_root.play();
}
}
instance of movieClip 3774 {
}
frame 46 {
stop();
}
movieClip 3775 {
}
button 3777 {
on (release) {
getURL('http://kongregate.com/', '_blank');
}
}
movieClip 3779 {
}
movieClip 3781 {
}
movieClip 3783 {
}
movieClip 3785 {
}
movieClip 3786 {
frame 89 {
stop();
_root.play();
}
}
frame 47 {
gotoAndStop(7);
}