Frame 1
//if(){}
function LoadScoreSubmitter() {
GameOn = false;
Mouse.show();
createEmptyMovieClip("ScoreSaveContainer", 999999);
ScoreSaveContainer.loadMovie("scoresaver.swf");
if (Stage.width < 560) {
ScoreSaveContainer._xscale = (100 * Stage.width) / 560;
ScoreSaveContainer._yscale = (100 * Stage.height) / 320;
}
stop();
}
ok = false;
ok = true;
if (_url.substr(0, 25).toLowerCase() == "http://www.homokaasu.org/") {
ok = true;
}
if (_url.substr(0, 21).toLowerCase() == "http://homokaasu.org/") {
ok = true;
}
if (_url.substr(0, 14).toLowerCase() == "http://welkin/") {
ok = true;
}
if (!ok) {
getURL ("http://homokaasu.org", "_top");
this.removeMovieClip();
stop();
}
play();
Frame 3
//if(){}
if (getBytesLoaded() < getBytesTotal()) {
loaderindicator._x = (((loaderindicator._x * 10) + 20) + (310 * (getBytesLoaded() / getBytesTotal()))) / 11;
gotoAndPlay ("loaderloop");
} else {
gotoAndStop (4);
}
Frame 4
//if(){}
function Grower() {
var _local1 = this;
_local1.Area = new Array();
_local1.PossibleGrowAreas = new Array();
_local1.GrowTo(_local1.x, _local1.y);
_local1.MinX = 999;
_local1.MaxX = -1;
_local1.MinY = 999;
_local1.MaxY = -1;
_local1.XPos = 0;
_local1.YPos = 0;
_local1._alpha = 75;
}
function DrawBlock() {
}
function InitPlayfield(w, Content) {
var _local3 = Content;
_global.Playfield = new Object();
_global.Width = w;
_global.BlockWidth = AreaWidth / Width;
var _local2 = 0;
while (_local2 < Width) {
var _local1 = 0;
while (_local1 < Width) {
Playfield[(_local2 + "_") + _local1] = _local3;
_local1++;
}
_local2++;
}
}
function Start() {
Score = 0;
Level = 0;
StartLevel();
}
function StartLevel() {
Level++;
var w = (3 + Math.floor(Level / 2));
var GrowerCount = (Math.ceil((w * w) / 5) + (Level % 2));
InitPlayfield(w, null);
ShowText(((((((("Level " + Level) + " - ") + w) + " x ") + w) + ", ") + GrowerCount) + " blocks");
Growers = new Array();
var _local3 = 0;
var _local1 = 0;
while (_local1 < GrowerCount) {
var x;
var y;
var c = 0;
do {
x = Math.floor(Math.random() * Width);
y = Math.floor(Math.random() * Width);
} while (Playfield[(x + "_") + y] != null);
var _local2 = attachMovie("Grower", "G" + _local1, 1000 + _local1, {x:x, y:y, col:(100 + ((155 / GrowerCount) * _local1)) << 16});
Growers.push(_local2);
_local3++;
_local1++;
}
NextHighestDepth = 1500;
var tt = 0;
var c = 0;
while (_local3 < (Width * Width)) {
if (Growers[(c++) % Growers.length].Grow()) {
_local3++;
}
}
_local1 = 0;
while (_local1 < Growers.length) {
var _local2 = Growers[_local1];
_local2.NormalizePosition();
_local2.Draw();
_local2._x = Math.random() * 200;
_local2._y = Math.random() * 300;
_local1++;
}
InitPlayfield(w, null);
SetCount = 0;
ProgressBar.gotoAndStop(1);
LevelStart = getTimer();
LevelEnd = (LevelStart + 20000) + (3000 * Level);
MaxFill = 0;
LevelOn = true;
Grid.removeMovieClip();
createEmptyMovieClip("Grid", 103);
Grid._x = 260;
Grid._y = 20;
Grid.lineStyle(0, 2236962);
_local1 = 1;
while (_local1 < Width) {
Grid.moveTo(0, _local1 * BlockWidth);
Grid.lineTo(280, _local1 * BlockWidth);
Grid.moveTo(_local1 * BlockWidth, 0);
Grid.lineTo(_local1 * BlockWidth, 280);
_local1++;
}
onEnterFrame = Go;
}
function ShowText(s) {
SliderCount++;
attachMovie("TextSlider", "TextSlider" + SliderCount, 920000 + SliderCount, {_x:280, _y:100, Text:s});
}
function Clear() {
var _local1 = 0;
while (_local1 < Growers.length) {
Growers[_local1].removeMovieClip();
_local1++;
}
Grid.removeMovieClip();
}
function ShowScore() {
var _local2 = Math.floor(((SetCount / Width) / Width) * 299);
var _local3 = ProgressBar._currentframe;
var _local1 = Math.round((_local2 + (_local3 * 5)) / 6);
if (_local1 < _local2) {
_local1++;
}
ProgressBar.gotoAndStop(_local1);
ScoreDisp.Score = Math.round((Score + (ScoreDisp.Score * 5)) / 6);
}
function Go() {
if (getTimer() > LevelEnd) {
LevelOn = false;
ShowText("Game over!");
WaitTime = 200;
var _local1 = 0;
while (_local1 < Growers.length) {
Growers[_local1].GotoCorrect();
_local1++;
}
onEnterFrame = GameOverWait;
} else {
ShowScore();
if (SetCount > MaxFill) {
Score = Score + ((SetCount - MaxFill) * Level);
MaxFill = SetCount;
}
TimeBar.gotoAndStop(Math.round((300 * (LevelEnd - getTimer())) / (LevelEnd - LevelStart)));
if (SetCount == (Width * Width)) {
var _local2 = Math.round(((LevelEnd - getTimer()) * Level) / 100);
ShowText("Time bonus: " + _local2);
Score = Score + _local2;
WaitTime = 80;
LevelOn = false;
onEnterFrame = LevelWait;
}
}
}
function GameOverWait() {
if ((WaitTime--) > 0) {
return(undefined);
}
Clear();
delete onEnterFrame;
gotoAndStop ("gameend");
}
function LevelWait() {
ShowScore();
if ((WaitTime--) > 0) {
return(undefined);
}
Clear();
StartLevel();
}
Array.prototype.PopRandom = function () {
var _local3 = this;
var _local1 = Math.floor(Math.random() * _local3.length);
var _local2 = _local3[_local1];
_local3.splice(_local1, 1);
return(_local2);
};
Color.prototype.setBrightness = function (bright) {
var _local3 = bright;
var _local2 = 0;
if (_local3 > 0) {
_local2 = 256 * (_local3 / 100);
}
var _local1 = new Object();
_local1.ra = (_local1.ga = (_local1.ba = 100 - Math.abs(_local3)));
_local1.rb = (_local1.gb = (_local1.bb = _local2));
this.setTransform(_local1);
};
Grower.prototype = new MovieClip();
Object.registerClass("Grower", Grower);
Grower.prototype.Grow = function () {
var _local1 = this;
do {
if (_local1.PossibleGrowAreas.length == 0) {
return(false);
}
var p = _local1.PossibleGrowAreas.PopRandom();
} while (Playfield[(p.x + "_") + p.y] != null);
_local1.GrowTo(p.x, p.y);
return(true);
};
Grower.prototype.GrowTo = function (x, y) {
var _local1 = this;
var _local2 = y;
var _local3 = x;
trace((((_local1._name + " grow to ") + _local3) + " ") + _local2);
_local1.Area.push({x:_local3, y:_local2});
if (_local3 > 0) {
_local1.PossibleGrowAreas.push({x:_local3 - 1, y:_local2});
}
if (_local3 < (Width - 1)) {
_local1.PossibleGrowAreas.push({x:_local3 + 1, y:_local2});
}
if (_local2 > 0) {
_local1.PossibleGrowAreas.push({x:_local3, y:_local2 - 1});
}
if (_local2 < (Width - 1)) {
_local1.PossibleGrowAreas.push({x:_local3, y:_local2 + 1});
}
Playfield[(_local3 + "_") + _local2] = _local1;
_local1.MinX = Math.min(_local1.MinX, _local3);
_local1.MaxX = Math.max(_local1.MaxX, _local3);
_local1.MinY = Math.min(_local1.MinY, _local2);
_local1.MaxY = Math.max(_local1.MaxY, _local2);
};
Grower.prototype.HasAreaAt = function (x, y) {
var _local3 = this;
var _local1 = 0;
while (_local1 < _local3.Area.length) {
var _local2 = _local3.Area[_local1];
if ((_local2.x == x) && (_local2.y == y)) {
return(true);
}
_local1++;
}
return(false);
};
Grower.prototype.Draw = function () {
with (this) {
var i = 0;
while (i < Area.length) {
var a = Area[i];
trace((a.x + " ") + a.y);
moveTo(BlockWidth * a.x, BlockWidth * a.y);
beginFill(col);
lineStyle(0, (this.HasAreaAt(a.x, a.y - 1) ? (col) : 16777215));
lineTo((BlockWidth * a.x) + BlockWidth, BlockWidth * a.y);
lineStyle(0, (this.HasAreaAt(a.x + 1, a.y) ? (col) : 16777215));
lineTo((BlockWidth * a.x) + BlockWidth, (BlockWidth * a.y) + BlockWidth);
lineStyle(0, (this.HasAreaAt(a.x, a.y + 1) ? (col) : 16777215));
lineTo(BlockWidth * a.x, (BlockWidth * a.y) + BlockWidth);
lineStyle(0, (this.HasAreaAt(a.x - 1, a.y) ? (col) : 16777215));
lineTo(BlockWidth * a.x, BlockWidth * a.y);
endFill();
i++;
}
}
this._xscale = 50;
this._yscale = 50;
};
Grower.prototype.NormalizePosition = function () {
var _local1 = this;
_local1.MinX = 999;
_local1.MinY = 999;
var _local3 = 0;
while (_local3 < _local1.Area.length) {
var _local2 = _local1.Area[_local3];
_local1.MinX = Math.min(_local1.MinX, _local2.x);
_local1.MinY = Math.min(_local1.MinY, _local2.y);
_local3++;
}
trace((((_local1._name + " mx: ") + mx) + " my: ") + my);
_local1.MaxX = 0;
_local1.MaxY = 0;
_local3 = 0;
while (_local3 < _local1.Area.length) {
var _local2 = _local1.Area[_local3];
_local2.x = _local2.x - _local1.MinX;
_local2.y = _local2.y - _local1.MinY;
_local1.MaxX = Math.max(_local1.MaxX, _local2.x);
_local1.MaxY = Math.max(_local1.MaxY, _local2.y);
_local3++;
}
_local1.onEnterFrame = _local1.Restore;
_local1.XPos = -1;
_local1.YPos = -1;
};
Grower.prototype.onPress = function () {
var _local1 = this;
var _local2 = _root;
if (!_local2.LevelOn) {
} else {
_local1.dsx = (_local2._xmouse - _local1._x) / _local1._xscale;
_local1.dsy = (_local2._ymouse - _local1._y) / _local1._yscale;
_local1.swapDepths(_local2.NextHighestDepth++);
_local1.onEnterFrame = _local1.Drag;
_local1.Remove();
}
};
Grower.prototype.onRelease = function () {
var _local1 = this;
var _local2 = _root;
if (!_local2.LevelOn) {
} else {
_local1.dex = _local2._xmouse;
_local1.dey = _local2._ymouse;
_local1.Set();
_local1.onEnterFrame = _local1.Restore;
}
};
Grower.prototype.onReleaseOutside = function () {
this.onRelease();
};
Grower.prototype.Remove = function () {
var _local2 = this;
if ((_local2.XPos < 0) || (_local2.YPos < 0)) {
} else {
var _local1 = 0;
while (_local1 < _local2.Area.length) {
var _local3 = _local2.Area[_local1];
Playfield[((_local3.x + _local2.XPos) + "_") + (_local3.y + _local2.YPos)] = null;
_local1++;
}
_root.SetCount = _root.SetCount - _local2.Area.length;
}
};
Grower.prototype.Set = function () {
var _local1 = this;
if (!_local1.CanBeSet()) {
} else {
var _local2 = 0;
while (_local2 < _local1.Area.length) {
var _local3 = _local1.Area[_local2];
Playfield[((_local3.x + _local1.XPos) + "_") + (_local3.y + _local1.YPos)] = _local1;
_local2++;
}
_root.SetCount = _root.SetCount + _local1.Area.length;
}
};
Grower.prototype.CanBeSet = function () {
var _local2 = this;
if ((_local2.XPos < 0) || (_local2.YPos < 0)) {
return(false);
}
var _local1 = 0;
while (_local1 < _local2.Area.length) {
var _local3 = _local2.Area[_local1];
if (Playfield[((_local3.x + _local2.XPos) + "_") + (_local3.y + _local2.YPos)] != null) {
return(false);
}
_local1++;
}
return(true);
};
Grower.prototype.Drag = function () {
var _local1 = this;
_local1._x = _root._xmouse - (_local1.dsx * _local1._xscale);
_local1._y = _root._ymouse - (_local1.dsy * _local1._yscale);
var _local2 = BlockWidth / 2;
_local1.XPos = -1;
_local1.YPos = -1;
if ((((_local1._x > (260 - _local2)) && (_local1._y > (20 - _local2))) && (_local1._x < ((540 - _local2) - (_local1.MaxX * BlockWidth)))) && (_local1._y < ((300 - _local2) - (_local1.MaxY * BlockWidth)))) {
_local1.XPos = Math.floor(((_local1._x - 260) + _local2) / BlockWidth);
_local1.YPos = Math.floor(((_local1._y - 20) + _local2) / BlockWidth);
_local1._x = 260 + (_local1.XPos * BlockWidth);
_local1._y = 20 + (_local1.YPos * BlockWidth);
}
if (!_local1.CanBeSet()) {
_local1._x = _local1._x + ((Math.random() * 4) - 2);
_local1._y = _local1._y + ((Math.random() * 4) - 2);
_local1.XPos = -1;
_local1.YPos = -1;
_local1._alpha = 75;
} else {
_local1._alpha = 100;
}
if (_local1._xscale < 100) {
_local1._xscale = _local1._xscale + 10;
}
if (_local1._yscale < 100) {
_local1._yscale = _local1._yscale + 10;
}
};
Grower.prototype.Restore = function () {
var _local1 = this;
if ((_local1.XPos < 0) && (_local1.YPos < 0)) {
if (_local1._xscale > 50) {
_local1._xscale = _local1._xscale - 10;
_local1._yscale = _local1._yscale - 10;
_local1._x = _local1.dex - (_local1.dsx * _local1._xscale);
_local1._y = _local1.dey - (_local1.dsy * _local1._yscale);
}
}
if ((_local1._x + (((_local1.MaxX * BlockWidth) * _xscale) / 100)) >= 560) {
_local1._x = _local1._x - 5;
}
if (_local1.XPos < 0) {
if ((_local1._x + (((_local1.MaxX * BlockWidth) * _local1._xscale) / 100)) >= 240) {
_local1._x = _local1._x - 5;
}
}
if (_local1._x < 0) {
_local1._x = _local1._x + 5;
}
if ((_local1._y + (((_local1.MaxY * BlockWIdth) * _local1._yscale) / 100)) >= 310) {
_local1._y = _local1._y - 5;
}
if (_local1._y < 0) {
_local1._y = _local1._y + 5;
}
};
Grower.prototype.GotoCorrect = function () {
var _local1 = this;
_local1.sx = _local1._x;
_local1.sy = _local1._y;
_local1.ex = 260 + (_local1.MinX * BlockWidth);
_local1.ey = 20 + (_local1.MinY * BlockWidth);
_local1.GCurr = 0;
_local1.GTotal = 100;
trace((((((_local1.sx + " ") + _local1.sy) + " - ") + _local1.ex) + " ") + _local1.ey);
_local1.onEnterFrame = _local1.GotoCorrectLoop;
};
Grower.prototype.GotoCorrectLoop = function () {
var _local1 = this;
_local1.GCurr++;
if (_local1._xscale < 100) {
_local1._xscale = _local1._xscale + 10;
}
if (_local1._yscale < 100) {
_local1._yscale = _local1._yscale + 10;
}
_local1._x = ((_local1.sx * (_local1.GTotal - _local1.GCurr)) + (_local1.ex * _local1.GCurr)) / _local1.GTotal;
_local1._y = ((_local1.sy * (_local1.GTotal - _local1.GCurr)) + (_local1.ey * _local1.GCurr)) / _local1.GTotal;
if (_local1.GCurr == _local1.GTotal) {
delete _local1.onEnterFrame;
}
};
_global.AreaWidth = 280;
gameID = 27;
Ckey = "BcusKw2Ty(eJ";
Ckey2 = "cnJs";
Ckey3 = "weEw";
Ckey4 = "pOiw";
Score = 0;
Level = 0;
Start();
stop();
Frame 7
//if(){}
LoadScoreSubmitter();
Symbol 5 MovieClip [Bar] Frame 1
//if(){}
function Set(x) {
f = Math.floor((1000 * x) / Max);
if (f < 1) {
gotoAndStop (1);
return(undefined);
}
if (f > 1000) {
gotoAndStop (1000);
return(undefined);
}
gotoAndStop(f);
}
stop();
Symbol 15 MovieClip [TextSlider] Frame 100
//if(){}
this.removeMovieClip();