Frame 1
stop();
_root.playerhigh = 0;
_root.pphigh = 0;
_root.levelhigh = 0;
System.security.allowDomain("tonictracker.com");
_root.game_ident = "ss_ex";
this.createEmptyMovieClip("tonictrack", 999999);
__trackref = this.tonictrack;
__trackref.loadMovie("http://www.tonictracker.com/flashtrack/trackme.swf");
Instance of Symbol 81 MovieClip "loader" in Frame 1
onClipEvent (enterFrame) {
amountloaded = _parent.getBytesLoaded();
total = _parent.getBytesTotal();
this.gotoAndStop(int(100 * (amountloaded / total)));
if ((amountloaded >= total) && (_root.tt___loaded == true)) {
_parent.gotoAndStop("main");
delete this.onEnterFrame;
}
}
Frame 7
stop();
__trackref.stopPageTimers();
__trackref.initPageTracker("Main screen");
__trackref.hitPage("Main screen");
__trackref.startPageTimer("Main screen");
__trackref.addStats();
curtimer = "Main screen";
_root.snowscore = 0;
moresnowlev = 0;
moresnowadd = 1;
morefalllev = 0;
morefalladd = 1;
biggersnowlev = 0;
biggersnowadd = 10;
moredmglev = 0;
moredmgadd = 1;
maxlev = 10;
snowcancarry = 100;
maxsnowtiles = 15;
snowdroprate = 10;
snowworth = 100;
mydmg = 1;
finallevel = false;
upgradepoints = 0;
levelon = 0;
starttext1 = "Build a snowman and keep him alive for 30 seconds";
snowmenatstart1 = 0;
snowmenneeded1 = 1;
snowmandie1 = 0;
keepalivefor1 = 30;
baddiepos1 = [];
leveltute1 = true;
tutetext1 = "Use the mouse to pickup and drag snow. Build a snowman by building a pile of lots of snow in the same spot. Snow melts over time so be careful! You'll need to keep topping him up otherwise he will melt!";
starttext2 = "Build 2 snowmen and keep them alive for 30 seconds";
snowmenatstart2 = 0;
snowmenneeded2 = 2;
snowmandie2 = 0;
keepalivefor2 = 30;
baddiepos2 = [];
leveltute2 = true;
tutetext2 = "Look out for a red ! mark above a snowmans head, this means hes about to melt!";
starttext3 = "Build 3 snowmen and keep them alive for 30 seconds";
snowmenatstart3 = 1;
snowmenneeded3 = 3;
snowmandie3 = 1;
keepalivefor3 = 30;
baddiepos3 = [];
leveltute3 = true;
tutetext3 = "Look at the snowman meter in the top left. Notice one has a white border around it? If your snowmen count drops below this level, then its game over!";
starttext4 = "Build 4 snowmen and keep them alive for 30 seconds";
snowmenatstart4 = 3;
snowmenneeded4 = 4;
snowmandie4 = 3;
keepalivefor4 = 30;
baddiepos4 = [];
leveltute4 = true;
tutetext4 = "Notice how 3 of the snowmen in the meter in the top left have a white border? If you have less than 3 snowmen it will be game over!";
starttext5 = "Build 5 snowmen and keep them alive for 30 seconds";
snowmenatstart5 = 1;
snowmenneeded5 = 5;
snowmandie5 = 1;
keepalivefor5 = 30;
baddiepos5 = [];
tutetext5 = "Did you know, if you build more snowmen than you need to before your time is up, you can earn bonus upgrade points?";
starttext6 = "Build 4 snowmen and keep them alive for 30 seconds";
snowmenatstart6 = 1;
snowmenneeded6 = 4;
snowmandie6 = 1;
keepalivefor6 = 30;
baddiepos6 = ["tractor"];
chanceofbaddy6 = 50;
leveltute6 = true;
tutetext6 = "People are starting to envy your hordes of snowmen. They have come with bulldozers to wipe them out! Take the bulldozers down before they can demolish your snowmen!";
starttext7 = "Build 5 snowmen and keep them alive for 30 seconds";
snowmenatstart7 = 2;
snowmenneeded7 = 5;
snowmandie7 = 2;
keepalivefor7 = 30;
baddiepos7 = ["tractor"];
chanceofbaddy7 = 50;
starttext8 = "Build 2 snowmen and keep them alive for 30 seconds";
snowmenatstart8 = 1;
snowmenneeded8 = 2;
snowmandie8 = 1;
keepalivefor8 = 30;
baddiepos8 = ["fire"];
chanceofbaddy8 = 180;
leveltute8 = true;
tutetext8 = "More troubles abroad! The jealous folk are now lighting fires in an attempt to melt your snowmen, make sure you work out how to put them out before they do!";
starttext9 = "Build 3 snowmen and keep them alive for 30 seconds";
snowmenatstart9 = 1;
snowmenneeded9 = 3;
snowmandie9 = 1;
keepalivefor9 = 30;
baddiepos9 = ["fire", "tractor"];
chanceofbaddy9 = 130;
starttext10 = "Build 4 snowmen and keep them alive for 30 seconds";
snowmenatstart10 = 2;
snowmenneeded10 = 4;
snowmandie10 = 2;
keepalivefor10 = 30;
baddiepos10 = ["fire", "tractor"];
chanceofbaddy10 = 120;
starttext11 = "Build 4 snowmen and keep them alive for 30 seconds";
snowmenatstart11 = 2;
snowmenneeded11 = 4;
snowmandie11 = 2;
keepalivefor11 = 30;
baddiepos11 = ["ufo"];
chanceofbaddy11 = 120;
leveltute11 = true;
tutetext11 = "Your army of snowmen has become so great it can be seen from space! Jealous aliens have arrived to abduct your citizens, you must protect them as you build more!";
starttext12 = "Build 3 snowmen and keep them alive for 30 seconds";
snowmenatstart12 = 2;
snowmenneeded12 = 3;
snowmandie12 = 2;
keepalivefor12 = 30;
baddiepos12 = ["ufo"];
chanceofbaddy12 = 50;
starttext13 = "Build 5 snowmen and keep them alive for 30 seconds";
snowmenatstart13 = 2;
snowmenneeded13 = 5;
snowmandie13 = 2;
keepalivefor13 = 30;
baddiepos13 = ["ufo"];
chanceofbaddy13 = 50;
starttext14 = "Build 4 snowmen and keep them alive for 30 seconds";
snowmenatstart14 = 3;
snowmenneeded14 = 4;
snowmandie14 = 3;
keepalivefor14 = 30;
baddiepos14 = ["tractor", "fire", "ufo"];
chanceofbaddy14 = 120;
leveltute14 = true;
tutetext14 = "You foes have started to team up against you. They will stop at nothing to destroy your snow army. Things are going to start getting hairy...";
starttext15 = "Keep 7 snowmen alive for 30 seconds";
snowmenatstart15 = 15;
snowmenneeded15 = 7;
snowmandie15 = 7;
keepalivefor15 = 30;
baddiepos15 = ["tractor", "ufo"];
chanceofbaddy15 = 50;
leveltute15 = true;
tutetext15 = "You've got a lot of snowmen! Can you keep enough alive?";
starttext16 = "Build 4 snowmen and keep them alive for 30 seconds";
snowmenatstart16 = 2;
snowmenneeded16 = 4;
snowmandie16 = 2;
keepalivefor16 = 30;
baddiepos16 = ["tracking", "ufo"];
chanceofbaddy16 = 50;
leveltute16 = true;
tutetext16 = "Jealous elves have bewitched an army of magical hammers to pound your snowmen into oblivion. They are heavily armoured so I hope you have been upgrading your damage!";
starttext17 = "Keep 8 snowmen alive for 30 seconds";
snowmenatstart17 = 20;
snowmenneeded17 = 8;
snowmandie17 = 8;
keepalivefor17 = 30;
baddiepos17 = ["tracking", "ufo", "tractor"];
chanceofbaddy17 = 50;
starttext18 = "Build 3 snowmen and keep them alive for 30 seconds";
snowmenatstart18 = 1;
snowmenneeded18 = 3;
snowmandie18 = 1;
keepalivefor18 = 30;
baddiepos18 = ["tracking", "ufo", "tractor", "fire"];
chanceofbaddy18 = 20;
starttext19 = "Build 5 snowmen and keep them alive for 30 seconds";
snowmenatstart19 = 2;
snowmenneeded19 = 5;
snowmandie19 = 2;
keepalivefor19 = 30;
baddiepos19 = ["tracking", "ufo", "tractor", "fire"];
chanceofbaddy19 = 30;
starttext20 = "Its a bonus level! keep as many snowmen alive as you can!";
snowmenatstart20 = 28;
snowmenneeded20 = 1;
snowmandie20 = 0;
keepalivefor20 = 30;
baddiepos20 = [];
chanceofbaddy20 = 100;
starttext21 = "Build 4 snowmen and keep them alive for 30 seconds";
snowmenatstart21 = 2;
snowmenneeded21 = 4;
snowmandie21 = 2;
keepalivefor21 = 30;
baddiepos21 = ["fire"];
chanceofbaddy21 = 15;
starttext22 = "Keep 10 snowmen alive for 30 seconds";
snowmenatstart22 = 28;
snowmenneeded22 = 10;
snowmandie22 = 10;
keepalivefor22 = 30;
baddiepos22 = ["tracking", "ufo", "tractor", "fire"];
chanceofbaddy22 = 20;
starttext23 = "Build 5 snowmen and keep them alive for 30 seconds";
snowmenatstart23 = 4;
snowmenneeded23 = 5;
snowmandie23 = 4;
keepalivefor23 = 30;
baddiepos23 = ["tracking", "ufo", "tractor", "fire"];
chanceofbaddy23 = 20;
starttext24 = "Build 6 snowmen and keep them alive for 30 seconds";
snowmenatstart24 = 3;
snowmenneeded24 = 6;
snowmandie24 = 3;
keepalivefor24 = 30;
baddiepos24 = ["tracking", "ufo", "tractor", "fire"];
chanceofbaddy24 = 40;
starttext25 = "Keep your 3 snowmen alive for as long as you can....";
snowmenatstart25 = 3;
snowmenneeded25 = 3;
snowmandie25 = 1;
keepalivefor25 = 30;
baddiepos25 = ["tracking", "ufo", "tractor", "fire"];
chanceofbaddy25 = 2;
leveltute25 = true;
tutetext25 = "You have made it to the final level! Your snow army is surrounded, how long can you hold out for? Every 30 seconds you manage will double your score....";
finallevel25 = true;
Frame 13
gameholder = _root.gamecontainer;
totalsnowmen = 0;
tilewidth = 40;
tileheight = 40;
tilesacross = 13;
tilesdown = 6;
gridwidth = tilesacross * tilewidth;
gridheight = tilesdown * tileheight;
tileclip = "tile";
stagetiles = [];
depth = 30000;
ysortdepth = 10000;
zperrow = 2000;
lowdepth = 100;
mousedepth = 50000;
timetoend = 0;
fcount = 0;
scount = 0;
secondsleft = 0;
timerrunning = false;
snowdropspeed = 3;
snowdropincrease = 1.04;
snowstarty = -200;
snowdroptilef = 2;
snowdowntilef = 3;
snowclip = "snow";
snowflakes = [];
snowdropcount = 0;
snowmeltdelay = 20;
snowAmounts = [[0, 5], [50, 10], [80, 15], [150, 20], [200, 25], [300, 30], [400, 35], [480, 40], [600, 45], [800, 50]];
snowmanlev = 400;
snowmax = 900;
startsnowman = 599;
snowmanonlevel = 0;
snowmanneeded = 0;
snowmandie = 0;
snowmanonstage = 0;
ysortar = [];
meltrate = 0.5;
snowtiles = [];
baddiespos = ["tractor", "fire", "tracking", "ufo"];
baddiesonstage = [];
chanceofbaddy = 50;
baddydelay = 20;
baddycount = 0;
maxbaddies = 5;
tractorspeed = 3;
tractorhitstodestroy = 3;
firemeltmult = 3;
fireputout = 200;
firesurround = 2;
firetile = 4;
fireactivetile = 5;
trackingtiletrans = 10;
trackinghits = 42;
ufoheight = 142;
ufohits = 7;
ufoabduct = 30;
ufospeed = 10;
function findFreeTile() {
tilefound = false;
while (tilefound == false) {
ac = random(tilesacross);
dow = random(tilesdown);
tileref = gameholder[(("tile_" + ac) + "_") + dow];
if (tileref._currentframe == 1) {
tilefound = true;
return([ac, dow, tileref]);
}
}
}
function findSnowCoords() {
tempsnowtiles = [];
for (s in snowtiles) {
tempsnowtiles[s] = snowtiles[s];
}
foundman = false;
while ((foundman == false) && (tempsnowtiles.length > 0)) {
picktile = random(tempsnowtiles.length);
tsref = tempsnowtiles[picktile];
if ((tsref.mysnow > snowmanlev) && (tsref.d != 0)) {
return([tsref.d, tsref.a]);
}
tempsnowtiles.splice(picktile, 1);
}
trace("snowtiles = " + snowtiles);
return(false);
}
function areTilesFree() {
a = 0;
while (a < tilesacross) {
d = 0;
while (d < tilesdown) {
tilename = (("tile_" + a) + "_") + d;
tileref = gameholder[tilename];
if (tileref._currentframe == 1) {
return(true);
}
d++;
}
a++;
}
return(false);
}
function getMyTile(myx, myy) {
ac = int(myx / tilewidth);
dow = int(myy / tileheight);
if ((((myx > 0) && (myx < gridwidth)) && (myy > 0)) && (myy < gridheight)) {
tileref = gameholder[(("tile_" + ac) + "_") + dow];
xontile = myx - tileref._x;
yontile = myy - tileref._y;
return([ac, dow, tileref, xontile, yontile]);
}
return(["notile"]);
}
function drawTiles() {
menpos = generategrid(snowmanonlevel);
a = 0;
while (a < tilesacross) {
d = 0;
while (d < tilesdown) {
tilename = (("tile_" + a) + "_") + d;
gameholder.attachMovie(tileclip, tilename, depth);
depth++;
tileref = gameholder[tilename];
tileref._x = tilewidth * a;
tileref._y = tileheight * d;
tileref.a = a;
tileref.d = d;
tileref.gotoAndStop(1);
mydep = ysortdepth + (zperrow * d);
ysortdepth++;
tileref.swapDepths(mydep);
if (menpos[a][d] > 0) {
tileref.gotoAndStop(snowdowntilef);
tileref.mysnow = menpos[a][d];
tileref.meltdelay = snowmeltdelay;
snowtiles.push(tileref);
}
stagetiles.push(tileref);
d++;
}
a++;
}
}
function generategrid(nummen) {
gar = [];
a = 0;
while (a < tilesacross) {
aar = [];
d = 0;
while (d < tilesdown) {
aar.push(0);
d++;
}
gar.push(aar);
a++;
}
n = 0;
while (n < nummen) {
found = false;
while (found == false) {
acpos = random(tilesacross - 6) + 3;
dopos = random(tilesdown - 2) + 1;
if (gar[acpos][dopos] == 0) {
gar[acpos][dopos] = startsnowman;
found = true;
}
}
n++;
}
return(gar);
}
function wipeBoard() {
for (t in stagetiles) {
sref = stagetiles[t];
sref.removeMovieClip();
stagetiles.splice(t, 1);
}
stagetiles = [];
snowtiles = [];
for (s in snowflakes) {
snowref = snowflakes[s];
snowref.removeMovieClip();
snowflakes.splice(s, 1);
}
snowflakes = [];
for (b in baddiesonstage) {
bref = baddiesonstage[b];
for (g in bref.glowarray) {
gr = bref.glowarray[g];
gr.removeMovieClip();
bref.glowarray.splice(g, 1);
}
bref.removeMovieClip();
baddiesonstage.splice(b, 1);
}
for (i in snowmanicons) {
iref = snowmanicons[i];
iref.removeMovieClip();
snowmanicons.splice(i, 1);
}
snowmanicons = [];
for (e in extraicons) {
eref = extraicons[e];
eref.removeMovieClip();
extraicons.splice(e, 1);
}
extraicons = [];
baddiesonstage = [];
folref.removeMovieClip();
delete this.onMouseMove;
}
function mouseDrop() {
mouseydown = false;
if (snowholding > 0) {
soundclip.putdown.playme();
mcoords = getMouseTile();
tileref = mcoords[2];
if (tileref.havefire == true) {
tileref.firelife = tileref.firelife - snowholding;
if (tileref.firelife < 0) {
_root.soundclip.fireout.playme();
killFire(tileref.myfire);
} else {
_root.soundclip.firesnow.playme();
}
} else {
inar = amIsnow(tileref);
if (inar == false) {
tileref.gotoAndStop(snowdowntilef);
tileref.mysnow = snowholding;
tileref.meltdelay = snowmeltdelay;
snowtiles.push(tileref);
} else {
tileref.mysnow = tileref.mysnow + snowholding;
if (tileref.mysnow > snowmax) {
tileref.mysnow = snowmax;
}
tileref.meltdelay = snowmeltdelay;
}
getsnowf = findSnowFrame(tileref.mysnow);
tileref.snowontile.gotoAndStop(getsnowf);
}
gameholder.cursor.gotoAndStop("grab");
folref.removeMovieClip();
delete this.onMouseMove;
snowholding = 0;
}
}
function mouseClick() {
mouseydown = true;
mouseyhit = false;
mcoords = getMouseTile();
if (mcoords[0] != "notile") {
tileref = mcoords[2];
tc = tileref._currentframe;
if (snowdowntilef == tc) {
soundclip.pickups.playme();
if (tileref.mysnow > snowcancarry) {
tileref.mysnow = tileref.mysnow - snowcancarry;
snowholding = snowcancarry;
} else {
snowholding = tileref.mysnow;
tileref.mysnow = 0;
tindex = getSnowTindex(tileref);
snowtiles.splice(tindex, 1);
tileref.gotoAndStop(1);
}
mousedepth++;
folm = "folm" + mousedepth;
gameholder.attachMovie("snowontile", folm, mousedepth);
mousedepth++;
folref = gameholder[folm];
getsnowf = findSnowFrame(snowholding);
folref.gotoAndStop(getsnowf);
folref._x = gameholder._xmouse;
folref._y = gameholder._ymouse;
gameholder.cursor.gotoAndStop("hold");
this.onMouseMove = function () {
folref._x = gameholder._xmouse;
folref._y = gameholder._ymouse;
};
}
}
}
function getMouseTile() {
mx = gameholder._xmouse;
my = gameholder._ymouse;
ac = int(mx / tilewidth);
dow = int(my / tileheight);
if ((((mx > 0) && (mx < gridwidth)) && (my > 0)) && (my < gridheight)) {
tileref = gameholder[(("tile_" + ac) + "_") + dow];
return([ac, dow, tileref]);
}
return(["notile"]);
}
function manageDropSnow() {
snowdropcount++;
if (snowtiles.length < maxsnowtiles) {
if (snowdropcount > snowdroprate) {
dropSnow();
snowdropcount = 0;
}
}
}
function manageSnow() {
snowmanonstage = 0;
for (mp in snowtiles) {
snowtileref = snowtiles[mp];
snowtileref.meltdelay--;
if (snowtileref.mysnow > snowmanlev) {
snowmanonstage++;
}
if (snowtileref.meltdelay < 0) {
snowtileref.mysnow = snowtileref.mysnow - meltrate;
getsnowf = findSnowFrame(snowtileref.mysnow);
snowtileref.snowontile.gotoAndStop(getsnowf);
if (snowtileref.mysnow < 1) {
snowtileref.mysnow = 0;
snowtileref.gotoAndStop(1);
snowtiles.splice(mp, 1);
}
}
}
}
function wipeTileSnow(tiletowipe) {
if (tiletowipe._currentframe == snowdowntilef) {
tiletowipe.mysnow = 0;
tiletowipe.gotoAndStop(1);
tindex = getSnowTindex(tiletowipe);
snowtiles.splice(tindex, 1);
}
}
function findSnowFrame(snowamount) {
se = 0;
while (se < snowAmounts.length) {
thisam = snowAmounts[se];
nextam = snowAmounts[se + 1];
if (nextam == undefined) {
return(thisam[1]);
}
if ((snowamount >= thisam[0]) && (snowamount < nextam[0])) {
return(thisam[1]);
}
se++;
}
}
function amIsnow(checkme) {
for (me in snowtiles) {
if (checkme == snowtiles[me]) {
return(true);
}
}
return(false);
}
function getSnowTindex(mysnow) {
for (mr in snowtiles) {
if (mysnow == snowtiles[mr]) {
return(mr);
}
}
}
function moveSnow() {
for (s in snowflakes) {
snowref = snowflakes[s];
snowref._y = snowref._y + snowref.myspeed;
snowref.myspeed = snowref.myspeed * snowdropincrease;
if (snowref._y > snowref.ytarg) {
tileref = snowref.mytile;
inar = amIsnow(tileref);
if (inar == false) {
tileref.gotoAndStop(snowdowntilef);
tileref.mysnow = snowworth;
tileref.meltdelay = snowmeltdelay;
snowtiles.push(tileref);
} else {
tileref.mysnow = tileref.mysnow + snowworth;
tileref.meltdelay = snowmeltdelay;
}
getsnowf = findSnowFrame(tileref.mysnow);
tileref.snowontile.gotoAndStop(getsnowf);
snowref.removeMovieClip();
snowflakes.splice(s, 1);
soundclip.snowfallsss.playme();
}
}
}
function dropsnow() {
anytiles = areTilesFree();
if (anytiles == true) {
coords = findFreeTile();
snowname = "snow" + depth;
gameholder.attachMovie(snowclip, snowname, depth);
depth++;
snowref = gameholder[snowname];
tileref = coords[2];
snowref._x = tileref._x + (tilewidth / 2);
ytarg = tileref._y + (tileheight / 2);
snowref._y = snowstarty;
tileref.gotoAndStop(snowdroptilef);
snowref.myspeed = snowdropspeed;
snowref.mytile = tileref;
snowref.ytarg = ytarg;
snowflakes.push(snowref);
}
}
function newBaddys() {
if ((baddiespos.length > 0) && (baddiesonstage.length < maxbaddies)) {
baddycount++;
if (baddycount > baddydelay) {
if (random(chanceofbaddy) == 1) {
baddycount = 0;
picked = random(baddiespos.length);
mybad = baddiespos[picked];
if (mybad == "tractor") {
newTractor();
} else if (mybad == "fire") {
newFire();
} else if (mybad == "tracking") {
newTracking();
} else if (mybad == "ufo") {
newUfo();
}
}
}
}
}
function moveBaddys() {
for (b in baddiesonstage) {
bref = baddiesonstage[b];
if (bref.mytype == "tractor") {
moveTractor(bref, b);
} else if (bref.mytype == "fire") {
moveFire(bref, b);
} else if (bref.mytype == "track") {
moveTrack(bref, b);
} else if (bref.mytype == "ufo") {
moveUfo(bref, b);
}
if (((mouseydown == true) && (mouseyhit == false)) && (bref.mytype != "fire")) {
if (bref.ufohit.hitTest(_xmouse, _ymouse)) {
mouseyhit = true;
bref.myhits = bref.myhits - mydmg;
gameholder.cursor.gotoAndPlay("hit");
if (bref.myhits < 1) {
if (bref.mytype == "tractor") {
soundclip.trackdie.playme();
} else if (bref.mytype == "track") {
soundclip.hammerdie.playme();
} else if (bref.mytype == "ufo") {
soundclip.ufodie.playme();
}
snowscore = snowscore + 20;
baddieskilled++;
bref.gotoAndPlay("baddie");
bref.onEnterFrame = function () {
this.nextFrame();
};
baddiesonstage.splice(b, 1);
}
}
}
}
}
function moveUfo(uforef, arpos) {
if (uforef.stage == "search") {
uforef._x = uforef._x + uforef.xmov;
if (uforef.dir == "left") {
if (uforef._x < uforef.xtarg) {
uforef._x = uforef.xtarg;
uforef.gotoAndStop(2);
uforef.stage = "ab";
}
} else if (uforef._x > uforef.xtarg) {
uforef._x = uforef.xtarg;
uforef.gotoAndStop(2);
uforef.stage = "ab";
}
} else if (uforef.stage == "ab") {
uforef.abcount--;
if (uforef.abcount < 0) {
abd = "ab" + depth;
gameholder.attachMovie("abducted", abd, depth);
depth++;
abref = gameholder[abd];
abref._x = uforef._x;
abref._y = (uforef._y + ufoheight) - 10;
wipeTileSnow(uforef.tiletarg);
uforef.gotoAndStop(1);
uforef.xmov = uforef.xmov * -1;
uforef.stage = "off";
}
} else {
uforef._x = uforef._x + uforef.xmov;
if (uforef.dir == "left") {
if (uforef._x > (gridwidth + tilewidth)) {
uforef.removeMovieClip();
trace("splice me at " + arpos);
baddiesonstage.splice(arpos, 1);
}
} else if (uforef._x < (-tilewidth)) {
uforef.removeMovieClip();
trace("splice me at " + arpos);
baddiesonstage.splice(arpos, 1);
}
}
}
function newUfo() {
snowmanat = findSnowCoords();
if (snowmanat != false) {
urn = "ufo" + depth;
gameholder.attachMovie("ufo", urn, depth);
depth++;
uforef = gameholder[urn];
startd = random(tilesdown - 1) + 1;
if (random(2) == 1) {
starta = -1;
} else {
starta = tilesacross;
}
startd = snowmanat[0];
if (random(2) == 1) {
starta = -1;
uforef.dir = "right";
uforef.xmov = ufospeed;
} else {
starta = tilesacross;
uforef.dir = "left";
uforef.xmov = -ufospeed;
}
targettilea = snowmanat[1];
targetx = (targettilea * tilewidth) + (tilewidth / 2);
uforef._x = (starta * tileheight) + (tileheight / 2);
uforef._y = (startd * tilewidth) + (tilewidth / 2);
uforef.myhits = ufohits;
uforef.mytype = "ufo";
uforef.stage = "search";
uforef.abcount = ufoabduct;
uforef.xtarg = targetx;
uforef.tiletarg = gameholder[(("tile_" + targettilea) + "_") + startd];
uforef._y = uforef._y - ufoheight;
mydep = ysortdepth + (zperrow * startd);
ysortdepth++;
uforef.swapDepths(mydep);
baddiesonstage.push(uforef);
soundclip.ufoenter.playme();
}
}
function moveTrack(trackingref, arpos) {
trackingref._x = trackingref._x + trackingref.xmov;
trackingref._y = trackingref._y + trackingref.ymov;
reached = false;
if (trackingref.dir == "up") {
if (trackingref._y < trackingref.ytarg) {
trackingref._y = trackingref.ytarg;
reached = true;
}
} else if (trackingref.dir == "down") {
if (trackingref._y > trackingref.ytarg) {
trackingref._y = trackingref.ytarg;
reached = true;
}
} else if (trackingref.dir == "left") {
if (trackingref._x < trackingref.xtarg) {
trackingref._x = trackingref.xtarg;
reached = true;
}
} else if (trackingref._x > trackingref.xtarg) {
trackingref._x = trackingref.xtarg;
reached = true;
}
if (reached == true) {
mydep = ysortdepth + (zperrow * trackingref.td);
ysortdepth++;
trackingref.swapDepths(mydep);
wipeTileSnow(trackingref.tt);
newTrackDir(trackingref, trackingref.ta, trackingref.td);
trackingref.play();
}
}
function newTracking() {
trn = "track" + depth;
gameholder.attachMovie("trackingbad", trn, depth);
depth++;
trackingref = gameholder[trn];
startd = random(tilesdown);
if (random(2) == 1) {
starta = -1;
} else {
starta = tilesacross;
}
trackingref._x = (starta * tileheight) + (tileheight / 2);
trackingref._y = (startd * tilewidth) + (tilewidth / 2);
newTrackDir(trackingref, starta, startd);
trackingref.myhits = trackinghits;
trackingref.mytype = "track";
mydep = ysortdepth + (zperrow * startd);
ysortdepth++;
trackingref.swapDepths(mydep);
baddiesonstage.push(trackingref);
}
function newTrackDir(trackingref, sal, sdl) {
targetcoords = choosetarget(sal, sdl);
if (targetcoords != "none") {
trackingref.ta = targetcoords[0];
trackingref.td = targetcoords[1];
trackingref.tt = targetcoords[2];
trackingref.dir = targetcoords[3];
trackingref.xtarg = trackingref.tt._x + (tilewidth / 2);
trackingref.ytarg = trackingref.tt._y + (tileheight / 2);
if (trackingref.dir == "up") {
dis = trackingref._y - trackingref.ytarg;
ymov = dis / trackingtiletrans;
trackingref.xmov = 0;
trackingref.ymov = -ymov;
} else if (trackingref.dir == "down") {
dis = trackingref.ytarg - trackingref._y;
ymov = dis / trackingtiletrans;
trackingref.xmov = 0;
trackingref.ymov = ymov;
mydep = ysortdepth + (zperrow * trackingref.td);
ysortdepth++;
trackingref.swapDepths(mydep);
} else if (trackingref.dir == "left") {
dis = trackingref._x - trackingref.xtarg;
xmov = dis / trackingtiletrans;
trackingref.xmov = -xmov;
trackingref.ymov = 0;
} else {
dis = trackingref.xtarg - trackingref._x;
xmov = dis / trackingtiletrans;
trackingref.xmov = xmov;
trackingref.ymov = 0;
}
}
}
function choosetarget(sa, sd) {
tileabove = gameholder[(("tile_" + sa) + "_") + (sd - 1)];
tilebelow = gameholder[(("tile_" + sa) + "_") + (sd + 1)];
tileleft = gameholder[(("tile_" + (sa - 1)) + "_") + sd];
tileright = gameholder[(("tile_" + (sa + 1)) + "_") + sd];
validtiles = [];
if (tileabove != undefined) {
if (((tileabove._currentframe == 1) || (tileabove._currentframe == snowdowntilef)) || (tileabove._currentframe == snowdroptilef)) {
validtiles.push([sa, sd - 1, tileabove, "up"]);
}
}
if (tilebelow != undefined) {
if (((tilebelow._currentframe == 1) || (tilebelow._currentframe == snowdowntilef)) || (tilebelow._currentframe == snowdroptilef)) {
validtiles.push([sa, sd + 1, tilebelow, "down"]);
}
}
if (tileleft != undefined) {
if (((tileleft._currentframe == 1) || (tileleft._currentframe == snowdowntilef)) || (tileleft._currentframe == snowdroptilef)) {
validtiles.push([sa - 1, sd, tileleft, "left"]);
}
}
if (tileright != undefined) {
if (((tileright._currentframe == 1) || (tileright._currentframe == snowdowntilef)) || (tileright._currentframe == snowdroptilef)) {
validtiles.push([sa + 1, sd, tileright, "right"]);
}
}
if (validtiles.length > 0) {
picked = random(validtiles.length);
return(validtiles[picked]);
}
return("none");
}
function killFire(fireref) {
for (g in fireref.glowarray) {
gr = fireref.glowarray[g];
gr.removeMovieClip();
fireref.glowarray.splice(g, 1);
}
ftile = fireref.mytile;
ftile.gotoAndStop(1);
ftile.mysnow = 0;
ftile.havefire = false;
ftile.myfire = "";
fpos = 0;
for (a in baddiesonstage) {
if (baddiesonstage[a] == fireref) {
fpos = a;
}
}
baddiesonstage.splice(fpos, 1);
fireref.mysound.stop();
fireref.gotoAndPlay("baddie");
}
function moveFire(fireref, arpos) {
if (fireref.mystage == "falling") {
fireref._y = fireref._y + fireref.myspeed;
fireref.myspeed = fireref.myspeed * snowdropincrease;
if (fireref._y > fireref.ytarg) {
fireref._y = fireref.ytarg;
fireref.burnarray = findNeighbours(fireref.tilex, fireref.tiley, firesurround);
fireref.glowarray = [];
for (f in fireref.burnarray) {
thist = fireref.burnarray[f];
gname = "glow" + lowdepth;
gameholder.attachMovie("glowtile", gname, lowdepth);
lowdepth++;
glowref = gameholder[gname];
glowref._x = thist._x;
glowref._y = thist._y;
fireref.glowarray.push(glowref);
}
fireref.mystage = "melt";
}
} else {
for (f in fireref.burnarray) {
thist = fireref.burnarray[f];
if (thist.mysnow > 0) {
thist.mysnow = thist.mysnow - firemeltmult;
thist.meltdelay = -2;
}
}
}
}
function findNeighbours(xnum, ynum, tilesout) {
allfound = [];
countalong = 3;
c = 1;
while (c < (tilesout + 1)) {
topx = xnum - c;
topy = ynum - c;
t = 0;
while (t < countalong) {
ftile = (("tile_" + (topx + t)) + "_") + topy;
ftile = gameholder[ftile];
if ((ftile != undefined) && (ftile != "")) {
allfound.push(ftile);
}
t++;
}
b = 0;
while (b < countalong) {
ftile = (("tile_" + (topx + b)) + "_") + ((topy + countalong) - 1);
ftile = gameholder[ftile];
if ((ftile != undefined) && (ftile != "")) {
allfound.push(ftile);
}
b++;
}
l = 1;
while (l < (countalong - 1)) {
ftile = (("tile_" + topx) + "_") + (topy + l);
ftile = gameholder[ftile];
if ((ftile != undefined) && (ftile != "")) {
allfound.push(ftile);
}
l++;
}
p = 1;
while (p < (countalong - 1)) {
ftile = (("tile_" + ((topx + countalong) - 1)) + "_") + (topy + p);
ftile = gameholder[ftile];
if ((ftile != undefined) && (ftile != "")) {
allfound.push(ftile);
}
p++;
}
countalong = countalong + 2;
c++;
}
trace(allfound);
return(allfound);
}
function newFire() {
anytiles = areTilesFree();
if (anytiles == true) {
coords = findFreeTile();
tileref = coords[2];
tileref.gotoAndStop(firetile);
myfire = "fire" + depth;
gameholder.attachMovie("fire", myfire, depth);
depth++;
fireref = gameholder[myfire];
fireref._x = tileref._x + (tilewidth / 2);
ytarg = tileref._y + (tileheight / 2);
fireref._y = snowstarty;
fireref.ytarg = ytarg;
fireref.myspeed = snowdropspeed;
fireref.mystage = "falling";
fireref.mytype = "fire";
fireref.mytile = tileref;
fireref.tilex = coords[0];
fireref.tiley = coords[1];
tileref.myfire = fireref;
tileref.havefire = true;
tileref.firelife = fireputout;
mydep = ysortdepth + (zperrow * fireref.tiley);
ysortdepth++;
fireref.swapDepths(mydep);
baddiesonstage.push(fireref);
if (soundclip._currentframe == 1) {
fireref.gotoAndPlay("fsound");
}
}
}
function newTractor() {
bname = "bad" + depth;
gameholder.attachMovie("baddies", bname, depth);
depth++;
badref = gameholder[bname];
if (random(2) == 1) {
badref._x = -tilewidth;
badref.xmov = tractorspeed;
badref._xscale = -100;
badref.dir = "left";
} else {
badref._x = gridwidth + tilewidth;
badref.xmov = -tractorspeed;
badref.dir = "right";
}
myrow = random(tilesdown);
badref._y = (myrow * tileheight) + (tileheight / 2);
badref.mytype = "tractor";
badref.myhits = tractorhitstodestroy;
mydep = ysortdepth + (zperrow * myrow);
ysortdepth++;
badref.swapDepths(mydep);
baddiesonstage.push(badref);
}
function moveTractor(tracref, arpos) {
tracref._x = tracref._x + tracref.xmov;
tilecoords = getMyTile(tracref._x, tracref._y);
xontile = tilecoords[3];
tileref = tilecoords[2];
if (tracref.dir == "left") {
if (xontile < (tilewidth / 2)) {
wipeTileSnow(tileref);
}
if (tracref._x > gridwidth) {
tracref.removeMovieClip();
baddiesonstage.splice(arpos, 1);
}
} else {
if (xontile > (tilewidth / 2)) {
wipeTileSnow(tileref);
}
if (tracref._x < (-tilewidth)) {
tracref.removeMovieClip();
baddiesonstage.splice(arpos, 1);
}
}
}
function runMainGame() {
this.onEnterFrame = function () {
timetaken++;
manageSnow();
moveSnow();
manageDropSnow();
newBaddys();
moveBaddys();
manageDisplay();
if (timerrunning == true) {
runEndTimer();
}
if (snowmanonstage < snowmandie) {
stopAllSounds();
soundclip.soundtrack.playme();
gameovermov.play();
delete this.onEnterFrame;
delete this.onMouseDown;
delete this.onMouseUp;
}
};
this.onMouseDown = function () {
mouseClick();
};
this.onMouseUp = function () {
mouseDrop();
};
}
function stopMainGame() {
delete this.onEnterFrame;
delete this.onMouseDown;
delete this.onMouseUp;
}
function setupNewLevel() {
stopAllSounds();
soundclip.soundtrack.playme();
wipeBoard();
snowscore = snowscore + (levelon * 100);
levelon++;
_root.levelname = "level " + levelon;
timetaken = 0;
baddieskilled = 0;
lname = "Level " + levelon;
__trackref.stopPageTimers();
if (_root.levelhigh < levelon) {
_root.levelhigh = levelon;
__trackref.updateLevelReached(levelon);
}
if (_root.pphigh < _root.snowscore) {
__trackref.updateHighestScore(_root.snowscore);
_root.pphigh = _root.snowscore;
}
__trackref.initPageTracker(lname);
__trackref.hitPage(lname);
__trackref.startPageTimer(lname);
__trackref.addStats();
snowmanonlevel = this["snowmenatstart" + levelon];
snowmanneeded = this["snowmenneeded" + levelon];
secondsleft = this["keepalivefor" + levelon];
snowmandie = this["snowmandie" + levelon];
baddiespos = this["baddiepos" + levelon];
leveltute = this["leveltute" + levelon];
chanceofbaddy = this["chanceofbaddy" + levelon];
_root.snowtutetext = this["tutetext" + levelon];
_root.levelinttext = this["starttext" + levelon];
finallevel = this["finallevel" + levelon];
drawTiles();
setupDisplay();
levelintro();
}
function levelintro() {
if (gameholder.greyfade._currentframe == 1) {
gameholder.greyfade.onEnterFrame = function () {
if (this._currentframe < 5) {
this.gotoAndPlay(this._currentframe + 1);
} else {
delete this.onEnterFrame;
}
};
}
gameholder.levname.onEnterFrame = function () {
if (this._currentframe < 5) {
this.gotoAndPlay(this._currentframe + 1);
} else {
delete this.onEnterFrame;
}
};
}
function nameOut() {
if (leveltute == true) {
gameholder.snowtips.play();
} else {
runMainGame();
if (gameholder.greyfade._currentframe > 1) {
gameholder.greyfade.play();
}
}
}
function finishlevel() {
timetoend = "";
timerrunning = false;
gameholder.cursor.gotoAndStop("grab");
folref.removeMovieClip();
delete this.onMouseMove;
if (gameholder.greyfade._currentframe == 1) {
gameholder.greyfade.play();
}
stopMainGame();
gameholder.levelcomplete.play();
}
function setupDisplay() {
snowmanicons = [];
extraicons = [];
so = 0;
while (so < snowmanneeded) {
sn = "snow" + depth;
snowmanneed.attachMovie("snowmanicon", sn, depth);
depth++;
snowref = snowmanneed[sn];
snowref._x = so * (snowref._width + 10);
snowref.mynum = so;
if (snowmandie > so) {
snowref.minsnow.gotoAndStop(2);
}
snowmanicons.push(snowref);
so++;
}
timetoend = "";
pastsnowmen = 0;
mouseydown = false;
snowholding = 0;
gameholder.cursor.gotoAndStop("grab");
}
function runEndTimer() {
fcount++;
if (fcount > 24) {
fcount = 0;
scount++;
snowscore = snowscore + levelon;
timetoend--;
if (timetoend < 1) {
if (finallevel == true) {
soundclip.starttimer.playme();
timetoend = this["keepalivefor" + levelon];
snowscore = snowscore * 2;
} else {
finishlevel();
}
}
}
}
function manageDisplay() {
if (snowmanonstage >= snowmanneeded) {
if (timerrunning == false) {
_root.soundclip.starttimer.playme();
timetoend = secondsleft;
timerrunning = true;
}
} else if (timerrunning == true) {
fcount = 0;
scount = 0;
timetoend = "";
timerrunning = false;
_root.soundclip.timerstop.playme();
}
if (snowmanonstage != pastsnowmen) {
countup = 0;
si = 0;
while (si < snowmanicons.length) {
sref = snowmanicons[si];
if (countup < snowmanonstage) {
sref.gotoAndStop(2);
countup++;
} else {
sref.gotoAndStop(1);
}
si++;
}
if (snowmanonstage >= snowmanicons.length) {
dif = snowmanonstage - snowmanicons.length;
if (dif > extraicons.length) {
moreneeded = dif - extraicons.length;
if (extraicons.length > 0) {
lastref = extraicons[extraicons.length - 1];
lastx = lastref._x;
} else {
lastref = snowmanicons[snowmanicons.length - 1];
lastx = lastref._x + lastref._width;
}
nn = 1;
while (nn < (moreneeded + 1)) {
sn = "snow" + depth;
snowmanneed.attachMovie("snowmanicon", sn, depth);
depth++;
snowref = snowmanneed[sn];
snowref._xscale = 50;
snowref._yscale = 50;
snowref.gotoAndStop(2);
snowref._x = lastx + (nn * snowref._width);
extraicons.push(snowref);
nn++;
}
} else {
dif = snowmanonstage - snowmanicons.length;
needtoremove = extraicons.length - dif;
rem = 0;
while (rem < needtoremove) {
lastman = extraicons[extraicons.length - 1];
lastman.removeMovieClip();
extraicons.splice(extraicons.length - 1, 1);
rem++;
}
}
}
}
pastsnowmen = snowmanonstage;
}
Mouse.hide();
stop();
setupNewLevel();
Frame 19
stop();
delete this.onEnterFrame;
Mouse.show();
if (_root.snowscore > _root.playerhigh) {
_root.playerhigh = _root.snowscore;
}
__trackref.stopPageTimers();
__trackref.updateHighestScore(_root.snowscore);
__trackref.initPageTracker("Game over");
__trackref.hitPage("Game over");
__trackref.startPageTimer("Game over");
__trackref.addStats();
curtimer = "Game over";
endtext = ((("You scored a total of " + snowscore) + " and built ") + totalsnowmen) + " snowmen";
Symbol 21 MovieClip [snowontile] Frame 1
stop();
Symbol 29 MovieClip [fire] Frame 15
gotoAndPlay (1);
Symbol 29 MovieClip [fire] Frame 16
mysound = new Sound(this);
mysound.attachSound("firesound");
mysound.setVolume(50);
mysound.start(0, 999);
Symbol 29 MovieClip [fire] Frame 30
gotoAndPlay (17);
Symbol 29 MovieClip [fire] Frame 42
this.removeMovieClip();
Symbol 38 MovieClip [baddies] Frame 1
sc = 30;
stop();
this.onEnterFrame = function () {
w1._rotation = w1._rotation + 10;
w2._rotation = w2._rotation + 10;
w3._rotation = w3._rotation + 10;
w4._rotation = w4._rotation + 10;
sc++;
if (sc > 25) {
_root.soundclip.trackmoveloop.playme();
sc = 0;
}
};
Symbol 38 MovieClip [baddies] Frame 10
this.removeMovieClip();
Symbol 42 MovieClip [trackingbad] Frame 1
stop();
Symbol 42 MovieClip [trackingbad] Frame 10
_root.soundclip.hammerhit.playme();
Symbol 42 MovieClip [trackingbad] Frame 11
gotoAndPlay (1);
Symbol 42 MovieClip [trackingbad] Frame 20
this.removeMovieClip();
Symbol 44 MovieClip Frame 1
stop();
Symbol 47 MovieClip [snowmanicon] Frame 1
stop();
Symbol 54 MovieClip [ufo] Frame 1
stop();
Symbol 54 MovieClip [ufo] Frame 11
this.removeMovieClip();
Symbol 57 MovieClip [abducted] Frame 1
_root.soundclip.ufoab.playme();
Symbol 57 MovieClip [abducted] Frame 9
this.removeMovieClip();
Symbol 83 Button
on (release) {
__trackref.followedAd();
__trackref.addStats();
getURL ("http://www.mediatonic.co.uk", "_blank");
}
Symbol 84 MovieClip Frame 1
function clearSnow() {
i = 0;
while (i < dropping.length) {
tempname = "drop" + dropping[i];
trace(tempname);
trace("moo");
removeMovieClip(_root.snowing[tempname]);
i++;
}
delete eval (_root.onEnterFrame());
}
_root.drop = "snowflake";
dropping = [];
dropdepth = 100;
this.onEnterFrame = function () {
if (random(5) == 1) {
tempx = random(550);
name = "drop" + dropdepth;
_root.snowing.attachMovie(_root.drop, [name], dropdepth);
_root.snowing[name]._x = tempx;
_root.snowing[name]._y = -20;
speed = random(4) + 4;
_root.snowing[name].speed = speed;
scaleval = random(50) + 50;
scaleval2 = scaleval * 4;
setProperty(_root.snowing[name], _xscale , scaleval);
setProperty(_root.snowing[name], _yscale , scaleval);
setProperty(_root.snowing[name], _alpha , (scaleval2 / 5) - 10);
_root.snowing[name].myrot = scaleval / 20;
dropping.push(dropdepth);
dropdepth++;
}
i = 0;
while (i < dropping.length) {
tempname = "drop" + dropping[i];
_root.snowing[tempname]._y = _root.snowing[tempname]._y + _root.snowing[tempname].speed;
_root.snowing[tempname]._rotation = _root.snowing[tempname]._rotation + _root.snowing[tempname].myrot;
if (_root.snowing[tempname]._y >= 600) {
removeMovieClip(_root.snowing[tempname]);
dropping.splice(i, 1);
} else {
i++;
}
}
};
Symbol 100 Button
on (release) {
if (((_parent.sendfriend._currentframe == 1) && (_parent.highscores._currentframe == 1)) && (_parent.instructions._currentframe == 1)) {
_root.__trackref.updateReplays();
_root.__trackref.addStats();
_parent.snowscore = 0;
_root.soundclip.buttonclick.playme();
_parent.gotoAndStop("game");
}
}
Symbol 101 Button
on (release) {
if ((_parent.instructions._currentframe == 1) && (_parent.highscores._currentframe == 1)) {
_parent.sendfriend.play();
_root.soundclip.buttonclick.playme();
}
}
Symbol 102 Button
on (release) {
if ((_parent.sendfriend._currentframe == 1) && (_parent.highscores._currentframe == 1)) {
_parent.instructions.play();
_root.soundclip.buttonclick.playme();
}
}
Symbol 103 Button
on (release) {
if ((_parent.instructions._currentframe == 1) && (_parent.sendfriend._currentframe == 1)) {
_parent.highscores.play();
_root.soundclip.buttonclick.playme();
}
}
Symbol 117 Button
on (release) {
_root.soundclip.buttonclick.playme();
_parent.play();
}
Symbol 137 MovieClip Frame 1
stop();
Symbol 140 Button
on (release) {
frar = [];
n = 1;
while (n < 4) {
fr = this["friend" + n];
if (fr != "") {
frar.push(fr);
}
n++;
}
valid = false;
if ((((yourname != "your name here....") && (yourname != "")) && (youremail != "")) && (youremail != "your email here....")) {
valid = true;
}
if (((incscor._currentframe == 1) && (_root.playerhigh != undefined)) && (_root.playerhigh > 0)) {
subject = "A Christmas message from " + yourname;
message = ((("<p>Hello!</p><p>" + yourname) + " recently played snowman salvage and would like to challenge you to beat their score!</p><p>They scored ") + _root.playerhigh) + "</p><p>Play the game at www.snowmansalvage.com</p><p>Merry Christmas</p>";
} else {
subject = "A Christmas message from " + yourname;
message = ("<p>Hello!</p><p>" + yourname) + " recently played snowman salvage and thought you might like it!</p><p>Play the game at www.snowmansalvage.com</p><p>Merry Christmas</p>";
}
if (valid == true) {
_root.soundclip.buttonclick.playme();
_root.__trackref.emailFriends(yourname, youremail, frar, subject, message);
_root.__trackref.sentFriend();
_root.__trackref.addStats();
gotoAndStop (2);
}
}
Symbol 141 Button
on (release) {
if (incscor._currentframe == 1) {
incscor.gotoAndStop(2);
} else {
incscor.gotoAndStop(1);
}
}
Symbol 149 Button
on (release) {
_root.soundclip.buttonclick.playme();
_root.__trackref.setPlayerEmail(_parent.youremail);
_root.__trackref.addStats();
gotoAndStop (2);
}
Symbol 151 MovieClip Frame 1
stop();
Symbol 152 MovieClip Frame 1
stop();
yourname = "your name here....";
youremail = "your email here....";
friend1 = "friendsemail@email.com";
friend2 = "";
friend3 = "";
friend4 = "";
Symbol 153 MovieClip Frame 1
stop();
Symbol 153 MovieClip Frame 2
_root.soundclip.popin.playme();
_root.__trackref.stopPageTimers();
_root.__trackref.initPageTracker("Send to a friend");
_root.__trackref.hitPage("Send to a friend");
_root.__trackref.startPageTimer("Send to a friend");
_root.__trackref.addStats();
Symbol 153 MovieClip Frame 15
stop();
Symbol 153 MovieClip Frame 18
_root.soundclip.popout.playme();
Symbol 153 MovieClip Frame 30
_root.__trackref.stopPageTimers();
_root.__trackref.initPageTracker(_root.curtimer);
_root.__trackref.startPageTimer(_root.curtimer);
_root.__trackref.addStats();
Symbol 154 Button
on (release) {
_parent.play();
_root.soundclip.buttonclick.playme();
}
Symbol 163 Button
on (release) {
_root.soundclip.buttonclick.playme();
_parent.play();
}
Symbol 165 MovieClip Frame 1
stop();
Symbol 165 MovieClip Frame 2
_root.soundclip.popin.playme();
_root.__trackref.stopPageTimers();
_root.__trackref.initPageTracker("Instructions");
_root.__trackref.hitPage("Instructions");
_root.__trackref.startPageTimer("Instructions");
_root.__trackref.addStats();
Symbol 165 MovieClip Frame 16
stop();
Symbol 165 MovieClip Frame 18
_root.soundclip.popout.playme();
Symbol 165 MovieClip Frame 30
_root.__trackref.stopPageTimers();
_root.__trackref.initPageTracker(_root.curtimer);
_root.__trackref.startPageTimer(_root.curtimer);
_root.__trackref.addStats();
Symbol 209 MovieClip Frame 1
stop();
this.onEnterFrame = function () {
if (_root.allscoresloaded == "true") {
this.gotoAndStop(2);
delete this.onEnterFrame;
}
};
Symbol 209 MovieClip Frame 2
stop();
if (_root.playerpos != undefined) {
moocow = (("With a score of " + _root.savedscore) + " you ranked ") + _root.playerpos;
}
Symbol 210 MovieClip Frame 1
stop();
Symbol 210 MovieClip Frame 2
_root.soundclip.popin.playme();
_root.__trackref.stopPageTimers();
_root.__trackref.initPageTracker("High scores");
_root.__trackref.hitPage("High scores");
_root.__trackref.startPageTimer("High scores");
_root.__trackref.addStats();
if ((_root.allscoresloaded != "true") && (_root.alreadyloading != true)) {
_root.__trackref.getScores();
} else {
_root.alreadyloading = false;
}
Symbol 210 MovieClip Frame 16
stop();
Symbol 210 MovieClip Frame 18
_root.soundclip.popout.playme();
Symbol 210 MovieClip Frame 30
_root.__trackref.stopPageTimers();
_root.__trackref.initPageTracker(_root.curtimer);
_root.__trackref.startPageTimer(_root.curtimer);
_root.__trackref.addStats();
Symbol 228 Button
on (release) {
_root.soundclip.buttonclick.playme();
_root.allscoresloaded = "false";
_root.__trackref.submitScore(pname, pemail, _root.snowscore);
_root.savedscore = _root.snowscore;
_root.alreadyloading = true;
this.gotoAndStop(2);
}
Symbol 229 Button
on (release) {
_root.soundclip.buttonclick.playme();
_parent.play();
_parent.vh = false;
}
Symbol 236 Button
on (release) {
_root.soundclip.buttonclick.playme();
_root.__trackref.setPlayerEmail(pemail);
_root.__trackref.addStats();
_parent.play();
_parent.vh = true;
}
Symbol 239 Button
on (release) {
_root.soundclip.buttonclick.playme();
_parent.play();
_parent.vh = true;
}
Symbol 240 MovieClip Frame 1
pname = "";
pemail = "";
stop();
Symbol 241 MovieClip Frame 1
stop();
Symbol 241 MovieClip Frame 2
_root.__trackref.stopPageTimers();
_root.__trackref.initPageTracker("Submit Score");
_root.__trackref.hitPage("Submit Score");
_root.__trackref.startPageTimer("Submit Score");
_root.__trackref.addStats();
_root.soundclip.popin.playme();
Symbol 241 MovieClip Frame 16
stop();
Symbol 241 MovieClip Frame 18
_root.soundclip.popout.playme();
Symbol 241 MovieClip Frame 22
_root.__trackref.stopPageTimers();
_root.__trackref.initPageTracker(_root.curtimer);
_root.__trackref.startPageTimer(_root.curtimer);
_root.__trackref.addStats();
if (vh == true) {
_parent.highscores.play();
}
Symbol 252 MovieClip Frame 1
stop();
Symbol 252 MovieClip Frame 2
_root.soundclip.boooo.playme();
Symbol 252 MovieClip Frame 84
_root.gotoAndStop("gameover");
Symbol 254 MovieClip Frame 1
function playme() {
mysound.start(0.1, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("splat3");
mysound.setVolume(10);
Symbol 256 MovieClip Frame 1
function playme() {
mysound.start(0.1, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("splat2");
mysound.setVolume(30);
Symbol 258 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("footstep");
mysound.setVolume(100);
Symbol 260 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("small");
mysound.setVolume(100);
Symbol 262 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("zyoip");
mysound.setVolume(80);
Symbol 264 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("whoosh");
mysound.setVolume(100);
Symbol 266 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("synth");
mysound.setVolume(100);
Symbol 268 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("electro");
mysound.setVolume(100);
Symbol 270 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("lightp");
mysound.setVolume(100);
Symbol 272 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("sizzle");
mysound.setVolume(100);
Symbol 274 MovieClip Frame 1
function playme() {
mysound.start(0.2, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("sizzle");
mysound.setVolume(50);
Symbol 276 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("cashreg");
mysound.setVolume(100);
Symbol 278 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("machine");
mysound.setVolume(20);
Symbol 280 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("met");
mysound.setVolume(100);
Symbol 282 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("computin");
mysound.setVolume(100);
Symbol 284 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("free");
mysound.setVolume(100);
Symbol 286 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("slam");
mysound.setVolume(100);
Symbol 288 MovieClip Frame 1
function playme() {
mysound.start(0.1, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("office");
mysound.setVolume(100);
Symbol 290 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("bigbang");
mysound.setVolume(100);
Symbol 292 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("boohiss");
mysound.setVolume(100);
Symbol 294 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("applause8");
mysound.setVolume(100);
Symbol 318 MovieClip Frame 1
stop();
Symbol 320 MovieClip Frame 1
function playme() {
mysound.start(0, 9999);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("snowmanloop");
mysound.setVolume(50);
playme();
Symbol 326 MovieClip Frame 1
stop();
Symbol 328 Button
on (release) {
if (_currentframe == 1) {
gotoAndStop (2);
sd.gotoAndStop(2);
} else {
gotoAndStop (1);
sd.gotoAndStop(1);
}
}
Symbol 329 MovieClip Frame 1
stop();
Symbol 329 MovieClip Frame 2
stopAllSounds();
Symbol 352 Button
on (release) {
_root.soundclip.buttonclick.playme();
_parent.play();
_parent._parent.cursor.gotoAndPlay("pointam");
}
on (rollOver, dragOver) {
_parent._parent.cursor.gotoAndStop("point");
}
on (rollOut, dragOut) {
_parent._parent.cursor.gotoAndStop("grab");
}
Symbol 354 MovieClip Frame 1
stop();
Symbol 354 MovieClip Frame 2
_root.soundclip.popin.playme();
Symbol 354 MovieClip Frame 16
stop();
Symbol 354 MovieClip Frame 18
_root.soundclip.popout.playme();
Symbol 354 MovieClip Frame 31
_parent._parent.nameOut();
Symbol 355 MovieClip Frame 1
stop();
Symbol 355 MovieClip Frame 11
stop();
Symbol 368 Button
on (release) {
_root.soundclip.buttonclick.playme();
nextFrame();
_parent._parent.cursor.gotoAndPlay("pointam");
}
on (rollOver, dragOver) {
_parent._parent.cursor.gotoAndStop("point");
}
on (rollOut, dragOut) {
_parent._parent.cursor.gotoAndStop("grab");
}
Symbol 387 Button
on (release) {
_root.soundclip.buttonclick.playme();
_root.snowscore = _root.snowscore + bonusscore;
_root.totalsnowmen = _root.totalsnowmen + _root.snowmanonstage;
_parent.play();
_parent._parent.cursor.gotoAndPlay("pointam");
}
on (rollOver, dragOver) {
_parent._parent.cursor.gotoAndStop("point");
}
on (rollOut, dragOut) {
_parent._parent.cursor.gotoAndStop("grab");
}
Symbol 390 Button
on (rollOver, dragOver) {
_parent._parent.cursor.gotoAndStop("point");
}
on (rollOut, dragOut) {
_parent._parent.cursor.gotoAndStop("grab");
}
on (release) {
if ((_root.upgradepoints > 0) && (_root.moresnowlev < _root.maxlev)) {
_root.soundclip.upgrade.playme();
_root.moresnowlev++;
_root.upgradepoints--;
_root.snowcancarry = _root.snowcancarry + _root.biggersnowadd;
}
}
Symbol 393 Button
on (rollOver, dragOver) {
_parent._parent.cursor.gotoAndStop("point");
}
on (rollOut, dragOut) {
_parent._parent.cursor.gotoAndStop("grab");
}
on (release) {
if ((_root.upgradepoints > 0) && (_root.morefalllev < _root.maxlev)) {
_root.soundclip.upgrade.playme();
_root.morefalllev++;
_root.upgradepoints--;
_root.maxsnowtiles = _root.maxsnowtiles + _root.morefalladd;
}
}
Symbol 396 Button
on (rollOver, dragOver) {
_parent._parent.cursor.gotoAndStop("point");
}
on (rollOut, dragOut) {
_parent._parent.cursor.gotoAndStop("grab");
}
on (release) {
if ((_root.upgradepoints > 0) && (_root.biggersnowlev < _root.maxlev)) {
_root.soundclip.upgrade.playme();
_root.biggersnowlev++;
_root.upgradepoints--;
_root.snowworth = _root.snowworth + _root.biggersnowadd;
}
}
Symbol 399 Button
on (rollOver, dragOver) {
_parent._parent.cursor.gotoAndStop("point");
}
on (rollOut, dragOut) {
_parent._parent.cursor.gotoAndStop("grab");
}
on (release) {
if ((_root.upgradepoints > 0) && (_root.moredmglev < _root.maxlev)) {
_root.soundclip.upgrade.playme();
_root.moredmglev++;
_root.upgradepoints--;
_root.mydmg = _root.mydmg + _root.moredmgadd;
}
}
Symbol 403 MovieClip Frame 1
stop();
timet = int(_root.timetaken / 25);
bb = _root.baddieskilled / 3;
if (bb < 1) {
bb = 1;
}
if (bb > 5) {
bb = 5;
}
bonusscore = int((((_root.snowmanonstage * bb) * 50) * _root.levelon) / (timet / 10));
if (bonusscore < 1) {
bonusscore = 1;
}
bonuscounter = 0;
this.onEnterFrame = function () {
dif = bonusscore - bonuscounter;
addme = int(dif / 10);
if (addme < 2) {
addme = 2;
}
bonuscounter = bonuscounter + addme;
if (bonuscounter > bonusscore) {
bonuscounter = bonusscore;
delete this.onEnterFrame;
}
};
_root.upgradepoints++;
bonusmen = _root.snowmanonstage - _root.snowmanneeded;
if (bonusmen > 0) {
_root.upgradepoints++;
if (bonusmen > 2) {
_root.upgradepoints++;
if (bonusmen > 4) {
_root.upgradepoints++;
_root.upgradepoints++;
}
}
}
Symbol 403 MovieClip Frame 2
stop();
Symbol 404 MovieClip Frame 1
stop();
Symbol 404 MovieClip Frame 2
_root.soundclip.popin.playme();
Symbol 404 MovieClip Frame 7
_root.soundclip.cheer.playme();
Symbol 404 MovieClip Frame 15
stop();
Symbol 404 MovieClip Frame 18
_root.soundclip.popout.playme();
Symbol 404 MovieClip Frame 29
_parent._parent.setupNewLevel();
Symbol 414 Button
on (release) {
_root.soundclip.buttonclick.playme();
_parent.play();
_parent._parent.cursor.gotoAndPlay("pointam");
}
on (rollOver, dragOver) {
_parent._parent.cursor.gotoAndStop("point");
}
on (rollOut, dragOut) {
_parent._parent.cursor.gotoAndStop("grab");
}
Symbol 416 MovieClip Frame 1
stop();
Symbol 416 MovieClip Frame 2
_root.soundclip.popin.playme();
Symbol 416 MovieClip Frame 16
stop();
Symbol 416 MovieClip Frame 18
_root.soundclip.popout.playme();
Symbol 416 MovieClip Frame 30
_parent._parent.leveltute = false;
_parent._parent.nameOut();
Symbol 422 MovieClip Frame 1
stop();
Symbol 422 MovieClip Frame 4
_root.soundclip.punch.playme();
Symbol 422 MovieClip Frame 9
gotoAndStop (1);
Symbol 422 MovieClip Frame 16
gotoAndStop (1);
Instance of Symbol 354 MovieClip "levname" in Symbol 423 MovieClip Frame 1
onClipEvent (load) {
this.swapDepths(_parent._parent.mousedepth - 10);
}
Instance of Symbol 355 MovieClip "greyfade" in Symbol 423 MovieClip Frame 1
onClipEvent (load) {
this.swapDepths(_parent._parent.mousedepth - 20);
}
Instance of Symbol 404 MovieClip "levelcomplete" in Symbol 423 MovieClip Frame 1
onClipEvent (load) {
this.swapDepths(_parent._parent.mousedepth - 15);
}
Instance of Symbol 416 MovieClip "snowtips" in Symbol 423 MovieClip Frame 1
onClipEvent (load) {
this.swapDepths(_parent._parent.mousedepth - 13);
}
Instance of Symbol 422 MovieClip "cursor" in Symbol 423 MovieClip Frame 1
onClipEvent (enterFrame) {
this._x = _parent._xmouse;
this._y = _parent._ymouse;
}
onClipEvent (load) {
this.swapDepths(_parent._parent.mousedepth);
}
Symbol 435 Button
on (release) {
if (subscore._currentframe == 1) {
_root.soundclip.buttonclick.playme();
sendfriend.play();
}
}
Symbol 441 Button
on (release) {
if (sendfriend._currentframe == 1) {
_root.soundclip.buttonclick.playme();
_root.subscore.play();
}
}
Symbol 447 Button
on (release) {
if ((sendfriend._currentframe == 1) && (subscore._currentframe == 1)) {
_root.soundclip.buttonclick.playme();
_root.__trackref.updateReplays();
_root.__trackref.addStats();
levelon--;
snowscore = 0;
gotoAndStop (13);
}
}
Symbol 452 Button
on (release) {
if ((sendfriend._currentframe == 1) && (subscore._currentframe == 1)) {
_root.soundclip.buttonclick.playme();
levelon--;
snowscore = 0;
gotoAndStop (7);
}
}