home *** CD-ROM | disk | FTP | other *** search
Text File | 2007-03-20 | 37.7 KB | 1,730 lines |
- function showscore(yourscore)
- {
- var basenum = 2;
- var myscore = new String(yourscore);
- l = myscore.length;
- g = 0;
- while(g < 7)
- {
- if(l > g)
- {
- t = eval("sss.s" + (l - 1 - g));
- t.gotoAndStop(basenum + int(myscore.substring(g,g + 1)));
- }
- else
- {
- t = eval("sss.s" + g);
- t.gotoAndStop(1);
- }
- g++;
- }
- displayednum = yourscore;
- }
- function getRandomPos(yourMax, yourAmount)
- {
- var _loc3_ = new Array();
- var _loc1_ = 0;
- while(_loc1_ < yourAmount)
- {
- var _loc2_ = random(yourMax);
- _loc3_[_loc1_] = _loc2_;
- i = 0;
- while(i < _loc1_)
- {
- if(_loc3_[i] != _loc2_)
- {
- _loc3_[_loc1_] = _loc2_;
- }
- i++;
- }
- _loc1_ = _loc1_ + 1;
- }
- return _loc3_;
- }
- function getcolorinstage()
- {
- k = 0;
- arrColor = new Array("0");
- while(k < 255)
- {
- if(BBL[k].C > 0 && BBL[k].C < 7)
- {
- arrColor.push(BBL[k].C);
- }
- k++;
- }
- if(arrColor.length > 1)
- {
- return arrColor[random(arrColor.length - 1) + 1];
- }
- return 0;
- }
- function InitAll()
- {
- var r;
- var c;
- vMove = 4;
- _root.mypause = false;
- if(_root.keepscore == false)
- {
- CNT = 0;
- showscore(0);
- }
- _root.keepscore = false;
- vLevel = 0;
- vLevelMax = 6;
- cbEff.gotoAndStop(2);
- line.stop();
- gun.stop();
- BBL = new Array();
- RB = new Array();
- r = 0;
- while(r < 15)
- {
- c = 0;
- while(c < 17)
- {
- BBL[r * 17 + c] = new BB(r,c,0,"");
- c++;
- }
- r++;
- }
- r = 1;
- cc = 0;
- while(cc < BBL.length)
- {
- if(eval(BBL[cc]).N != "")
- {
- removeMovieClip(eval(BBL[cc]).N);
- }
- cc++;
- }
- if(vBubble != "")
- {
- removeMovieClip(eval(vBubble));
- }
- if(vBNext != "")
- {
- removeMovieClip(eval(vBNext));
- }
- removeMovieClip(EG);
- r = 0;
- while(r < 8)
- {
- eval("l" + r).gotoAndStop(1);
- r++;
- }
- stopother(true);
- vGE = 0;
- mylayer = 1;
- vDPT = 255;
- }
- function showtopten(btn)
- {
- _root.stopother(false);
- if(eval(top11) != null)
- {
- removeMovieClip(top11);
- }
- attachMovie("top10","top11",1002);
- switch(btn)
- {
- case "nextlevel":
- top11.back._visible = false;
- top11.backtomain._visible = false;
- break;
- case "backtomain":
- top11.back._visible = false;
- top11.nextlevel._visible = false;
- break;
- default:
- top11.backtomain._visible = false;
- top11.nextlevel._visible = false;
- }
- this.top11._x = 240;
- arrscore = new Array();
- arrname = new Array();
- _root.toptenplayers = _root.so.data.toptenplayers;
- i = 0;
- while(i < _root.toptenplayers.length)
- {
- arrscore[i] = _root.toptenplayers[i].S;
- i++;
- }
- arrscore.sort(Array.NUMERIC);
- arrscore.reverse();
- k = 0;
- while(k < arrscore.length)
- {
- i = 0;
- while(i < _root.toptenplayers.length)
- {
- if(_root.toptenplayers[i].S == arrscore[k])
- {
- arrname[k] = _root.toptenplayers[i].N;
- while(arrname[k].length < 10)
- {
- arrname[k] += " ";
- }
- }
- i++;
- }
- k++;
- }
- i = 0;
- while(i < 10)
- {
- if(arrname[i] != "")
- {
- eval("top11.t" + (i + 1)).text = arrname[i];
- }
- if(arrscore[i] != "")
- {
- eval("top11.t" + (i + 1) + "s").text = arrscore[i];
- }
- i++;
- }
- _root.stopother(false);
- }
- function getRandomPropNum(yourmin1, yourmax1, yourColor)
- {
- var _loc1_ = yourColor;
- k1 = 0;
- k2 = random(yourmax1 - yourmin1 + 1) + yourmin1;
- while(k1 < k2)
- {
- r = denyproparound(random(136) + 17);
- setProp(r,_loc1_);
- k1++;
- }
- return k2;
- }
- function denyproparound(k)
- {
- var _loc1_ = k;
- r = Math.floor(_loc1_ / 17);
- c = _loc1_ % 17;
- myf12 = true;
- if(c > 0 && c < 16)
- {
- myf12 = BBL[_loc1_].C < 7 and BBL[_loc1_ + 1].C < 7 and BBL[_loc1_ - 1].C < 7 and BBL[_loc1_ - 16].C < 7 and BBL[_loc1_ - 17].C < 7 and BBL[_loc1_ - 18].C < 7 and BBL[_loc1_ + 16].C < 7 and BBL[_loc1_ + 17].C < 7 and BBL[_loc1_ + 18].C < 7;
- }
- else
- {
- if(c == 0)
- {
- myf12 = BBL[_loc1_].C < 7 and BBL[_loc1_ + 1].C < 7 and BBL[_loc1_ - 16].C < 7 and BBL[_loc1_ - 17].C < 7 and BBL[_loc1_ + 17].C < 7 and BBL[_loc1_ + 18].C < 7;
- }
- if(c == 16)
- {
- myf12 = BBL[_loc1_].C < 7 and BBL[_loc1_ - 1].C < 7 and BBL[_loc1_ - 17].C < 7 and BBL[_loc1_ - 18].C < 7 and BBL[_loc1_ + 16].C < 7 and BBL[_loc1_ + 17].C < 7;
- }
- }
- if(myf12 == false)
- {
- if(_loc1_ < 152)
- {
- _loc1_ = _loc1_ + 1;
- }
- else
- {
- _loc1_ = 17;
- }
- return denyproparound(_loc1_);
- }
- return _loc1_;
- }
- function StartGame(gamemode, gameargument)
- {
- this.mF.useHandCursor = false;
- _root.showTitle();
- this.pn.text = _root.playerName;
- ClearStage();
- _root.arrPropAdded = new Array();
- InitAll();
- inten = false;
- vAllowPress = true;
- if(gamemode == _root.ModeItemsToSelect[0])
- {
- r = 0;
- while(r < vArcadeBubbles)
- {
- setBubble(r,random(6) + 1);
- r++;
- }
- setPropwithlevel(gameargument);
- endline = 238;
- }
- else
- {
- if(eval(mc_head1) != null)
- {
- removeMovieClip(mc_head1);
- }
- attachMovie("mc_head","mc_head1",50);
- eval(mc_head1)._x = 19;
- eval(mc_head1)._y = 70;
- vMaxRowofProp = 9;
- r = 0;
- while(r < vQuestBubbles)
- {
- setBubble(r,random(6) + 1);
- r++;
- }
- switch(gameargument)
- {
- case "STAGE 1":
- setProp(41,1);
- setProp(89,3);
- setProp(97,3);
- vMaxRowofProp = 5;
- break;
- case "STAGE 2":
- setProp(55,4);
- setProp(63,4);
- setProp(109,2);
- vMaxRowofProp = 6;
- break;
- case "STAGE 3":
- setProp(25,3);
- setProp(37,0);
- setProp(46,1);
- setProp(55,2);
- setProp(63,2);
- setProp(104,3);
- setProp(115,3);
- vMaxRowofProp = 6;
- break;
- case "STAGE 4":
- setProp(54,3);
- setProp(64,3);
- setProp(71,1);
- setProp(84,1);
- setProp(86,2);
- setProp(100,2);
- setProp(108,4);
- setProp(111,4);
- vMaxRowofProp = 6;
- break;
- case "STAGE 5":
- setProp(18,1);
- setProp(25,0);
- setProp(32,1);
- setProp(41,3);
- setProp(42,3);
- setProp(105,0);
- setProp(114,0);
- vMaxRowofProp = 6;
- break;
- case "STAGE 6":
- setProp(31,1);
- setProp(46,3);
- setProp(47,3);
- setProp(59,0);
- setProp(65,4);
- setProp(70,1);
- setProp(87,3);
- setProp(88,3);
- setProp(103,4);
- setProp(127,0);
- vMaxRowofProp = 7;
- break;
- case "STAGE 7":
- setProp(21,0);
- setProp(22,0);
- setProp(23,3);
- setProp(61,2);
- setProp(62,4);
- setProp(63,2);
- setProp(86,4);
- setProp(87,3);
- setProp(88,4);
- setProp(132,1);
- setProp(133,3);
- setProp(134,3);
- vMaxRowofProp = 7;
- break;
- case "STAGE 8":
- setProp(18,1);
- setProp(32,1);
- setProp(34,3);
- setProp(35,3);
- setProp(48,3);
- setProp(49,3);
- setProp(91,3);
- setProp(92,3);
- setProp(94,3);
- setProp(95,3);
- setProp(74,1);
- setProp(77,1);
- setProp(104,2);
- setProp(115,2);
- vMaxRowofProp = 6;
- break;
- case "STAGE 9":
- setProp(25,2);
- setProp(41,4);
- setProp(42,4);
- setProp(55,1);
- setProp(63,1);
- setProp(69,2);
- setProp(72,3);
- setProp(82,2);
- setProp(79,3);
- setProp(87,4);
- setProp(93,1);
- setProp(99,4);
- setProp(109,3);
- setProp(110,3);
- setProp(127,2);
- vMaxRowofProp = 7;
- break;
- case "STAGE 10":
- setProp(19,1);
- setProp(31,1);
- setProp(36,3);
- setProp(47,3);
- setProp(69,0);
- setProp(81,0);
- setProp(74,2);
- setProp(77,2);
- setProp(86,4);
- setProp(99,4);
- setProp(108,0);
- setProp(111,0);
- setProp(125,4);
- setProp(128,4);
- vMaxRowofProp = 7;
- break;
- case "STAGE 11":
- setProp(40,4);
- setProp(41,4);
- setProp(42,4);
- setProp(43,4);
- setProp(55,4);
- setProp(61,4);
- setProp(72,4);
- setProp(79,4);
- setProp(88,4);
- setProp(96,4);
- setProp(106,4);
- setProp(113,4);
- setProp(123,4);
- setProp(129,4);
- setProp(142,4);
- setProp(143,4);
- setProp(144,4);
- setProp(145,4);
- vMaxRowofProp = 8;
- break;
- case "STAGE 12":
- setProp(19,4);
- setProp(23,3);
- setProp(31,4);
- setProp(27,3);
- setProp(39,3);
- setProp(44,3);
- setProp(51,1);
- setProp(57,0);
- setProp(61,0);
- setProp(66,1);
- setProp(104,0);
- setProp(108,2);
- setProp(111,2);
- setProp(115,0);
- vMaxRowofProp = 6;
- break;
- case "STAGE 13":
- setProp(18,2);
- setProp(25,2);
- setProp(31,2);
- setProp(37,4);
- setProp(46,4);
- setProp(66,1);
- setProp(68,1);
- setProp(72,0);
- setProp(82,3);
- setProp(83,3);
- setProp(79,0);
- setProp(85,3);
- setProp(86,3);
- setProp(105,4);
- setProp(114,4);
- setProp(127,2);
- vMaxRowofProp = 7;
- break;
- case "STAGE 14":
- setProp(37,0);
- setProp(46,0);
- setProp(40,4);
- setProp(43,4);
- setProp(70,3);
- setProp(73,3);
- setProp(81,3);
- setProp(78,3);
- setProp(88,1);
- setProp(98,1);
- setProp(97,3);
- setProp(93,4);
- setProp(102,2);
- setProp(117,2);
- setProp(104,3);
- setProp(115,3);
- setProp(138,2);
- setProp(149,2);
- vMaxRowofProp = 8;
- break;
- case "STAGE 15":
- setProp(18,4);
- setProp(31,4);
- setProp(34,1);
- setProp(48,1);
- setProp(35,3);
- setProp(39,3);
- setProp(43,3);
- setProp(47,3);
- setProp(52,2);
- setProp(65,2);
- setProp(71,0);
- setProp(79,0);
- setProp(75,4);
- setProp(89,2);
- setProp(96,2);
- setProp(92,3);
- setProp(93,3);
- setProp(102,0);
- setProp(109,2);
- setProp(116,0);
- setProp(120,4);
- setProp(133,4);
- setProp(137,3);
- setProp(149,3);
- vMaxRowofProp = 8;
- break;
- case "STAGE 16":
- setProp(18,0);
- setProp(21,3);
- setProp(32,0);
- setProp(28,3);
- setProp(25,2);
- setProp(52,3);
- setProp(53,0);
- setProp(65,3);
- setProp(64,0);
- setProp(61,4);
- setProp(57,4);
- setProp(68,1);
- setProp(69,2);
- setProp(70,4);
- setProp(81,4);
- setProp(82,1);
- setProp(81,4);
- setProp(86,3);
- setProp(93,3);
- setProp(99,3);
- setProp(106,3);
- setProp(107,1);
- setProp(112,1);
- setProp(113,3);
- setProp(119,4);
- setProp(124,3);
- setProp(127,2);
- setProp(130,3);
- setProp(134,4);
- setProp(155,4);
- setProp(166,4);
- vMaxRowofProp = 9;
- }
- r = vMaxRowofProp * 17 + 17;
- while(r < 170)
- {
- var mymove = BBL[r].Moveable;
- ClearTheCell(r,false);
- BBL[r].Moveable = mymove;
- r++;
- }
- endline = 187;
- _root.attachMovie("stage" + gameargument.substring(6,gameargument.length),"mystagestart",10002);
- with(mystagestart)
- {
- _xscale = 200;
- _yscale = 200;
- _x = 247;
- _y = 299;
- }
- clearInterval(t4);
- t4 = setInterval(showmystage,10);
- }
- removeMovieClip(myx1to6);
- attachMovie("x1to6","myx1to6",1111);
- with(myx1to6)
- {
- _x = cR * 3.3;
- _y = cR * 30.5;
- }
- BMakeNext();
- BubbleMake();
- gotoAndPlay(4);
- vMove = 0;
- }
- function showmystage()
- {
- mynumforshowstage++;
- if(mynumforshowstage > 50)
- {
- mystagestart._alpha -= 4;
- }
- if(mystagestart._alpha < 1)
- {
- mynumforshowstage = 0;
- removeMovieClip(mystagestart);
- clearInterval(t4);
- }
- }
- function setBubble(myIndex, myc)
- {
- r = myIndex;
- if(BBL[r].N != "")
- {
- removeMovieClip(eval(BBL[r].N));
- BBL[r].N = "";
- _root.vRemoveBA = 0;
- }
- BBL[r].C = myc;
- BBL[r].N = "_b" + r;
- attachMovie("_b" + BBL[r].C,BBL[r].N,vDPT);
- eval(BBL[r].N)._x = BBL[r].X;
- eval(BBL[r].N)._y = BBL[r].Y;
- BBL[r].Moveable = true;
- vDPT++;
- }
- function setProp(myr, myc)
- {
- r = myr;
- if(BBL[r].C > 0)
- {
- removeMovieClip(eval(BBL[r].N));
- BBL[r].N = "";
- _root.vRemoveBA = 0;
- }
- switch(myc)
- {
- case 0:
- BBL[r].N = "_block" + r;
- attachMovie("block",BBL[r].N,vDPT);
- BBL[r].C = 7;
- break;
- case 1:
- BBL[r].N = "_bomb" + r;
- attachMovie("bomb",BBL[r].N,vDPT);
- BBL[r].C = 8;
- break;
- case 2:
- BBL[r].N = "_snowman" + r;
- attachMovie("snowman",BBL[r].N,vDPT);
- eval(BBL[r].N)._xscale = 85;
- eval(BBL[r].N)._yscale = 85;
- BBL[r].C = 9;
- break;
- case 3:
- BBL[r].N = "_icewall" + r;
- attachMovie("icewall",BBL[r].N,vDPT);
- eval(BBL[r].N)._xscale = 85;
- eval(BBL[r].N)._yscale = 85;
- BBL[r].C = 10;
- BBL[r].Moveable = false;
- myflg = r % 17;
- while(myflg < 255)
- {
- BBL[myflg].Moveable = false;
- myflg += 17;
- }
- break;
- case 4:
- BBL[r].N = "_holea" + r;
- attachMovie("holea",BBL[r].N,mylayer++);
- BBL[r].C = 11;
- myflg = r;
- while(myflg < 255)
- {
- myflg += 17;
- BBL[myflg].Moveable = false;
- }
- BBL[r].Moveable = false;
- break;
- default:
- BBL[r].C = 0;
- }
- eval(BBL[r].N)._x = BBL[r].X;
- eval(BBL[r].N)._y = BBL[r].Y;
- if(BBL[r].C == 10 || BBL[r].C == 7 || BBL[r].C == 8)
- {
- _root.arrPropAdded.push(BBL[r].N);
- }
- vDPT++;
- }
- function setPropwithlevel(mylevel)
- {
- var _loc1_ = 0;
- var _loc2_ = 0;
- var _loc3_ = 0;
- var block = 0;
- var hole = 0;
- if(mylevel == _root.DiffItemsToSelect[0])
- {
- hole = getRandomPropNum(2,2,4);
- _loc1_ = getRandomPropNum(1,1,3);
- _loc2_ = getRandomPropNum(2,3,2);
- _loc3_ = getRandomPropNum(1,3,1);
- }
- else
- {
- hole = getRandomPropNum(3,4,4);
- _loc1_ = getRandomPropNum(2,3,3);
- _loc2_ = getRandomPropNum(3,4,2);
- _loc3_ = getRandomPropNum(1,2,1);
- block = getRandomPropNum(2,3,0);
- }
- }
- function BB(ARow, ACol, yourColor, AN)
- {
- var _loc1_ = this;
- if(_root.myMode == _root.ModeItemsToSelect[0])
- {
- myheigth = 36;
- }
- else
- {
- myheigth = 36 + cD * 3;
- }
- _loc1_.Y = ARow * cR * 2 + myheigth;
- if((ARow + 2) % 2 == 0)
- {
- _loc1_.X = ACol * cD + cD;
- }
- else
- {
- _loc1_.X = ACol * cD + cR * 3;
- }
- _loc1_.Moveable = true;
- _loc1_.C = yourColor;
- _loc1_.N = AN;
- _loc1_.F = 0;
- }
- function BRemoveC(AR, AC, yourCheckColor)
- {
- var _loc2_ = AC;
- var _loc3_ = AR;
- var _loc1_ = undefined;
- var j;
- j = _loc3_ * 17 + _loc2_;
- _loc1_ = 0;
- while(_loc1_ < vRBC)
- {
- if(RB[_loc1_] == j)
- {
- return undefined;
- }
- _loc1_ = _loc1_ + 1;
- }
- if(BBL[j].C == yourCheckColor)
- {
- RB[vRBC] = j;
- vRBC++;
- if((_loc3_ + 2) % 2 == 0)
- {
- if(0 < _loc3_)
- {
- BRemoveC(_loc3_ - 1,_loc2_,yourCheckColor);
- if(0 < _loc2_)
- {
- BRemoveC(_loc3_ - 1,_loc2_ - 1,yourCheckColor);
- }
- }
- if(_loc3_ < 14)
- {
- BRemoveC(_loc3_ + 1,_loc2_,yourCheckColor);
- if(0 < _loc2_)
- {
- BRemoveC(_loc3_ + 1,_loc2_ - 1,yourCheckColor);
- }
- }
- }
- else
- {
- if(0 < _loc3_)
- {
- BRemoveC(_loc3_ - 1,_loc2_,yourCheckColor);
- if(_loc2_ < 16)
- {
- BRemoveC(_loc3_ - 1,_loc2_ + 1,yourCheckColor);
- }
- }
- if(_loc3_ < 14)
- {
- BRemoveC(_loc3_ + 1,_loc2_,yourCheckColor);
- if(_loc2_ < 16)
- {
- BRemoveC(_loc3_ + 1,_loc2_ + 1,yourCheckColor);
- }
- }
- }
- if(0 < _loc2_)
- {
- BRemoveC(_loc3_,_loc2_ - 1,yourCheckColor);
- }
- if(_loc2_ < 16)
- {
- BRemoveC(_loc3_,_loc2_ + 1,yourCheckColor);
- }
- }
- return undefined;
- }
- function BRemove()
- {
- var i;
- if(vRBC == 0 && vRemoveLN != "")
- {
- removeMovieClip(vRemoveLN);
- vRemoveLN = "";
- vRemoveBA = 0;
- if(vBubbleFR == 0)
- {
- BubbleFreeRemove();
- }
- if(vRBC == 0)
- {
- vMove = 0;
- BubbleMake();
- }
- else
- {
- vMove = 2;
- }
- return undefined;
- }
- if(vRemoveLN != "")
- {
- removeMovieClip(vRemoveLN);
- }
- Addscore(vC3);
- vC3++;
- i = RB.Shift();
- vRBC--;
- vRemoveBA = 1;
- vRemoveLN = eval(BBL[i].N);
- vRemoveLN.gotoAndPlay("H");
- BBL[i].C = 0;
- BBL[i].N = "";
- if(vMove == 0 && vRBC < 1)
- {
- BubbleMake();
- }
- }
- function BMakeNext()
- {
- var r;
- myc1 = getcolorinstage();
- if(myc1 == 0)
- {
- AllBubbleCleard();
- return undefined;
- }
- vBNext = "_b" + vDPT;
- vBNextC = myc1;
- if(eval(vBNext) != null)
- {
- removeMovieClip(eval(vBNext));
- }
- attachMovie("_b" + vBNextC,vBNext,vDPT);
- vDPT++;
- with(eval(vBNext))
- {
- _x = 23;
- _y = cR * 32;
- }
- }
- function BubbleMake()
- {
- if(EndGameCheck())
- {
- return undefined;
- }
- k4 = 6 - vLevel;
- if(k4 < 1 || k4 > 6)
- {
- k4 = 6;
- }
- this.myx1to6.gotoAndStop(k4);
- vBubble = vBNext;
- vBubbleC = vBNextC;
- vCurrentColor = vBubbleC;
- with(eval(vBubble))
- {
- _x = vStartX;
- _y = vStartY;
- }
- BMakeNext();
- }
- function BubbleMove()
- {
- var s;
- if(vGE)
- {
- GameOver();
- return undefined;
- }
- if(vMove == 2 && vRemoveBA != 1)
- {
- BRemove();
- }
- else
- {
- s = eval(vBubble);
- if(vMove == 1 && hittheball == false)
- {
- s._x += vDX;
- s._y += vDY;
- if(s._x < BBL[0].X || BBL[33].X < s._x)
- {
- vDX = - vDX;
- s._x += vDX;
- }
- BubbleMoveCheck();
- }
- if(vMove == 1 && hittheball)
- {
- if(s._y < mc_head1.ball._y + 70)
- {
- mc_head1.ball.gotoAndStop("over");
- mc_head1.mc_hitit1.gotoAndStop("end");
- a1 = s._x;
- a2 = s._y;
- removeMovieClip(s);
- _root.sesnd.start();
- k = 0;
- while(k < 20)
- {
- bublexp(a1,a2);
- k++;
- }
- hittheball = false;
- myStageClear();
- return undefined;
- }
- s._y -= 5;
- }
- }
- }
- function BubbleMoveCheck()
- {
- var s;
- var r;
- var c = -1000;
- s = eval(vBubble);
- if((s._y - myheigth) / cD > 1)
- {
- r = Math.round((s._y - myheigth) / cD);
- }
- else
- {
- r = int((s._y - myheigth) / cD);
- }
- if((r + 2) % 2 == 0)
- {
- c1 = int((s._x - cR) / cD);
- }
- else
- {
- c1 = int((s._x - cR - cR) / cD);
- }
- if(r < 1 && BBL[r * 17 + c1].C < 1)
- {
- if(_root.myMode == _root.ModeItemsToSelect[1])
- {
- bhitice = true;
- }
- _BMC(r,c1,s);
- return undefined;
- }
- if(s._x - BBL[r * 17 + c1].X < cD && s._y - BBL[r * 17 + c1].Y < cD)
- {
- c = c1;
- }
- if(vRR == r && vCC == c || 14 < r || 16 < c || c < 0)
- {
- return undefined;
- }
- if(0 >= r && cR >= s._y - myheigth)
- {
- _BMC(vRR,vCC,s);
- return undefined;
- }
- if(0 < BBL[r * 17 + c].C && BBL[r * 17 + c].C < 7)
- {
- eval(BBL[r * 17 + c].N).gotoAndPlay("B");
- _BMC(vRR,vCC,s);
- return undefined;
- }
- if(BBL[r * 17 + c].C >= 7)
- {
- mycolor = BBL[r * 17 + c].C;
- switch(mycolor)
- {
- case 7:
- _BMC(vRR,vCC,s);
- break;
- case 8:
- hitBomb(r,c,s);
- break;
- case 9:
- _BMC(vRR,vCC,s);
- _root.vAllowPress = false;
- eval(BBL[r * 17 + c].N).gotoAndPlay("kill");
- BBL[r * 17 + c].C = 12;
- break;
- case 12:
- _root.vAllowPress = false;
- eval(BBL[r * 17 + c].N).gotoAndPlay("fly");
- vDPT++;
- BBL[r * 17 + c].N = s._name;
- BBL[r * 17 + c].C = vCurrentColor;
- _BMC(r,c,s);
- break;
- case 10:
- bhitice = true;
- _BMC(vRR,vCC,s);
- break;
- case 11:
- hitHole(r,c,s);
- }
- return undefined;
- }
- if(0 < c && 0 < BBL[r * 17 + c - 1].C && 0.9 * cD >= s._x - BBL[r * 17 + c - 1].X)
- {
- if(BBL[r * 17 + c - 1].C == 11)
- {
- hitHole(r,c - 1,s);
- return undefined;
- }
- if(BBL[r * 17 + c - 1].C == 8)
- {
- hitBomb(r,c - 1,s);
- return undefined;
- }
- }
- if(c < 16 && 0 < BBL[r * 17 + c + 1].C && 0.9 * cD >= BBL[r * 17 + c + 1].X - s._x)
- {
- if(BBL[r * 17 + c + 1].C == 11)
- {
- hitHole(r,c + 1,s);
- return undefined;
- }
- if(BBL[r * 17 + c + 1].C == 8)
- {
- hitBomb(r,c + 1,s);
- return undefined;
- }
- }
- vRR = r;
- vCC = c;
- }
- function hitHole(r, c, s)
- {
- vAllowPress = false;
- eval(BBL[r * 17 + c].N).gotoAndStop("o" + vCurrentColor);
- removeMovieClip(s);
- BBL[r * 17 + c] = new BB(r,c,0,"");
- ResetMoveable();
- vMove = 0;
- if(LevelAdd() == 33)
- {
- clearInterval(interval_leveladd);
- interval_leveladd = setInterval(aa,10);
- }
- else
- {
- vMove = 0;
- BubbleMake();
- }
- }
- function hitBomb(r, c, s)
- {
- _root.mF.k = 0;
- _root.yourR = r;
- _root.yourC = c;
- eval(BBL[r * 17 + c].N).gotoAndPlay("E");
- vBubbleFR = 0;
- removeMovieClip(s);
- var w1 = BBL[r * 17 + c].Moveable;
- BBL[r * 17 + c] = new BB(r,c,0,"");
- BBL[r * 17 + c].Moveable = w1;
- vBubbleFR = 0;
- vMove = 0;
- if(inbomb == false)
- {
- BubbleMake();
- }
- }
- function ResetMoveable()
- {
- ii = 0;
- while(ii < BBL.length)
- {
- BBL[ii].Moveable = true;
- ii++;
- }
- i = 0;
- while(i < BBL.length)
- {
- if(BBL[i].C == 10)
- {
- k = 0;
- while(k < 15)
- {
- BBL[k * 17 + i % 17].Moveable = false;
- k++;
- }
- }
- if(BBL[i].C == 11)
- {
- k = i - 17;
- while(k < 255)
- {
- k += 17;
- BBL[k].Moveable = false;
- }
- }
- i++;
- }
- }
- function ClearProps()
- {
- k = 0;
- while(k < 255)
- {
- if(eval("_holea" + k) != null)
- {
- removeMovieClip(eval("_holea" + k));
- }
- ClearTheCell(k,false);
- k++;
- }
- removeMovieClip(myx1to6);
- }
- function ClearStage()
- {
- ClearProps();
- if(mc_head1 != null)
- {
- removeMovieClip(mc_head1);
- }
- if(vBubble != null)
- {
- removeMovieClip(vBubble);
- }
- if(vBNext != null)
- {
- removeMovieClip(vBNext);
- }
- }
- function ClearTheCell(yourIndex, AutoOrForce)
- {
- if(BBL[yourIndex].N != "")
- {
- if(AutoOrForce)
- {
- if(BBL[yourIndex].C == 9)
- {
- removeMovieClip(BBL[yourIndex].N);
- _root.vRemoveBA = 0;
- }
- else
- {
- eval(BBL[yourIndex].N).gotoAndPlay("H");
- }
- }
- else
- {
- removeMovieClip(BBL[yourIndex].N);
- _root.vRemoveBA = 0;
- }
- BBL[yourIndex].Moveable = true;
- BBL[yourIndex].C = 0;
- BBL[yourIndex].N = AN;
- BBL[yourIndex].F = 0;
- }
- }
- function _BMC(AR, AC, AS)
- {
- var _loc1_ = AR;
- var _loc2_ = AC;
- vCurrentColor = vBubbleC;
- vMove = 4;
- vBubbleFR = 0;
- BBL[_loc1_ * 17 + _loc2_].C = vBubbleC;
- BBL[_loc1_ * 17 + _loc2_].N = vBubble;
- AS._x = BBL[_loc1_ * 17 + _loc2_].X;
- AS._y = BBL[_loc1_ * 17 + _loc2_].Y;
- vRBC = 0;
- BRemoveC(_loc1_,_loc2_,vBubbleC);
- if(vRBC >= 3)
- {
- vC3 = 0;
- vMove = 2;
- }
- else
- {
- if(!bhitice)
- {
- sndhitball.start(0.1);
- }
- else
- {
- sndhitice.start();
- bhitice = false;
- }
- if(LevelAdd() == 33)
- {
- clearInterval(interval_leveladd);
- interval_leveladd = setInterval(aa,10);
- }
- else
- {
- vMove = 0;
- BubbleMake();
- }
- }
- }
- function ClearFreeBB()
- {
- _root.vRemoveBA = 0;
- vRBC = BubbleFreeRemove();
- if(0 < vRBC)
- {
- BRemove();
- vBubbleFR = 2;
- vMove = 2;
- }
- else
- {
- vMove = 0;
- BubbleMake();
- }
- }
- function BubbleFreeRemove()
- {
- var _loc1_ = undefined;
- var r;
- var c;
- if(vBubbleFR)
- {
- return undefined;
- }
- vBubbleFR = 1;
- vC3 = 0;
- _loc1_ = 0;
- while(_loc1_ < 255)
- {
- BBL[_loc1_].F = 0;
- _loc1_ = _loc1_ + 1;
- }
- _loc1_ = 0;
- while(_loc1_ < 17)
- {
- if(0 < BBL[_loc1_].C && BBL[_loc1_].F == 0)
- {
- _BFR(0,_loc1_);
- }
- _loc1_ = _loc1_ + 1;
- }
- vRBC = 0;
- _loc1_ = 0;
- while(_loc1_ < 255)
- {
- if(BBL[_loc1_].C == 10)
- {
- _BFR(Math.floor(_loc1_ / 17),_loc1_ % 17);
- }
- if(0 < BBL[_loc1_].C && BBL[_loc1_].C != 11 && BBL[_loc1_].F == 0)
- {
- RB[vRBC] = _loc1_;
- vRBC++;
- }
- _loc1_ = _loc1_ + 1;
- }
- return vRBC;
- }
- function _BFR(AR, AC)
- {
- var _loc1_ = AC;
- var _loc2_ = AR;
- if(BBL[_loc2_ * 17 + _loc1_].C == 0 || BBL[_loc2_ * 17 + _loc1_].C == 11 || BBL[_loc2_ * 17 + _loc1_].F == 1)
- {
- return undefined;
- }
- BBL[_loc2_ * 17 + _loc1_].F = 1;
- if((_loc2_ + 2) % 2 == 0)
- {
- if(0 < _loc2_)
- {
- _BFR(_loc2_ - 1,_loc1_);
- if(0 < _loc1_)
- {
- _BFR(_loc2_ - 1,_loc1_ - 1);
- }
- }
- if(_loc2_ < 14)
- {
- _BFR(_loc2_ + 1,_loc1_);
- if(0 < _loc1_)
- {
- _BFR(_loc2_ + 1,_loc1_ - 1);
- }
- }
- }
- else
- {
- if(0 < _loc2_)
- {
- _BFR(_loc2_ - 1,_loc1_);
- if(_loc1_ < 16)
- {
- _BFR(_loc2_ - 1,_loc1_ + 1);
- }
- }
- if(_loc2_ < 14)
- {
- _BFR(_loc2_ + 1,_loc1_);
- if(_loc1_ < 16)
- {
- _BFR(_loc2_ + 1,_loc1_ + 1);
- }
- }
- }
- if(0 < _loc1_)
- {
- _BFR(_loc2_,_loc1_ - 1);
- }
- if(_loc1_ < 16)
- {
- _BFR(_loc2_,_loc1_ + 1);
- }
- }
- function LevelAdd()
- {
- var r;
- var c;
- var i;
- var j;
- vLevel++;
- if(vLevel < vLevelMax)
- {
- return 1;
- }
- vMove = 4;
- vLevel = 0;
- return 33;
- }
- function aa()
- {
- var r;
- var c;
- var i;
- var j;
- r = 13;
- _root.mypause = true;
- flag_leveladd = false;
- while(r >= 0 && vAllowPress)
- {
- c = 0;
- while(c < 17)
- {
- j = (r + 1) * 17 + c;
- i = r * 17 + c;
- if(BBL[j].Moveable || BBL[j].C == 0)
- {
- if(BBL[i].Moveable)
- {
- var stepx111 = (BBL[j].X - BBL[i].X) / 5;
- var stepy111 = (BBL[j].Y - BBL[i].Y) / 5;
- eval(BBL[i].N)._x += stepx111;
- eval(BBL[i].N)._y += stepy111;
- if(eval(BBL[i].N)._y > BBL[j].Y)
- {
- BBL[j].N = BBL[i].N;
- BBL[j].C = BBL[i].C;
- BBL[j].F = BBL[i].F;
- eval(BBL[i].N)._x = BBL[j].X;
- eval(BBL[i].N)._y = BBL[j].Y;
- BBL[i] = new BB(r,c,0,"");
- flag_leveladd = true;
- }
- }
- }
- else if(BBL[i].Moveable && BBL[j].C == 11)
- {
- removeMovieClip(eval(BBL[i].N));
- BBL[i] = new BB(r,c,0,"");
- }
- c++;
- }
- r--;
- }
- if(flag_leveladd)
- {
- clearInterval(interval_leveladd);
- i = endline;
- while(i < endline + 17)
- {
- if(BBL[i].C > 0)
- {
- clearInterval(interval_leveladd);
- GameOver();
- return undefined;
- }
- i++;
- }
- c = 0;
- while(c < 17)
- {
- if(BBL[c].C == 0)
- {
- BBL[c].N = "_b" + vDPT;
- myc2 = getcolorinstage();
- if(myc2 == 0)
- {
- AllBubbleCleard();
- return undefined;
- }
- BBL[c].C = myc2;
- if(eval(BBL[c].N) != null)
- {
- removeMovieClip(eval(BBL[c].N));
- }
- attachMovie("_b" + BBL[c].C,BBL[c].N,vDPT);
- eval(BBL[c].N)._x = BBL[c].X;
- eval(BBL[c].N)._y = BBL[c].Y;
- vDPT++;
- }
- c++;
- }
- _root.mypause = false;
- ClearFreeBB();
- }
- }
- function AllBubbleCleard()
- {
- stopother(false);
- _root.mypause = false;
- if(_root.myMode == _root.ModeItemsToSelect[1])
- {
- myheigth = -100;
- this.mc_head1.gotoAndPlay(2);
- }
- else
- {
- ClearStage();
- _root.keepscore = true;
- if(myyouwin != null)
- {
- removeMovieClip(myyouwin);
- }
- attachMovie("mc_youwin","myyouwin",1222);
- with(myyouwin)
- {
- _x = 230;
- _y = 230;
- }
- myyouwin.onPress = function()
- {
- _root.WellDone();
- removeMovieClip(myyouwin);
- };
- }
- }
- function EndGameCheck()
- {
- var _loc2_ = _root;
- var _loc1_ = undefined;
- _loc1_ = endline;
- while(_loc1_ < 255)
- {
- if(0 < BBL[_loc1_].C)
- {
- vBONUS = 0;
- vGE = 1;
- return 1;
- }
- _loc1_ = _loc1_ + 1;
- }
- _loc1_ = 0;
- if(_loc2_.myMode == _loc2_.ModeItemsToSelect[1])
- {
- while(_loc1_ < 17)
- {
- if(0 < BBL[_loc1_].C && BBL[_loc1_].C < 7)
- {
- return 0;
- }
- _loc1_ = _loc1_ + 1;
- }
- }
- else if(getcolorinstage() != 0)
- {
- return 0;
- }
- ClearProps();
- vBONUS = 10000;
- _loc2_.CNT += vBONUS;
- showscore(_loc2_.CNT);
- AllBubbleCleard();
- return 0;
- }
- function GameOver()
- {
- attachMovie("_EG","EG",16000);
- this.EG.pn3.text = _root.playerName;
- EG._x = 240;
- EG._y = 240;
- stopother(false);
- gotoAndStop("GO");
- }
- function WellDone()
- {
- attachMovie("welldone","wd",16001);
- this.wd.pn3.text = _root.playerName;
- wd._x = 240;
- wd._y = 240;
- stopother(false);
- gotoAndStop("GO");
- }
- function WorldCompleted()
- {
- attachMovie("worldcompleted","wp",16002);
- this.wp.pn3.text = _root.playerName;
- wp._x = 240;
- wp._y = 240;
- stopother(false);
- gotoAndStop("GO");
- }
- function myStageClear()
- {
- attachMovie("mc_stageclear","mc_stageclear1",7000);
- mc_stageclear1._x = 240;
- mc_stageclear1._y = 200;
- }
- function Crypto(st)
- {
- var _loc3_ = st;
- var sum1 = 0;
- var sum2 = 0;
- var i = 0;
- while(i < _loc3_.length)
- {
- sum1 += _loc3_.charCodeAt(i);
- sum2 += _loc3_.charCodeAt(i) ^ 0xAF;
- i++;
- }
- sum1 %= 256;
- sum2 %= 256;
- _loc3_ = String.fromCharCode(sum1) + String.fromCharCode(sum2) + _loc3_;
- var cryptSt = "";
- var b0 = 193;
- var i = 0;
- while(i < _loc3_.length)
- {
- var b = _loc3_.charCodeAt(i);
- var _loc1_ = b ^ b0;
- _loc1_ = _loc1_.toString();
- var len = _loc1_.length;
- var _loc2_ = 0;
- while(_loc2_ < 3 - len)
- {
- _loc1_ = "0" + _loc1_;
- _loc2_ = _loc2_ + 1;
- }
- cryptSt += _loc1_;
- b0 = b;
- i++;
- }
- return cryptSt;
- }
- function PropSplash()
- {
- myA = new Array();
- for(i in _root.arrPropAdded)
- {
- if(eval(_root.arrPropAdded[i]) != null)
- {
- myA.push(_root.arrPropAdded[i]);
- }
- }
- if(myA.length > 0)
- {
- var s = myA[random(myA.length)];
- eval(s).gotoAndPlay("S");
- }
- }
- function bombexplord(r, c)
- {
- inbomb = true;
- k = 0;
- t = -1;
- mynum = 0;
- while(k < 255)
- {
- if(Math.sqrt(Math.pow(BBL[k].X - BBL[r * 17 + c].X,2) + Math.pow(BBL[k].Y - BBL[r * 17 + c].Y,2)) <= 4 * cR)
- {
- if(Math.floor(k / 17) != r)
- {
- if(Math.abs(k % 17 - c) < 2)
- {
- if(eval(BBL[k].N) != null)
- {
- mynum++;
- }
- if(BBL[k].C == 8 && k != r * 17 + c)
- {
- t = k;
- }
- else
- {
- ClearTheCell(k,true);
- }
- }
- }
- else
- {
- if(eval(BBL[k].N) != null)
- {
- mynum++;
- }
- if(BBL[k].C == 8 && k != r * 17 + c)
- {
- t = k;
- }
- else
- {
- ClearTheCell(k,true);
- }
- }
- if(t != -1 and t != r * 17 + c)
- {
- bombexplord(Math.floor(t / 17),t % 17);
- }
- }
- k++;
- }
- vBubbleFR = 0;
- vRBC = BubbleFreeRemove();
- while(vRBC > 0)
- {
- vRBC--;
- myf = RB.shift();
- removeMovieClip(eval(BBL[myf].N));
- BBL[myf].C = 0;
- BBL[myf].N = "";
- }
- Addscore(mynum);
- inbomb = false;
- ResetMoveable();
- EndGameCheck();
- }
- function Addscore(bublnum)
- {
- if(vBubbleFR == 0)
- {
- CNT += (int(bublnum / 3) + 1) * 10;
- }
- else if(vBubbleFR == 1)
- {
- CNT += (int(bublnum / 3) + 1) * 100;
- }
- }
- function bublexp(x1, y1)
- {
- vDPT++;
- attachMovie("_be2","mybe" + vDPT,vDPT);
- var s1 = eval("mybe" + vDPT);
- with(s1)
- {
- _x = x1;
- _y = y1;
- _xscale = 10;
- _yscale = 10;
- }
- s1.onEnterFrame = function()
- {
- if(s1.aa._alpha < 1)
- {
- removeMovieClip(s1._name);
- }
- };
- }
- if(!initialized)
- {
- initialized = true;
- fscommand("showmenu",false);
- _root.touxiangforshow.gotoAndStop(_root.playerInco);
- mynumforshowstage = 0;
- myClm = new Array();
- var sndhitball = new Sound();
- var sndhitice = new Sound();
- sndhitball.attachSound("hitball");
- sndhitice.attachSound("hitice");
- _root.sesnd.attachSound("ball_ex");
- _root.musicsnd.onLoad = function()
- {
- _root.musicsnd.start();
- };
- var arrColor = new Array();
- cR = 13;
- var CNT;
- var interval_leveladd;
- var flag_leveladd = false;
- var displayednum = 0;
- inbomb = false;
- inten = false;
- hittheball = false;
- cD = cR * 2;
- cDD = 0.6400000000000001 * cD * cD;
- var arrBTMD = new Array();
- var counter1 = 0;
- var bhitice = false;
- var Interval_ken;
- var interval_show1row;
- vRBC = 0;
- myheigth = 36;
- var vAllowPress = true;
- vRemoveBA = 0;
- vRemoveLN = "";
- vCurrentColor = 0;
- vBubbleFR = 0;
- vBNext = "";
- vBubble = "";
- vBNextC = 0;
- vBubbleC = 0;
- vDelta = 12;
- vArcadeBubbles = 153;
- vQuestBubbles = 170;
- vMove = 0;
- vDX = 0;
- vDY = 0;
- vStartX = cR * 18;
- vStartY = cR * 32;
- mylayer = 1;
- vDPT = 255;
- vRR = 0;
- vCC = 0;
- vC3 = 0;
- vLevel = 0;
- vLevelMax = 6;
- vGE = 0;
- vBONUS = 0;
- endline = 238;
- vRool = 0;
- StartGame(_root.myMode,_root.myDiff);
- }
- return undefined;
-