STORY   LOOP   FURRY   PORN   GAMES
• C •   SERVICES [?] [R] RND   POPULAR
Archived flashes:
228091
/disc/ · /res/     /show/ · /fap/ · /gg/ · /swf/P0001 · P2561 · P5121

<div style="position:absolute;top:-99px;left:-99px;"><img src="http://swfchan.com:57475/92197094?noj=FRM92197094-4DC" width="1" height="1"></div>

Easter Eggs.swf

This is the info page for
Flash #26491

(Click the ID number above for more basic data on this flash file.)


Text
Loading game, please wait...

EASTER

Eggs

START

START

START

High Scores

High Scores

High Scores

copyright 2004, Novel Games. All rights reserved.

Instructions

Use the mouse the swap adjacent
eggs, when four or more eggs line
up, those eggs will disappear.

Novel Games.

All rights reserved.

copyright 2004,

LIFE

SCORE

LEVEL

Game Over

Play Again

Play Again

Play Again

ActionScript [AS1/AS2]

Frame 1
var domain = "http://www.novelgames.com"; var siteID; var gameID = 38; var highscoresColour = 153; if (!siteid) { siteID = 1; } if (!highscores.siteID) { highscores.loadMovie(domain + "/freeflashgames/highscores/highscores.swf"); } if (!sendFriend.exists) { sendFriend.loadMovie(domain + "/freeflashgames/send/send.swf"); } stop(); _focusrect = false;
Frame 2
stop();
Frame 3
stop();
Frame 4
function initialize() { var i; var j; i = 0; while (i < dimensionX) { occupiers[i] = new Array(dimensionY); j = 0; while (j < dimensionY) { occupiers[i][j] = null; j++; } i++; } i = 0; while (i < dimensionY) { j = 0; while (j < dimensionX) { eggsHolder.attachMovie("egg", "egg" + depth, depth); eggs[depth] = eval ("eggsHolder.egg" + depth); eggs[depth]._x = getRealX(j, i); eggs[depth]._y = getRealY(j, i); eggs[depth].type = Math.floor(Math.random() * eggTypes); eggs[depth].picture.gotoAndStop(eggs[depth].type + 1); setEggXY(eggs[depth], j, i); depth++; j++; } i++; } lifePie.gotoAndStop((lifeFull + 1) - life); } function setEggXY(egg, x, y) { egg.x = x; egg.y = y; occupiers[x][y] = egg; } function getRealX(x, y) { return(x * eggWidth); } function getRealY(x, y) { if ((x % 2) == 0) { return(y * eggHeight); } return((y * eggHeight) + (eggHeight / 2)); } function chooseEgg(egg) { if (!gameStarted) { return(undefined); } if (((isSwapping || (isUnswapping)) || (isDestroying)) || (isDropping)) { return(undefined); } if (!chosenEgg) { chosenEgg = egg; egg.gotoAndStop("chosen"); soundChoose.start(); } else if (eggsAreAdjacent(egg, chosenEgg)) { swapEggs(egg, chosenEgg); chosenEgg.gotoAndStop("normal"); chosenEgg = null; soundSwap.start(); } else { chosenEgg.gotoAndStop("normal"); chosenEgg = null; soundChoose.start(); } } function eggsAreAdjacent(egg1, egg2) { if (egg1.x == egg2.x) { return((egg1.y == (egg2.y + 1)) || (egg1.y == (egg2.y - 1))); } if (egg1.x == (egg2.x - 1)) { if ((egg1.x % 2) == 0) { return((egg1.y == egg2.y) || (egg1.y == (egg2.y + 1))); } return((egg1.y == egg2.y) || (egg1.y == (egg2.y - 1))); } if (egg1.x == (egg2.x + 1)) { if ((egg2.x % 2) == 0) { return((egg1.y == egg2.y) || (egg1.y == (egg2.y - 1))); } return((egg1.y == egg2.y) || (egg1.y == (egg2.y + 1))); } return(false); } function swapEggs(egg1, egg2) { isSwapping = true; swappingEgg1 = egg1; swappingEgg2 = egg2; egg1.swapTo(egg2.x, egg2.y); egg2.swapTo(egg1.x, egg1.y); } function unswapEggs(egg1, egg2) { isUnswapping = true; unswappingEgg1 = egg1; unswappingEgg2 = egg2; egg1.unswapTo(egg2.x, egg2.y); egg2.unswapTo(egg1.x, egg1.y); } function finishSwapping() { var groups; if (swappingEgg1.isSwapping || (swappingEgg2.isSwapping)) { return(undefined); } isSwapping = false; setEggXY(swappingEgg1, swappingEgg1.targetX, swappingEgg1.targetY); setEggXY(swappingEgg2, swappingEgg2.targetX, swappingEgg2.targetY); groups = getGroups(); if (groups.length == 0) { combo = 0; unswapEggs(swappingEgg1, swappingEgg2); soundSwap.start(); } else { combo++; addScore(getScore(groups)); addLife(groups.length); destroyEggs(groups); soundGroup.start(); } } function finishUnswapping() { if (unswappingEgg1.isUnswapping || (unswappingEgg2.isUnswapping)) { return(undefined); } isUnswapping = false; setEggXY(unswappingEgg1, unswappingEgg1.targetX, unswappingEgg1.targetY); setEggXY(unswappingEgg2, unswappingEgg2.targetX, unswappingEgg2.targetY); } function destroyEggs(groups) { var i; var j; isDestroying = true; destroyingEggs = new Array(); i = 0; while (i < groups.length) { j = 0; while (j < groups[i].length) { destroyingEggs.push(groups[i][j]); groups[i][j].destroy(); j++; } i++; } } function finishDestroying() { var i; i = 0; while (i < destroyingEggs.length) { if (destroyingEggs[i]._visible) { return(undefined); } i++; } i = 0; while (i < destroyingEggs.length) { destroyEgg(destroyingEggs[i]); i++; } isDestroying = false; dropEggs(); } function destroyEgg(egg) { occupiers[egg.x][egg.y] = null; egg.removeMovieClip(); } function dropEggs() { var i; var j; var noOfSpaces; var theEgg; isDropping = true; droppingEggs = new Array(); i = 0; while (i < dimensionX) { noOfSpaces = 0; j = dimensionY - 1; while (j >= 0) { theEgg = occupiers[i][j]; if (!theEgg) { noOfSpaces++; } else if (0 < noOfSpaces) { theEgg.drop(theEgg.y + noOfSpaces); droppingEggs.push(theEgg); } j--; } j = 0; while (j < noOfSpaces) { eggsHolder.attachMovie("egg", "egg" + depth, depth); eggs[depth] = eval ("eggsHolder.egg" + depth); eggs[depth].x = i; eggs[depth].y = (-j) - 1; eggs[depth]._x = getRealX(i, (-j) - 1); eggs[depth]._y = getRealY(i, (-j) - 1); eggs[depth].type = Math.floor(Math.random() * eggTypes); eggs[depth].picture.gotoAndStop(eggs[depth].type + 1); eggs[depth].isDropping = true; eggs[depth].targetX = i; eggs[depth].targetY = (noOfSpaces - 1) - j; eggs[depth].targetRealX = getRealX(i, (noOfSpaces - 1) - j); eggs[depth].targetRealY = getRealY(i, (noOfSpaces - 1) - j); eggs[depth].speedX = 0; eggs[depth].speedY = dropSpeed; droppingEggs.push(eggs[depth]); depth++; j++; } i++; } } function finishDropping() { var i; var groups; i = 0; while (i < droppingEggs.length) { if (droppingEggs[i].isDropping) { return(undefined); } i++; } i = 0; while (i < droppingEggs.length) { setEggXY(droppingEggs[i], droppingEggs[i].targetX, droppingEggs[i].targetY); i++; } isDropping = false; groups = getGroups(); if (groups.length == 0) { combo = 0; } else { combo++; addScore(getScore(groups)); addLife(groups.length); destroyEggs(groups); soundGroup.start(); } } function getGroups() { var groups = new Array(); var rootEgg; var theEgg; var group; var i; i = 0; while (i < dimensionX) { rootEgg = occupiers[i][0]; theEgg = rootEgg; group = new Array(); group.push(theEgg); while ((theEgg = getNextEgg(theEgg, DOWN))) { if (theEgg.type == rootEgg.type) { group.push(theEgg); } else { if (group.length >= groupSize) { groups.push(group); } rootEgg = theEgg; group = new Array(); group.push(rootEgg); } } if (group.length >= groupSize) { groups.push(group); } i++; } i = 0; while (i < dimensionX) { rootEgg = occupiers[i][0]; theEgg = rootEgg; group = new Array(); group.push(theEgg); while ((theEgg = getNextEgg(theEgg, RIGHTDOWN))) { if (theEgg.type == rootEgg.type) { group.push(theEgg); } else { if (group.length >= groupSize) { groups.push(group); } rootEgg = theEgg; group = new Array(); group.push(rootEgg); } } if (group.length >= groupSize) { groups.push(group); } i = i + 2; } i = 0; while (i < dimensionY) { rootEgg = occupiers[0][i]; theEgg = rootEgg; group = new Array(); group.push(theEgg); while ((theEgg = getNextEgg(theEgg, RIGHTDOWN))) { if (theEgg.type == rootEgg.type) { group.push(theEgg); } else { if (group.length >= groupSize) { groups.push(group); } rootEgg = theEgg; group = new Array(); group.push(rootEgg); } } if (group.length >= groupSize) { groups.push(group); } i++; } i = 0; while (i < dimensionX) { rootEgg = occupiers[i][0]; theEgg = rootEgg; group = new Array(); group.push(theEgg); while ((theEgg = getNextEgg(theEgg, LEFTDOWN))) { if (theEgg.type == rootEgg.type) { group.push(theEgg); } else { if (group.length >= groupSize) { groups.push(group); } rootEgg = theEgg; group = new Array(); group.push(rootEgg); } } if (group.length >= groupSize) { groups.push(group); } i = i + 2; } i = 0; while (i < dimensionY) { rootEgg = occupiers[dimensionX - 1][i]; theEgg = rootEgg; group = new Array(); group.push(theEgg); while ((theEgg = getNextEgg(theEgg, LEFTDOWN))) { if (theEgg.type == rootEgg.type) { group.push(theEgg); } else { if (group.length >= groupSize) { groups.push(group); } rootEgg = theEgg; group = new Array(); group.push(rootEgg); } } if (group.length >= groupSize) { groups.push(group); } i++; } return(groups); } function getNextEgg(egg, direction) { if (direction == DOWN) { if (egg.y == (dimensionY - 1)) { return(null); } return(occupiers[egg.x][egg.y + 1]); } if (direction == LEFTDOWN) { if (egg.x == 0) { return(null); } if ((egg.x % 2) == 0) { return(occupiers[egg.x - 1][egg.y]); } if (egg.y == (dimensionY - 1)) { return(null); } return(occupiers[egg.x - 1][egg.y + 1]); } if (egg.x == (dimensionX - 1)) { return(undefined); } if ((egg.x % 2) == 0) { return(occupiers[egg.x + 1][egg.y]); } if (egg.y == (dimensionY - 1)) { return(null); } return(occupiers[egg.x + 1][egg.y + 1]); } function getScore(groups) { var i; var theScore = 0; i = 0; while (i < groups.length) { theScore = theScore + (combo * (((groups[i].length - groupSize) * extraEggScore) + groupScore)); i++; } return(theScore); } function addScore(amount) { score = score + amount; updateLevel(); } function updateLevel() { var i; i = level - 1; while (i < levelScores.length) { if (score < levelScores[i]) { break; } i++; } if (level != (i + 1)) { level = i + 1; decreaseRate = levelDecreaseRates[i]; } } function updateLife() { if (!gameStarted) { return(undefined); } decreaseCount++; if (decreaseCount >= decreaseRate) { decreaseCount = 0; addLife(-1); } } function addLife(amount) { life = life + amount; if (life < 0) { life = 0; } else if (lifeFull < life) { life = lifeFull; } lifePie.setLife(life); if (0 >= life) { gameOver(); soundGameOver.start(); } } function gameOver() { gameStarted = false; gameOverDialog.gotoAndPlay(2); } var DOWN = 1; var LEFTDOWN = 2; var RIGHTDOWN = 3; var dimensionX = 11; var dimensionY = 7; var eggWidth = 40; var eggHeight = 50; var eggTypes = 4; var groupSize = 4; var swapSteps = 5; var destroySpeed = 20; var dropSpeed = 25; var lifeFull = 32; var initialLife = 16; var groupScore = 100; var extraEggScore = 50; var levelDecreaseRates = [60, 50, 40, 35, 30, 26, 23, 20, 18, 16, 14, 12, 10]; var levelScores = [1000, 2000, 3000, 4000, 5000, 6000, 7000, 8000, 9000, 10000, 11000, 12000]; var eggs = new Array(); var depth = 0; var occupiers = new Array(); var chosenEgg = null; var isSwapping = false; var swappingEgg1 = null; var swpaaingEgg2 = null; var isUnswapping = false; var unswappingEgg1 = null; var unswappingEgg2 = null; var isDestroying = false; var destroyingEggs = new Array(); var isDropping = false; var droppingEggs = new Array(); var level = 1; var life = initialLife; var score = 0; var combo = 0; var decreaseRate = levelDecreaseRates[0]; var decreaseCount = 0; var gameStarted = true; var soundChoose = new Sound(this); var soundSwap = new Sound(this); var soundGroup = new Sound(this); var soundGameOver = new Sound(this); soundChoose.attachSound("soundChoose"); soundSwap.attachSound("soundSwap"); soundGroup.attachSound("soundGroup"); soundGameOver.attachSound("soundGameOver"); initialize();
Instance of Symbol 14 MovieClip in Frame 4
onClipEvent (enterFrame) { _root.updateLife(); }
Symbol 13 Button
on (release) { _root.chooseEgg(this); }
Symbol 26 MovieClip [egg] Frame 1
function swapTo(x, y) { targetX = x; targetY = y; targetRealX = _root.getRealX(x, y); targetRealY = _root.getRealY(x, y); speedX = (targetRealX - _x) / _root.swapSteps; speedY = (targetRealY - _y) / _root.swapSteps; isSwapping = true; } function unswapTo(x, y) { targetX = x; targetY = y; targetRealX = _root.getRealX(x, y); targetRealY = _root.getRealY(x, y); speedX = (targetRealX - _x) / _root.swapSteps; speedY = (targetRealY - _y) / _root.swapSteps; isUnswapping = true; } function destroy() { isDestroying = true; } function drop(y) { targetX = x; targetY = y; targetRealX = _x; targetRealY = _root.getRealY(x, y); speedX = 0; speedY = _root.dropSpeed; isDropping = true; } function move() { if (!_root.gameStarted) { return(undefined); } if ((isSwapping || (isUnswapping)) || (isDropping)) { _x = (_x + speedX); _y = (_y + speedY); if ((_x == targetRealX) && (_y == targetRealY)) { if (isSwapping) { isSwapping = false; _root.finishSwapping(); } else if (isUnswapping) { isUnswapping = false; _root.finishUnswapping(); } else if (isDropping) { isDropping = false; _root.finishDropping(); } } } else if (isDestroying) { _xscale = (_xscale - _root.destroySpeed); _yscale = (_yscale - _root.destroySpeed); if ((0 >= _xscale) || (0 >= _yscale)) { _visible = false; isDestroying = false; _root.finishDestroying(); } } } function setXY(x, y) { this.x = x; this.y = y; } var x; var y; var type; var isSwapping; var isUnswapping; var targetX; var targetY; var targetRealX; var targetRealY; var speedX; var speedY; var isDestroying; var isDropping;
Instance of Symbol 14 MovieClip in Symbol 26 MovieClip [egg] Frame 1
onClipEvent (enterFrame) { _parent.move(); }
Symbol 26 MovieClip [egg] Frame 2
stop();
Symbol 26 MovieClip [egg] Frame 9
stop();
Symbol 33 MovieClip Frame 1
var percent = 0; stop();
Instance of Symbol 14 MovieClip in Symbol 33 MovieClip Frame 1
onClipEvent (enterFrame) { if (_parent.percent < 100) { _parent.percent = Math.floor((_root._framesloaded / _root._totalframes) * 100); if (_parent.percent < 100) { _parent.gotoAndStop(_parent.percent + 1); } else { _parent.gotoAndPlay(101); } } } onClipEvent (mouseDown) { if (_parent.percent >= 100) { _root.play(); } }
Symbol 33 MovieClip Frame 101
stop(); _root.play();
Symbol 42 Button
on (release) { nextFrame(); }
Symbol 46 Button
on (release) { highscores.showHighscores(); }
Symbol 52 Button
on (release) { sendFriend.show(); }
Symbol 100 MovieClip Frame 1
function setLife(life) { if (life < 0) { life = 0; } else if (_root.lifeFull < life) { life = lifeFull; } gotoAndStop((_root.lifeFull + 1) - life); }
Symbol 111 Button
on (release) { _root.gotoAndStop(1); }
Symbol 112 MovieClip Frame 1
stop();
Symbol 112 MovieClip Frame 15
_root.highscores.showEnter(_root.score); stop();

Library Items

Symbol 1 Sound [soundChoose]
Symbol 2 Sound [soundSwap]
Symbol 3 Sound [soundGameOver]
Symbol 4 Sound [soundGroup]
Symbol 5 GraphicUsed by:9
Symbol 6 GraphicUsed by:9
Symbol 7 GraphicUsed by:9
Symbol 8 GraphicUsed by:9
Symbol 9 MovieClipUses:5 6 7 8Used by:26
Symbol 10 GraphicUsed by:26
Symbol 11 GraphicUsed by:13
Symbol 12 GraphicUsed by:13
Symbol 13 ButtonUses:11 12Used by:26
Symbol 14 MovieClipUsed by:26 33  Timeline
Symbol 15 GraphicUsed by:25
Symbol 16 GraphicUsed by:25
Symbol 17 GraphicUsed by:25
Symbol 18 GraphicUsed by:25
Symbol 19 GraphicUsed by:25
Symbol 20 GraphicUsed by:25
Symbol 21 GraphicUsed by:25
Symbol 22 GraphicUsed by:25
Symbol 23 GraphicUsed by:25
Symbol 24 GraphicUsed by:25
Symbol 25 MovieClipUses:15 16 17 18 19 20 21 22 23 24Used by:26
Symbol 26 MovieClip [egg]Uses:9 10 13 14 25
Symbol 27 GraphicUsed by:Timeline
Symbol 28 ShapeTweeningUsed by:33
Symbol 29 GraphicUsed by:33
Symbol 30 FontUsed by:31
Symbol 31 TextUses:30Used by:33
Symbol 32 GraphicUsed by:33
Symbol 33 MovieClipUses:28 29 31 14 32Used by:Timeline
Symbol 34 FontUsed by:35 36 38 39 40 43 44 45 56 106 107 108 109
Symbol 35 TextUses:34Used by:Timeline
Symbol 36 TextUses:34Used by:Timeline
Symbol 37 GraphicUsed by:Timeline
Symbol 38 TextUses:34Used by:42
Symbol 39 TextUses:34Used by:42
Symbol 40 TextUses:34Used by:42
Symbol 41 GraphicUsed by:42 46
Symbol 42 ButtonUses:38 39 40 41Used by:Timeline
Symbol 43 TextUses:34Used by:46
Symbol 44 TextUses:34Used by:46
Symbol 45 TextUses:34Used by:46
Symbol 46 ButtonUses:43 44 45 41Used by:Timeline
Symbol 47 GraphicUsed by:52
Symbol 48 GraphicUsed by:52
Symbol 49 GraphicUsed by:52
Symbol 50 GraphicUsed by:52
Symbol 51 GraphicUsed by:52
Symbol 52 ButtonUses:47 48 49 50 51Used by:Timeline
Symbol 53 FontUsed by:54 59 60 61
Symbol 54 TextUses:53Used by:Timeline
Symbol 55 GraphicUsed by:Timeline
Symbol 56 TextUses:34Used by:Timeline
Symbol 57 FontUsed by:58 102 104
Symbol 58 TextUses:57Used by:Timeline
Symbol 59 TextUses:53Used by:Timeline
Symbol 60 TextUses:53Used by:Timeline
Symbol 61 TextUses:53Used by:Timeline
Symbol 62 GraphicUsed by:Timeline
Symbol 63 GraphicUsed by:Timeline
Symbol 64 FontUsed by:65 101 103
Symbol 65 TextUses:64Used by:Timeline
Symbol 66 GraphicUsed by:100
Symbol 67 GraphicUsed by:100
Symbol 68 GraphicUsed by:100
Symbol 69 GraphicUsed by:100
Symbol 70 GraphicUsed by:100
Symbol 71 GraphicUsed by:100
Symbol 72 GraphicUsed by:100
Symbol 73 GraphicUsed by:100
Symbol 74 GraphicUsed by:100
Symbol 75 GraphicUsed by:100
Symbol 76 GraphicUsed by:100
Symbol 77 GraphicUsed by:100
Symbol 78 GraphicUsed by:100
Symbol 79 GraphicUsed by:100
Symbol 80 GraphicUsed by:100
Symbol 81 GraphicUsed by:100
Symbol 82 GraphicUsed by:100
Symbol 83 GraphicUsed by:100
Symbol 84 GraphicUsed by:100
Symbol 85 GraphicUsed by:100
Symbol 86 GraphicUsed by:100
Symbol 87 GraphicUsed by:100
Symbol 88 GraphicUsed by:100
Symbol 89 GraphicUsed by:100
Symbol 90 GraphicUsed by:100
Symbol 91 GraphicUsed by:100
Symbol 92 GraphicUsed by:100
Symbol 93 GraphicUsed by:100
Symbol 94 GraphicUsed by:100
Symbol 95 GraphicUsed by:100
Symbol 96 GraphicUsed by:100
Symbol 97 GraphicUsed by:100
Symbol 98 GraphicUsed by:100
Symbol 99 GraphicUsed by:100
Symbol 100 MovieClipUses:66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99Used by:Timeline
Symbol 101 TextUses:64Used by:Timeline
Symbol 102 EditableTextUses:57Used by:Timeline
Symbol 103 TextUses:64Used by:Timeline
Symbol 104 EditableTextUses:57Used by:Timeline
Symbol 105 GraphicUsed by:112
Symbol 106 TextUses:34Used by:112
Symbol 107 TextUses:34Used by:111
Symbol 108 TextUses:34Used by:111
Symbol 109 TextUses:34Used by:111
Symbol 110 GraphicUsed by:111
Symbol 111 ButtonUses:107 108 109 110Used by:112
Symbol 112 MovieClipUses:105 106 111Used by:Timeline

Instance Names

"loading"Frame 1Symbol 33 MovieClip
"sendFriend"Frame 1Symbol 14 MovieClip
"highscores"Frame 1Symbol 14 MovieClip
"eggsHolder"Frame 4Symbol 14 MovieClip
"lifePie"Frame 4Symbol 100 MovieClip
"gameOverDialog"Frame 4Symbol 112 MovieClip
"picture"Symbol 26 MovieClip [egg] Frame 1Symbol 9 MovieClip

Special Tags

Protect (24)Timeline Frame 10 bytes ""
ExportAssets (56)Timeline Frame 1Symbol 1 as "soundChoose"
ExportAssets (56)Timeline Frame 1Symbol 2 as "soundSwap"
ExportAssets (56)Timeline Frame 1Symbol 3 as "soundGameOver"
ExportAssets (56)Timeline Frame 1Symbol 4 as "soundGroup"
ExportAssets (56)Timeline Frame 1Symbol 26 as "egg"

Labels

"normal"Symbol 26 MovieClip [egg] Frame 2
"chosen"Symbol 26 MovieClip [egg] Frame 9

Dynamic Text Variables

scoreSymbol 102 EditableText""
levelSymbol 104 EditableText""




http://swfchan.com/6/26491/info.shtml
Created: 22/5 -2019 15:09:14 Last modified: 22/5 -2019 15:09:14 Server time: 04/05 -2024 23:56:11