diff --git a/_locales/bg/messages.json b/_locales/bg/messages.json deleted file mode 100644 index 8a6d8e69..00000000 --- a/_locales/bg/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plant vs. Zombies MODDED \u041e\u0444\u0438\u0446\u0438\u0430\u043b\u043d\u0430" - }, - "AppDesc": { - "message": "\u0418\u0433\u0440\u0430\u0439\u0442\u0435 \"Plant vs. Zombies MODDED Official\" \u043a\u0430\u0442\u043e Chrome \u0440\u0430\u0437\u0448\u0438\u0440\u0435\u043d\u0438\u0435 - \u041c\u043e\u0436\u0435\u0442\u0435 \u0434\u0430 \u0438\u0433\u0440\u0430\u0435\u0442\u0435 \u0438 \u0431\u0435\u0437 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442, \u043e\u043f\u0438\u0442\u0430\u0439\u0442\u0435 \u0441\u0435\u0433\u0430!" - } -} diff --git a/_locales/ca/messages.json b/_locales/ca/messages.json deleted file mode 100644 index aaec7ded..00000000 --- a/_locales/ca/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plantas vs. Zombies MODIFICADO Oficial" - }, - "AppDesc": { - "message": "Juega a Plant vs. Zombies MODIFICADO Official como una extensi\u00f3n de Chrome. Tambi\u00e9n puedes jugar sin internet, \u00a1pru\u00e9balo ahora!" - } -} diff --git a/_locales/cs/messages.json b/_locales/cs/messages.json deleted file mode 100644 index 6d6136ea..00000000 --- a/_locales/cs/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plant vs. Zombies GEÄNDERT Ofici\u00e1ln\u00ed" - }, - "AppDesc": { - "message": "Spielen Sie Pflanzen gegen Zombies GEÄNDERT Offiziell als Chrome-Erweiterung - Sie k\u00f6nnen es auch ohne Internet spielen, probieren Sie es jetzt aus!" - } -} diff --git a/_locales/da/messages.json b/_locales/da/messages.json deleted file mode 100644 index 106bf127..00000000 --- a/_locales/da/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plant vs. Zombies MODIFICERET Officiel" - }, - "AppDesc": { - "message": "Spil Plant vs. Zombies MODIFICERET Official som en Chrome-udvidelse - Du kan ogs\u00e5 spille uden internet, pr\u00f8v det nu!" - } -} diff --git a/_locales/de/messages.json b/_locales/de/messages.json deleted file mode 100644 index 17288b9c..00000000 --- a/_locales/de/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Pflanzen gegen Zombies GEÄNDERT Offiziell" - }, - "AppDesc": { - "message": "Juega a Plant vs. Zombies GEÄNDERT Official como extensi\u00f3n de Chrome - Adem\u00e1s, puedes jugar sin internet. \u00a1Pru\u00e9balo ahora!" - } -} diff --git a/_locales/el/messages.json b/_locales/el/messages.json deleted file mode 100644 index 9c11a855..00000000 --- a/_locales/el/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plantas contra MODIFICADO Zombies Oficial" - }, - "AppDesc": { - "message": "Juega Plant vs. Zombies MODIFICADO Official como una extensi\u00f3n de Chrome. \u00a1Tambi\u00e9n puedes jugar sin conexi\u00f3n a internet, pru\u00e9balo ahora!" - } -} diff --git a/_locales/en/messages.json b/_locales/en/messages.json deleted file mode 100644 index 7f60bc1f..00000000 --- a/_locales/en/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plant vs. Zombies MODDED Official" - }, - "AppDesc": { - "message": "Play Plant vs. Zombies MODDED Official as a Chrome extension - Also can Play without Internet, try it now!" - } -} diff --git a/_locales/es/messages.json b/_locales/es/messages.json deleted file mode 100644 index 295581c5..00000000 --- a/_locales/es/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plantas contra Zombies Oficial" - }, - "AppDesc": { - "message": "Juega Plant vs. Zombies Oficial como una extensi\u00f3n de Chrome: \u00a1Tambi\u00e9n puedes jugar sin conexi\u00f3n a Internet, pru\u00e9balo ahora!" - } -} diff --git a/_locales/et/messages.json b/_locales/et/messages.json deleted file mode 100644 index f86bd40b..00000000 --- a/_locales/et/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plant vs. Zombies Officiel" - }, - "AppDesc": { - "message": "Jouez \u00e0 Plant vs. Zombies MODDED Official en tant qu'extension Chrome. Vous pouvez \u00e9galement y jouer sans connexion Internet, essayez d\u00e8s maintenant !" - } -} diff --git a/_locales/fi/messages.json b/_locales/fi/messages.json deleted file mode 100644 index 032a4ee4..00000000 --- a/_locales/fi/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plants vs. Zombies Virallista" - }, - "AppDesc": { - "message": "Pelaa Plant vs. Zombies MODDED Officialia Chrome-laajennuksena - Voit my\u00f6s pelata ilman internetyhteytt\u00e4, kokeile nyt!" - } -} diff --git a/_locales/fr/messages.json b/_locales/fr/messages.json deleted file mode 100644 index 0f44e12f..00000000 --- a/_locales/fr/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plantes contre Zombies Officiel" - }, - "AppDesc": { - "message": "Jouez \u00e0 Plants vs Zombies MODDED Official en tant qu'extension Chrome - Vous pouvez \u00e9galement y jouer sans Internet, essayez-le maintenant !" - } -} diff --git a/_locales/he/messages.json b/_locales/he/messages.json deleted file mode 100644 index b6f1d6bf..00000000 --- a/_locales/he/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plantas vs. Zombies Oficial" - }, - "AppDesc": { - "message": "Juega Plant vs. Zombies MODDED Official como una extensi\u00f3n de Chrome - \u00a1Tambi\u00e9n puedes jugar sin conexi\u00f3n a Internet, pru\u00e9balo ahora!" - } -} diff --git a/_locales/hi/messages.json b/_locales/hi/messages.json deleted file mode 100644 index 19795a97..00000000 --- a/_locales/hi/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plantas contra Zombis Oficial" - }, - "AppDesc": { - "message": "Jouez \u00e0 Plant vs. Zombies MODDED Official en tant qu'extension Chrome - Vous pouvez \u00e9galement jouer sans Internet, essayez-le maintenant!" - } -} diff --git a/_locales/hr/messages.json b/_locales/hr/messages.json deleted file mode 100644 index a31ff0c0..00000000 --- a/_locales/hr/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Slu\u017ebeno Plant vs. Zombies" - }, - "AppDesc": { - "message": "Jouez \u00e0 Plant vs. Zombies MODDED Official en tant qu'extension Chrome - Vous pouvez \u00e9galement jouer sans internet, essayez-le d\u00e8s maintenant !" - } -} diff --git a/_locales/hu/messages.json b/_locales/hu/messages.json deleted file mode 100644 index 9f79c8f0..00000000 --- a/_locales/hu/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "N\u00f6v\u00e9nyek vs. Zombik Hivatalos" - }, - "AppDesc": { - "message": "J\u00e1tszd a N\u00f6v\u00e9nyek kontra Zombik hivatalos verzi\u00f3j\u00e1t Chrome-b\u0151v\u00edtm\u00e9nyk\u00e9nt - Pr\u00f3b\u00e1ld ki internet n\u00e9lk\u00fcl is!" - } -} diff --git a/_locales/id/messages.json b/_locales/id/messages.json deleted file mode 100644 index 8d75152b..00000000 --- a/_locales/id/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Tanaman vs Zombies Resmi" - }, - "AppDesc": { - "message": "Mainkan Plant vs. Zombies MODDED Official sebagai ekstensi Chrome - Juga dapat dimainkan tanpa internet, coba sekarang!" - } -} diff --git a/_locales/is/messages.json b/_locales/is/messages.json deleted file mode 100644 index 69e88928..00000000 --- a/_locales/is/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plantas contra Zombies Oficial" - }, - "AppDesc": { - "message": "Juega Plantas vs. Zombis Oficial como una extensi\u00f3n de Chrome - \u00a1Tambi\u00e9n se puede jugar sin conexi\u00f3n a internet, pru\u00e9balo ahora!" - } -} diff --git a/_locales/it/messages.json b/_locales/it/messages.json deleted file mode 100644 index bcd0255c..00000000 --- a/_locales/it/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plantas contra Zombies Oficial" - }, - "AppDesc": { - "message": "Juega Plant vs. Zombies Oficial como una extensi\u00f3n de Chrome - Adem\u00e1s, \u00a1puedes jugar sin internet, pru\u00e9balo ahora!" - } -} diff --git a/_locales/ja/messages.json b/_locales/ja/messages.json deleted file mode 100644 index 9341e276..00000000 --- a/_locales/ja/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "\u30d7\u30e9\u30f3\u30c8 vs. \u30be\u30f3\u30d3 \u30aa\u30d5\u30a3\u30b7\u30e3\u30eb" - }, - "AppDesc": { - "message": "Chrome\u62e1\u5f35\u3068\u3057\u3066\u300cPlant vs. Zombies MODDED Official\u300d\u3092\u30d7\u30ec\u30a4\u3067\u304d\u307e\u3059\u3002\u307e\u305f\u3001\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u306b\u63a5\u7d9a\u305b\u305a\u306b\u30d7\u30ec\u30a4\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002\u4eca\u3059\u3050\u8a66\u3057\u3066\u307f\u3066\u304f\u3060\u3055\u3044\uff01" - } -} diff --git a/_locales/ko/messages.json b/_locales/ko/messages.json deleted file mode 100644 index 8d4cf742..00000000 --- a/_locales/ko/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "\ud50c\ub79c\ud2b8 \ub300 \uc880\ube44 \uacf5\uc2dd" - }, - "AppDesc": { - "message": "\ud06c\ub86c \ud655\uc7a5 \ud504\ub85c\uadf8\ub7a8\uc73c\ub85c \uacf5\uc2dd \ud50c\ub79c\ud2b8 \ub300 \uc880\ube44 \uac8c\uc784\uc744 \ud50c\ub808\uc774\ud558\uc138\uc694 - \uc778\ud130\ub137 \uc5c6\uc774\ub3c4 \ud50c\ub808\uc774\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc9c0\uae08 \ubc14\ub85c \uc2dc\ub3c4\ud574\ubcf4\uc138\uc694!" - } -} diff --git a/_locales/lt/messages.json b/_locales/lt/messages.json deleted file mode 100644 index e60d2e5d..00000000 --- a/_locales/lt/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "\"Plantos prie\u0161 Zombius\" oficialus" - }, - "AppDesc": { - "message": "\u017daiskite \"Plant vs. Zombies\" oficialiai kaip \"Chrome\" pl\u0117tin\u012f - Taip pat galite \u017eaisti be interneto, i\u0161bandykite dabar!" - } -} diff --git a/_locales/lv/messages.json b/_locales/lv/messages.json deleted file mode 100644 index b305998f..00000000 --- a/_locales/lv/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Augu\u013cu pret Zombijiem Ofici\u0101l\u0101 versija" - }, - "AppDesc": { - "message": "Sp\u0113l\u0113jiet \"Plant vs. Zombies MODDED Official\" k\u0101 Chrome papla\u0161in\u0101jumu - Varat sp\u0113l\u0113t ar\u012b bez interneta, izm\u0113\u0123iniet tagad!" - } -} diff --git a/_locales/ms/messages.json b/_locales/ms/messages.json deleted file mode 100644 index 8dd72591..00000000 --- a/_locales/ms/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "\u690d\u7269\u5927\u6218\u50f5\u5c38\u5b98\u65b9\u7248" - }, - "AppDesc": { - "message": "Mainkan Plant vs. Zombies MODDED Official sebagai ekstensi Chrome - Juga bisa dimainkan tanpa internet, coba sekarang!" - } -} diff --git a/_locales/nl/messages.json b/_locales/nl/messages.json deleted file mode 100644 index ff1fcefa..00000000 --- a/_locales/nl/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plant vs. Zombies Officieel" - }, - "AppDesc": { - "message": "Jouez \u00e0 Plant vs. Zombies Officiel en tant qu'extension Chrome - Vous pouvez aussi jouer sans internet, essayez-le maintenant !" - } -} diff --git a/_locales/no/messages.json b/_locales/no/messages.json deleted file mode 100644 index 772561f8..00000000 --- a/_locales/no/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plantas contra Zombies Oficial" - }, - "AppDesc": { - "message": "Speel Plant vs. Zombies MODDED Official as 'n Chrome-uitbreiding - Kan ook sonder internet speel, probeer dit nou!" - } -} diff --git a/_locales/pl/messages.json b/_locales/pl/messages.json deleted file mode 100644 index 099b0111..00000000 --- a/_locales/pl/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Oficjalna gra Plant vs. Zombies" - }, - "AppDesc": { - "message": "Juega Plantas vs. Zombies Oficial como una extensi\u00f3n de Chrome: \u00a1Adem\u00e1s, puedes jugar sin Internet, pru\u00e9balo ahora mismo!" - } -} diff --git a/_locales/pt/messages.json b/_locales/pt/messages.json deleted file mode 100644 index f4a9eed0..00000000 --- a/_locales/pt/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plantas contra Zombies Oficial" - }, - "AppDesc": { - "message": "Juega Plant vs. Zombies MODDED Official como extensi\u00f3n de Chrome - \u00a1Tambi\u00e9n puedes jugar sin Internet, pru\u00e9balo ahora!" - } -} diff --git a/_locales/ro/messages.json b/_locales/ro/messages.json deleted file mode 100644 index 316bf549..00000000 --- a/_locales/ro/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plant vs. Zombies MODIFICAT Oficial" - }, - "AppDesc": { - "message": "Joac\u0103 Plant vs. Zombies MODIFICAT Official ca o extensie Chrome - Po\u021bi juca \u0219i f\u0103r\u0103 internet, \u00eencearc\u0103 acum!" - } -} diff --git a/_locales/ru/messages.json b/_locales/ru/messages.json deleted file mode 100644 index 17ed0d68..00000000 --- a/_locales/ru/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "\u0417\u0430\u0432\u043e\u0434 \u0438 \u0437\u043e\u043c\u0431\u0438 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435" - }, - "AppDesc": { - "message": "\u0418\u0433\u0440\u0430\u0439\u0442\u0435 \u0432 Plants vs. Zombies MODDED Official \u0432 \u0432\u0438\u0434\u0435 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u0434\u043b\u044f Chrome - \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043c\u043e\u0436\u043d\u043e \u0438\u0433\u0440\u0430\u0442\u044c \u0431\u0435\u0437 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430, \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0441\u0435\u0439\u0447\u0430\u0441!" - } -} diff --git a/_locales/sk/messages.json b/_locales/sk/messages.json deleted file mode 100644 index 7f60bc1f..00000000 --- a/_locales/sk/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plant vs. Zombies MODDED Official" - }, - "AppDesc": { - "message": "Play Plant vs. Zombies MODDED Official as a Chrome extension - Also can Play without Internet, try it now!" - } -} diff --git a/_locales/sl/messages.json b/_locales/sl/messages.json deleted file mode 100644 index 2db20ec9..00000000 --- a/_locales/sl/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plant vs. Zombies MODDED Official" - }, - "AppDesc": { - "message": "Speel Plant vs. Zombies Amptelik as 'n Chrome-verlenging - Jy kan dit ook sonder internet speel, probeer dit nou!" - } -} diff --git a/_locales/sr/messages.json b/_locales/sr/messages.json deleted file mode 100644 index bcfed4bb..00000000 --- a/_locales/sr/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "\u0417\u0430\u0441\u0430\u0434\u0430 \u043f\u0440\u043e\u0442\u0438\u0432 \u0417\u043e\u043c\u0431\u0438\u0458\u0430 \u0417\u0432\u0430\u043d\u0438\u0447\u043d\u0430" - }, - "AppDesc": { - "message": "\u0418\u0433\u0440\u0430\u0458\u0442\u0435 \"\u0411\u043e\u0440\u0431\u0443 \u0431\u0438\u0459\u0430\u043a\u0430 \u0438 \u0437\u043e\u043c\u0431\u0438\u0458\u0430\" \u0437\u0432\u0430\u043d\u0438\u0447\u043d\u043e \u043a\u0430\u043e \u0425\u0440\u043e\u043c \u043f\u0440\u043e\u0448\u0438\u0440\u0435\u045a\u0435 - \u0422\u0430\u043a\u043e\u0452\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0433\u0440\u0430\u0442\u0438 \u0431\u0435\u0437 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430, \u043f\u0440\u043e\u0431\u0430\u0458\u0442\u0435 \u0441\u0430\u0434\u0430!" - } -} diff --git a/_locales/sv/messages.json b/_locales/sv/messages.json deleted file mode 100644 index ed0ad6b9..00000000 --- a/_locales/sv/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plant vs. Zombies officiell" - }, - "AppDesc": { - "message": "Jouez \u00e0 Plant vs. Zombies MODDED Official en tant qu'extension Chrome - Vous pouvez \u00e9galement jouer sans Internet, essayez-le maintenant !" - } -} diff --git a/_locales/th/messages.json b/_locales/th/messages.json deleted file mode 100644 index c77367cb..00000000 --- a/_locales/th/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "\u0e21\u0e37\u0e2d\u0e16\u0e37\u0e2d\u0e1e\u0e37\u0e0a\u0e1b\u0e49\u0e2d\u0e07\u0e01\u0e31\u0e19\u0e0b\u0e2d\u0e21\u0e1a\u0e35\u0e49 \u0e2d\u0e22\u0e48\u0e32\u0e07\u0e40\u0e1b\u0e47\u0e19\u0e17\u0e32\u0e07\u0e01\u0e32\u0e23" - }, - "AppDesc": { - "message": "\u0e40\u0e25\u0e48\u0e19\u0e40\u0e01\u0e21 Plant vs. Zombies MODDED Official \u0e40\u0e1b\u0e47\u0e19\u0e2a\u0e48\u0e27\u0e19\u0e02\u0e22\u0e32\u0e22\u0e02\u0e2d\u0e07 Chrome - \u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e40\u0e25\u0e48\u0e19\u0e44\u0e14\u0e49\u0e42\u0e14\u0e22\u0e44\u0e21\u0e48\u0e15\u0e49\u0e2d\u0e07\u0e40\u0e0a\u0e37\u0e48\u0e2d\u0e21\u0e15\u0e48\u0e2d\u0e2d\u0e34\u0e19\u0e40\u0e17\u0e2d\u0e23\u0e4c\u0e40\u0e19\u0e47\u0e15\u0e40\u0e25\u0e22 \u0e25\u0e2d\u0e07\u0e40\u0e25\u0e48\u0e19\u0e40\u0e14\u0e35\u0e4b\u0e22\u0e27\u0e19\u0e35\u0e49!" - } -} diff --git a/_locales/tl/messages.json b/_locales/tl/messages.json deleted file mode 100644 index 68814726..00000000 --- a/_locales/tl/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Opisyal na Plant vs. Zombies" - }, - "AppDesc": { - "message": "Maglaro ng Plant vs. Zombies MODDED Official bilang isang extension ng Chrome - Maari rin maglaro nang walang Internet, subukan mo na!" - } -} diff --git a/_locales/tr/messages.json b/_locales/tr/messages.json deleted file mode 100644 index 126f17fc..00000000 --- a/_locales/tr/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plantas vs. Zombies Oficial" - }, - "AppDesc": { - "message": "Chrome uzant\u0131s\u0131 olarak Resmi Bitki vs. Zombiler oyununu oyna - Ayr\u0131ca internet olmadan da oynayabilirsin, \u015fimdi dene!" - } -} diff --git a/_locales/uk/messages.json b/_locales/uk/messages.json deleted file mode 100644 index 907bb9fa..00000000 --- a/_locales/uk/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "\u0437\u0430\u0445\u0432\u043e\u043d\u0456\u0442\u044c \u041f\u043b\u0430\u043d\u0442\u0430\u043c\u0456 \u0441\u0443\u043f\u0440\u043e\u0442\u0438 \u0417\u043e\u043c\u0431\u0456 \u043e\u0444\u0456\u0446\u0456\u0439\u043d\u0438\u043c\u0438" - }, - "AppDesc": { - "message": "\u0413\u0440\u0430\u0439\u0442\u0435 \u0443 Plant vs. Zombies MODDED Official \u044f\u043a \u0440\u043e\u0437\u0448\u0438\u0440\u0435\u043d\u043d\u044f \u0434\u043b\u044f Chrome - \u0422\u0430\u043a\u043e\u0436 \u043c\u043e\u0436\u0435\u0442\u0435 \u0433\u0440\u0430\u0442\u0438 \u0431\u0435\u0437 \u0406\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0443, \u0441\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0437\u0430\u0440\u0430\u0437!" - } -} diff --git a/_locales/vi/messages.json b/_locales/vi/messages.json deleted file mode 100644 index 2cfba81e..00000000 --- a/_locales/vi/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "Plant vs. Zombies Ch\u00ednh th\u1ee9c" - }, - "AppDesc": { - "message": "Ch\u01a1i Plant vs. Zombies MODDED Official nh\u01b0 m\u1ed9t ti\u1ec7n \u00edch Chrome - C\u0169ng c\u00f3 th\u1ec3 ch\u01a1i m\u00e0 kh\u00f4ng c\u1ea7n k\u1ebft n\u1ed1i Internet, h\u00e3y th\u1eed ngay!" - } -} diff --git a/_locales/zh_CN/messages.json b/_locales/zh_CN/messages.json deleted file mode 100644 index 1ceaa4a8..00000000 --- a/_locales/zh_CN/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "\u690d\u7269\u5927\u6218\u50f5\u5c38\u5b98\u65b9" - }, - "AppDesc": { - "message": "\u5728Chrome\u6269\u5c55\u4e2d\u73a9\u300a\u690d\u7269\u5927\u6218\u50f5\u5c38\u300b\u5b98\u65b9\u7248 - \u4e5f\u53ef\u4ee5\u5728\u65e0\u7f51\u60c5\u51b5\u4e0b\u73a9\u6e38\u620f\uff0c\u73b0\u5728\u5c31\u8bd5\u8bd5\u5427\uff01" - } -} diff --git a/_locales/zh_TW/messages.json b/_locales/zh_TW/messages.json deleted file mode 100644 index 86881f50..00000000 --- a/_locales/zh_TW/messages.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "AppName": { - "message": "\u300a\u690d\u7269\u5927\u6230\u6bad\u5c4d\u300b\u5b98\u65b9\u7248" - }, - "AppDesc": { - "message": "\u5c07Plant vs. Zombies MODDED Official\u4f5c\u70baChrome\u64f4\u5145\u7a0b\u5f0f\u4f86\u73a9 - \u4e5f\u53ef\u4ee5\u5728\u6c92\u6709\u7db2\u8def\u7684\u60c5\u6cc1\u4e0b\u9032\u884c\u904a\u73a9\uff0c\u73fe\u5728\u8a66\u8a66\u770b\u5427\uff01" - } -} diff --git a/game/Custom.css b/game/Custom.css index b16348ba..e0497a0e 100644 --- a/game/Custom.css +++ b/game/Custom.css @@ -1,85 +1,85 @@ /* briannetod.ttf */ @font-face { - font-family: "briannetod"; - src: url("fonts/briannetod.ttf"); + font-family: "briannetod"; + src: url("fonts/briannetod.ttf"); } /* dwarventodcraft.ttf */ @font-face { - font-family: "dwarventodcraft"; - src: url("fonts/dwarventodcraft.ttf"); + font-family: "dwarventodcraft"; + src: url("fonts/dwarventodcraft.ttf"); } /* houseofterrormedium.ttf */ @font-face { - font-family: "houseofterrormedium"; - src: url("fonts/houseofterrormedium.ttf"); + font-family: "houseofterrormedium"; + src: url("fonts/houseofterrormedium.ttf"); } /* pico12.ttf */ @font-face { - font-family: "pico12"; - src: url("fonts/pico12.ttf"); + font-family: "pico12"; + src: url("fonts/pico12.ttf"); } /* continuumbold.ttf */ @font-face { - font-family: "continuumbold"; - src: url("fonts/continuumbold.ttf"); + font-family: "continuumbold"; + src: url("fonts/continuumbold.ttf"); } * { - font-family: "briannetod" !important; + font-family: "briannetod" !important; } [id^="sSunNum"]:not([id="sSunNum"]) { - font-family: "pico12" !important; - margin-right: 7px !important; - font-size: 20px !important; - position: relative !important; - float: right !important; - width: 100% !important; - left: 0 !important; - top: 36px !important; + font-family: "pico12" !important; + margin-right: 7px !important; + font-size: 20px !important; + position: relative !important; + float: right !important; + width: 100% !important; + left: 0 !important; + top: 36px !important; } #sSunNum { - font-family: "continuumbold" !important; - margin-top: -2px !important; + font-family: "continuumbold" !important; + margin-top: -2px !important; } #DivTeach { - width: 50% !important; - left: 36% !important; - cursor: pointer !important; - color: #000 !important; + width: 50% !important; + left: 36% !important; + cursor: pointer !important; + color: #000 !important; } #dTitle, #dTitle * { - font-family: "pico12" !important; + font-family: "pico12" !important; } #bMainMenu { - text-transform: uppercase; - visibility: hidden; - position: absolute; - left: 770px; - top: 20px; - text-align: center; - cursor: pointer; - width: 109px; - height: 29px; - z-index: 201; - line-height: 26px; - background: url(images/interface/Almanac_BlankButton.png) no-repeat; - background-size: cover; - color: #000080; - font-size: 14px; - padding-top: 3px; + text-transform: uppercase; + visibility: hidden; + position: absolute; + left: 770px; + top: 20px; + text-align: center; + cursor: pointer; + width: 109px; + height: 29px; + z-index: 201; + line-height: 26px; + background: url(images/interface/Almanac_BlankButton.png) no-repeat; + background-size: cover; + color: #000080; + font-size: 14px; + padding-top: 3px; } .span2 { - font-family: "pico12" !important; - margin-right: 7px !important; - font-size: 18px !important; - position: relative !important; - float: right !important; - width: 100% !important; - left: 0 !important; - top: 21px !important; + font-family: "pico12" !important; + margin-right: 7px !important; + font-size: 18px !important; + position: relative !important; + float: right !important; + width: 100% !important; + left: 0 !important; + top: 21px !important; } #dHandBookZCard .span1 .span2 { - display: none !important; + display: none !important; } .menu, .OptionsMenuButtonSpan, @@ -87,166 +87,168 @@ #dHandBookZ > div.title, #dHandBookZombieName, #dNewPlantTitle { - font-family: "dwarventodcraft" !important; + font-family: "dwarventodcraft" !important; } .hidden { - display: none; + display: none; } #dNewPlantTitle { - font-size: 30px !important; - margin-top: 6px; - /* case uppercase */ - text-transform: uppercase; - color: #d0932b !important; + font-size: 30px !important; + margin-top: 6px; + /* case uppercase */ + text-transform: uppercase; + color: #d0932b !important; } #dHandBookZombieName { - color: #06bd00 !important; - text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.1), - -1px -1.5px 0px rgba(0, 0, 0, 0.7) !important; + color: #06bd00 !important; + text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.1), + -1px -1.5px 0px rgba(0, 0, 0, 0.7) !important; - /* text-shadow: #2e293e -1px -2px, #2e293e -2px 0px, #37354b 1px -2px, + /* text-shadow: #2e293e -1px -2px, #2e293e -2px 0px, #37354b 1px -2px, #757692 2px 0px, #757692 1px 2px, #757692 2px 2px !important; */ - font-size: x-large !important; - /* -webkit-text-stroke: 0.2px rgb(0 0 0 / 27%) !important; */ - margin-left: -10px !important; - margin-top: 4px; + font-size: x-large !important; + /* -webkit-text-stroke: 0.2px rgb(0 0 0 / 27%) !important; */ + margin-left: -10px !important; + margin-top: 4px; } #btnNextLevel { - text-shadow: 0px 0px 3px #000, 0px 0px 3px #000; - /* box-shadow: inset #ffffff24 1px 2px 2px, inset #00000021 0px -1px 4px 0px, #0000007a 1px 2px 6px -1px; */ - /* border-radius: 3px; */ - border-left: 0 !important; - border-right: 0 !important; - border-top: 0 !important; - border-bottom: 0 !important; - background: url("images/SeedChooser_Button.png") no-repeat !important; - background-size: contain !important; - font-family: dwarventodcraft !important; - color: #d0932b !important; - font-size: 18px !important; - width: 150px !important; - margin-left: -25px !important; + text-shadow: 0px 0px 3px #000, 0px 0px 3px #000; + /* box-shadow: inset #ffffff24 1px 2px 2px, inset #00000021 0px -1px 4px 0px, #0000007a 1px 2px 6px -1px; */ + /* border-radius: 3px; */ + border-left: 0 !important; + border-right: 0 !important; + border-top: 0 !important; + border-bottom: 0 !important; + background: url("images/SeedChooser_Button.png") no-repeat !important; + background-size: contain !important; + font-family: dwarventodcraft !important; + color: #d0932b !important; + font-size: 18px !important; + width: 150px !important; + margin-left: -25px !important; } #dNewPlantName { - color: #d0932b !important; - font-family: dwarventodcraft !important; - text-transform: uppercase; - text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.1), - -1px -1.5px 0px rgba(0, 0, 0, 0.7) !important; + color: #d0932b !important; + font-family: dwarventodcraft !important; + text-transform: uppercase; + text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.1), + -1px -1.5px 0px rgba(0, 0, 0, 0.7) !important; - /* text-shadow: #2e293e -1px -2px, #2e293e -2px 0px, #37354b 1px -2px, + /* text-shadow: #2e293e -1px -2px, #2e293e -2px 0px, #37354b 1px -2px, #757692 2px 0px, #757692 1px 2px, #757692 2px 2px !important; */ - -webkit-text-stroke: 0.2px rgb(0 0 0 / 27%) !important; - margin-top: -23px; + -webkit-text-stroke: 0.2px rgb(0 0 0 / 27%) !important; + margin-top: -23px; } #iNewPlantCard { - height: calc(120px / 2) !important; - object-fit: cover; - object-position: center top; - margin-top: 60px; + height: calc(120px / 2) !important; + object-fit: cover; + object-position: center top; + margin-top: 60px; } #dNewPlantTooltip { - font-size: 19px !important; - margin-top: -14px; - color: #000080 !important; - /* unbold */ - font-weight: normal !important; + font-size: 19px !important; + margin-top: -14px; + color: #000080 !important; + /* unbold */ + font-weight: normal !important; } #dHandBookPlantName { - color: #d0932b !important; - text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.1), - -1px -1.5px 0px rgba(0, 0, 0, 0.7) !important; + color: #d0932b !important; + text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.1), + -1px -1.5px 0px rgba(0, 0, 0, 0.7) !important; - /* text-shadow: #2e293e -1px -2px, #2e293e -2px 0px, #37354b 1px -2px, + /* text-shadow: #2e293e -1px -2px, #2e293e -2px 0px, #37354b 1px -2px, #757692 2px 0px, #757692 1px 2px, #757692 2px 2px !important; */ - font-size: x-large !important; - -webkit-text-stroke: 0.2px rgb(0 0 0 / 27%) !important; - margin-left: -10px !important; - margin-top: -4px; + font-size: x-large !important; + -webkit-text-stroke: 0.2px rgb(0 0 0 / 27%) !important; + margin-left: -10px !important; + margin-top: -4px; } #dHandBookP > div.title, #dHandBook > div.title, #dMiniSmallTitle, -#dAdvSmallTitle { - margin-top: -6px; - font-size: 30px; - -webkit-text-stroke: 1px #ceaa31; - font-weight: lighter; - text-shadow: 0px 3px 0px #000, 1px 3px 0px #000, 2px 3px 0px #000, - 3px 3px 0px #000, 3px 2px 0px #000, 3px 1px 0px #000, 3px 0px 0px #000, - 3px -1px 0px #000, 3px -2px 0px #000, 3px -3px 0px #000, - 2px -1px 0px #000, 2px -2px 0px #000, 2px -3px 0px #000, - 1px -1px 0px #000, 1px -2px 0px #000, 1px -3px 0px #000, - 0px -1px 0px #000, 0px -2px 0px #000, 0px -3px 0px #000, - -1px -1px 0px #000, -1px -2px 0px #000, -1px -3px 0px #000, - -2px -1px 0px #000, -2px -2px 0px #000, -2px -3px 0px #000, - -3px -1px 0px #000, -3px -2px 0px #000, -3px -3px 0px #000, - -3px 0px 0px #000, -3px 1px 0px #000, -3px 2px 0px #000, - -3px 3px 0px #000, 2px 5px 0px #000, 3px 5px 0px #000, 4px 5px 0px #000, - 5px 5px 0px #000, 5px 4px 0px #000, 5px 3px 0px #000, 5px 2px 0px #000, - 5px 1px 0px #000, 5px 0px 0px #000, 5px -1px 0px #000, 4px 1px 0px #000, - 4px 0px 0px #000, 4px -1px 0px #000, 3px 1px 0px #000, 3px 0px 0px #000, - 3px -1px 0px #000, 2px 1px 0px #000, 2px 0px 0px #000, 2px -1px 0px #000, - 1px 1px 0px #000, 1px 0px 0px #000, 1px -1px 0px #000, 0px 1px 0px #000, - 0px 0px 0px #000, 0px -1px 0px #000, -1px 1px 0px #000, - -1px -0px 0px #000, -1px -1px 0px #000, -1px 2px 0px #000, - -1px 3px 0px #000, -1px 4px 0px #000, -1px 5px 0px #000; +#dAdvSmallTitle, +#dChoseTitle { + margin-top: -6px; + font-size: 30px; + -webkit-text-stroke: 1px #ceaa31; + font-weight: lighter; + text-shadow: 0px 3px 0px #000, 1px 3px 0px #000, 2px 3px 0px #000, + 3px 3px 0px #000, 3px 2px 0px #000, 3px 1px 0px #000, 3px 0px 0px #000, + 3px -1px 0px #000, 3px -2px 0px #000, 3px -3px 0px #000, + 2px -1px 0px #000, 2px -2px 0px #000, 2px -3px 0px #000, + 1px -1px 0px #000, 1px -2px 0px #000, 1px -3px 0px #000, + 0px -1px 0px #000, 0px -2px 0px #000, 0px -3px 0px #000, + -1px -1px 0px #000, -1px -2px 0px #000, -1px -3px 0px #000, + -2px -1px 0px #000, -2px -2px 0px #000, -2px -3px 0px #000, + -3px -1px 0px #000, -3px -2px 0px #000, -3px -3px 0px #000, + -3px 0px 0px #000, -3px 1px 0px #000, -3px 2px 0px #000, + -3px 3px 0px #000, 2px 5px 0px #000, 3px 5px 0px #000, 4px 5px 0px #000, + 5px 5px 0px #000, 5px 4px 0px #000, 5px 3px 0px #000, 5px 2px 0px #000, + 5px 1px 0px #000, 5px 0px 0px #000, 5px -1px 0px #000, 4px 1px 0px #000, + 4px 0px 0px #000, 4px -1px 0px #000, 3px 1px 0px #000, 3px 0px 0px #000, + 3px -1px 0px #000, 2px 1px 0px #000, 2px 0px 0px #000, 2px -1px 0px #000, + 1px 1px 0px #000, 1px 0px 0px #000, 1px -1px 0px #000, 0px 1px 0px #000, + 0px 0px 0px #000, 0px -1px 0px #000, -1px 1px 0px #000, + -1px -0px 0px #000, -1px -1px 0px #000, -1px 2px 0px #000, + -1px 3px 0px #000, -1px 4px 0px #000, -1px 5px 0px #000; } #dHandBook > div.title, #dMiniSmallTitle, -#dAdvSmallTitle { - color: #dfdfdf; - font-family: "houseofterrormedium" !important; - -webkit-text-stroke: 1px #cacaca; - margin-top: 1px; - font-weight: lighter !important; +#dAdvSmallTitle, +#dChoseTitle { + color: #dfdfdf; + font-family: "houseofterrormedium" !important; + -webkit-text-stroke: 1px #cacaca; + margin-top: 1px; + font-weight: lighter !important; } #dAdvSmallTitle { - margin-left: -50px; - margin-top: 4px; + margin-left: -50px; + margin-top: 4px; } #dHandBookZ > div.title, #dNewPlantTitle { - text-shadow: 0px 0px 3px #000, 0px 0px 3px #000; - color: #00d100; - font-size: 35px; + text-shadow: 0px 0px 3px #000, 0px 0px 3px #000; + color: #00d100; + font-size: 35px; } .menu { - font-weight: normal !important; - font-size: 1.35em; + font-weight: normal !important; + font-size: 1.35em; } body { - min-width: 780px; - min-height: 530px; + min-width: 780px; + min-height: 530px; } label { - color: white !important; + color: white !important; } #sFlagMeterTitleF, #dHandBookP > div.title { - font-family: "houseofterrormedium" !important; + font-family: "houseofterrormedium" !important; } #sFlagMeterTitleB { - display: none; + display: none; } #sFlagMeterTitleF { - color: #e5bf64 !important; - text-shadow: 0px 2px 0px #000000, 2px 2px 0px #000000, 2px 0px 0px #000000, - 2px -2px 0px #000000, 0px -2px 0px #000000, -2px -2px 0px #000000, - -2px 0px 0px #000000, -2px 2px 0px #000000 !important; + color: #e5bf64 !important; + text-shadow: 0px 2px 0px #000000, 2px 2px 0px #000000, 2px 0px 0px #000000, + 2px -2px 0px #000000, 0px -2px 0px #000000, -2px -2px 0px #000000, + -2px 0px 0px #000000, -2px 2px 0px #000000 !important; } #iSurfaceBackground .trophy { - position: absolute; - background: url(images/interface/trophy.png) no-repeat; - background-size: contain !important; - left: 469px; - top: 468px; - width: 99px; - height: 99px; - cursor: pointer; + position: absolute; + background: url(images/interface/trophy.png) no-repeat; + background-size: contain !important; + left: 469px; + top: 468px; + width: 99px; + height: 99px; + cursor: pointer; } #iSurfaceBackground .trophy:hover { - filter: brightness(1.1); + filter: brightness(1.1); } diff --git a/game/UI.css b/game/UI.css index 5ff4b7e1..79ef95b5 100644 --- a/game/UI.css +++ b/game/UI.css @@ -1,74 +1,74 @@ body { - -moz-user-select: none; - overflow-x: hidden; - overflow-y: hidden; - background: #000; - font-family: Tahoma, Verdana, fixedsys; - overflow-x: hidden; + -moz-user-select: none; + overflow-x: hidden; + overflow-y: hidden; + background: #000; + font-family: Tahoma, Verdana, fixedsys; + overflow-x: hidden; } td { - font-family: Verdana; - font-size: 12px; + font-family: Verdana; + font-size: 12px; } div { - left: 0; + left: 0; } #preloader { - position: fixed; - top: 0; - left: 0; - right: 0; - bottom: 0; - z-index: 999; + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + z-index: 999; } #status { - background-image: url(images/gamethumbnail3.png); - background-repeat: no-repeat; - background-position: center; - z-index: 999; + background-image: url(images/gamethumbnail3.png); + background-repeat: no-repeat; + background-position: center; + z-index: 999; } span { - cursor: default; + cursor: default; } span, div, h2, h3 { - padding: 0; - margin: 0; + padding: 0; + margin: 0; } td.HandBookZombie { - background: url(images/interface/Almanac_ZombieWindow2.png) no-repeat; - width: 20%; - height: 16%; - text-align: center; + background: url(images/interface/Almanac_ZombieWindow2.png) no-repeat; + width: 20%; + height: 16%; + text-align: center; } #DivTeach { - filter: "alpha(opacity=90)"; - filter: alpha(opacity=90); - opacity: 0.9; - -moz-opacity: 0.9; - position: absolute; - width: 900px; - height: 50px; - top: 170px; - left: 100; - z-index: 100; - text-align: center; - font-family: Tahoma; - font-size: 18px; - font-weight: bold; - color: #000; - background-color: rgba(91, 67, 46, 0); - font-family: Tahoma; + filter: "alpha(opacity=90)"; + filter: alpha(opacity=90); + opacity: 0.9; + -moz-opacity: 0.9; + position: absolute; + width: 900px; + height: 50px; + top: 170px; + left: 100; + z-index: 100; + text-align: center; + font-family: Tahoma; + font-size: 18px; + font-weight: bold; + color: #000; + background-color: rgba(91, 67, 46, 0); + font-family: Tahoma; } /* .WindowFrame { @@ -82,1602 +82,1602 @@ td.HandBookZombie { } */ #DivParty { - filter: "alpha(opacity=90)"; - filter: alpha(opacity=90); - opacity: 0.9; - -moz-opacity: 0.9; - position: absolute; - width: 900px; - height: 0; - top: 500px; - left: 0; - z-index: 100; - text-align: center; - font-family: Tahoma; - font-size: 18px; - font-weight: bold; - color: #fff; - background-color: #5b432e; + filter: "alpha(opacity=90)"; + filter: alpha(opacity=90); + opacity: 0.9; + -moz-opacity: 0.9; + position: absolute; + width: 900px; + height: 0; + top: 500px; + left: 0; + z-index: 100; + text-align: center; + font-family: Tahoma; + font-size: 18px; + font-weight: bold; + color: #fff; + background-color: #5b432e; } .WindowFrame { - transform: scale(0.9); - /* Điều chỉnh tỷ lệ theo nhu cầu */ - transform-origin: left; - /* Đặt điểm gốc cho hiệu ứng scale */ - position: absolute; - top: -27; - width: 900px; - left: 50%; - margin-left: -400px; - height: 600px; - overflow: hidden; + transform: scale(0.9); + /* Điều chỉnh tỷ lệ theo nhu cầu */ + transform-origin: left; + /* Đặt điểm gốc cho hiệu ứng scale */ + position: absolute; + top: -27; + width: 900px; + left: 50%; + margin-left: -400px; + height: 600px; + overflow: hidden; } #dLvlLink { - position: absolute; - top: 587px; - color: #fff; - width: 500px; - left: 50%; - margin-left: -230px; - font-size: 13px; - line-height: 14px; - height: 15px; - font-family: arial, sans-serif; - z-index: 1; - text-align: left; + position: absolute; + top: 587px; + color: #fff; + width: 500px; + left: 50%; + margin-left: -230px; + font-size: 13px; + line-height: 14px; + height: 15px; + font-family: arial, sans-serif; + z-index: 1; + text-align: left; } #dLvlLink span { - font-weight: bold; - text-decoration: underline; + font-weight: bold; + text-decoration: underline; } #dLvlLink a { - color: #fff; + color: #fff; } #dAD2, #dTitleSmallContainer, #dMiniSmallContainer, #dxiyouji { - display: none; + display: none; } #dAdFlash { - display: block; + display: block; } #dAdFlash div { - width: 336px; - font-family: Tahoma, arial, verdana; - font-size: 11px; - position: absolute; - left: 60px; - top: 380px; - text-align: right; - padding-right: 50px; + width: 336px; + font-family: Tahoma, arial, verdana; + font-size: 11px; + position: absolute; + left: 60px; + top: 380px; + text-align: right; + padding-right: 50px; } #dFlagMeter { - visibility: hidden; - position: absolute; - z-index: 255; - left: 50%; - margin-left: -340px; - top: 0; - height: 45px; + visibility: hidden; + position: absolute; + z-index: 255; + left: 50%; + margin-left: -340px; + top: 0; + height: 45px; } #dFlagMeterTitle { - position: absolute; - text-align: right; + position: absolute; + text-align: right; } #sFlagMeterTitleF { - position: absolute; - color: #f93; - font-size: 25px; - font-weight: bold; - width: 440px; - top: 19px; - left: -6px; - font-family: Tahoma; + position: absolute; + color: #f93; + font-size: 25px; + font-weight: bold; + width: 440px; + top: 19px; + left: -6px; + font-family: Tahoma; } #dFlagMeterTitleB { - display: none; - position: absolute; - color: #000; - font-size: 25px; - font-weight: bold; - width: 440px; - height: 21px; - top: 20px; - left: -5px; - font-family: Tahoma; + display: none; + position: absolute; + color: #000; + font-size: 25px; + font-weight: bold; + width: 440px; + height: 21px; + top: 20px; + left: -5px; + font-family: Tahoma; } #dFlagMeterContent { - position: absolute; - left: 444px; - width: 157px; - height: 40px; + position: absolute; + left: 444px; + width: 157px; + height: 40px; } #dFlagMeterContent .flag { - top: 14px; - visibility: hidden; + top: 14px; + visibility: hidden; } #imgFlagMeterFull { - top: 17px; - clip: rect(0, auto, auto, 157px); + top: 17px; + clip: rect(0, auto, auto, 157px); } #imgFlagMeterEmpty { - top: 17px; + top: 17px; } #imgFlag1 { - left: 10px; + left: 10px; } #imgFlag2 { - left: 40px; + left: 40px; } #imgFlag3 { - left: 70px; + left: 70px; } #imgFlag4 { - left: 100px; + left: 100px; } #imgGQJC { - left: 35px; - top: 29px; - visibility: hidden; + left: 35px; + top: 29px; + visibility: hidden; } #imgFlagHead { - left: 139px; - top: 13px; + left: 139px; + top: 13px; } #dFlagMeter1 { - visibility: hidden; - position: absolute; - z-index: 255; - left: 50%; - margin-left: -340px; - top: 0; - height: 45px; + visibility: hidden; + position: absolute; + z-index: 255; + left: 50%; + margin-left: -340px; + top: 0; + height: 45px; } #dFlagMeterTitle1 { - position: absolute; - text-align: right; + position: absolute; + text-align: right; } #sFlagMeterTitleF1 { - position: absolute; - color: #f93; - font-size: 18px; - font-weight: bold; - width: 440px; - top: 19px; - left: -6px; - font-family: Tahoma; + position: absolute; + color: #f93; + font-size: 18px; + font-weight: bold; + width: 440px; + top: 19px; + left: -6px; + font-family: Tahoma; } #dFlagMeterTitleB1 { - position: absolute; - color: #000; - font-size: 18px; - font-weight: bold; - width: 440px; - height: 21px; - top: 20px; - left: -5px; - font-family: Tahoma; + position: absolute; + color: #000; + font-size: 18px; + font-weight: bold; + width: 440px; + height: 21px; + top: 20px; + left: -5px; + font-family: Tahoma; } #dFlagMeterContent1 { - position: absolute; - left: 444px; - width: 157px; - height: 40px; + position: absolute; + left: 444px; + width: 157px; + height: 40px; } #dFlagMeterContent1 .flag { - top: 14px; - visibility: hidden; + top: 14px; + visibility: hidden; } #imgFlagMeterFull1 { - top: 17px; - clip: rect(0, auto, auto, 157px); + top: 17px; + clip: rect(0, auto, auto, 157px); } #imgFlagMeterEmpty1 { - top: 17px; + top: 17px; } #imgFlag11 { - left: 10px; + left: 10px; } #imgFlag21 { - left: 40px; + left: 40px; } #imgFlag31 { - left: 70px; + left: 70px; } #imgFlag41 { - left: 100px; + left: 100px; } #imgGQJC1 { - left: 35px; - top: 29px; - visibility: hidden; + left: 35px; + top: 29px; + visibility: hidden; } #imgFlagHead1 { - left: 139px; - top: 13px; + left: 139px; + top: 13px; } #dSurface { - display: none; - z-index: 255; + display: none; + z-index: 255; } #dAdventure { - position: absolute; - left: 472px; - top: 80px; - width: 331px; - height: 146px; - cursor: pointer; + position: absolute; + left: 472px; + top: 80px; + width: 331px; + height: 146px; + cursor: pointer; } #iSurfaceBackground .adventure0 { - background: url() no-repeat; - _background: url() no-repeat; + background: url() no-repeat; + _background: url() no-repeat; } #iSurfaceBackground .adventure1 { - background: url() no-repeat; - _background: url() no-repeat; + background: url() no-repeat; + _background: url() no-repeat; } #iSurfaceBackground .mini { - position: absolute; - background: url() no-repeat; - _background: url() no-repeat; - left: 474px; - top: 203px; - width: 313px; - height: 133px; - cursor: pointer; + position: absolute; + background: url() no-repeat; + _background: url() no-repeat; + left: 474px; + top: 203px; + width: 313px; + height: 133px; + cursor: pointer; } #iSurfaceBackground .riddle { - position: absolute; - background: url(images/interface/SelectorScreenChallenges_32.png) no-repeat; - _background: url(images/interface/SelectorScreenChallenges_8.png) no-repeat; - left: 478px; - top: 303px; - width: 286px; - height: 122px; - cursor: pointer; + position: absolute; + background: url(images/interface/SelectorScreenChallenges_32.png) no-repeat; + _background: url(images/interface/SelectorScreenChallenges_8.png) no-repeat; + left: 478px; + top: 303px; + width: 286px; + height: 122px; + cursor: pointer; } #iSurfaceBackground .handbook { - position: absolute; - background: url(images/interface/SelectorScreen_Almanac_32.png) no-repeat; - _background: url(images/interface/SelectorScreen_Almanac_8.png) no-repeat; - left: 374px; - top: 428px; - width: 99px; - height: 99px; - cursor: pointer; + position: absolute; + background: url(images/interface/SelectorScreen_Almanac_32.png) no-repeat; + _background: url(images/interface/SelectorScreen_Almanac_8.png) no-repeat; + left: 374px; + top: 428px; + width: 99px; + height: 99px; + cursor: pointer; } #ZombieHand { - position: absolute; - width: 330px; - height: 330px; - left: 262px; - top: 264px; - display: none; - overflow: hidden; + position: absolute; + width: 330px; + height: 330px; + left: 262px; + top: 264px; + display: none; + overflow: hidden; } #dName { - position: absolute; - left: 35px; - width: 230px; - top: 93px; - height: 25px; - text-align: center; - color: #fc6; - font-weight: bold; - font-size: 18px; - font-family: Tahoma, Verdana, Tahoma; + position: absolute; + left: 35px; + width: 230px; + top: 93px; + height: 25px; + text-align: center; + color: #fc6; + font-weight: bold; + font-size: 18px; + font-family: Tahoma, Verdana, Tahoma; } #dNameDiv0 { - position: absolute; - left: 20px; - top: -260px; - width: 293px; - height: 260px; - background: url(images/interface/SelectorScreen_WoodSign1_32.png) no-repeat; - _background: url(images/interface/SelectorScreen_WoodSign1_32.png) no-repeat; + position: absolute; + left: 20px; + top: -260px; + width: 293px; + height: 260px; + background: url(images/interface/SelectorScreen_WoodSign1_32.png) no-repeat; + _background: url(images/interface/SelectorScreen_WoodSign1_32.png) no-repeat; } #dNameDiv1 { - cursor: pointer; - position: absolute; - left: 3px; - top: 96px; - width: 291px; - height: 71px; - background: url(images/interface/SelectorScreen_WoodSign2_32.png) no-repeat; - _background: url(images/interface/SelectorScreen_WoodSign2_8.png) no-repeat; + cursor: pointer; + position: absolute; + left: 3px; + top: 96px; + width: 291px; + height: 71px; + background: url(images/interface/SelectorScreen_WoodSign2_32.png) no-repeat; + _background: url(images/interface/SelectorScreen_WoodSign2_8.png) no-repeat; } #dNameDiv2 { - position: absolute; - left: 14px; - top: 136px; - width: 293px; - height: 150px; - background: url(images/interface/SelectorScreen_WoodSign3_32.png) no-repeat; - _background: url(images/interface/SelectorScreen_WoodSign3_8.png) no-repeat; - overflow: hidden; + position: absolute; + left: 14px; + top: 136px; + width: 293px; + height: 150px; + background: url(images/interface/SelectorScreen_WoodSign3_32.png) no-repeat; + _background: url(images/interface/SelectorScreen_WoodSign3_8.png) no-repeat; + overflow: hidden; } #dSurfaceBack { - position: absolute; - top: 0; - width: 0; - height: 0; - z-index: 255; + position: absolute; + top: 0; + width: 0; + height: 0; + z-index: 255; } #dHelp { - width: 814px; - height: 599px; - background: url(images/interface/Help.png) no-repeat; - position: absolute; - display: none; - left: 133px; - top: 70px; + width: 814px; + height: 599px; + background: url(images/interface/Help.png) no-repeat; + position: absolute; + display: none; + left: 133px; + top: 70px; } #dSelectLevel { - position: absolute; - width: 100%; - height: 100%; - font-weight: bold; - display: none; + position: absolute; + width: 100%; + height: 100%; + font-weight: bold; + display: none; } #dOptionsMenuBack { - position: absolute; - text-align: center; - left: 244px; - top: 60px; - width: 412px; - height: 483px; - display: none; - background: url(images/interface/OptionsMenuback32.png) no-repeat; - _background: url(images/interface/OptionsMenuback32.png) no-repeat; + position: absolute; + text-align: center; + left: 244px; + top: 60px; + width: 412px; + height: 483px; + display: none; + background: url(images/interface/OptionsMenuback32.png) no-repeat; + _background: url(images/interface/OptionsMenuback32.png) no-repeat; } .TitleBigContainer { - position: relative; - width: 220px; - margin: 120px auto 0 auto; - height: 240px; - overflow: hidden; + position: relative; + width: 220px; + margin: 120px auto 0 auto; + height: 240px; + overflow: hidden; } #dTitleSmallContainer span { - cursor: pointer; + cursor: pointer; } #dMiniSmallContainer .SmallLevel { - width: 100%; + width: 100%; } #dMiniSmallContainer .BigLevel span { - cursor: pointer; + cursor: pointer; } #dxiyouji .SmallLevel { - width: 100%; + width: 100%; } #dxiyouji .BigLevel span { - cursor: pointer; + cursor: pointer; } #dMiniLvl2 { - position: absolute; - left: 0; - top: 0; - display: none; + position: absolute; + left: 0; + top: 0; + display: none; } #dBigLvl2, #dBigLvl3 { - position: absolute; - left: 0; - top: 0; - display: none; + position: absolute; + left: 0; + top: 0; + display: none; } .SmallLevel { - float: left; - cursor: pointer; - width: 50%; - font-size: 12px; + float: left; + cursor: pointer; + width: 50%; + font-size: 12px; } .BigLevel { - float: left; - color: #fc6; - font-size: 12px; - width: 100%; - height: 35px; + float: left; + color: #fc6; + font-size: 12px; + width: 100%; + height: 35px; } .OptionsMenuButton, .OptionsMenuButtonDown { - background: url(images/interface/OptionsBackButton32.png) no-repeat; - _background: url(images/interface/OptionsBackButton8.png) no-repeat; - float: left; - font-family: Tahoma; - font-size: 38px; - cursor: pointer; - width: 360px; - height: 100px; - margin-left: 26px; - display: inline; - color: #0f0; + background: url(images/interface/OptionsBackButton32.png) no-repeat; + _background: url(images/interface/OptionsBackButton8.png) no-repeat; + float: left; + font-family: Tahoma; + font-size: 38px; + cursor: pointer; + width: 360px; + height: 100px; + margin-left: 26px; + display: inline; + color: #0f0; } .OptionsMenuButton { - background-position: 0 0; + background-position: 0 0; } .OptionsMenuButtonDown { - background-position: 0 -100px; + background-position: 0 -100px; } .OptionsMenuButtonSpan { - height: 100px; - line-height: 100px; - cursor: pointer; + height: 100px; + line-height: 100px; + cursor: pointer; } .SelectModal { - color: #fc6; - font-weight: bold; - cursor: pointer; - background: url(images/interface/Button.png) no-repeat center; - text-align: center; - height: 43px; - width: 115px; + color: #fc6; + font-weight: bold; + cursor: pointer; + background: url(images/interface/Button.png) no-repeat center; + text-align: center; + height: 43px; + width: 115px; } .Menu { - float: left; - text-align: center; - line-height: 41px; - font-weight: bold; - font-family: Tahoma; - color: #00cb08; - height: 41px; - width: 113px; - background: url(images/interface/Button.png) no-repeat; + float: left; + text-align: center; + line-height: 41px; + font-weight: bold; + font-family: Tahoma; + color: #00cb08; + height: 41px; + width: 113px; + background: url(images/interface/Button.png) no-repeat; } #imgSF { - position: absolute; - cursor: pointer; - z-index: 256; + position: absolute; + cursor: pointer; + z-index: 256; } #PointerUD { - position: absolute; - z-index: 50; + position: absolute; + z-index: 50; } #dTitle { - visibility: hidden; - position: absolute; - background-color: #ffd; - width: 180px; - font-size: 12px; - text-align: center; - line-height: 1.5; - border: 1px solid #000; - padding: 3px; - z-index: 254; + visibility: hidden; + position: absolute; + background-color: #ffd; + width: 180px; + font-size: 12px; + text-align: center; + line-height: 1.5; + border: 1px solid #000; + padding: 3px; + z-index: 254; } #dAll { - background: url("images/interface/ing.png"); + background: url("images/interface/ing.png"); } #dAll img, #dFlagMeter img, #dHandBookPCard img { - position: absolute; - border-style: none; + position: absolute; + border-style: none; } #dPZ { - position: absolute; + position: absolute; } #dFog { - position: absolute; - left: 1290px; - top: 10px; - height: 600px; - width: 800px; - z-index: 24; + position: absolute; + left: 1290px; + top: 10px; + height: 600px; + width: 800px; + z-index: 24; } #dFog img { - opacity: 0.7; - filter: alpha(opacity=70); + opacity: 0.7; + filter: alpha(opacity=70); } #tGround { - position: absolute; - width: 1400px; - height: 600px; - visibility: hidden; - z-index: 0; + position: absolute; + width: 1400px; + height: 600px; + visibility: hidden; + z-index: 0; } #dCardList { - visibility: hidden; - position: absolute; - left: 500px; - top: 0; - width: 100px; - overflow: visible; - z-index: 254; + visibility: hidden; + position: absolute; + left: 500px; + top: 0; + width: 100px; + overflow: visible; + z-index: 254; } #dCardList div { - position: relative; - cursor: pointer; - padding: 0; - height: 60px; - overflow: hidden; + position: relative; + cursor: pointer; + padding: 0; + height: 60px; + overflow: hidden; } #dCardList span { - cursor: pointer; - text-align: right; - position: absolute; - left: 58px; - width: 18px; - top: 30px; - font-family: Cafeteria Black; - font-size: 30px; + cursor: pointer; + text-align: right; + position: absolute; + left: 58px; + width: 18px; + top: 30px; + font-family: Cafeteria Black; + font-size: 30px; } #dCardList img { - position: absolute; + position: absolute; } #dZombie { - position: absolute; - width: 335px; - height: 600px; - left: 1065px; - top: 0; - z-index: 1; + position: absolute; + width: 335px; + height: 600px; + left: 1065px; + top: 0; + z-index: 1; } #bShowHandBook { - visibility: hidden; - position: absolute; - left: 1300px; - top: 555px; - text-align: center; - cursor: pointer; - width: 89px; - height: 26px; - z-index: 201; - line-height: 26px; - background: url(images/interface/Almanac_CloseButton.png); - color: #000080; - font-size: 14px; + visibility: hidden; + position: absolute; + left: 1300px; + top: 555px; + text-align: center; + cursor: pointer; + width: 89px; + height: 26px; + z-index: 201; + line-height: 26px; + background: url(images/interface/Almanac_CloseButton.png); + color: #000080; + font-size: 14px; } #dSelectCard { - visibility: hidden; - position: absolute; - left: 600px; - top: 0; - width: 465px; - height: 600px; - z-index: 20; - background: url("images/interface/SeedChooser_Background.png") no-repeat; + visibility: hidden; + position: absolute; + left: 600px; + top: 0; + width: 465px; + height: 600px; + z-index: 20; + background: url("images/interface/SeedChooser_Background.png") no-repeat; } #dSelectCard .title { - text-align: center; - line-height: 35px; - font-size: 12px; - color: #fc6; - height: 35px; - width: 100%; - top: 0; - font-family: Tahoma; - font-weight: bold; + text-align: center; + line-height: 35px; + font-size: 12px; + color: #fc6; + height: 35px; + width: 100%; + top: 0; + font-family: Tahoma; + font-weight: bold; } #dSelectCard .bTitle { - width: 100%; - height: 40px; - line-height: 40px; - text-align: center; - margin-top: 10px; + width: 100%; + height: 40px; + line-height: 40px; + text-align: center; + margin-top: 10px; } #dSelectCard .button { - width: 65px; - height: 35px; - border-left: 3px solid #85411c; - border-right: 3px solid #4e250c; - border-top: 3px solid #85411c; - border-bottom: 3px solid #4e250c; - background-color: #602d11; - font-weight: bold; - font-size: 12px; - cursor: pointer; + width: 65px; + height: 35px; + border-left: 3px solid #85411c; + border-right: 3px solid #4e250c; + border-top: 3px solid #85411c; + border-bottom: 3px solid #4e250c; + background-color: #602d11; + font-weight: bold; + font-size: 12px; + cursor: pointer; } #dPCard { - position: relative; - width: 96%; - height: 455px; - padding-left: 13px; - _padding-left: 10px; + position: relative; + width: 96%; + height: 455px; + padding-left: 13px; + _padding-left: 10px; } #dPCard .span1, #dHandBookPCard .span1 { - cursor: pointer; - width: 70px; - height: 42px; - overflow: hidden; - float: left; - margin: 8px 0 0 2px; - position: relative; + cursor: pointer; + width: 70px; + height: 42px; + overflow: hidden; + float: left; + margin: 8px 0 0 2px; + position: relative; } #dPCard .span2, #dHandBookPCard .span2 { - cursor: pointer; - text-align: right; - position: absolute; - left: 42px; - width: 18px; - top: 20px; - font-family: Cafeteria Black; - font-size: 20px; + cursor: pointer; + text-align: right; + position: absolute; + left: 42px; + width: 18px; + top: 20px; + font-family: Cafeteria Black; + font-size: 20px; } #dPCard img, #dHandBookPCard img { - left: 0; - width: 70px; - height: 84px; + left: 0; + width: 70px; + height: 84px; } #dTop { - position: absolute; - left: 605px; - top: 561px; - height: 35px; - width: 123px; - visibility: hidden; - z-index: 1; + position: absolute; + left: 605px; + top: 561px; + height: 35px; + width: 123px; + visibility: hidden; + z-index: 1; } #dSunNum { - background: url("images/interface/SunBack.png") no-repeat; - position: absolute; - width: 123px; - height: 35px; + background: url("images/interface/SunBack.png") no-repeat; + position: absolute; + width: 123px; + height: 35px; } #sSunNum { - text-align: center; - position: absolute; - top: 4px; - left: 43px; - width: 68px; - font-family: Verdana; - font-weight: bold; - font-size: 18pt; + text-align: center; + position: absolute; + top: 4px; + left: 43px; + width: 68px; + font-family: Verdana; + font-weight: bold; + font-size: 18pt; } #tdShovel { - position: absolute; - width: 71px; - height: 35px; - left: 130px; - background: url("images/interface/ShovelBack.png") no-repeat; - visibility: hidden; + position: absolute; + width: 71px; + height: 35px; + left: 130px; + background: url("images/interface/ShovelBack.png") no-repeat; + visibility: hidden; } #dPlants, #dZombies { - position: absolute; - left: 0; - top: 0; - z-index: 2; + position: absolute; + left: 0; + top: 0; + z-index: 2; } #dMenu { - visibility: hidden; - position: absolute; - top: 0; - left: 40%; - margin-left: 227px; - cursor: pointer; - width: 226px; - height: 41px; - z-index: 254; + visibility: hidden; + position: absolute; + top: 0; + left: 40%; + margin-left: 227px; + cursor: pointer; + width: 226px; + height: 41px; + z-index: 254; } #dHandBook { - visibility: hidden; - position: absolute; - z-index: 255; - width: 900px; - background: url(images/interface/Almanac_IndexBack.jpg) no-repeat; + visibility: hidden; + position: absolute; + z-index: 255; + width: 900px; + background: url(images/interface/Almanac_IndexBack.jpg) no-repeat; } #dHandBook .title { - position: relative; - text-align: center; - line-height: 92px; - height: 88px; - width: 100%; - font-size: 32px; - font-weight: bold; - font-family: Tahoma; + position: relative; + text-align: center; + line-height: 92px; + height: 88px; + width: 100%; + font-size: 32px; + font-weight: bold; + font-family: Tahoma; } #dHandBook .content { - position: relative; - height: 423px; - width: 100%; + position: relative; + height: 423px; + width: 100%; } #dHandBook .content div { - position: absolute; - width: 50%; - text-align: center; - padding-top: 135px; + position: absolute; + width: 50%; + text-align: center; + padding-top: 135px; } #dHandBook .content div .button { - cursor: pointer; - width: 113px; - height: 41px; - font-size: 14pt; - font-weight: bold; - font-family: Tahoma; + cursor: pointer; + width: 113px; + height: 41px; + font-size: 14pt; + font-weight: bold; + font-family: Tahoma; } #dHandBook .close { - margin-top: 20px; - margin-left: 670px; - text-align: center; - cursor: pointer; - width: 89px; - height: 26px; - line-height: 26px; - background: url(images/interface/Almanac_CloseButton.png); - color: #000080; - font-size: 14px; + margin-top: 20px; + margin-left: 670px; + text-align: center; + cursor: pointer; + width: 89px; + height: 26px; + line-height: 26px; + background: url(images/interface/Almanac_CloseButton.png); + color: #000080; + font-size: 14px; } #btnViewPlant { - cursor: pointer; - width: 113; - height: 41; - border-left: 3px solid #85411c; - border-right: 3px solid #4e250c; - border-top: 3px solid #85411c; - border-bottom: 3px solid #4e250c; - background-color: #8f431b; - color: #fc6; - font-weight: bold; - font-size: 14pt; - font-family: Tahoma; - margin-top: 43px; + cursor: pointer; + width: 113; + height: 41; + border-left: 3px solid #85411c; + border-right: 3px solid #4e250c; + border-top: 3px solid #85411c; + border-bottom: 3px solid #4e250c; + background-color: #8f431b; + color: #fc6; + font-weight: bold; + font-size: 14pt; + font-family: Tahoma; + margin-top: 43px; } #btnViewZombie { - cursor: pointer; - width: 113; - height: 41; - background: #404364; - color: #00f500; - font-weight: bold; - font-size: 14pt; - font-family: Tahoma; - margin-top: 25px; - border-left: 3px solid #6c6c85; - border-right: 3px solid #686788; - border-top: 3px solid #6c6c85; - border-bottom: 3px solid #727390; + cursor: pointer; + width: 113; + height: 41; + background: #404364; + color: #00f500; + font-weight: bold; + font-size: 14pt; + font-family: Tahoma; + margin-top: 25px; + border-left: 3px solid #6c6c85; + border-right: 3px solid #686788; + border-top: 3px solid #6c6c85; + border-bottom: 3px solid #727390; } #dHandBookPZ { - visibility: hidden; - position: absolute; - z-index: 255; - width: 900px; + visibility: hidden; + position: absolute; + z-index: 255; + width: 900px; } #dHandBookPZ .dButton { - position: absolute; - left: 0; - top: 568px; - width: 100%; + position: absolute; + left: 0; + top: 568px; + width: 100%; } #dHandBookPZ .dButton div { - position: absolute; - text-align: center; - cursor: pointer; - height: 26px; - line-height: 26px; - color: #000080; - font-size: 14px; + position: absolute; + text-align: center; + cursor: pointer; + height: 26px; + line-height: 26px; + color: #000080; + font-size: 14px; } #dHandBookPZ .dButton .button1 { - left: 30px; - width: 164px; - background: url(images/interface/Almanac_IndexButton.png); + left: 30px; + width: 164px; + background: url(images/interface/Almanac_IndexButton.png); } #dHandBookPZ .dButton .button2 { - left: 670px; - width: 89px; - background: url(images/interface/Almanac_CloseButton.png); + left: 670px; + width: 89px; + background: url(images/interface/Almanac_CloseButton.png); } #dHandBookP { - position: absolute; - top: 0; - width: 100%; - height: 567px; + position: absolute; + top: 0; + width: 100%; + height: 567px; } #dHandBookP .title, #dHandBookZ .title { - position: absolute; - top: 0; - width: 100%; - height: 70px; - text-align: center; - font-size: 20px; - font-family: Tahoma; - font-weight: bold; + position: absolute; + top: 0; + width: 100%; + height: 70px; + text-align: center; + font-size: 20px; + font-family: Tahoma; + font-weight: bold; } #dHandBookP .title { - line-height: 90px; - color: #ceaa31; + line-height: 90px; + color: #ceaa31; } #dHandBookP .list, #dHandBookZ .list { - position: absolute; - text-align: center; - left: 55%; - height: 497px; - top: 71px; + position: absolute; + text-align: center; + left: 55%; + height: 497px; + top: 71px; } #dHandBookP .list { - width: 45%; - background: url(images/interface/Almanac_PlantCard.png) no-repeat 20px 10px; + width: 45%; + background: url(images/interface/Almanac_PlantCard.png) no-repeat 20px 10px; } #dHandBookP .list .cost_cool { - width: 74%; - font-size: 14px; - margin-left: auto; - margin-right: auto; - text-align: left; + width: 74%; + font-size: 14px; + margin-left: auto; + margin-right: auto; + text-align: left; } #dHandBookP .list .cost_cool .cost { - float: left; - width: 20%; + float: left; + width: 20%; } #dHandBookP .list .cost_cool .cool { - float: left; - width: 30%; + float: left; + width: 30%; } #dHandBookPCard { - position: absolute; - top: 71px; - width: 55%; - height: 497px; - margin: 25px 0 0 15px; + position: absolute; + top: 71px; + width: 55%; + height: 497px; + margin: 25px 0 0 15px; } #pPlantBack, #pZombieBack { - position: absolute; - width: 250px; - height: 250px; - background: url("images/interface/Almanac_Ground.jpg") no-repeat; + position: absolute; + width: 250px; + height: 250px; + background: url("images/interface/Almanac_Ground.jpg") no-repeat; } #pPlantBack { - left: 518px; - top: 84px; + left: 518px; + top: 84px; } #pHandBookPlant { - width: 100%; - height: 180px; - background-repeat: no-repeat; - background-position: 50% 70%; + width: 100%; + height: 180px; + background-repeat: no-repeat; + background-position: 50% 70%; } #dHandBookPlantName { - width: 100%; - height: 60px; - text-align: center; - line-height: 60px; - font-size: 40px; - color: #deb887; - font-family: Tahoma; + width: 100%; + height: 60px; + text-align: center; + line-height: 60px; + font-size: 40px; + color: #deb887; + font-family: Tahoma; } #dProducePlant { - margin-left: auto; - margin-right: auto; - width: 74%; - height: 210px; - text-align: left; - font-size: 13px; - line-height: 16px; - font-family: Tahoma; + margin-left: auto; + margin-right: auto; + width: 74%; + height: 210px; + text-align: left; + font-size: 13px; + line-height: 16px; + font-family: Tahoma; } #spSunNum, #spCoolTime { - float: left; - width: 24%; + float: left; + width: 24%; } #dHandBookZ { - display: none; - position: absolute; - top: 0; - width: 100%; - height: 567px; + display: none; + position: absolute; + top: 0; + width: 100%; + height: 567px; } #dHandBookZ .title { - line-height: 90px; - color: #0f0; + line-height: 90px; + color: #0f0; } #dHandBookZ .list { - width: 42%; - background: url(images/interface/Almanac_ZombieCard.png) no-repeat 10px 8px; + width: 42%; + background: url(images/interface/Almanac_ZombieCard.png) no-repeat 10px 8px; } #dHandBookZCard { - position: absolute; - top: 71px; - width: 55%; - height: 497px; - margin: 25px 0 0 20px; + position: absolute; + top: 71px; + width: 55%; + height: 497px; + margin: 25px 0 0 20px; } #dHandBookZCard img { - position: absolute; + position: absolute; } #dHandBookZCard .span1 { - cursor: pointer; - overflow: hidden; - width: 60px; - height: 70px; - float: left; - margin: 8px 0 0 2px; - position: relative; + cursor: pointer; + overflow: hidden; + width: 60px; + height: 70px; + float: left; + margin: 8px 0 0 2px; + position: relative; } #dHandBookZCard .span2 { - cursor: pointer; - text-align: right; - width: 25px; - position: absolute; - left: 63px; - width: 18px; - top: 30px; - font-family: Cafeteria Black; - font-size: 25px; - color: #fff; + cursor: pointer; + text-align: right; + width: 25px; + position: absolute; + left: 63px; + width: 18px; + top: 30px; + font-family: Cafeteria Black; + font-size: 25px; + color: #fff; } #pZombieBack { - left: 512px; - top: 111px; + left: 512px; + top: 111px; } #pHandBookZombie { - width: 90%; - height: 250px; - background-repeat: no-repeat; - background-position: 50% 70%; + width: 90%; + height: 250px; + background-repeat: no-repeat; + background-position: 50% 70%; } #dHandBookZombieName { - width: 100%; - height: 60px; - text-align: center; - line-height: 60px; - font-size: 30px; - color: #000; - font-family: Tahoma; - font-weight: bold; + width: 100%; + height: 60px; + text-align: center; + line-height: 60px; + font-size: 30px; + color: #000; + font-family: Tahoma; + font-weight: bold; } #dProduceZombie { - margin-left: auto; - margin-right: auto; - width: 76%; - height: 210px; - text-align: left; - font-size: 14px; - line-height: 16px; - font-family: Tahoma; + margin-left: auto; + margin-right: auto; + width: 76%; + height: 210px; + text-align: left; + font-size: 14px; + line-height: 16px; + font-family: Tahoma; } #dNewPlant { - visibility: hidden; - position: absolute; - top: 0; - left: 50%; - margin-left: -450px; - width: 900px; - height: 600px; - background: url(images/interface/AwardScreen_Back.jpg) no-repeat; + visibility: hidden; + position: absolute; + top: 0; + left: 50%; + margin-left: -450px; + width: 900px; + height: 600px; + background: url(images/interface/AwardScreen_Back.jpg) no-repeat; } #dNewPlant .card { - position: absolute; - top: 100px; - width: 900px; - height: 191px; - line-height: 191px; - text-align: center; + position: absolute; + top: 100px; + width: 900px; + height: 191px; + line-height: 191px; + text-align: center; } #dNewPlantTitle { - position: absolute; - left: 50%; - text-align: center; - margin-left: -250px; - color: #fc6; - font-size: 20px; - height: 90px; - line-height: 90px; - font-weight: bold; - width: 500px; + position: absolute; + left: 50%; + text-align: center; + margin-left: -250px; + color: #fc6; + font-size: 20px; + height: 90px; + line-height: 90px; + font-weight: bold; + width: 500px; } #dNewPlantName { - position: absolute; - position: absolute; - top: 320px; - text-align: center; - left: 50%; - margin-left: -150px; - width: 300px; - height: 55px; - font-family: Tahoma; - font-size: 30px; - color: #000; - font-weight: bold; - line-height: 55px; + position: absolute; + position: absolute; + top: 320px; + text-align: center; + left: 50%; + margin-left: -150px; + width: 300px; + height: 55px; + font-family: Tahoma; + font-size: 30px; + color: #000; + font-weight: bold; + line-height: 55px; } #dNewPlantTooltip { - position: absolute; - left: 50%; - top: 400px; - text-align: center; - margin-left: -140px; - width: 280px; - font-weight: bold; - font-family: Tahoma; - font-size: 15px; - color: #232323; + position: absolute; + left: 50%; + top: 400px; + text-align: center; + margin-left: -140px; + width: 280px; + font-weight: bold; + font-family: Tahoma; + font-size: 15px; + color: #232323; } #btnNextLevel { - position: absolute; - cursor: pointer; - width: 113px; - height: 41px; - border-left: 3px solid #85411c; - border-right: 3px solid #4e250c; - border-top: 3px solid #85411c; - border-bottom: 3px solid #4e250c; - background-color: #8f431b; - color: #fc6; - font-weight: bold; - font-size: 12px; - font-family: Tahoma; - left: 400px; - top: 507px; + position: absolute; + cursor: pointer; + width: 113px; + height: 41px; + border-left: 3px solid #85411c; + border-right: 3px solid #4e250c; + border-top: 3px solid #85411c; + border-bottom: 3px solid #4e250c; + background-color: #8f431b; + color: #fc6; + font-weight: bold; + font-size: 12px; + font-family: Tahoma; + left: 400px; + top: 507px; } #dProcess { - text-align: center; - border: 1px solid #fff; - background: #000; - color: #fff; - position: absolute; - left: 50%; - margin-left: -442px; - top: 10px; - width: 865px; - height: 550px; - visibility: hidden; - z-index: 250; - padding: 6px; - /* padding: 6px 5px 10px 2px */ + text-align: center; + border: 1px solid #fff; + background: #000; + color: #fff; + position: absolute; + left: 50%; + margin-left: -442px; + top: 10px; + width: 865px; + height: 550px; + visibility: hidden; + z-index: 250; + padding: 6px; + /* padding: 6px 5px 10px 2px */ } #dProcess img { - margin: 5px 0; + margin: 5px 0; } #dProcess .button { - cursor: pointer; - width: 113px; - height: 30px; - border-left: 3px solid #85411c; - border-right: 3px solid #4e250c; - border-top: 3px solid #85411c; - border-bottom: 3px solid #4e250c; - background-color: #8f431b; - color: #fc6; - font-weight: bold; - font-size: 14px; - font-family: Tahoma; + cursor: pointer; + width: 113px; + height: 30px; + border-left: 3px solid #85411c; + border-right: 3px solid #4e250c; + border-top: 3px solid #85411c; + border-bottom: 3px solid #4e250c; + background-color: #8f431b; + color: #fc6; + font-weight: bold; + font-size: 14px; + font-family: Tahoma; } #sFailed { - line-height: 30px; - font-size: 16px; - color: #ff0; - font-weight: bold; + line-height: 30px; + font-size: 16px; + color: #ff0; + font-weight: bold; } #dProcess2 { - overflow: auto; - line-height: 18px; - font-size: 12px; - text-align: left; - width: 100%; - height: 500px; + overflow: auto; + line-height: 18px; + font-size: 12px; + text-align: left; + width: 100%; + height: 500px; } dt { - line-height: 20px; - font-size: 15px; - margin: 8px 0 0 15px; - color: #e80; - font-family: Verdana, Tahoma; - font-weight: bold; + line-height: 20px; + font-size: 15px; + margin: 8px 0 0 15px; + color: #e80; + font-family: Verdana, Tahoma; + font-weight: bold; } dd { - line-height: 22px; - font-size: 14px; - margin: 0; + line-height: 22px; + font-size: 14px; + margin: 0; } dd.yellow { - color: #ff0; + color: #ff0; } .Tom1 { - left: 0; - top: 0; - width: 86px; - height: 91px; - background: url(images/interface/Tombstones.png) no-repeat; + left: 0; + top: 0; + width: 86px; + height: 91px; + background: url(images/interface/Tombstones.png) no-repeat; } .Tom2 { - position: absolute; - left: 0; - top: 0; - width: 86px; - height: 91px; - background: url(images/interface/Tombstone_mounds.png) no-repeat; + position: absolute; + left: 0; + top: 0; + width: 86px; + height: 91px; + background: url(images/interface/Tombstone_mounds.png) no-repeat; } .flipH { - -moz-transform: matrix(-1, 0, 0, 1, 0, 0); - -webkit-transform: matrix(-1, 0, 0, 1, 0, 0); - -o-transform: matrix(-1, 0, 0, 1, 0, 0); + -moz-transform: matrix(-1, 0, 0, 1, 0, 0); + -webkit-transform: matrix(-1, 0, 0, 1, 0, 0); + -o-transform: matrix(-1, 0, 0, 1, 0, 0); } #dText1, #dText2 { - position: relative; - width: 100%; + position: relative; + width: 100%; } #dText1 { - height: 90px; - _margin-bottom: 10px; + height: 90px; + _margin-bottom: 10px; } #dLink { - position: absolute; - top: 602px; - left: 0; + position: absolute; + top: 602px; + left: 0; } #dLinkTop, #dChatView2 { - position: relative; - float: left; - width: 393px; - _width: 384px; + position: relative; + float: left; + width: 393px; + _width: 384px; } #dLink, #dLinkTop { - color: #fff; - padding: 0; - height: 59px; + color: #fff; + padding: 0; + height: 59px; } #dLink div, #dLinkTop div, #dChatView2 div { - float: left; - margin-right: 2px; - height: 59px; - _margin-right: 1px; + float: left; + margin-right: 2px; + height: 59px; + _margin-right: 1px; } #dAdFlash { - position: absolute; - top: 100px; - left: 50%; - width: 320px; - height: 290px; - padding: 45px 107px 45px 107px; - margin-left: -275px; - z-index: 254; - display: none; + position: absolute; + top: 100px; + left: 50%; + width: 320px; + height: 290px; + padding: 45px 107px 45px 107px; + margin-left: -275px; + z-index: 254; + display: none; } #dAdFlash div { - position: absolute; + position: absolute; } #dAD2 { - position: absolute; - left: 50%; - margin-left: -234px; - top: 500px; - height: 15px; - width: 468px; - z-index: 250; + position: absolute; + left: 50%; + margin-left: -234px; + top: 500px; + height: 15px; + width: 468px; + z-index: 250; } .a5gg { - position: relative; - width: 161px; - text-align: center; - background: #f0f0f0; - font-size: 14px; - border: 0 solid #ccd3df; + position: relative; + width: 161px; + text-align: center; + background: #f0f0f0; + font-size: 14px; + border: 0 solid #ccd3df; } .a5gg dt { - margin-top: 0; - line-height: 17px; + margin-top: 0; + line-height: 17px; } .a5gg a { - text-decoration: none; - color: #336cd8; - font-size: 14px; + text-decoration: none; + color: #336cd8; + font-size: 14px; } .a5gg dd { - margin-left: 2px; - width: 30px; - height: 14px; - line-height: 14px; - float: left; - _margin-left: 1px; + margin-left: 2px; + width: 30px; + height: 14px; + line-height: 14px; + float: left; + _margin-left: 1px; } #dChat { - position: absolute; - left: 50%; - margin-left: -421px; - top: 5px; - z-index: 255; + position: absolute; + left: 50%; + margin-left: -421px; + top: 5px; + z-index: 255; } #dChat div { - position: absolute; + position: absolute; } #dChatView { - display: none; - width: 842px; - height: 585px; - background: url(); + display: none; + width: 842px; + height: 585px; + background: url(); } #dChatView .bg { - position: absolute; - left: 20px; - top: 20px; - width: 800px; - height: 395px; - background: #ffcf94; - filter: alpha(opacity=90); - opacity: 0.9; + position: absolute; + left: 20px; + top: 20px; + width: 800px; + height: 395px; + background: #ffcf94; + filter: alpha(opacity=90); + opacity: 0.9; } #dChatView iframe { - background-color: transparent; + background-color: transparent; } #dChatView .IF2 { - position: absolute; - left: 60px; - top: 530px; - width: 710px; - height: 35px; + position: absolute; + left: 60px; + top: 530px; + width: 710px; + height: 35px; } .Almanac_IndexBack { - background: url(images/interface/Almanac_ZombieBack.jpg) no-repeat; - width: 900px; - height: 600px; + background: url(images/interface/Almanac_ZombieBack.jpg) no-repeat; + width: 900px; + height: 600px; } .Almanac_PlantBack { - background: url(images/interface/Almanac_PlantBack.jpg) no-repeat; - width: 900px; - height: 600px; + background: url(images/interface/Almanac_PlantBack.jpg) no-repeat; + width: 900px; + height: 600px; } .Almanac_ZombieBack { - background: url(images/interface/Almanac_ZombieBack.jpg) no-repeat; - width: 900px; - height: 600px; + background: url(images/interface/Almanac_ZombieBack.jpg) no-repeat; + width: 900px; + height: 600px; } .Almanac_ZombieBack1 { - background: url(images/interface/Almanac_ZombieBack1.jpg) no-repeat; - width: 900px; - height: 600px; + background: url(images/interface/Almanac_ZombieBack1.jpg) no-repeat; + width: 900px; + height: 600px; } .Almanac_ZombieBack2 { - background: url(images/interface/Challenge_Background_Xiyouji.jpg) no-repeat; - width: 900px; - height: 600px; + background: url(images/interface/Challenge_Background_Xiyouji.jpg) no-repeat; + width: 900px; + height: 600px; } .Challenge_Background { - background: url(images/interface/Challenge_Background.jpg) no-repeat; - width: 900px; - height: 600px; + background: url(images/interface/Challenge_Background.jpg) no-repeat; + width: 900px; + height: 600px; } .Challenge_Background_Level { - background: url(images/interface/Challenge_Background_Level.jpg) no-repeat; - width: 900px; - height: 600px; + background: url(images/interface/Challenge_Background_Level.jpg) no-repeat; + width: 900px; + height: 600px; } .Xiyouji_Background { - background: url(images/interface/xiyouji_guanqia.jpg) no-repeat; - width: 900px; - height: 600px; + background: url(images/interface/xiyouji_guanqia.jpg) no-repeat; + width: 900px; + height: 600px; } .Sunflower_trophy { - position: absolute; - left: 15px; - top: 310px; - width: 157px; - height: 269px; - overflow: hidden; - cursor: pointer; + position: absolute; + left: 15px; + top: 310px; + width: 157px; + height: 269px; + overflow: hidden; + cursor: pointer; } .Sunflower_trophy img { - position: absolute; - left: -157px; - filter: glow(color=#ffffff, strength=8); + position: absolute; + left: -157px; + filter: glow(color=#ffffff, strength=8); } #dLogin { - position: absolute; - left: 0; - top: 0; - width: 900px; - height: 600px; - z-index: 255; - display: none; - font-weight: bold; + position: absolute; + left: 0; + top: 0; + width: 900px; + height: 600px; + z-index: 255; + display: none; + font-weight: bold; } #dLogin table { - position: absolute; - left: 233px; - top: 90px; - height: 400px; - width: 434px; + position: absolute; + left: 233px; + top: 90px; + height: 400px; + width: 434px; } #dLogin .list { - position: absolute; - left: 0; - top: 90px; - margin-top: 0; - z-index: 200; - width: 100%; - font-size: 13px; - text-align: center; - color: #fff; + position: absolute; + left: 0; + top: 90px; + margin-top: 0; + z-index: 200; + width: 100%; + font-size: 13px; + text-align: center; + color: #fff; } #dLogin .list div, #dPause .list div { - position: relative; - width: 100%; + position: relative; + width: 100%; } #dLogin .button, #dPause .button { - position: absolute; - cursor: pointer; - top: 410px; - font-family: 宋体; - color: #f93; - font-size: 24px; - font-weight: 700; + position: absolute; + cursor: pointer; + top: 410px; + font-family: 宋体; + color: #f93; + font-size: 24px; + font-weight: 700; } #dPause .button { - left: 150px; - top: 404px; + left: 150px; + top: 404px; } #dPauseAD { - left: 0; - height: 100%; + left: 0; + height: 100%; } #dLoadUserName { - visibility: hidden; - top: 170px; - height: 100%; - text-align: center; + visibility: hidden; + top: 170px; + height: 100%; + text-align: center; } #dPause { - position: absolute; - left: 233px; - top: 20px; - width: 434px; - display: none; - font-weight: bold; + position: absolute; + left: 233px; + top: 20px; + width: 434px; + display: none; + font-weight: bold; } #dPause .list { - position: absolute; - left: 0; - top: 90px; - z-index: 200; - width: 100%; - text-align: center; + position: absolute; + left: 0; + top: 90px; + z-index: 200; + width: 100%; + text-align: center; } #dPause .list .hidden { - cursor: pointer; - height: 20px; - color: #f93; - font-size: 16px; - line-height: 20px; + cursor: pointer; + height: 20px; + color: #f93; + font-size: 16px; + line-height: 20px; } #dPause .list .pause { - color: #000; - font-size: 18px; - line-height: 30px; + color: #000; + font-size: 18px; + line-height: 30px; } #dOptionsMenu { - line-height: 30px; - position: absolute; - width: 100%; - height: 100%; - display: none; - font-weight: bold; + line-height: 30px; + position: absolute; + width: 100%; + height: 100%; + display: none; + font-weight: bold; } #dOptionsMenu .button { - cursor: pointer; - color: #fff; - text-decoration: none; - font-family: Tahoma; - font-size: 20; + cursor: pointer; + color: #fff; + text-decoration: none; + font-family: Tahoma; + font-size: 20; } #dOptionsMenu .OMd0 { - margin-top: 120px; - height: 65px; - position: relative; + margin-top: 120px; + height: 65px; + position: relative; } #dOptionsMenu .OMd0 .OMd1 { - position: absolute; - left: 150px; - text-align: left; + position: absolute; + left: 150px; + text-align: left; } #dOptionsMenu .OMd0 .OMd1 div { - height: 30px; + height: 30px; } #dOptionsMenu .OMd0 .OMd1 div label { - color: #000; + color: #000; } #dMiniSmallContainer, @@ -1685,438 +1685,438 @@ dd.yellow { #dRiddleSmallContainer, #dRiddleSmallContainer1, #dAdvSmallContainer { - display: none; - position: absolute; - left: 0; - top: 0; + display: none; + position: absolute; + left: 0; + top: 0; } #dMiniSmallContainer table { - position: absolute; - left: 0; + position: absolute; + left: 0; } #dxiyouji table { - position: absolute; - left: 0; + position: absolute; + left: 0; } #dRiddleTitle, #dRiddleTitle1, #dMiniSmallTitle, #dAdvSmallTitle { - position: relative; - text-align: center; - line-height: 88px; - height: 88px; - width: 100%; - font-size: 30px; - font-weight: bold; - font-family: Tahoma; - color: #fff; + position: relative; + text-align: center; + line-height: 88px; + height: 88px; + width: 100%; + font-size: 30px; + font-weight: bold; + font-family: Tahoma; + color: #fff; } #dRiddleTitle { - color: #fff; + color: #fff; } #dRiddleTitle1 { - color: #fff; + color: #fff; } #dRiddleInx { - position: relative; - height: 473px; - width: 100%; + position: relative; + height: 473px; + width: 100%; } #dRiddleInx div { - position: absolute; - width: 50%; - height: 442px; - text-align: center; + position: absolute; + width: 50%; + height: 442px; + text-align: center; } #dRiddleInx .button { - cursor: pointer; - width: 113px; - height: 41px; - border-left: 3px solid #85411c; - border-right: 3px solid #4e250c; - border-top: 3px solid #85411c; - border-bottom: 3px solid #4e250c; - background-color: #8f431b; - color: #fc6; - font-weight: bold; - font-size: 14pt; - font-family: Tahoma; - margin-top: 26px; + cursor: pointer; + width: 113px; + height: 41px; + border-left: 3px solid #85411c; + border-right: 3px solid #4e250c; + border-top: 3px solid #85411c; + border-bottom: 3px solid #4e250c; + background-color: #8f431b; + color: #fc6; + font-weight: bold; + font-size: 14pt; + font-family: Tahoma; + margin-top: 26px; } #dRiddleInx .inx0 { - cursor: pointer; - top: 0; - left: 0; - margin-left: 0; - width: 450px; - height: 600px; - background: url(images/interface/Almanac_IndexBack.png) no-repeat left top; + cursor: pointer; + top: 0; + left: 0; + margin-left: 0; + width: 450px; + height: 600px; + background: url(images/interface/Almanac_IndexBack.png) no-repeat left top; } #dRiddleInx .inx1 { - cursor: pointer; - top: 0; - left: 0; - margin-left: 0; - width: 450px; - height: 600px; - background: url(images/interface/Almanac_IndexBack.png) no-repeat right top; + cursor: pointer; + top: 0; + left: 0; + margin-left: 0; + width: 450px; + height: 600px; + background: url(images/interface/Almanac_IndexBack.png) no-repeat right top; } #dRiddleInx1 { - position: relative; - height: 473px; - width: 100%; + position: relative; + height: 473px; + width: 100%; } #dRiddleInx1 div { - position: absolute; - width: 50%; - height: 442px; - text-align: center; + position: absolute; + width: 50%; + height: 442px; + text-align: center; } #dRiddleInx1 .button { - cursor: pointer; - width: 113px; - height: 41px; - border-left: 3px solid #85411c; - border-right: 3px solid #4e250c; - border-top: 3px solid #85411c; - border-bottom: 3px solid #4e250c; - background-color: #8f431b; - color: #fc6; - font-weight: bold; - font-size: 14pt; - font-family: Tahoma; - margin-top: 26px; + cursor: pointer; + width: 113px; + height: 41px; + border-left: 3px solid #85411c; + border-right: 3px solid #4e250c; + border-top: 3px solid #85411c; + border-bottom: 3px solid #4e250c; + background-color: #8f431b; + color: #fc6; + font-weight: bold; + font-size: 14pt; + font-family: Tahoma; + margin-top: 26px; } #dRiddleInx1 .inx01 { - cursor: pointer; - top: 0; - left: 50%; - margin-left: -110px; - width: 221px; - height: 310px; - background: url(images/interface/Almanac_IndexBack.png) no-repeat left top; + cursor: pointer; + top: 0; + left: 50%; + margin-left: -110px; + width: 221px; + height: 310px; + background: url(images/interface/Almanac_IndexBack.png) no-repeat left top; } #dRiddleInx1 .inx11 { - cursor: pointer; - top: 0; - left: 50%; - margin-left: -110px; - width: 221px; - height: 310px; - background: url(images/interface/Almanac_IndexBack.png) no-repeat right top; + cursor: pointer; + top: 0; + left: 50%; + margin-left: -110px; + width: 221px; + height: 310px; + background: url(images/interface/Almanac_IndexBack.png) no-repeat right top; } #dRiddle0 td, #dMini0 td, #dMini1 td { - cursor: pointer; - width: 20%; - text-align: center; - background: url(images/interface/Challenge.png) no-repeat 50%; - padding-top: 18px; + cursor: pointer; + width: 20%; + text-align: center; + background: url(images/interface/Challenge.png) no-repeat 50%; + padding-top: 18px; } #dRiddle0 { - position: relative; - height: 473px; - width: 94%; - display: none; + position: relative; + height: 473px; + width: 94%; + display: none; } #dRiddle0 .list, #dMini0 .list, #dMini1 .list { - margin-top: 15px; - height: 45px; + margin-top: 15px; + height: 45px; } #dRiddle0 .button, #dRiddle1 .button { - top: 475px; - position: absolute; - left: 30px; - text-align: center; - cursor: pointer; - width: 164px; - height: 26px; - line-height: 26px; - background: url(images/interface/Almanac_IndexButton.png); - color: #000080; - font-size: 16px; + top: 475px; + position: absolute; + left: 30px; + text-align: center; + cursor: pointer; + width: 164px; + height: 26px; + line-height: 26px; + background: url(images/interface/Almanac_IndexButton.png); + color: #000080; + font-size: 16px; } #dRiddle1 { - text-align: left; - position: relative; - height: 473px; - width: 100%; - display: none; - top: -10px; + text-align: left; + position: relative; + height: 473px; + width: 100%; + display: none; + top: -10px; } #dRiddleClose, #dMini1 .button, #dMini0 .button, #dAdvSmallContainer .button { - position: absolute; - left: 650px; - top: 564px; - text-align: center; - cursor: pointer; - width: 89px; - height: 26px; - line-height: 26px; - background: url(images/interface/Almanac_CloseButton.png); - color: #000080; - font-size: 16px; + position: absolute; + left: 650px; + top: 564px; + text-align: center; + cursor: pointer; + width: 89px; + height: 26px; + line-height: 26px; + background: url(images/interface/Almanac_CloseButton.png); + color: #000080; + font-size: 16px; } #dRiddle1 .list { - width: 48%; + width: 48%; } #dAdvSmallContainer { - padding-left: 50px; + padding-left: 50px; } #dAdvSmallContainer img { - position: absolute; + position: absolute; } #dAdvSmallContainer .lvl { - font-size: 16px; - font-weight: bold; - font-family: Tahoma; - float: left; - cursor: pointer; - margin-left: 40px; + font-size: 16px; + font-weight: bold; + font-family: Tahoma; + float: left; + cursor: pointer; + margin-left: 40px; } #dAdvSmallContainer .lvl2 { - position: relative; - float: left; - width: 500px; - line-height: 35px; - padding-top: 15px; + position: relative; + float: left; + width: 500px; + line-height: 35px; + padding-top: 15px; } #dAdvSmallContainer .list { - position: relative; - width: 700px; - height: 80px; - float: left; + position: relative; + width: 700px; + height: 80px; + float: left; } #dAdvSmallContainer .list .title { - position: relative; - color: #000; - font-size: 25px; - line-height: 25px; - font-weight: bold; - font-family: Tahoma; - height: 90px; - width: 60px; - float: left; - padding-top: 25px; + position: relative; + color: #000; + font-size: 25px; + line-height: 25px; + font-weight: bold; + font-family: Tahoma; + height: 90px; + width: 60px; + float: left; + padding-top: 25px; } #dAdvSmallContainer .list .icon { - position: relative; - height: 100px; - width: 100px; - float: left; - margin-left: 20px; + position: relative; + height: 100px; + width: 100px; + float: left; + margin-left: 20px; } #dAdvSmallContainer .img1 { - top: 17px; + top: 17px; } #dAdvSmallContainer .img2 { - left: 8px; - top: 11px; + left: 8px; + top: 11px; } .Announcement { - position: absolute; - left: 50%; - margin-top: -20px; - margin-left: -450px; - padding-top: 25px; - height: 60px; - overflow: hidden; - top: 600px; - width: 900px; - background: url("new_skin/pvz/game_bg.png") no-repeat 0 0; - z-index: 65535; + position: absolute; + left: 50%; + margin-top: -20px; + margin-left: -450px; + padding-top: 25px; + height: 60px; + overflow: hidden; + top: 600px; + width: 900px; + background: url("new_skin/pvz/game_bg.png") no-repeat 0 0; + z-index: 65535; } .Announcement .d1 { - float: left; - position: relative; - height: 40px; - width: 75%; + float: left; + position: relative; + height: 40px; + width: 75%; } .Announcement .d1 .share { - font-weight: bold; - float: left; - line-height: 40px; - margin-left: 0; - font-size: 14px; + font-weight: bold; + float: left; + line-height: 40px; + margin-left: 0; + font-size: 14px; } .dLittleChat { - float: left; - width: 25%; - margin-top: 5px; + float: left; + width: 25%; + margin-top: 5px; } .dLittleChat a { - color: #060; - font-size: 14px; - font-family: Tahoma, Tahoma; + color: #060; + font-size: 14px; + font-family: Tahoma, Tahoma; } .game_ipt_01 { - float: left; - width: 79px; - height: 26px; - margin-right: 10px; - background: url(new_skin/pvz/game_ipt.png) no-repeat; - border: 0; - font-weight: 600; - color: #fff; - font-size: 14px; - vertical-align: top; - cursor: pointer; + float: left; + width: 79px; + height: 26px; + margin-right: 10px; + background: url(new_skin/pvz/game_ipt.png) no-repeat; + border: 0; + font-weight: 600; + color: #fff; + font-size: 14px; + vertical-align: top; + cursor: pointer; } #dSpeedContainer { - position: absolute; - left: 50%; - padding: 10px; - margin-left: -300px; - top: 87px; - width: 600px; - font-size: 14px; - height: 430px; - border: 1px solid #000; - background: #666; - color: #fff; - text-align: center; - display: none; - z-index: 255; + position: absolute; + left: 50%; + padding: 10px; + margin-left: -300px; + top: 87px; + width: 600px; + font-size: 14px; + height: 430px; + border: 1px solid #000; + background: #666; + color: #fff; + text-align: center; + display: none; + z-index: 255; } #dSpeedContainer .title { - position: relative; - height: 25px; - width: 538px; - line-height: 25px; - font-weight: bold; - color: #ff0; + position: relative; + height: 25px; + width: 538px; + line-height: 25px; + font-weight: bold; + color: #ff0; } #dSpeedContainer .nowspeed { - height: 50px; - line-height: 50px; - font-weight: bold; - color: #ff0; + height: 50px; + line-height: 50px; + font-weight: bold; + color: #ff0; } #dSpeedContainer .content { - text-align: left; - line-height: 30px; + text-align: left; + line-height: 30px; } #dSpeedContainer .content span { - font-weight: 700; - color: #ff0; + font-weight: 700; + color: #ff0; } .dSpeed { - position: relative; - margin-top: 20px; - height: 50px; - width: 100%; + position: relative; + margin-top: 20px; + height: 50px; + width: 100%; } .dSpeed div { - cursor: pointer; + cursor: pointer; } .dSpeed .dS1 { - float: left; - width: 40%; - line-height: 50px; - font-weight: bold; + float: left; + width: 40%; + line-height: 50px; + font-weight: bold; } .dSpeed .dS2 div { - float: left; + float: left; } button.jhp { - background-image: -webkit-gradient( - linear, - left top, - left bottom, - from(#f5f5f5), - to(#f1f1f1) - ); - background-image: -webkit-linear-gradient(top, #f5f5f5, #f1f1f1); - -webkit-border-radius: 2px; - -webkit-user-select: none; - background-color: #f5f5f5; - background-image: linear-gradient(top, #f5f5f5, #f1f1f1); - background-image: -o-linear-gradient(top, #f5f5f5, #f1f1f1); - border: 1px solid #dcdcdc; - border: 1px solid rgba(0, 0, 0, 0.1); - border-radius: 2px; - color: #666; - cursor: pointer; - font-family: arial, sans-serif; - font-size: 11px; - font-weight: bold; - text-align: center; + background-image: -webkit-gradient( + linear, + left top, + left bottom, + from(#f5f5f5), + to(#f1f1f1) + ); + background-image: -webkit-linear-gradient(top, #f5f5f5, #f1f1f1); + -webkit-border-radius: 2px; + -webkit-user-select: none; + background-color: #f5f5f5; + background-image: linear-gradient(top, #f5f5f5, #f1f1f1); + background-image: -o-linear-gradient(top, #f5f5f5, #f1f1f1); + border: 1px solid #dcdcdc; + border: 1px solid rgba(0, 0, 0, 0.1); + border-radius: 2px; + color: #666; + cursor: pointer; + font-family: arial, sans-serif; + font-size: 11px; + font-weight: bold; + text-align: center; } button.jhp:hover { - background-image: -webkit-gradient( - linear, - left top, - left bottom, - from(#f8f8f8), - to(#f1f1f1) - ); - background-image: -webkit-linear-gradient(top, #f8f8f8, #f1f1f1); - -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); - background-color: #f8f8f8; - background-image: linear-gradient(top, #f8f8f8, #f1f1f1); - background-image: -o-linear-gradient(top, #f8f8f8, #f1f1f1); - border: 1px solid #c6c6c6; - box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); - color: #333; + background-image: -webkit-gradient( + linear, + left top, + left bottom, + from(#f8f8f8), + to(#f1f1f1) + ); + background-image: -webkit-linear-gradient(top, #f8f8f8, #f1f1f1); + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + background-color: #f8f8f8; + background-image: linear-gradient(top, #f8f8f8, #f1f1f1); + background-image: -o-linear-gradient(top, #f8f8f8, #f1f1f1); + border: 1px solid #c6c6c6; + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + color: #333; } button.jhp:focus { - border: 1px solid #4d90fe; - outline: 0; + border: 1px solid #4d90fe; + outline: 0; } diff --git a/game/cl.html b/game/cl.html index 0c08810f..8d85008d 100644 --- a/game/cl.html +++ b/game/cl.html @@ -1,32 +1,32 @@ - - - - Changelog - - - + + + + Changelog + + + - - + fetch(apiUrl) + .then((response) => response.json()) + .then((commits) => { + commits.forEach((commit) => { + const listItem = document.createElement("li"); + listItem.textContent = `${commit.commit.author.name}: ${commit.commit.message}`; + commitList.appendChild(listItem); + }); + }) + .catch((error) => { + console.error("Error fetching commits:", error); + }); + }); + + diff --git a/game/iframe.html b/game/iframe.html index b5d3e563..46d8772d 100644 --- a/game/iframe.html +++ b/game/iframe.html @@ -1,1089 +1,1090 @@ - - - - Plants vs. Zombies MODDED Official - - - - - - - - - - - - - - - - - - - - + + + + Plants vs. Zombies MODDED Official + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + - - - - - -
-
-
-
-
-
- - - - - - - - -
-
-
-
- - - - -
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
- - - - -
- -
-
- -
-
-
- Back To Game -
-
-
-
-
-
-
-
-
- - -
-
- - -
-
-
-
- Level -
-
- Speed -
-
- Almanac -
- -
- Restart -
-
- Home -
-
- Back To Game -
-
- -
-
-
Level Selection
-
-
Day
-
- - -
-
- -
-
-
-
Night
-
- - -
-
- -
-
-
-
Pool
-
- - -
-
- -
-
-
-
Dragon Palace
-
- - -
-
- -
-
-
-
Water Town
-
- - -
-
- -
-
-
- Close -
-
-
-
- China Pavilion - Dave's China Trip -
-
- - -
-
- Close -
-
-
-
-
-
Mini-Games
-
- - -
-
- Close -
-
- -
-
- Puzzle Mode Index -
-
- -
-
- - -     -     -     - -
- -
-
-
- Title Rebel Mode Index -
-
- Create a new level -
-
-
- Close  -
-
-
-
-
-
-
-
- Almanac  -
-
-
-
-
- - -
-
-
-
- -
-
- -
-
-
-
-
- - -
-
-
Suburban Almanac - Index
-
-
-
- -
-
-
- -
-
-
- Close  -
-
-
-
-
Suburban Almanac - Plants
-
-
-
-
-
-
-
- Cost: Cool down: -
-
-
-
-
Suburban Almanac - Zombies
-
-
-
-
-
-
-
-
-
-
- Almanac Index -
-
- Close  -
-
-
-
-
You got a new plant!
-
- -
-
-
-


-
-





-
- Main Menu  -
- -
-
- - -
-
-
- At the request of players, the game speed adjustment function is - especially introduced -
-
-
Click on the corresponding speed
-
-
1/2

┕━
-
1

━┻━
-
2

━┻━
-
5

━┻━
-
10

━┛
-
-
-
- Current game speed:1 -
-
-     Speed Continue: Ideally, the - speed adjustment provided by the game is - 1/2 speed - 10 times speed. But the - speed Continue effect is related to your browser and computer. - For example, IE6 browser can't be expected to be 10 times faster - on a good computer.
    After the speed - adjustment, the visual visual of the screen may feel a bit - sluggish, and at high speeds, some browsers may not be able to - accelerate or can only accelerate for a short time and then slow - down.
    - Finally, it is strongly recommended to use: Chrome, - FireFox, Brave, so that you can experience the feeling - of a machine gun with a peashooter!
    -
-
-
-
-    - -
-
- - - - - - - - + gtag("config", "G-CYNM3PNQXE"); + + + + + + +
+
+
+
+
+
+ + + + + + + + +
+
+
+
+ + + + +
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+ + + + +
+ +
+
+ +
+
+
+ Back To Game +
+
+
+
+
+
+
+
+
+ + +
+
+ + +
+
+
+
+ Level +
+
+ Speed +
+
+ Almanac +
+ +
+ Restart +
+
+ Home +
+
+ Back To Game +
+
+ +
+
+
Level Selection
+
+
Day
+
+ + +
+
+ +
+
+
+
Night
+
+ + +
+
+ +
+
+
+
Pool
+
+ + +
+
+ +
+
+
+
Dragon Palace
+
+ + +
+
+ +
+
+
+
Water Town
+
+ + +
+
+ +
+
+
+ Close +
+
+
+
+ China Pavilion - Dave's China Trip +
+
+ + +
+
+ Close +
+
+
+
+
+
Mini-Games
+
+ + +
+
+ Close +
+
+ +
+
+ Puzzle Mode Index +
+
+ +
+
+ + +     +     +     + +
+ +
+
+
+ Title Rebel Mode Index +
+
+ Create a new level +
+
+
+ Close  +
+
+
+
+
+
+
+
+ Almanac  +
+
+
+
+
+ + +
+
+
+
+ +
+
+ +
+
+
+
+
+ + +
+
+
Suburban Almanac - Index
+
+
+
+ +
+
+
+ +
+
+
+ Close  +
+
+
+
+
Suburban Almanac - Plants
+
+
+
+
+
+
+
+ Cost: Cool down: +
+
+
+
+
Suburban Almanac - Zombies
+
+
+
+
+
+
+
+
+
+
+ Almanac Index +
+
+ Close  +
+
+
+
+
You got a new plant!
+
+ +
+
+
+


+
+





+
+ Main Menu  +
+ +
+
+ + +
+
+
+ At the request of players, the game speed adjustment function is + especially introduced +
+
+
Click on the corresponding speed
+
+
1/2

┕━
+
1

━┻━
+
2

━┻━
+
5

━┻━
+
10

━┛
+
+
+
+ Current game speed:1 +
+
+     Speed Continue: Ideally, the + speed adjustment provided by the game is + 1/2 speed - 10 times speed. But the + speed Continue effect is related to your browser and computer. + For example, IE6 browser can't be expected to be 10 times faster + on a good computer.
    After the speed + adjustment, the visual visual of the screen may feel a bit + sluggish, and at high speeds, some browsers may not be able to + accelerate or can only accelerate for a short time and then slow + down.
    + Finally, it is strongly recommended to use: Chrome, + FireFox, Brave, so that you can experience the feeling + of a machine gun with a peashooter!
    +
+
+
+
+    + +
+
+ + + + + + + + diff --git a/game/index.html b/game/index.html index 7b10bea5..944daaf8 100644 --- a/game/index.html +++ b/game/index.html @@ -1,42 +1,42 @@ - - - - Plants vs. Zombies MODDED Official - - - - - - - - - - - - - - + + + + Plants vs. Zombies MODDED Official + + + + + + + + + + + + + + diff --git a/game/js/CFP_Beta.js b/game/js/CFP_Beta.js index 04f2910b..877feb03 100644 --- a/game/js/CFP_Beta.js +++ b/game/js/CFP_Beta.js @@ -3,72 +3,131 @@ let pNameValue = []; // for loading plants let backgroundImage; // for loading the background image // the compression stuff assumes that pako is loaded function compressString(input) { - const inputUTF8 = new TextEncoder().encode(input); - const compressed = pako.deflate(inputUTF8); - const compressedBase64 = btoa(String.fromCharCode.apply(null, compressed)); - return compressedBase64.replaceAll("=", ""); + const inputUTF8 = new TextEncoder().encode(input); + const compressed = pako.deflate(inputUTF8); + const compressedBase64 = btoa(String.fromCharCode.apply(null, compressed)); + return compressedBase64.replaceAll("=", ""); } function decompressString(compressedBase64) { - const compressed = Uint8Array.from(atob(compressedBase64), (c) => - c.charCodeAt(0) - ); - const decompressed = pako.inflate(compressed); - const decompressedString = new TextDecoder().decode(decompressed); - return decompressedString; + const compressed = Uint8Array.from(atob(compressedBase64), (c) => + c.charCodeAt(0) + ); + const decompressed = pako.inflate(compressed); + const decompressedString = new TextDecoder().decode(decompressed); + return decompressedString; } -function cloneFromPlants(name, sun) { - let keyedDict = Object.keys($P); - let plantDict = {}; - // for every object in $P, save the following data: - // $P[keyedDict[i]].R // save as pos1 - // $P[keyedDict[i]].C // save as pos2 - // Object.getPrototypeOf($P[keyedDict[6]]).EName // save as plantName +function cloneFromPlants(name, sun, screenshot) { + let keyedDict = Object.keys($P); + let plantDict = {}; + // for every object in $P, save the following data: + // $P[keyedDict[i]].R // save as plantRow + // $P[keyedDict[i]].C // save as plantCol + // Object.getPrototypeOf($P[keyedDict[6]]).EName // save as plantName - for (let i = 0; i < keyedDict.length; i++) { - let pos1 = $P[keyedDict[i]].R; - let pos2 = $P[keyedDict[i]].C; - let plantName = Object.getPrototypeOf($P[keyedDict[i]]).EName; - let zIndex = $P[keyedDict[i]].zIndex; - plantDict[keyedDict[i]] = { zIndex, pos1, pos2, plantName }; - } - // now turn it into an array of dictionaries - let plantArray = Object.values(plantDict); - // now put that array into another array with the background - let levelData = { - plants: plantArray, - music: oS.LoadMusic, - sun, - name, - lfValue: oGd.$LF, - stripeCol: oS.ArP.ArC[1], - /* - * not sure what lf stands for but its for where u can place plants/zombies - * 0 is for nothing - * 1 is for normal - * 2 is for water - * 3 is for oxygen/pots - * the first value should always be 0 - */ - }; - return levelData; + for (let i = 0; i < keyedDict.length; i++) { + let plantRow = $P[keyedDict[i]].R; + let plantCol = $P[keyedDict[i]].C; + let plantName = Object.getPrototypeOf($P[keyedDict[i]]).EName; + let zIndex = $P[keyedDict[i]].zIndex; + plantDict[keyedDict[i]] = { zIndex, plantRow, plantCol, plantName }; + } + // now turn it into an array of dictionaries + let plantArray = Object.values(plantDict); + // now put that array into another array with the background + let levelData = { + plants: plantArray, + music: oS.LoadMusic, + sun, + name, + lfValue: oGd.$LF, + stripeCol: oS.ArP.ArC[1], + screenshot, + /* + * not sure what lf stands for but its for where u can place plants/zombies + * 0 is for nothing + * 1 is for normal + * 2 is for water + * 3 is for oxygen/pots + * the first value should always be 0 + */ + }; + return levelData; } function stringifyClone(levelData) { - return compressString(JSON.stringify(levelData)); + if (levelData.screenshot) { + let screenshot = (levelData.screenshot).replace("data:image/webp;base64,", ""); + delete levelData.screenshot; + return compressString(JSON.stringify(levelData)) + ';' + screenshot; + } else { + return compressString(JSON.stringify(levelData)); + } } function parseClone(stringifiedData) { - return JSON.parse(decompressString(stringifiedData)); + let levelData = JSON.parse(decompressString(stringifiedData.split(';')[0])); + let screenshot = stringifiedData.split(';')[1]; + if (screenshot) { + levelData.screenshot = "data:image/webp;base64," + screenshot; + } + return levelData; } function restoreToPlants(levelData) { - let plantArray = levelData.plants; - plantArray.sort((a, b) => a.zIndex - b.zIndex); + let plantArray = levelData.plants; + plantArray.sort((a, b) => a.zIndex - b.zIndex); - for (let i = 0; i < plantArray.length; i++) { - let plant = plantArray[i]; - let plantName = plant.plantName; - let pos1 = plant.pos1; - let pos2 = plant.pos2; - CustomSpecial(window[plantName], pos1, pos2); - } + for (let i = 0; i < plantArray.length; i++) { + let plant = plantArray[i]; + let plantName = plant.plantName; + let plantRow = plant.plantRow; + let plantCol = plant.plantCol; + CustomSpecial(window[plantName], plantRow, plantCol); + } } + +async function captureScreenshot() { + return new Promise((resolve, reject) => { + const element = document.querySelector("#dAll"); + const cardList = document.querySelector("#dCardList"); + if (!element) { + console.error("Element #dAll not found"); + reject("Element #dAll not found"); + return; + } + html2canvas(element, { + ignoreElements: (el) => el === cardList, // Ignore #dCardList in the capture + }) + .then((canvas) => { + // Get the original dimensions of the canvas + const originalWidth = canvas.width; + const originalHeight = canvas.height; + // Calculate the new height while maintaining the aspect ratio + const newWidth = 215; + const newHeight = (newWidth / originalWidth) * originalHeight; + // Create an offscreen canvas to resize the screenshot + const resizedCanvas = document.createElement("canvas"); + resizedCanvas.width = newWidth; + resizedCanvas.height = newHeight; + const ctx = resizedCanvas.getContext("2d"); + ctx.drawImage(canvas, 0, 0, newWidth, newHeight); + // Convert to WebP + resizedCanvas.toBlob( + (blob) => { + const reader = new FileReader(); + reader.onloadend = function () { + const base64data = reader.result; + console.log("Screenshot captured:", base64data); + resolve(base64data); // Resolve the Promise with the base64 data + }; + reader.readAsDataURL(blob); + }, + "image/webp", + 0.75 // quality, 0-1 + ); + }) + .catch((error) => { + console.error("Screenshot capture failed:", error); + reject(error); // Reject the Promise with the error + }); + }); +} \ No newline at end of file diff --git a/game/js/CPlants.js b/game/js/CPlants.js index d729feef..97099485 100644 --- a/game/js/CPlants.js +++ b/game/js/CPlants.js @@ -1,103 +1,5823 @@ var CPlants = NewO({ - name: "Plants", - HP: 300, - PKind: 1, - beAttackedPointL: 20, - CardGif: 0, - StaticGif: 1, - NormalGif: 2, - BookHandBack: 0, - canEat: 1, - zIndex: 0, - AudioArr: [], - coolTime: 7.5, - CanSelect: 1, - canTrigger: 1, - Stature: 0, - Sleep: 0, - CanGrow: function (c, b, e) { - var a = b + "_" + e, - d = oS.ArP; - return d - ? oGd.$LF[b] == 1 - ? e > 0 && - e < d.ArC[1] && - !(oGd.$Crater[a] || oGd.$Tombstones[a] || c[1]) - : c[0] && !c[1] - : oGd.$LF[b] == 1 - ? !( - e < 1 || - e > 9 || - oGd.$Crater[a] || - oGd.$Tombstones[a] || - c[1] - ) - : c[0] && !c[1]; + name: "Plants", + HP: 300, + PKind: 1, + beAttackedPointL: 20, + CardGif: 0, + StaticGif: 1, + NormalGif: 2, + BookHandBack: 0, + canEat: 1, + zIndex: 0, + AudioArr: [], + coolTime: 7.5, + CanSelect: 1, + canTrigger: 1, + Stature: 0, + + Sleep: 0, + CanGrow: function (c, b, e) { + var a = b + "_" + e, + d = oS.ArP; + return d + ? oGd.$LF[b] == 1 + ? e > 0 && + e < d.ArC[1] && + !(oGd.$Crater[a] || oGd.$Tombstones[a] || c[1]) + : c[0] && !c[1] + : oGd.$LF[b] == 1 + ? !( + e < 1 || + e > 9 || + oGd.$Crater[a] || + oGd.$Tombstones[a] || + c[1] + ) + : c[0] && !c[1]; + }, + getHurt: function (e, c, b) { + var d = this, + a = d.id; + !(c % 3) ? (d.HP -= b) < 1 && d.Die() : d.Die(); + }, + GetDY: function (b, c, a) { + return a[0] ? -21 : -15; + }, + GetDX: function () { + return -Math.floor(this.width * 0.5); + }, + GetDBottom: function () { + return this.height; + }, + Birth: function (d, c, h, a, m, n) { + var e = this, + k = d + e.GetDX(), + i = c + e.GetDY(h, a, m), + l = e.prototype, + g = i - e.height, + b = (e.id = "P_" + Math.random()), + j = (e.zIndex += 3 * h), + f = NewEle(0, "div", "position:absolute"); + NewImg(0, ShadowPNG, e.getShadow(e), f); + NewImg(0, e.PicArr[e.NormalGif], "", f); + e.pixelLeft = k; + e.pixelRight = k + e.width; + e.pixelTop = g; + e.pixelBottom = g + e.GetDBottom(); + e.opacity = 1; + e.InitTrigger( + e, + b, + (e.R = h), + (e.C = a), + (e.AttackedLX = k + e.beAttackedPointL), + (e.AttackedRX = k + e.beAttackedPointR) + ); + $P[b] = e; + $P.length += 1; + e.BirthStyle( + e, + b, + f, + { + left: k + "px", + top: g + "px", + zIndex: j, + }, + n + ); + oGd.add(e, h + "_" + a + "_" + e.PKind); + e.PrivateBirth(e, n); + }, + getShadow: function (a) { + return ( + "left:" + + (a.width * 0.5 - 48) + + "px;top:" + + (a.height - 22) + + "px" + ); + }, + BirthStyle: function (c, d, b, a) { + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + PrivateBirth: function (a) {}, + getTriggerRange: function (a, b, c) { + return [[b, oS.W, 0]]; + }, + getTriggerR: function (a) { + return [a, a]; + }, + InitTrigger: function (c, b, f, a, h, g) { + var j = {}, + i = c.getTriggerR(f), + e = i[0], + d = i[1]; + do { + oT.add(e, (j[e] = c.getTriggerRange(e, h, g)), b); + } while (e++ != d); + c.oTrigger = j; + }, + TriggerCheck: function (b, a) { + this.AttackCheck2(b) && + ((this.canTrigger = 0), this.CheckLoop(b.id, a)); + }, + CheckLoop: function (b, c) { + var a = this.id; + this.NormalAttack(b); + oSym.addTask( + 140, + function (e, f, h) { + var g; + (g = $P[e]) && g.AttackCheck1(f, h); + }, + [a, b, c] + ); + }, + AttackCheck1: function (g, f) { + var b = this, + c = b.oTrigger, + a = $Z[g], + h, + e, + k, + j; + if (a && a.PZ && (h = c[a.R])) { + k = a.ZX; + e = h.length; + while (e--) { + j = h[e]; + if (j[0] <= k && j[1] >= k && b.AttackCheck2(a)) { + b.CheckLoop(g, j[2]); + return; + } + } + } + b.canTrigger = 1; + }, + AttackCheck2: function (a) { + return a.Altitude > 0; + }, + PrivateDie: function (a) {}, + BoomDie: function () { + var a = this, + b = a.id; + a.oTrigger && oT.delP(a); + a.HP = 0; + delete $P[b]; + delete oGd.$[a.R + "_" + a.C + "_" + a.PKind]; + $P.length -= 1; + ClearChild($(b)); + a.PrivateDie(a); + }, + Die: function (a) { + var b = this, + c = b.id; + b.oTrigger && oT.delP(b); + b.HP = 0; + delete $P[c]; + delete oGd.$[b.R + "_" + b.C + "_" + b.PKind]; + $P.length -= 1; + !a && ClearChild($(c)); + b.PrivateDie(b); + }, + }), + oGraveBuster = InheritO(CPlants, { + EName: "oGraveBuster", + CName: "Grave Buster", + width: 99, + height: 106, + beAttackedPointR: 70, + SunNum: 75, + BookHandBack: 2.5, + canEat: 0, + PicArr: [ + "images/Card/Plants/GraveBuster.png", + "images/Plants/GraveBuster/0.gif", + "images/Plants/GraveBuster/GraveBuster.gif" + + $Random + + Math.random(), + ], + AudioArr: ["gravebusterchomp"], + CanGrow: function (b, a, d) { + var c = oS.ArP; + return c + ? d > 0 && + d < c.ArC[1] && + a + "_" + d in oGd.$Tombstones && + !b[1] + : a + "_" + d in oGd.$Tombstones && !b[1]; + }, + getShadow: function (a) { + return "left:" + (a.width * 0.5 - 48) + "px;top:" + a.height + "px"; + }, + BirthStyle: function (c, d, b, a) { + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + GetDY: function (b, c, a) { + return -30; + }, + InitTrigger: function () {}, + Tooltip: "Plant it on a grave to remove the grave", + Produce: + 'Biting the Tombstone is used to eat the tombstone.

Instructions:Single use, only effective on tombstones.
Features:Devour tombstones.

Despite his intimidating appearance, he wants everyone
Everyone knows that he actually likes kittens, and uses his spare time
while volunteering at a zombie rehabilitation center. "Im just
doing the right thing, he said.', + PrivateBirth: function (a) { + PlayAudio("gravebusterchomp"); + oSym.addTask( + 420, + function (b) { + var e = $P[b], + c, + d, + f; + e && + ((d = e.R), + (f = e.C), + delete oGd.$Tombstones[(c = d + "_" + f)], + e.Die(), + ClearChild($("dTombstones" + c)), + oS.StaticCard && + AppearSun( + Math.floor(GetX(f) + Math.random() * 41), + GetY(d), + 25, + 0 + )); + }, + [a.id] + ); + }, + }), + oLawnCleaner = InheritO(CPlants, { + EName: "oLawnCleaner", + CName: "Lawn mower", + width: 71, + height: 57, + beAttackedPointL: 0, + beAttackedPointR: 71, + SunNum: 0, + PicArr: [ + "images/interface/LawnCleaner.png", + "images/interface/LawnCleaner1.png", + ], + AudioArr: ["lawnmower"], + NormalGif: 0, + canEat: 0, + Stature: 1, + getShadow: function (a) { + return ( + "left:" + + (a.width * 0.5 - 38) + + "px;top:" + + (a.height - 22) + + "px" + ); + }, + getTriggerRange: function (a, b, c) { + return [[b, c, 0]]; + }, + TriggerCheck: function (b, a) { + b.beAttacked && + b.Altitude > 0 && + ((this.canTrigger = 0), this.NormalAttack(this)); + }, + BoomDie: function () {}, + Tooltip: "Most common lawn mower", + NormalAttack: function (a) { + PlayAudio(a.AudioArr[0]); + (function (b, c, k, j, e, g) { + var d = oZ.getArZ(k, j, e), + f = d.length, + h; + $(a.id).childNodes[1].src = "images/interface/LawnCleaner1.png"; + while (f--) { + (h = d[f]).getCrushed(b) && h.CrushDie(); + } + k > c + ? b.Die() + : ((b.pixelRight += 10), + (b.AttackedLX = k += 10), + (b.AttackedRX = j += 10), + (g.style.left = (b.pixelLeft += 10) + "px"), + oSym.addTask(1, arguments.callee, [b, c, k, j, e, g]), + [this]); + })(a, oS.W, a.AttackedLX, a.AttackedRX, a.R, $(a.id)); + }, + }), + oCleaner1 = InheritO(oLawnCleaner, { + EName: "oCleaner", + CName: "Cleaner", + width: 80, + height: 80, + beAttackedPointL: 0, + beAttackedPointR: 57, + SunNum: 0, + PicArr: [ + "images/interface/BZ.png", + "images/Plants/Jalapeno/JalapenoAttack.gif", + ], + Tooltip: "Firecrackers", + AudioArr: ["jalapeno"], + }), + oCleaner = InheritO(oCleaner1, { + EName: "oCleaner", + NormalAttack: function (a) { + oSym.addTask( + 40, + function (j) { + var h = $P[j]; + if (h) { + PlayAudio("jalapeno"); + var b = $(j), + f = h.R, + c = oZ.getArZ(100, oS.W, f), + e = c.length, + g = oGd.$Ice[f], + d = oGd.$Crater; + while (e--) { + c[e].getExplosion(); + } + h.Die(1); + EditEle( + b.childNodes[1], + { + src: "images/Plants/Jalapeno/JalapenoAttack.gif", + }, + { + width: "755px", + height: "131px", + left: 120 - h.pixelLeft + "px", + top: "-42px", + } + ); + oSym.addTask(135, ClearChild, [b]); + ClearChild($("dIceCar" + f)); + if (g) { + for (e = g[1]; e < 11; e++) { + delete d[f + "_" + e]; + } + } + } + }, + [a.id] + ); + }, + }), + oPoolCleaner = InheritO(oLawnCleaner, { + EName: "oPoolCleaner", + CName: "Pool Cleaner", + width: 47, + height: 64, + beAttackedPointL: 0, + beAttackedPointR: 47, + SunNum: 0, + PicArr: [ + "images/interface/PoolCleaner.png", + "images/interface/PoolCleaner1.png", + ], + Tooltip: "Pond Sweeper", + AudioArr: ["pool_cleaner"], + NormalAttack: function (a) { + PlayAudio(a.AudioArr[0]); + (function (b, c, k, j, e, g) { + var d = oZ.getArZ(k, j, e), + f = d.length, + h; + $(a.id).childNodes[1].src = "images/interface/PoolCleaner1.png"; + while (f--) { + (h = d[f]).getCrushed(b) && h.CrushDie(); + } + k > c + ? b.Die() + : ((b.pixelRight += 10), + (b.AttackedLX = k += 10), + (b.AttackedRX = j += 10), + (g.style.left = (b.pixelLeft += 10) + "px"), + oSym.addTask(1, arguments.callee, [b, c, k, j, e, g]), + [this]); + })(a, oS.W, a.AttackedLX, a.AttackedRX, a.R, $(a.id)); + }, + }), + oBrains = InheritO(CPlants, { + EName: "oBrains", + CName: "Brains", + width: 32, + height: 31, + beAttackedPointL: 0, + beAttackedPointR: 32, + SunNum: 0, + HP: 1, + PicArr: ["images/interface/brain.png"], + Tooltip: "Delicious brain", + NormalGif: 0, + InitTrigger: function () {}, + PrivateBirth: function (a) { + a.PrivateDie = oS.BrainsNum + ? ((a.DieStep = Math.floor(150 / oS.BrainsNum)), + function (d) { + var c, b; + AppearSun( + Math.floor(GetX(d.C) - 40 + Math.random() * 41), + GetY(d.R), + 50, + 0 + ); + (b = --oS.BrainsNum) + ? ((c = b * d.DieStep), + ($("imgFlagHead").style.left = c - 11 + "px"), + ($("imgFlagMeterFull").style.clip = + "rect(0,157px,21px," + c + "px)")) + : (($("imgFlagHead").style.left = "-1px"), + ($("imgFlagMeterFull").style.clip = + "rect(0,157px,21px,0)"), + oP.FlagToEnd()); + }) + : function (b) { + GameOver(); + }; + }, + GetDX: function () { + return -40; + }, + }), + oStarfruit = InheritO(CPlants, { + EName: "oStarfruit", + CName: "Starfruit", + width: 77, + height: 70, + beAttackedPointR: 57, + SunNum: 125, + GetDY: function (b, c, a) { + return a[0] ? -17 : -10; + }, + PicArr: [ + "images/Card/Plants/Starfruit.png", + "images/Plants/Starfruit/0.gif", + "images/Plants/Starfruit/Starfruit.gif", + "images/Plants/Starfruit/Star.gif", + ], + Tooltip: "Shoots stars in 5 directions", + Produce: + 'Starfruit can fire small starfruits in five directions.

Harm:medium
Scope:five directions

Starfruit: "Hey man, I went to the dentist one day and he said
I have four cavities. When I count, I only have one tooth! one
Carambola: "Hey man, theres a tooth with four cavities? Why is that?" I went to the dentist and he said', + getTriggerRange: function (e, g, f) { + var a = this.R, + b = GetY(a), + c = oS.W, + j = this.ArFlyTime, + h = this.ArHitX, + i, + d = 0.5 * (g + f); + !j && ((j = this.ArFlyTime = {}), (h = this.ArHitX = {})); + switch (true) { + case e < a: + j[e] = [(i = b - GetY(e)) / 5, i / 3]; + h[e] = [d, d + (i / 3) * 4]; + return [[100, c, 0]]; + case e == a: + return [[100, g + 25, 4]]; + default: + j[e] = [(i = GetY(e) - b) / 5, i / 3]; + h[e] = [d, d + (i / 3) * 4]; + return [[100, c, 0]]; + } + }, + AttackCheck2: function (l) { + var j = l.R; + if (j == this.R) { + return l.Altitude > 0; + } + var q = 0, + t = l.AttackedLX, + b = l.AttackedRX, + e, + g, + d = this.ArFlyTime, + c = this.ArHitX, + s = d[j], + r = c[j], + f = l.WalkDirection ? -1 : 1, + k = false, + m, + p, + n, + h, + a = l.Speed; + while (q < s.length) { + h = a * s[q] * f * 0.1; + e = Math.floor(t - h); + g = Math.floor(b - h); + p = r[0]; + n = r[1]; + if ((e + 20 < p && g - 20 > p) || (e < n && g > n)) { + k = true; + break; + } + ++q; + } + return k && l.Altitude > 0; + }, + getTriggerR: function (a) { + return [1, oS.R]; + }, + PrivateBirth: function (d) { + var c = d.pixelLeft + 38, + b = c - 15, + a = d.pixelTop + 20; + d.BulletEle = NewImg( + 0, + "images/Plants/Starfruit/Star.gif", + "left:" + b + "px;top:" + a + "px;z-index:" + (d.zIndex + 2) + ); + }, + PrivateDie: function (a) { + a.BulletEle = null; + }, + getHurt: function (d, b, a) { + var c = this; + b != 3 && c.NormalAttack(); + (c.HP -= a) < 1 && c.Die(); + }, + NormalAttack: function () { + var g = this, + f = g.pixelLeft + 38, + d = f - 15, + b = g.pixelTop + 20, + c = g.R, + e = f + 15, + a = function (j, i, h) { + return j && j.Altitude == 1 + ? (j.getPea(j, 20, i), ClearChild(h), false) + : true; + }; + (function (h) { + oSym.addTask( + 15, + function (j) { + var i = $(j); + i && SetVisible(i); + }, + [h] + ); + oSym.addTask( + 1, + function (m, k, l, i, j) { + j(oZ.getZ1(m, k), 4, i) && + ((m -= 5) < 100 + ? ClearChild(i) + : ((i.style.left = (l -= 5) + "px"), + oSym.addTask(1, arguments.callee, [ + m, + k, + l, + i, + j, + ]))); + }, + [ + f, + c, + d, + EditEle( + g.BulletEle.cloneNode(false), + { + id: h, + }, + 0, + EDPZ + ), + a, + ] + ); + })("StarB" + Math.random()); + (function (h) { + oSym.addTask( + 15, + function (j) { + var i = $(j); + i && SetVisible(i); + }, + [h] + ); + oSym.addTask( + 1, + function (m, n, l, k, i, j) { + j(oZ.getRangeLeftZ(m, n, l), 6, i) && + ((k -= 5) < -15 + ? ClearChild(i) + : ((i.style.top = k + "px"), + oSym.addTask(1, arguments.callee, [ + m, + n, + GetR(k + 15), + k, + i, + j, + ]))); + }, + [ + d, + e, + c, + b, + EditEle( + g.BulletEle.cloneNode(false), + { + id: h, + }, + 0, + EDPZ + ), + a, + ] + ); + })("StarB" + Math.random()); + (function (h) { + oSym.addTask( + 15, + function (j) { + var i = $(j); + i && SetVisible(i); + }, + [h] + ); + oSym.addTask( + 1, + function (m, n, l, k, i, j) { + j(oZ.getRangeLeftZ(m, n, l), 2, i) && + ((k += 5) > 600 + ? ClearChild(i) + : ((i.style.top = k + "px"), + oSym.addTask(1, arguments.callee, [ + m, + n, + GetR(k + 15), + k, + i, + j, + ]))); + }, + [ + d, + e, + c, + b, + EditEle( + g.BulletEle.cloneNode(false), + { + id: h, + }, + 0, + EDPZ + ), + a, + ] + ); + })("StarB" + Math.random()); + (function (h) { + oSym.addTask( + 15, + function (j) { + var i = $(j); + i && SetVisible(i); + }, + [h] + ); + oSym.addTask( + 1, + function (n, l, m, k, i, j) { + j(oZ.getZ0(n, l), 7, i) && + ((n += 4) > 900 || (k -= 3) < -15 + ? ClearChild(i) + : (SetStyle(i, { + left: (m += 4) + "px", + top: k + "px", + }), + oSym.addTask(1, arguments.callee, [ + n, + GetR(k + 15), + m, + k, + i, + j, + ]))); + }, + [ + f, + c, + d, + b, + EditEle( + g.BulletEle.cloneNode(false), + { + id: h, + }, + 0, + EDPZ + ), + a, + ] + ); + })("StarB" + Math.random()); + (function (h) { + oSym.addTask( + 15, + function (j) { + var i = $(j); + i && SetVisible(i); + }, + [h] + ); + oSym.addTask( + 1, + function (n, l, m, k, i, j) { + j(oZ.getZ0(n, l), 1, i) && + ((n += 4) > 900 || (k += 3) > 600 + ? ClearChild(i) + : (SetStyle(i, { + left: (m += 4) + "px", + top: k + "px", + }), + oSym.addTask(1, arguments.callee, [ + n, + GetR(k + 15), + m, + k, + i, + j, + ]))); + }, + [ + f, + c, + d, + b, + EditEle( + g.BulletEle.cloneNode(false), + { + id: h, + }, + 0, + EDPZ + ), + a, + ] + ); + })("StarB" + Math.random()); + }, + }), + oSeedStarfruit = InheritO(CPlants, { + EName: "oSeedStarfruit", + CName: "Starfruit", + width: 77, + height: 70, + beAttackedPointR: 57, + SunNum: 0, + GetDY: function (b, c, a) { + return a[0] ? -17 : -10; + }, + PicArr: [ + "images/Card/Plants/Starfruit.png", + "images/Plants/Starfruit/0.gif", + "images/Plants/Starfruit/Starfruit.gif", + "images/Plants/Starfruit/Star.gif", + ], + Tooltip: "Shoots stars in 5 directions", + Produce: + 'Starfruit can fire small starfruits in five directions.

Harm:medium
Scope:five directions

Starfruit: "Hey man, I went to the dentist one day and he said
I have four cavities. When I count, I only have one tooth! one
Carambola: "Hey man, theres a tooth with four cavities? Why is that?" I went to the dentist and he said', + getTriggerRange: function (e, g, f) { + var a = this.R, + b = GetY(a), + c = oS.W, + j = this.ArFlyTime, + h = this.ArHitX, + i, + d = 0.5 * (g + f); + !j && ((j = this.ArFlyTime = {}), (h = this.ArHitX = {})); + switch (true) { + case e < a: + j[e] = [(i = b - GetY(e)) / 5, i / 3]; + h[e] = [d, d + (i / 3) * 4]; + return [[100, c, 0]]; + case e == a: + return [[100, g + 25, 4]]; + default: + j[e] = [(i = GetY(e) - b) / 5, i / 3]; + h[e] = [d, d + (i / 3) * 4]; + return [[100, c, 0]]; + } + }, + AttackCheck2: function (l) { + var j = l.R; + if (j == this.R) { + return l.Altitude > 0; + } + var q = 0, + t = l.AttackedLX, + b = l.AttackedRX, + e, + g, + d = this.ArFlyTime, + c = this.ArHitX, + s = d[j], + r = c[j], + f = l.WalkDirection ? -1 : 1, + k = false, + m, + p, + n, + h, + a = l.Speed; + while (q < s.length) { + h = a * s[q] * f * 0.1; + e = Math.floor(t - h); + g = Math.floor(b - h); + p = r[0]; + n = r[1]; + if ((e + 20 < p && g - 20 > p) || (e < n && g > n)) { + k = true; + break; + } + ++q; + } + return k && l.Altitude > 0; + }, + getTriggerR: function (a) { + return [1, oS.R]; + }, + PrivateBirth: function (d) { + var c = d.pixelLeft + 38, + b = c - 15, + a = d.pixelTop + 20; + d.BulletEle = NewImg( + 0, + "images/Plants/Starfruit/Star.gif", + "left:" + b + "px;top:" + a + "px;z-index:" + (d.zIndex + 2) + ); + }, + PrivateDie: function (a) { + a.BulletEle = null; + }, + getHurt: function (d, b, a) { + var c = this; + b != 3 && c.NormalAttack(); + (c.HP -= a) < 1 && c.Die(); + }, + NormalAttack: function () { + var g = this, + f = g.pixelLeft + 38, + d = f - 15, + b = g.pixelTop + 20, + c = g.R, + e = f + 15, + a = function (j, i, h) { + return j && j.Altitude == 1 + ? (j.getPea(j, 20, i), ClearChild(h), false) + : true; + }; + (function (h) { + oSym.addTask( + 15, + function (j) { + var i = $(j); + i && SetVisible(i); + }, + [h] + ); + oSym.addTask( + 1, + function (m, k, l, i, j) { + j(oZ.getZ1(m, k), 4, i) && + ((m -= 5) < 100 + ? ClearChild(i) + : ((i.style.left = (l -= 5) + "px"), + oSym.addTask(1, arguments.callee, [ + m, + k, + l, + i, + j, + ]))); + }, + [ + f, + c, + d, + EditEle( + g.BulletEle.cloneNode(false), + { + id: h, + }, + 0, + EDPZ + ), + a, + ] + ); + })("StarB" + Math.random()); + (function (h) { + oSym.addTask( + 15, + function (j) { + var i = $(j); + i && SetVisible(i); + }, + [h] + ); + oSym.addTask( + 1, + function (m, n, l, k, i, j) { + j(oZ.getRangeLeftZ(m, n, l), 6, i) && + ((k -= 5) < -15 + ? ClearChild(i) + : ((i.style.top = k + "px"), + oSym.addTask(1, arguments.callee, [ + m, + n, + GetR(k + 15), + k, + i, + j, + ]))); + }, + [ + d, + e, + c, + b, + EditEle( + g.BulletEle.cloneNode(false), + { + id: h, + }, + 0, + EDPZ + ), + a, + ] + ); + })("StarB" + Math.random()); + (function (h) { + oSym.addTask( + 15, + function (j) { + var i = $(j); + i && SetVisible(i); + }, + [h] + ); + oSym.addTask( + 1, + function (m, n, l, k, i, j) { + j(oZ.getRangeLeftZ(m, n, l), 2, i) && + ((k += 5) > 600 + ? ClearChild(i) + : ((i.style.top = k + "px"), + oSym.addTask(1, arguments.callee, [ + m, + n, + GetR(k + 15), + k, + i, + j, + ]))); + }, + [ + d, + e, + c, + b, + EditEle( + g.BulletEle.cloneNode(false), + { + id: h, + }, + 0, + EDPZ + ), + a, + ] + ); + })("StarB" + Math.random()); + (function (h) { + oSym.addTask( + 15, + function (j) { + var i = $(j); + i && SetVisible(i); + }, + [h] + ); + oSym.addTask( + 1, + function (n, l, m, k, i, j) { + j(oZ.getZ0(n, l), 7, i) && + ((n += 4) > 900 || (k -= 3) < -15 + ? ClearChild(i) + : (SetStyle(i, { + left: (m += 4) + "px", + top: k + "px", + }), + oSym.addTask(1, arguments.callee, [ + n, + GetR(k + 15), + m, + k, + i, + j, + ]))); + }, + [ + f, + c, + d, + b, + EditEle( + g.BulletEle.cloneNode(false), + { + id: h, + }, + 0, + EDPZ + ), + a, + ] + ); + })("StarB" + Math.random()); + (function (h) { + oSym.addTask( + 15, + function (j) { + var i = $(j); + i && SetVisible(i); + }, + [h] + ); + oSym.addTask( + 1, + function (n, l, m, k, i, j) { + j(oZ.getZ0(n, l), 1, i) && + ((n += 4) > 900 || (k += 3) > 600 + ? ClearChild(i) + : (SetStyle(i, { + left: (m += 4) + "px", + top: k + "px", + }), + oSym.addTask(1, arguments.callee, [ + n, + GetR(k + 15), + m, + k, + i, + j, + ]))); + }, + [ + f, + c, + d, + b, + EditEle( + g.BulletEle.cloneNode(false), + { + id: h, + }, + 0, + EDPZ + ), + a, + ] + ); + })("StarB" + Math.random()); + }, + }), + oPeashooter = InheritO(CPlants, { + EName: "oPeashooter", + CName: "Peashooter", + width: 71, + height: 71, + beAttackedPointR: 51, + SunNum: 100, + BKind: 0, + AudioArr: [ + "splat1", + "splat2", + "splat3", + "plastichit", + "shieldhit", + "shieldhit2", + ], + PicArr: [ + "images/Card/Plants/Peashooter.png", + "images/Plants/Peashooter/0.gif", + "images/Plants/Peashooter/Peashooter.gif", + "images/Plants/PB00.gif", + "images/Plants/PeaBulletHit.gif", + ], + Tooltip: "Shoots peas at the enemy", + Produce: + 'Pea shooters are your first line of defense. They shoot peas at attacking zombies.

Damage: normal

How can a single plant grow and shoot so many peas so quickly? Peashooter says, "Hard work, commitment, and a healthy, well-balanced breakfast of sunlight and high-fiber carbon dioxide make it all possible." ', + PrivateBirth: function (a) { + a.BulletEle = NewImg( + 0, + a.PicArr[3], + "left:" + + (a.AttackedLX - 40) + + "px;top:" + + (a.pixelTop + 3) + + "px;visibility:hidden;z-index:" + + (a.zIndex + 2) + ); + }, + PrivateDie: function (a) { + a.BulletEle = null; + }, + NormalAttack: function () { + var a = this, + b = "PB" + Math.random(); + EditEle( + a.BulletEle.cloneNode(false), + { + id: b, + }, + 0, + EDPZ + ); + oSym.addTask( + 15, + function (d) { + var c = $(d); + c && SetVisible(c); + }, + [b] + ); + oSym.addTask( + 1, + function (f, j, h, c, n, i, m, k, o, g) { + var l, + e = GetC(n), + d = oZ["getZ" + c](n, i); + m == 0 && + g[i + "_" + e] && + k != e && + (PlayAudio("firepea"), + (m = 1), + (h = 40), + (k = e), + (j.src = "images/Plants/PB" + m + c + ".png")); + d && d.Altitude == 1 + ? (d[ + { + "-1": "getSnowPea", + 0: "getPea", + 1: "getFirePea", + }[m] + ](d, h, c), + (SetStyle(j, { + left: o + 28 + "px", + }).src = [ + "images/Plants/PeaBulletHit.gif", + "images/Plants/FireBulletHit.png", + ][m]), + oSym.addTask(10, ClearChild, [j])) + : (n += l = !c ? 5 : -5) < oS.W && n > 100 + ? ((j.style.left = (o += l) + "px"), + oSym.addTask(1, arguments.callee, [ + f, + j, + h, + c, + n, + i, + m, + k, + o, + g, + ])) + : ClearChild(j); + }, + [ + b, + $(b), + 20, + 0, + a.AttackedLX, + a.R, + 0, + 0, + a.AttackedLX - 40, + oGd.$Torch, + ] + ); + }, + }), + oSeedPeashooter = InheritO(CPlants, { + EName: "oSeedPeashooter", + CName: "Peashooter", + width: 71, + height: 71, + beAttackedPointR: 51, + SunNum: 0, + BKind: 0, + AudioArr: [ + "splat1", + "splat2", + "splat3", + "plastichit", + "shieldhit", + "shieldhit2", + ], + PicArr: [ + "images/Card/Plants/Peashooter.png", + "images/Plants/Peashooter/0.gif", + "images/Plants/Peashooter/Peashooter.gif", + "images/Plants/PB00.gif", + "images/Plants/PeaBulletHit.gif", + ], + Tooltip: "Shoots peas at the enemy", + Produce: + 'Pea shooters are your first line of defense. They shoot peas at attacking zombies.

Damage: normal

How can a single plant grow and shoot so many peas so quickly? Peashooter says, "Hard work, commitment, and a healthy, well-balanced breakfast of sunlight and high-fiber carbon dioxide make it all possible." ', + PrivateBirth: function (a) { + a.BulletEle = NewImg( + 0, + a.PicArr[3], + "left:" + + (a.AttackedLX - 40) + + "px;top:" + + (a.pixelTop + 3) + + "px;visibility:hidden;z-index:" + + (a.zIndex + 2) + ); + }, + PrivateDie: function (a) { + a.BulletEle = null; + }, + NormalAttack: function () { + var a = this, + b = "PB" + Math.random(); + EditEle( + a.BulletEle.cloneNode(false), + { + id: b, + }, + 0, + EDPZ + ); + oSym.addTask( + 15, + function (d) { + var c = $(d); + c && SetVisible(c); + }, + [b] + ); + oSym.addTask( + 1, + function (f, j, h, c, n, i, m, k, o, g) { + var l, + e = GetC(n), + d = oZ["getZ" + c](n, i); + m == 0 && + g[i + "_" + e] && + k != e && + (PlayAudio("firepea"), + (m = 1), + (h = 40), + (k = e), + (j.src = "images/Plants/PB" + m + c + ".png")); + d && d.Altitude == 1 + ? (d[ + { + "-1": "getSnowPea", + 0: "getPea", + 1: "getFirePea", + }[m] + ](d, h, c), + (SetStyle(j, { + left: o + 28 + "px", + }).src = [ + "images/Plants/PeaBulletHit.gif", + "images/Plants/FireBulletHit.png", + ][m]), + oSym.addTask(10, ClearChild, [j])) + : (n += l = !c ? 5 : -5) < oS.W && n > 100 + ? ((j.style.left = (o += l) + "px"), + oSym.addTask(1, arguments.callee, [ + f, + j, + h, + c, + n, + i, + m, + k, + o, + g, + ])) + : ClearChild(j); + }, + [ + b, + $(b), + 20, + 0, + a.AttackedLX, + a.R, + 0, + 0, + a.AttackedLX - 40, + oGd.$Torch, + ] + ); + }, + }), + oLotusRoot = InheritO(oPeashooter, { + EName: "oLotusRoot", + CName: "Lotus Root", + width: 130, + height: 114, + beAttackedPointR: 70, + SunNum: 250, + BookHandBack: 4.9, + coolTime: 25, + getShadow: function (a) { + return "display:none"; + }, + PicArr: [ + "images/Card/Plants/LotusRoot.png", + "images/Plants/LotusRoot/0.gif", + "images/Plants/LotusRoot/Peashooter.gif", + "images/Plants/LotusRoot/Missile.png", + "images/Plants/LotusRoot/BulletHit.png", + ], + Tooltip: "Fire high-powered rocket launchers, inflicting heavy damage", + Produce: + 'The lotus root rocket launcher can launch high-fire rocket launchers, targeting warships and
The submarine inflicted heavy damage.

Harm:极高

What else can the lotus root rocket launcher do besides firing shells. Ok,
For this question, you should ask the intensive phobia patient
。”', + CanGrow: function (c, b, d) { + var a = b + "_" + d; + return !( + d < 1 || + d > 9 || + oGd.$LF[b] - 2 || + c[0] || + c[1] || + oGd.$Crater[a] || + oGd.$Tombstones[a] + ); + }, + PrivateBirth: function (a) { + a.BulletEle = NewImg( + 0, + a.PicArr[3], + "left:" + + (a.AttackedLX - 40) + + "px;top:" + + (a.pixelTop + 3) + + "px;visibility:hidden;z-index:" + + (a.zIndex + 2) + ); + }, + PrivateDie: function (a) { + a.BulletEle = null; + }, + NormalAttack: function () { + var a = this, + b = "PB" + Math.random(); + EditEle( + a.BulletEle.cloneNode(false), + { + id: b, + }, + 0, + EDPZ + ); + oSym.addTask( + 15, + function (o) { + $(a.id).childNodes[1].src = + "images/Plants/LotusRoot/Peashooter.gif"; + }, + [this] + ); + oSym.addTask( + 15, + function (d) { + var c = $(d); + c && SetVisible(c); + }, + [b] + ); + oSym.addTask( + 1, + function (f, j, h, c, n, i, m, k, o, g) { + var l, + e = GetC(n), + d = oZ["getZ" + c](n, i); + m == 0 && + g[i + "_" + e] && + k != e && + (PlayAudio("firepea"), + (m = 1), + (h = 40), + (k = e), + (j.src = "images/Plants/LotusRoot/Missile.png")); + d && d.Altitude == 1 + ? (d[ + { + "-1": "getSnowPea", + 0: "getPea", + 1: "getFirePea", + }[m] + ](d, h, c), + (SetStyle(j, { + left: o + 28 + "px", + }).src = "images/Plants/LotusRoot/BulletHit.png"), + oSym.addTask(10, ClearChild, [j])) + : (n += l = !c ? 5 : -5) < oS.W && n > 100 + ? ((j.style.left = (o += l) + "px"), + oSym.addTask(1, arguments.callee, [ + f, + j, + h, + c, + n, + i, + m, + k, + o, + g, + ])) + : ClearChild(j); + }, + [ + b, + $(b), + 500, + 0, + a.AttackedLX, + a.R, + 0, + 0, + a.AttackedLX - 40, + oGd.$Torch, + ] + ); + }, + }), + oSnowPea = InheritO(oPeashooter, { + EName: "oSnowPea", + CName: "SnowPea", + SunNum: 175, + BKind: -1, + PicArr: [ + "images/Card/Plants/SnowPea.png", + "images/Plants/SnowPea/0.gif", + "images/Plants/SnowPea/SnowPea.gif", + "images/Plants/PB-10.gif", + "images/Plants/PeaBulletHit1.gif", + ], + AudioArr: [ + "frozen", + "splat1", + "splat2", + "splat3", + "shieldhit", + "shieldhit2", + "plastichit", + ], + Tooltip: "Shoots frozen peas that damage and slow the enemy", + Produce: + 'The Frost Archer fires Frozen Peas to attack enemies and has
Slow down effect.

Harm:Medium, with a slowing effect

People often tell the ice shooter how cold he is, or
Admonish him to be calm. They told him to keep your composure. cold
The ice shooter just rolled his eyes. In fact, he heard it all.', + NormalAttack: function () { + var a = this, + b = "PB" + Math.random(); + EditEle( + a.BulletEle.cloneNode(false), + { + id: b, + }, + 0, + EDPZ + ); + oSym.addTask( + 15, + function (d) { + var c = $(d); + c && SetVisible(c); + }, + [b] + ); + oSym.addTask( + 1, + function (f, j, h, c, n, i, m, k, o, g) { + var l, + e = GetC(n), + d = oZ["getZ" + c](n, i); + m < 1 && + g[i + "_" + e] && + k != e && + (PlayAudio("firepea"), + ++m && (h = 40), + (k = e), + (j.src = "images/Plants/PB" + m + c + ".png")); + d && d.Altitude == 1 + ? (d[ + { + "-1": "getSnowPea", + 0: "getPea", + 1: "getFirePea", + }[m] + ](d, h, c), + (SetStyle(j, { + left: o + 28 + "px", + }).src = "images/Plants/PeaBulletHit1.gif"), + oSym.addTask(10, ClearChild, [j])) + : (n += l = !c ? 5 : -5) < oS.W && n > 100 + ? ((j.style.left = (o += l) + "px"), + oSym.addTask(1, arguments.callee, [ + f, + j, + h, + c, + n, + i, + m, + k, + o, + g, + ])) + : ClearChild(j); + }, + [ + b, + $(b), + 30, + 0, + a.AttackedLX, + a.R, + -1, + 0, + a.AttackedLX - 40, + oGd.$Torch, + ] + ); + }, + }), + oSeedSnowPea = InheritO(oPeashooter, { + EName: "oSeedSnowPea", + CName: "SnowPea", + SunNum: 0, + BKind: -1, + PicArr: [ + "images/Card/Plants/SnowPea.png", + "images/Plants/SnowPea/0.gif", + "images/Plants/SnowPea/SnowPea.gif", + "images/Plants/PB-10.gif", + "images/Plants/PeaBulletHit1.gif", + ], + AudioArr: [ + "frozen", + "splat1", + "splat2", + "splat3", + "shieldhit", + "shieldhit2", + "plastichit", + ], + Tooltip: "Shoots frozen peas that damage and slow the enemy", + Produce: + 'The Frost Archer fires Frozen Peas to attack enemies and has
Slow down effect.

Harm:Medium, with a slowing effect

People often tell the ice shooter how cold he is, or
Admonish him to be calm. They told him to keep your composure. cold
The ice shooter just rolled his eyes. In fact, he heard it all.', + NormalAttack: function () { + var a = this, + b = "PB" + Math.random(); + EditEle( + a.BulletEle.cloneNode(false), + { + id: b, + }, + 0, + EDPZ + ); + oSym.addTask( + 15, + function (d) { + var c = $(d); + c && SetVisible(c); + }, + [b] + ); + oSym.addTask( + 1, + function (f, j, h, c, n, i, m, k, o, g) { + var l, + e = GetC(n), + d = oZ["getZ" + c](n, i); + m < 1 && + g[i + "_" + e] && + k != e && + (PlayAudio("firepea"), + ++m && (h = 40), + (k = e), + (j.src = "images/Plants/PB" + m + c + ".png")); + d && d.Altitude == 1 + ? (d[ + { + "-1": "getSnowPea", + 0: "getPea", + 1: "getFirePea", + }[m] + ](d, h, c), + (SetStyle(j, { + left: o + 28 + "px", + }).src = "images/Plants/PeaBulletHit1.gif"), + oSym.addTask(10, ClearChild, [j])) + : (n += l = !c ? 5 : -5) < oS.W && n > 100 + ? ((j.style.left = (o += l) + "px"), + oSym.addTask(1, arguments.callee, [ + f, + j, + h, + c, + n, + i, + m, + k, + o, + g, + ])) + : ClearChild(j); + }, + [ + b, + $(b), + 30, + 0, + a.AttackedLX, + a.R, + -1, + 0, + a.AttackedLX - 40, + oGd.$Torch, + ] + ); + }, + }), + oSnowRepeater = InheritO(oSnowPea, { + EName: "oSnowRepeater", + CName: "Snow Repeater", + SunNum: 250, + PicArr: [ + "images/Card/Plants/SnowRepeater.png", + "images/Plants/SnowRepeater/0.gif", + "images/Plants/SnowRepeater/SnowPea.gif", + "images/Plants/PB-10.gif", + "images/Plants/PeaBulletHit1.gif", + ], + Tooltip: + "Fires two frozen peas that damage and slow the enemy at a time", + Produce: + 'Fires two frozen peas that damage and slow the enemy at a time.

Harm:medium (each)
Launch speed:double

The dual-shot ice shooter is a shooting enthusiast, he often
People mention how accurate their shots are. Well, although things
Not so.', + NormalAttack1: oSnowPea.prototype.NormalAttack, + NormalAttack: function (a) { + this.NormalAttack1(); + oSym.addTask( + 15, + function (c) { + var b = $P[c]; + b && b.NormalAttack1(); + }, + [this.id] + ); + }, + }), + oSeedRepeater = InheritO(oPeashooter, { + EName: "oSeedRepeater", + CName: "Repeater", + width: 73, + height: 71, + beAttackedPointR: 53, + SunNum: 0, + PicArr: [ + "images/Card/Plants/Repeater.png", + "images/Plants/Repeater/0.gif", + "images/Plants/Repeater/Repeater.gif", + "images/Plants/PB00.gif", + "images/Plants/PeaBulletHit.gif", + ], + AudioArr: [ + "splat1", + "splat2", + "splat3", + "plastichit", + "shieldhit", + "shieldhit2", + ], + Tooltip: "Fires two peas at a time", + Produce: + 'Dual shooters can shoot two peas at once

Harm:Medium (per piece)
Launch speed:double

The dual shooter is fierce, and he grew up on the street. Hes not in now
Regardless of anyones opinion, whether its a plant or a zombie, he fights
Out of peas, is to keep others away from him. Actually, double
The launcher has been secretly longing for love.', + NormalAttack1: oPeashooter.prototype.NormalAttack, + NormalAttack: function (a) { + this.NormalAttack1(); + oSym.addTask( + 15, + function (c) { + var b = $P[c]; + b && b.NormalAttack1(); + }, + [this.id] + ); + }, + }), + oRepeater = InheritO(oPeashooter, { + EName: "oRepeater", + CName: "Repeater", + width: 73, + height: 71, + beAttackedPointR: 53, + SunNum: 200, + PicArr: [ + "images/Card/Plants/Repeater.png", + "images/Plants/Repeater/0.gif", + "images/Plants/Repeater/Repeater.gif", + "images/Plants/PB00.gif", + "images/Plants/PeaBulletHit.gif", + ], + AudioArr: [ + "splat1", + "splat2", + "splat3", + "plastichit", + "shieldhit", + "shieldhit2", + ], + Tooltip: "Fires two peas at a time", + Produce: + 'Dual shooters can shoot two peas at once

Harm:Medium (per piece)
Launch speed:double

The dual shooter is fierce, and he grew up on the street. Hes not in now
Regardless of anyones opinion, whether its a plant or a zombie, he fights
Out of peas, is to keep others away from him. Actually, double
The launcher has been secretly longing for love.', + NormalAttack1: oPeashooter.prototype.NormalAttack, + NormalAttack: function (a) { + this.NormalAttack1(); + oSym.addTask( + 15, + function (c) { + var b = $P[c]; + b && b.NormalAttack1(); + }, + [this.id] + ); + }, + }), + oSeedRepeater2 = InheritO(oRepeater, { + EName: "oSeedRepeater2", + CName: "Reverse Repeater", + SunNum: 0, + PicArr: [ + "images/Card/Plants/Repeater2.png", + "images/Plants/Repeater2/0.gif", + "images/Plants/Repeater2/Repeater2.gif", + "images/Plants/PB00.gif", + "images/Plants/PeaBulletHit.gif", + ], + NormalAttack1: function () { + var a = this, + b = "PB" + Math.random(); + EditEle( + a.BulletEle.cloneNode(false), + { + id: b, + }, + 0, + EDPZ + ); + oSym.addTask( + 15, + function (d) { + var c = $(d); + c && SetVisible(c); + }, + [b] + ); + oSym.addTask( + 1, + function (f, j, h, c, n, i, m, k, o, g) { + var l, + e = GetC(n), + d = oZ["getZ" + c](n, i); + m == 0 && + g[i + "_" + e] && + k != e && + (PlayAudio("firepea"), + (m = 1), + (h = 40), + (k = e), + (j.src = "images/Plants/PB" + m + c + ".png")); + d && d.Altitude == 1 + ? (d[ + { + "-1": "getSnowPea", + 0: "getPea", + 1: "getFirePea", + }[m] + ](d, h, c), + (SetStyle(j, { + left: o + 28 + "px", + width: "52px", + height: "46px", + }).src = "images/Plants/PeaBulletHit.gif"), + oSym.addTask(10, ClearChild, [j])) + : (n += l = !c ? 5 : -5) < oS.W && n > 100 + ? ((j.style.left = (o += l) + "px"), + oSym.addTask(1, arguments.callee, [ + f, + j, + h, + c, + n, + i, + m, + k, + o, + g, + ])) + : ClearChild(j); + }, + [ + b, + $(b), + 20, + 1, + a.AttackedLX + 30, + a.R, + 0, + 0, + a.AttackedRX, + oGd.$Torch, + ] + ); + }, + getTriggerRange: function (a, b, c) { + return [[100, b + 25, 1]]; + }, + }), + oRepeater2 = InheritO(oRepeater, { + EName: "oRepeater2", + CName: "Reverse Repeater", + PicArr: [ + "images/Card/Plants/Repeater2.png", + "images/Plants/Repeater2/0.gif", + "images/Plants/Repeater2/Repeater2.gif", + "images/Plants/PB00.gif", + "images/Plants/PeaBulletHit.gif", + ], + NormalAttack1: function () { + var a = this, + b = "PB" + Math.random(); + EditEle( + a.BulletEle.cloneNode(false), + { + id: b, + }, + 0, + EDPZ + ); + oSym.addTask( + 15, + function (d) { + var c = $(d); + c && SetVisible(c); + }, + [b] + ); + oSym.addTask( + 1, + function (f, j, h, c, n, i, m, k, o, g) { + var l, + e = GetC(n), + d = oZ["getZ" + c](n, i); + m == 0 && + g[i + "_" + e] && + k != e && + (PlayAudio("firepea"), + (m = 1), + (h = 40), + (k = e), + (j.src = "images/Plants/PB" + m + c + ".png")); + d && d.Altitude == 1 + ? (d[ + { + "-1": "getSnowPea", + 0: "getPea", + 1: "getFirePea", + }[m] + ](d, h, c), + (SetStyle(j, { + left: o + 28 + "px", + width: "52px", + height: "46px", + }).src = "images/Plants/PeaBulletHit.gif"), + oSym.addTask(10, ClearChild, [j])) + : (n += l = !c ? 5 : -5) < oS.W && n > 100 + ? ((j.style.left = (o += l) + "px"), + oSym.addTask(1, arguments.callee, [ + f, + j, + h, + c, + n, + i, + m, + k, + o, + g, + ])) + : ClearChild(j); + }, + [ + b, + $(b), + 20, + 1, + a.AttackedLX + 30, + a.R, + 0, + 0, + a.AttackedRX, + oGd.$Torch, + ] + ); + }, + getTriggerRange: function (a, b, c) { + return [[100, b + 25, 1]]; + }, + }), + oThreepeater = InheritO(oPeashooter, { + EName: "oThreepeater", + CName: "Threepeater", + width: 73, + height: 80, + beAttackedPointR: 53, + SunNum: 325, + PicArr: [ + "images/Card/Plants/Threepeater.png", + "images/Plants/Threepeater/0.gif", + "images/Plants/Threepeater/Threepeater.gif", + "images/Plants/PB00.gif", + "images/Plants/PeaBulletHit.gif", + "images/Plants/FireBulletHit.png", + ], + AudioArr: [ + "splat1", + "splat2", + "splat3", + "plastichit", + "shieldhit", + "shieldhit2", + ], + Tooltip: "Shoots peas in three lanes", + Produce: + 'A three-line shooter can shoot peas on three lines at the same time.

Harm:Ordinary (each)
Scope:three lines

The three-line shooter enjoys reading, playing chess and sitting in the park. he
Also enjoys performing, especially modern jazz. "Im looking for
The other half of my life," he said. The third-line shooters favorite number
The word is 5.', + getTriggerR: function (a) { + return [a > 2 ? a - 1 : 1, a < oS.R ? Number(a) + 1 : a]; + }, + PrivateBirth: function (f) { + var e = f.AttackedLX, + d = e - 40, + a, + c = f.oTrigger, + b; + f.BulletClass = []; + f.BulletEle = []; + for (b in c) { + f.BulletClass.push( + NewO({ + X: e, + R: b, + D: 0, + Attack: 20, + Kind: 0, + ChangeC: 0, + pixelLeft: d, + F: oGd.MB1, + }) + ); + f.BulletEle.push( + NewImg( + 0, + "images/Plants/PB00.gif", + "left:" + + d + + "px;top:" + + (GetY(b) - 50) + + "px;visibility:hidden;z-index:" + + (3 * b + 2) + ) + ); + } + }, + PrivateDie: function (a) { + a.BulletEle.length = 0; + }, + NormalAttack: function () { + var a, + c = this, + d, + b = 0; + for (a in c.oTrigger) { + EditEle( + c.BulletEle[b++].cloneNode(false), + { + id: (d = "PB" + Math.random()), + }, + 0, + EDPZ + ); + oSym.addTask( + 15, + function (f) { + var e = $(f); + e && SetVisible(e); + }, + [d] + ); + oSym.addTask( + 1, + function (h, l, j, e, p, k, o, m, q, i) { + var n, + g = GetC(p), + f = oZ["getZ" + e](p, k); + o == 0 && + i[k + "_" + g] && + m != g && + (PlayAudio("firepea"), + (o = 1), + (j = 40), + (m = g), + (l.src = "images/Plants/PB" + o + e + ".png")); + f && f.Altitude == 1 + ? (f[ + { + "-1": "getSnowPea", + 0: "getPea", + 1: "getFirePea", + }[o] + ](f, j, e), + (SetStyle(l, { + left: q + 28 + "px", + }).src = [ + "images/Plants/PeaBulletHit.gif", + "images/Plants/FireBulletHit.png", + ][o]), + oSym.addTask(10, ClearChild, [l])) + : (p += n = !e ? 5 : -5) < oS.W && p > 100 + ? ((l.style.left = (q += n) + "px"), + oSym.addTask(1, arguments.callee, [ + h, + l, + j, + e, + p, + k, + o, + m, + q, + i, + ])) + : ClearChild(l); + }, + [ + d, + $(d), + 20, + 0, + c.AttackedLX, + a, + 0, + 0, + c.AttackedLX - 40, + oGd.$Torch, + ] + ); + } + }, + }), + oSeedThreepeater = InheritO(oPeashooter, { + EName: "oSeedThreepeater", + CName: "Threepeater", + width: 73, + height: 80, + beAttackedPointR: 53, + SunNum: 0, + PicArr: [ + "images/Card/Plants/Threepeater.png", + "images/Plants/Threepeater/0.gif", + "images/Plants/Threepeater/Threepeater.gif", + "images/Plants/PB00.gif", + "images/Plants/PeaBulletHit.gif", + "images/Plants/FireBulletHit.png", + ], + AudioArr: [ + "splat1", + "splat2", + "splat3", + "plastichit", + "shieldhit", + "shieldhit2", + ], + Tooltip: "Shoots peas in three lanes", + Produce: + 'A three-line shooter can shoot peas on three lines at the same time.

Harm:Ordinary (each)
Scope:three lines

The three-line shooter enjoys reading, playing chess and sitting in the park. he
Also enjoys performing, especially modern jazz. "Im looking for
The other half of my life," he said. The third-line shooters favorite number
The word is 5.', + getTriggerR: function (a) { + return [a > 2 ? a - 1 : 1, a < oS.R ? Number(a) + 1 : a]; + }, + PrivateBirth: function (f) { + var e = f.AttackedLX, + d = e - 40, + a, + c = f.oTrigger, + b; + f.BulletClass = []; + f.BulletEle = []; + for (b in c) { + f.BulletClass.push( + NewO({ + X: e, + R: b, + D: 0, + Attack: 20, + Kind: 0, + ChangeC: 0, + pixelLeft: d, + F: oGd.MB1, + }) + ); + f.BulletEle.push( + NewImg( + 0, + "images/Plants/PB00.gif", + "left:" + + d + + "px;top:" + + (GetY(b) - 50) + + "px;visibility:hidden;z-index:" + + (3 * b + 2) + ) + ); + } + }, + PrivateDie: function (a) { + a.BulletEle.length = 0; + }, + NormalAttack: function () { + var a, + c = this, + d, + b = 0; + for (a in c.oTrigger) { + EditEle( + c.BulletEle[b++].cloneNode(false), + { + id: (d = "PB" + Math.random()), + }, + 0, + EDPZ + ); + oSym.addTask( + 15, + function (f) { + var e = $(f); + e && SetVisible(e); + }, + [d] + ); + oSym.addTask( + 1, + function (h, l, j, e, p, k, o, m, q, i) { + var n, + g = GetC(p), + f = oZ["getZ" + e](p, k); + o == 0 && + i[k + "_" + g] && + m != g && + (PlayAudio("firepea"), + (o = 1), + (j = 40), + (m = g), + (l.src = "images/Plants/PB" + o + e + ".png")); + f && f.Altitude == 1 + ? (f[ + { + "-1": "getSnowPea", + 0: "getPea", + 1: "getFirePea", + }[o] + ](f, j, e), + (SetStyle(l, { + left: q + 28 + "px", + }).src = [ + "images/Plants/PeaBulletHit.gif", + "images/Plants/FireBulletHit.png", + ][o]), + oSym.addTask(10, ClearChild, [l])) + : (p += n = !e ? 5 : -5) < oS.W && p > 100 + ? ((l.style.left = (q += n) + "px"), + oSym.addTask(1, arguments.callee, [ + h, + l, + j, + e, + p, + k, + o, + m, + q, + i, + ])) + : ClearChild(l); + }, + [ + d, + $(d), + 20, + 0, + c.AttackedLX, + a, + 0, + 0, + c.AttackedLX - 40, + oGd.$Torch, + ] + ); + } + }, + }), + oGatlingPea = InheritO(oPeashooter, { + EName: "oGatlingPea", + CName: "Gatling Pea", + width: 88, + height: 84, + beAttackedPointR: 68, + SunNum: 250, + PicArr: [ + "images/Card/Plants/GatlingPea.png", + "images/Plants/GatlingPea/0.gif", + "images/Plants/GatlingPea/GatlingPea.gif", + "images/Plants/PB00.gif", + "images/Plants/PeaBulletHit.gif", + ], + AudioArr: [ + "splat1", + "splat2", + "splat3", + "plastichit", + "shieldhit", + "shieldhit2", + ], + Tooltip: + 'shoots four peas at a time

(requires repeater)', + Produce: + 'The machine gun shooter can fire four peas at once

Harm:medium (each)
Launch speed:four times
Can be planted on dual launchers

He was worried, and they said to him in unison: "When Gatlin announced that he was going to join the army, his parents were very excited,
He was worried, and they said to him in unison: "My dear,
Its too dangerous. "Gatlin refuses to budge," life is in danger
Dangerous," he replied, and in his eyes,
Flashes of steely faith.', + PrivateBirth: function (c) { + var b = c.AttackedLX, + a = b - 40; + c.BulletClass = NewO({ + X: b, + R: c.R, + D: 0, + Attack: 20, + Kind: c.BKind, + ChangeC: 0, + pixelLeft: a, + F: oGd.MB1, + }); + c.BulletEle = NewImg( + 0, + c.PicArr[3], + "left:" + + a + + "px;top:" + + (c.pixelTop + 8) + + "px;visibility:hidden;z-index:" + + (c.zIndex + 2) + ); + }, + CanGrow: function (b, a, d) { + var c = b[1]; + return c && c.EName == "oRepeater"; + }, + NormalAttack1: oPeashooter.prototype.NormalAttack, + NormalAttack: function (a) { + this.NormalAttack1(); + oSym.addTask( + 15, + function (d, b) { + var c = $P[d]; + c && c.NormalAttack1(); + --b && oSym.addTask(15, arguments.callee, [d, b]); + }, + [this.id, 3] + ); + }, + }), + oSplitPea = InheritO(oPeashooter, { + EName: "oSplitPea", + CName: "Split Pea", + width: 92, + height: 72, + beAttackedPointR: 72, + SunNum: 125, + PicArr: [ + "images/Card/Plants/SplitPea.png", + "images/Plants/SplitPea/0.gif", + "images/Plants/SplitPea/SplitPea.gif", + "images/Plants/PB00.gif", + "images/Plants/PB01.gif", + "images/Plants/PeaBulletHit.gif", + ], + AudioArr: [ + "splat1", + "splat2", + "splat3", + "plastichit", + "shieldhit", + "shieldhit2", + ], + Tooltip: "Shoots peas forward and backwards", + Produce: + 'A split shooter that can fire peas in both forward and back directions.

Harm:medium
Scope:front and back
Launch speed:Normal speed at the front, double speed at the back

Split Sagittarius: "Yes, Im a Gemini. I know,
This is really surprising. However, there are two heads, or the actual
on the top, with a head and a head-like thing, on the back,
Great help for my defense on this line.', + GetDX: function () { + return -55; + }, + getShadow: function (a) { + return "left:5px;top:" + (a.height - 22) + "px"; + }, + getTriggerRange: function (a, b, c) { + return [ + [100, b + 25, 1], + [b + 26, oS.W, 0], + ]; + }, + PrivateBirth: function (c) { + var b = c.PicArr, + a = + "px;top:" + + (c.pixelTop + 3) + + "px;visibility:hidden;z-index:" + + (c.zIndex + 2); + (c.BulletEle = [ + NewImg(0, b[3], "left:" + (c.AttackedLX - 40) + a), + NewImg(0, b[4], "left:" + (c.AttackedRX - 16) + a), + ]), + (c.aTri = [0, 0]); + }, + PrivateDie: function (a) { + a.BulletEle.length = 0; + }, + TriggerCheck: function (b, a) { + if (this.aTri[a]) { + return; + } + if (this.AttackCheck2(b)) { + ++this.aTri[a]; + this.aTri[0] && this.aTri[1] && (this.canTrigger = 0); + this.CheckLoop(b.id, a); + } + }, + AttackCheck1: function (b, f) { + var e = this, + c = $Z[b], + a; + if (c && c.PZ && c.R == e.R) { + a = c.ZX > e.AttackedLX + 25 ? 0 : 1; + f == a + ? e.AttackCheck2(c) + ? e.CheckLoop(b, f) + : --e.aTri[f] + : (++e.aTri[a], --e.aTri[f]); + } else { + --e.aTri[f]; + } + e.canTrigger = e.aTri[0] && e.aTri[1] ? 0 : 1; + }, + CheckLoop: function (a, b) { + this.NormalAttack(b); + oSym.addTask( + 140, + function (c, e, g) { + var f; + (f = $P[c]) && f.AttackCheck1(e, g); + }, + [this.id, a, b] + ); + }, + NormalAttack: function (c) { + var d = this, + e, + a = c + ? (oSym.addTask( + 15, + function (f) { + $P[f] && b(1); + }, + [d.id] + ), + d.AttackedRX - 16) + : d.AttackedLX - 40, + b = function () { + EditEle( + d.BulletEle[c].cloneNode(false), + { + id: (e = "PB" + Math.random()), + }, + 0, + EDPZ + ); + oSym.addTask( + 15, + function (g) { + var f = $(g); + f && SetVisible(f); + }, + [e] + ); + oSym.addTask( + 1, + function (i, m, k, f, q, l, p, n, r, j) { + var o, + h = GetC(q), + g = oZ["getZ" + f](q, l); + p == 0 && + j[l + "_" + h] && + n != h && + (PlayAudio("firepea"), + (p = 1), + (k = 40), + (n = h), + (m.src = "images/Plants/PB" + p + f + ".png")); + g && g.Altitude == 1 + ? (g[ + { + "-1": "getSnowPea", + 0: "getPea", + 1: "getFirePea", + }[p] + ](g, k, f), + (SetStyle(m, { + left: r + 28 + "px", + }).src = [ + "images/Plants/PeaBulletHit.gif", + "images/Plants/FireBulletHit.png", + ][m]), + oSym.addTask(10, ClearChild, [m])) + : (q += o = !f ? 5 : -5) < oS.W && q > 100 + ? ((m.style.left = (r += o) + "px"), + oSym.addTask(1, arguments.callee, [ + i, + m, + k, + f, + q, + l, + p, + n, + r, + j, + ])) + : ClearChild(m); + }, + [e, $(e), 20, c, d.AttackedLX, d.R, 0, 0, a, oGd.$Torch] + ); + }; + b(); + }, + }), + oSunFlower = InheritO(CPlants, { + EName: "oSunFlower", + CName: "SunFlower", + width: 73, + height: 74, + beAttackedPointR: 53, + SunNum: 50, + PicArr: [ + "images/Card/Plants/SunFlower.png", + "images/Plants/SunFlower/0.gif", + "images/Plants/SunFlower/SunFlower1.gif", + "images/Plants/SunFlower/SunFlower.gif", + ], + Tooltip: "Gives you additional sun", + Produce: + 'Sunflowers are essential for you to produce extra sun. Try planting as many as you can!

Sun production: normal

Sunflower can\'t resist bouncing to the beat. Which beat is that? Why, the life-giving jazzy rhythm of the Earth itself, thumping at a frequency only Sunflower can hear.', + /* + BirthStyle: function (c, e, b, a) { + var d = b.childNodes[1]; + d.src = "images/Plants/SunFlower/SunFlower.gif"; + d.style.clip = "rect(0,auto,74px,0)"; + d.style.height = "148px"; + EditEle( + b, + { + id: e, + }, + a, + EDPZ + ); + }, + */ // unused stuff lol (why didnt they just remove this instead of making both of the gifs like that) + ChangePosition: function (c, a) { + var b = c.childNodes[1]; + a + ? SetStyle(b, { + clip: "rect(74px,auto,auto,auto)", + top: "-74px", + }) + : SetStyle(b, { + clip: "rect(auto,auto,74px,auto)", + top: 0, + }); + }, + PrivateBirth: function (a) { + oS.ProduceSun + ? oSym.addTask( + 500, + function (d, c, b) { + $P[d] && + (a.ChangePosition($(d), 0), + oSym.addTask( + 100, + function (h, g, f, e) { + $P[h] && + (AppearSun( + Math.floor( + g + Math.random() * 41 + ), + f, + 50, + 0 + ), + oSym.addTask( + 100, + function (i) { + $P[i] && + a.ChangePosition( + $(i), + 0 + ); + }, + [h] + ), + oSym.addTask(2400, e, [h, g, f])); + }, + [d, c, b, arguments.callee] + )); + }, + [a.id, GetX(a.C) - 40, GetY(a.R)] + ) + : (a.getHurt = function (f, c, b) { + var e = this; + switch (c) { + case 0: + var d = (e.HP -= b); + !(d % 100) && + (AppearSun( + Math.floor( + GetX(e.C) - 40 + Math.random() * 41 + ), + GetY(e.R), + 25, + 0 + ), + oSym.addTask( + 50, + function (h, g) { + AppearSun( + Math.floor( + GetX(h) - + 40 + + Math.random() * 41 + ), + GetY(g), + 25, + 0 + ); + }, + [e.C, e.R] + ), + d < 1 + ? e.Die() + : oSym.addTask( + 50, + function (h, g) { + AppearSun( + Math.floor( + GetX(h) - + 40 + + Math.random() * + 41 + ), + GetY(g), + 25, + 0 + ); + }, + [e.C, e.R] + )); + break; + case 3: + (e.HP -= b) < 1 && e.Die(); + break; + default: + e.Die(1); + } + }); + }, + InitTrigger: function () {}, + }), + oTwinSunflower = InheritO(oSunFlower, { + EName: "oTwinSunflower", + CName: "Twin Sunflower", + width: 83, + height: 84, + beAttackedPointR: 63, + SunNum: 150, + PicArr: [ + "images/Card/Plants/TwinSunflower.png", + "images/Plants/TwinSunflower/0.gif", + "images/Plants/TwinSunflower/TwinSunflower1.gif", + "images/Plants/TwinSunflower/TwinSunflower.gif", + ], + Tooltip: + 'Gives twice as much sun as a sunflower

(requires sunflower)', + Produce: + 'Twin sunflowers produce twice as much sunlight as regular sunflowers.

Sunlight Yield:double
Can be planted on common sunflowers

Its a crazy night where forbidden science and technology make double
The cell sunflower came to this world. Lightning, thunder, gust of wind, roar
, are expressing the worlds rejection of him. but everything
To no avail, Gemini Sunflower is still alive!', + CanGrow: function (b, a, d) { + var c = b[1]; + return c && c.EName == "oSunFlower"; + }, + /* +BirthStyle: function (c, e, b, a) { + var d = b.childNodes[1]; + d.src = "images/Plants/TwinSunflower/TwinSunflower.gif"; + d.style.clip = "rect(0,auto,84px,0)"; + d.style.height = "168px"; + EditEle( + b, + { + id: e, }, - getHurt: function (e, c, b) { - var d = this, - a = d.id; - !(c % 3) ? (d.HP -= b) < 1 && d.Die() : d.Die(); + a, + EDPZ + ); +}, +*/ // same thing here + ChangePosition: function (c, a) { + var b = c.childNodes[1]; + a + ? SetStyle(b, { + clip: "rect(84px,auto,auto,auto)", + top: "-84px", + }) + : SetStyle(b, { + clip: "rect(auto,auto,84px,auto)", + top: 0, + }); + }, + PrivateBirth: function (a) { + var b = GetX(a.C); + oSym.addTask( + 500, + function (f, d, c, e) { + $P[f] && + (a.ChangePosition($(f), 0), + oSym.addTask( + 100, + function (k, h, g, j, i) { + AppearSun( + Math.floor(h + Math.random() * 21), + j, + 50, + 0 + ), + AppearSun( + Math.floor(g + Math.random() * 21), + j, + 50, + 0 + ), + oSym.addTask( + 100, + function (l) { + $P[l] && a.ChangePosition($(l), 0); + }, + [k] + ), + oSym.addTask(2400, i, [k, h, g, j]); + }, + [f, d, c, e, arguments.callee] + )); + }, + [a.id, b - 40, b - 20, GetY(a.R)] + ); + }, + }), + oPumpkinHead = InheritO(CPlants, { + EName: "oPumpkinHead", + CName: "Pumpkin", + width: 97, + height: 67, + beAttackedPointL: 15, + beAttackedPointR: 82, + SunNum: 125, + PKind: 2, + HP: 4e3, + coolTime: 30, + zIndex: 1, + PicArr: [ + "images/Card/Plants/PumpkinHead.png", + "images/Plants/PumpkinHead/0.gif", + "images/Plants/PumpkinHead/PumpkinHead.gif", + "images/Plants/PumpkinHead/PumpkinHead1.gif", + "images/Plants/PumpkinHead/PumpkinHead2.gif", + "images/Plants/PumpkinHead/Pumpkin_damage1.gif", + "images/Plants/PumpkinHead/Pumpkin_damage2.gif", + "images/Plants/PumpkinHead/Pumpkin_back.gif", + ], + Tooltip: "Protects plants that are within its shell", + Produce: + 'Pumpkin head, can use his shell to protect other plants.

Toughness:high
Features:可以种在其他植物上

Pumpkin head hasnt been received recently, about his cousin Resfield
information. Clearly, Renfield is a big star, a kind of...
What is a sports star called...? Pegg jump ball big
division? Pumpkin Head doesnt understand what exercise is anyway, he just wants to do well
his own work.', + CanGrow: function (c, b, d) { + var a = b + "_" + d; + return c[2] + ? 1 + : oGd.$LF[b] == 1 + ? !(d < 1 || d > 9 || oGd.$Crater[a] || oGd.$Tombstones[a]) + : c[0]; + }, + GetDY: function (b, c, a) { + return a[0] ? -12 : -5; + }, + HurtStatus: 0, + getHurt: function (e, c, b) { + var d = this, + f = d.id, + a = $(f); + switch (true) { + case c && c < 3: + d.Die(1); + break; + case (d.HP -= b) < 1: + d.Die(); + break; + case d.HP < 1334: + d.HurtStatus < 2 && + ((d.HurtStatus = 2), + (a.childNodes[1].src = + "images/Plants/PumpkinHead/Pumpkin_damage2.gif")); + break; + case d.HP < 2667: + d.HurtStatus < 1 && + ((d.HurtStatus = 1), + (a.childNodes[1].src = + "images/Plants/PumpkinHead/Pumpkin_damage1.gif"), + ($(f + "_2").src = + "images/Plants/PumpkinHead/Pumpkin_back.gif")); + } + }, + InitTrigger: function () {}, + BirthStyle: function (c, d, b, a) { + b.childNodes[1].src = "images/Plants/PumpkinHead/PumpkinHead1.gif"; + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + NewImg( + d + "_2", + "images/Plants/PumpkinHead/PumpkinHead2.gif", + "left:" + + c.pixelLeft + + "px;top:" + + c.pixelTop + + "px;z-index:" + + (c.zIndex - 2), + EDPZ + ); + }, + PrivateDie: function (a) { + ClearChild($(a.id + "_2")); + }, + }), + oSeedPumpkinHead = InheritO(CPlants, { + EName: "oSeedPumpkinHead", + CName: "Pumpkin", + width: 97, + height: 67, + beAttackedPointL: 15, + beAttackedPointR: 82, + SunNum: 0, + PKind: 2, + HP: 4e3, + coolTime: 30, + zIndex: 1, + PicArr: [ + "images/Card/Plants/PumpkinHead.png", + "images/Plants/PumpkinHead/0.gif", + "images/Plants/PumpkinHead/PumpkinHead.gif", + "images/Plants/PumpkinHead/PumpkinHead1.gif", + "images/Plants/PumpkinHead/PumpkinHead2.gif", + "images/Plants/PumpkinHead/Pumpkin_damage1.gif", + "images/Plants/PumpkinHead/Pumpkin_damage2.gif", + "images/Plants/PumpkinHead/Pumpkin_back.gif", + ], + Tooltip: "Protects plants that are within its shell", + Produce: + 'Pumpkin head, can use his shell to protect other plants.

Toughness:high
Features:可以种在其他植物上

Pumpkin head hasnt been received recently, about his cousin Resfield
information. Clearly, Renfield is a big star, a kind of...
What is a sports star called...? Pegg jump ball big
division? Pumpkin Head doesnt understand what exercise is anyway, he just wants to do well
his own work.', + CanGrow: function (c, b, d) { + var a = b + "_" + d; + return c[2] + ? 1 + : oGd.$LF[b] == 1 + ? !(d < 1 || d > 9 || oGd.$Crater[a] || oGd.$Tombstones[a]) + : c[0]; + }, + GetDY: function (b, c, a) { + return a[0] ? -12 : -5; + }, + HurtStatus: 0, + getHurt: function (e, c, b) { + var d = this, + f = d.id, + a = $(f); + switch (true) { + case c && c < 3: + d.Die(1); + break; + case (d.HP -= b) < 1: + d.Die(); + break; + case d.HP < 1334: + d.HurtStatus < 2 && + ((d.HurtStatus = 2), + (a.childNodes[1].src = + "images/Plants/PumpkinHead/Pumpkin_damage2.gif")); + break; + case d.HP < 2667: + d.HurtStatus < 1 && + ((d.HurtStatus = 1), + (a.childNodes[1].src = + "images/Plants/PumpkinHead/Pumpkin_damage1.gif"), + ($(f + "_2").src = + "images/Plants/PumpkinHead/Pumpkin_back.gif")); + } + }, + InitTrigger: function () {}, + BirthStyle: function (c, d, b, a) { + b.childNodes[1].src = "images/Plants/PumpkinHead/PumpkinHead1.gif"; + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + NewImg( + d + "_2", + "images/Plants/PumpkinHead/PumpkinHead2.gif", + "left:" + + c.pixelLeft + + "px;top:" + + c.pixelTop + + "px;z-index:" + + (c.zIndex - 2), + EDPZ + ); + }, + PrivateDie: function (a) { + ClearChild($(a.id + "_2")); + }, + }), + oFlowerPot = InheritO(CPlants, { + EName: "oFlowerPot", + CName: "Flower Pot", + width: 72, + height: 68, + beAttackedPointR: 52, + SunNum: 25, + BookHandBack: 6, + HP: 1e3, + PicArr: [ + "images/Card/Plants/FlowerPot.png", + "images/Plants/FlowerPot/0.gif", + "images/Plants/FlowerPot/FlowerPot.gif", + ], + PKind: 0, + Stature: -1, + GetDY: function (b, c, a) { + return 6; + }, + CanGrow: function (e, d, f) { + var c = d + "_" + f, + b = oGd.$LF[d], + a = f < 1 || f > 9; + return b % 2 + ? b < 3 + ? !( + a || + e[1] || + e[2] || + e[0] || + oGd.$Crater[c] || + oGd.$Tombstones[c] + ) + : !(a || e[0] || oGd.$Crater[c]) + : 0; + }, + Tooltip: "Lets you plant on the roof", + Produce: + 'Pots allow you to grow plants on your roof.

Features:Allows you to plant on the roof

"I am a pot for plants, but I am also a
plant. Is it surprising?', + InitTrigger: function () {}, + }), + oCFlowerPot = InheritO(oFlowerPot, { + EName: "oCFlowerPot", + PicArr: [ + "images/Card/Plants/CFlowerPot.png", + "images/Plants/FlowerPot/C/0.gif", + "images/Plants/FlowerPot/C/CFlowerPot.gif", + ], + Produce: + "Allows plants to be planted on tiled terrain.

Celadon flower pot, no introduction needed", + }), + oLilyPad = InheritO(oFlowerPot, { + BookHandBack: 4.9, + Stature: -1, + EName: "oLilyPad", + CName: "LilyPad", + width: 79, + height: 58, + beAttackedPointR: 59, + // HP: 1e3, + PicArr: [ + "images/Card/Plants/LilyPad.png", + "images/Plants/LilyPad/0.gif", + "images/Plants/LilyPad/LilyPad.gif", + ], + getShadow: function (a) { + return "left:-8px;top:25px"; + }, + CanGrow: function (c, b, d) { + var a = b + "_" + d; + return !( + d < 1 || + d > 9 || + oGd.$LF[b] - 2 || + c[0] || + c[1] || + oGd.$Crater[a] || + oGd.$Tombstones[a] + ); + }, + Tooltip: "Lilypads allow you to grow non-aquatic plants on them。", + Produce: + 'Lilypads allow you to grow non-aquatic plants on top of them。

Features:Non-aquatic plants can be planted on it
Must be planted on water

Lilypad never complains, it never wants to know what happened
Plant a plant on it and it wont say anything.
,Does it have any surprising ideas or terrible secrets??
Lotus Ye buries all these inside of her heart。', + }), + oSeedLilyPad = InheritO(oFlowerPot, { + BookHandBack: 4.9, + Stature: -1, + EName: "oSeedLilyPad", + CName: "LilyPad", + width: 79, + height: 58, + beAttackedPointR: 59, + // HP: 1e3, + PicArr: [ + "images/Card/Plants/LilyPad.png", + "images/Plants/LilyPad/0.gif", + "images/Plants/LilyPad/LilyPad.gif", + ], + getShadow: function (a) { + return "left:-8px;top:25px"; + }, + CanGrow: function (c, b, d) { + var a = b + "_" + d; + return !( + d < 1 || + d > 9 || + oGd.$LF[b] - 2 || + c[0] || + c[1] || + oGd.$Crater[a] || + oGd.$Tombstones[a] + ); + }, + Tooltip: "Lilypads allow you to grow non-aquatic plants on them。", + Produce: + 'Lilypads allow you to grow non-aquatic plants on top of them。

Features:Non-aquatic plants can be planted on it
Must be planted on water

Lilypad never complains, it never wants to know what happened
Plant a plant on it and it wont say anything.
,Does it have any surprising ideas or terrible secrets??
Lotus Ye buries all these inside of her heart。', + }), + oILilyPad = InheritO(oFlowerPot, { + BookHandBack: 4.9, + Stature: -2, + EName: "oILilyPad", + CName: "LilyPad", + width: 79, + height: 58, + beAttackedPointR: 59, + HP: 1e3, + PicArr: [ + "images/Card/Plants/LilyPad.png", + "images/Plants/LilyPad/0.gif", + "images/Plants/LilyPad/LilyPad.gif", + ], + getShadow: function (a) { + return "left:-8px;top:25px"; + }, + CanGrow: function (c, b, d) { + var a = b + "_" + d; + return !( + d < 1 || + d > 9 || + oGd.$LF[b] - 2 || + c[0] || + c[1] || + oGd.$Crater[a] || + oGd.$Tombstones[a] + ); + }, + Tooltip: "Lilypads allow you to grow non-aquatic plants on them。", + Produce: + 'Lilypads allow you to grow non-aquatic plants on top of them。

Features:Non-aquatic plants can be planted on it
Must be planted on water

Lilypad never complains, it never wants to know what happened
Plant a plant on it and it wont say anything.
,Does it have any surprising ideas or terrible secrets??
Lotus Ye buries all these inside of her heart。', + }), + oLilyPad1 = InheritO(oLilyPad, { + EName: "oLilyPad1", + }), + oPotatoMine = InheritO(CPlants, { + EName: "oPotatoMine", + CName: "Potato Mine", + width: 75, + height: 55, + beAttackedPointR: 55, + SunNum: 25, + coolTime: 30, + Stature: -1, + HP: 1e3, + CanGrow: function (c, b, e) { + var a = b + "_" + e, + d = oS.ArP; + return d + ? oGd.$LF[b] == 1 + ? e > 0 && + e < d.ArC[1] && + !(oGd.$Crater[a] || oGd.$Tombstones[a] || c[1]) + : c[0] && !c[1] + : oGd.$LF[b] == 1 + ? !( + e < 1 || + e > 9 || + oGd.$Crater[a] || + oGd.$Tombstones[a] || + c[1] + ) + : c[0] && !c[1]; + }, + PicArr: [ + "images/Card/Plants/PotatoMine.png", + "images/Plants/PotatoMine/0.gif", + "images/Plants/PotatoMine/PotatoMine.gif", + "images/Plants/PotatoMine/PotatoMineNotReady.gif", + "images/Plants/PotatoMine/PotatoMine_mashed.gif", + "images/Plants/PotatoMine/ExplosionSpudow.gif", + ], + Tooltip: "Explodes on contact, but takes time to arm itself", + Produce: + 'Potato mines are powerful, but they take time
to arm yourself. You should plant them in the way of zombies
, which explode when they are touched.

Harm:huge
Scope:All zombies in a small area
Instructions:It takes some preparation time to use alone.

Some people say Potato Ray is lazy because he always puts everything
Save for last. Tudou Lei didnt have time to talk to them, he was busy with exams
Consider his investment strategy.', + Status: 0, + AudioArr: ["potato_mine"], + canTrigger: 0, + BirthStyle: function (d, e, c, b, a) { + c.childNodes[1].src = !a + ? "images/Plants/PotatoMine/PotatoMineNotReady.gif" + : (~(function () { + d.Status = 1; + d.canTrigger = 1; + d.getHurt = d.getHurt2; + })(), + "images/Plants/PotatoMine/PotatoMine.gif"); + EditEle( + c, + { + id: e, + }, + b, + EDPZ + ); + }, + getHurt2: function (d, b, a) { + var c = this; + b > 2 + ? (c.HP -= a) < 1 && c.Die() + : c.NormalAttack(c.pixelLeft, c.pixelRight, c.R); + }, + PrivateBirth: function (b, a) { + !a && + oSym.addTask( + 1500, + function (d) { + var c = $P[d]; + c && + (($(d).childNodes[1].src = + "images/Plants/PotatoMine/PotatoMine.gif"), + (c.Status = 1), + (c.canTrigger = 1), + (c.getHurt = c.getHurt2)); + }, + [b.id] + ); + }, + getTriggerRange: function (a, b, c) { + return [[b, c, 0]]; + }, + TriggerCheck: function (e, c) { + var a = this.R, + b = this.C; + e.beAttacked && + e.Altitude < 2 && + !oGd.$[a + "_" + b + "_2"] && + this.NormalAttack(this.pixelLeft, this.pixelRight, this.R); + }, + NormalAttack: function (j, h, e) { + var g = this, + b = g.id, + d = $(b), + c = oZ.getArZ(j, h, e), + f = c.length, + a; + while (f--) { + (a = c[f]).Altitude < 2 && a.getThump(); + } + g.Die(1); + PlayAudio("potato_mine"); + EditEle( + d.childNodes[1], + { + src: "images/Plants/PotatoMine/PotatoMine_mashed.gif", + }, + { + width: "132px", + height: "93px", + left: "-40px", + top: "-20px", + } + ); + NewImg( + 0, + "images/Plants/PotatoMine/ExplosionSpudow.gif", + "left:-90px;top:-40px", + d + ); + oSym.addTask( + 200, + function (i) { + ClearChild(i.lastChild); + oSym.addTask(100, ClearChild, [i]); + }, + [d] + ); + }, + }), + oSeedPotatoMine = InheritO(CPlants, { + EName: "oSeedPotatoMine", + CName: "Potato Mine", + width: 75, + height: 55, + beAttackedPointR: 55, + SunNum: 0, + coolTime: 30, + Stature: -1, + HP: 1e3, + CanGrow: function (c, b, e) { + var a = b + "_" + e, + d = oS.ArP; + return d + ? oGd.$LF[b] == 1 + ? e > 0 && + e < d.ArC[1] && + !(oGd.$Crater[a] || oGd.$Tombstones[a] || c[1]) + : c[0] && !c[1] + : oGd.$LF[b] == 1 + ? !( + e < 1 || + e > 9 || + oGd.$Crater[a] || + oGd.$Tombstones[a] || + c[1] + ) + : c[0] && !c[1]; + }, + PicArr: [ + "images/Card/Plants/PotatoMine.png", + "images/Plants/PotatoMine/0.gif", + "images/Plants/PotatoMine/PotatoMine.gif", + "images/Plants/PotatoMine/PotatoMineNotReady.gif", + "images/Plants/PotatoMine/PotatoMine_mashed.gif", + "images/Plants/PotatoMine/ExplosionSpudow.gif", + ], + Tooltip: "Explodes on contact, but takes time to arm itself", + Produce: + 'Potato mines are powerful, but they take time
to arm yourself. You should plant them in the way of zombies
, which explode when they are touched.

Harm:huge
Scope:All zombies in a small area
Instructions:It takes some preparation time to use alone.

Some people say Potato Ray is lazy because he always puts everything
Save for last. Tudou Lei didnt have time to talk to them, he was busy with exams
Consider his investment strategy.', + Status: 0, + AudioArr: ["potato_mine"], + canTrigger: 0, + BirthStyle: function (d, e, c, b, a) { + c.childNodes[1].src = !a + ? "images/Plants/PotatoMine/PotatoMineNotReady.gif" + : (~(function () { + d.Status = 1; + d.canTrigger = 1; + d.getHurt = d.getHurt2; + })(), + "images/Plants/PotatoMine/PotatoMine.gif"); + EditEle( + c, + { + id: e, + }, + b, + EDPZ + ); + }, + getHurt2: function (d, b, a) { + var c = this; + b > 2 + ? (c.HP -= a) < 1 && c.Die() + : c.NormalAttack(c.pixelLeft, c.pixelRight, c.R); + }, + PrivateBirth: function (b, a) { + !a && + oSym.addTask( + 1500, + function (d) { + var c = $P[d]; + c && + (($(d).childNodes[1].src = + "images/Plants/PotatoMine/PotatoMine.gif"), + (c.Status = 1), + (c.canTrigger = 1), + (c.getHurt = c.getHurt2)); + }, + [b.id] + ); + }, + getTriggerRange: function (a, b, c) { + return [[b, c, 0]]; + }, + TriggerCheck: function (e, c) { + var a = this.R, + b = this.C; + e.beAttacked && + e.Altitude < 2 && + !oGd.$[a + "_" + b + "_2"] && + this.NormalAttack(this.pixelLeft, this.pixelRight, this.R); + }, + NormalAttack: function (j, h, e) { + var g = this, + b = g.id, + d = $(b), + c = oZ.getArZ(j, h, e), + f = c.length, + a; + while (f--) { + (a = c[f]).Altitude < 2 && a.getThump(); + } + g.Die(1); + PlayAudio("potato_mine"); + EditEle( + d.childNodes[1], + { + src: "images/Plants/PotatoMine/PotatoMine_mashed.gif", + }, + { + width: "132px", + height: "93px", + left: "-40px", + top: "-20px", + } + ); + NewImg( + 0, + "images/Plants/PotatoMine/ExplosionSpudow.gif", + "left:-90px;top:-40px", + d + ); + oSym.addTask( + 200, + function (i) { + ClearChild(i.lastChild); + oSym.addTask(100, ClearChild, [i]); + }, + [d] + ); + }, + }), + oIPotatoMine = InheritO(CPlants, { + EName: "oIPotatoMine", + CName: "Potato Mine", + width: 75, + height: 55, + beAttackedPointR: 55, + SunNum: 25, + coolTime: 1, + Stature: -1, + HP: 13, + CanGrow: function (c, b, e) { + var a = b + "_" + e, + d = oS.ArP; + return d + ? oGd.$LF[b] == 1 + ? e > 0 && + e < d.ArC[1] && + !(oGd.$Crater[a] || oGd.$Tombstones[a] || c[1]) + : c[0] && !c[1] + : oGd.$LF[b] == 1 + ? !( + e < 1 || + e > 9 || + oGd.$Crater[a] || + oGd.$Tombstones[a] || + c[1] + ) + : c[0] && !c[1]; + }, + PicArr: [ + "images/Card/Plants/PotatoMine.png", + "images/Plants/PotatoMine/0.gif", + "images/Plants/PotatoMine/PotatoMine.gif", + "images/Plants/PotatoMine/PotatoMineNotReady.gif", + "images/Plants/PotatoMine/PotatoMine_mashed.gif", + "images/Plants/PotatoMine/ExplosionSpudow.gif", + ], + Tooltip: "Explodes on contact, but takes time to arm itself", + Produce: + 'Potato mines are powerful, but they take time
to arm yourself. You should plant them in the way of zombies
, which explode when they are touched.

Harm:huge
Scope:All zombies in a small area
Instructions:It takes some preparation time to use alone.

Some people say Potato Ray is lazy because he always puts everything
Save for last. Tudou Lei didnt have time to talk to them, he was busy with exams
Consider his investment strategy.', + Status: 0, + AudioArr: ["potato_mine"], + canTrigger: 0, + BirthStyle: function (d, e, c, b, a) { + c.childNodes[1].src = !a + ? "images/Plants/PotatoMine/PotatoMine.gif" + : (~(function () { + d.Status = 1; + d.canTrigger = 1; + d.getHurt = d.getHurt2; + })(), + "images/Plants/PotatoMine/PotatoMine.gif"); + EditEle( + c, + { + id: e, + }, + b, + EDPZ + ); + }, + getHurt2: function (d, b, a) { + var c = this; + b > 2 + ? (c.HP -= a) < 1 && c.Die() + : c.NormalAttack(c.pixelLeft, c.pixelRight, c.R); + }, + PrivateBirth: function (b, a) { + !a && + oSym.addTask( + 1500, + function (d) { + var c = $P[d]; + c && + (($(d).childNodes[1].src = + "images/Plants/PotatoMine/PotatoMine.gif"), + (c.Status = 1), + (c.canTrigger = 1), + (c.getHurt = c.getHurt2)); + }, + [b.id] + ); + }, + getTriggerRange: function (a, b, c) { + return [[b, c, 0]]; + }, + TriggerCheck: function (e, c) { + var a = this.R, + b = this.C; + e.beAttacked && + e.Altitude < 2 && + !oGd.$[a + "_" + b + "_2"] && + this.NormalAttack(this.pixelLeft, this.pixelRight, this.R); + }, + NormalAttack: function (j, h, e) { + var g = this, + b = g.id, + d = $(b), + c = oZ.getArZ(j, h, e), + f = c.length, + a; + while (f--) { + (a = c[f]).Altitude < 2 && a.getThump(); + } + g.Die(1); + PlayAudio("potato_mine"); + EditEle( + d.childNodes[1], + { + src: "images/Plants/PotatoMine/PotatoMine_mashed.gif", + }, + { + width: "132px", + height: "93px", + left: "-40px", + top: "-20px", + } + ); + NewImg( + 0, + "images/Plants/PotatoMine/ExplosionSpudow.gif", + "left:-90px;top:-40px", + d + ); + oSym.addTask( + 200, + function (i) { + ClearChild(i.lastChild); + oSym.addTask(100, ClearChild, [i]); + }, + [d] + ); + }, + }), + oTorchwood = InheritO(CPlants, { + EName: "oTorchwood", + CName: "Torchwood", + width: 73, + height: 83, + beAttackedPointR: 53, + SunNum: 175, + PicArr: [ + "images/Card/Plants/Torchwood.png", + "images/Plants/Torchwood/0.gif", + "images/Plants/Torchwood/Torchwood.gif", + "images/Plants/PB00.png", + "images/Plants/PB01.png", + "images/Plants/PB10.png", + "images/Plants/PB11.png", + "images/Plants/Torchwood/SputteringFire.gif", + ], + AudioArr: ["firepea", "ignite", "ignite2"], + Tooltip: "Peas that pass through it turn into fireballs", + Produce: + 'Torch Stump can turn peas that pass through him into fireballs, causing
Double damage.

Features:Causes fireballs that pass through him to deal double damage. fireball also
against nearby zombies
Deals splash damage

Everyone loves and respects torch stumps. they like his
Honest and steadfast friendship, and the ability to increase pea damage.
But he also has his own secret: he cant read!', + PrivateBirth: function (c) { + var a = c.R, + b = c.C; + oGd.$Torch[a + "_" + b] = c.id; + oS.HaveFog && oGd.GatherFog(a, b, 1, 1, 0); + }, + InitTrigger: function () {}, + PrivateDie: function (c) { + var a = c.R, + b = c.C; + delete oGd.$Torch[a + "_" + b]; + oS.HaveFog && oGd.GatherFog(a, b, 1, 1, 1); + }, + NormalAttack: function () { + var a = this, + b = "PB" + Math.random(); + EditEle( + a.BulletEle.cloneNode(false), + { + id: b, + }, + 0, + EDPZ + ); + oSym.addTask( + 15, + function (d) { + var c = $(d); + c && SetVisible(c); + }, + [b] + ); + oSym.addTask( + 1, + function (f, j, h, c, n, i, m, k, o, g) { + var l, + e = GetC(n), + d = oZ["getZ" + c](n, i); + m == 0 && + g[i + "_" + e] && + k != e && + (PlayAudio("firepea"), + (m = 1), + (h = 40), + (k = e), + (j.src = "images/Plants/PB" + m + c + ".png")); + d && d.Altitude == 1 + ? (d[ + { + "-1": "getSnowPea", + 0: "getPea", + 1: "getFirePea", + }[m] + ](d, h, c), + (SetStyle(j, { + left: o + 28 + "px", + }).src = "images/Plants/FireBulletHit.png"), + oSym.addTask(75, ClearChild, [j])) + : (n += l = !c ? 5 : -5) < oS.W && n > 100 + ? ((j.style.left = (o += l) + "px"), + oSym.addTask(1, arguments.callee, [ + f, + j, + h, + c, + n, + i, + m, + k, + o, + g, + ])) + : ClearChild(j); + }, + [ + b, + $(b), + 20, + 0, + a.AttackedLX, + a.R, + 0, + 0, + a.AttackedLX - 40, + oGd.$Torch, + ] + ); + }, + }), + oSeedTorchwood = InheritO(CPlants, { + EName: "oSeedTorchwood", + CName: "Torchwood", + width: 73, + height: 83, + beAttackedPointR: 53, + SunNum: 0, + PicArr: [ + "images/Card/Plants/Torchwood.png", + "images/Plants/Torchwood/0.gif", + "images/Plants/Torchwood/Torchwood.gif", + "images/Plants/PB00.png", + "images/Plants/PB01.png", + "images/Plants/PB10.png", + "images/Plants/PB11.png", + "images/Plants/Torchwood/SputteringFire.gif", + ], + AudioArr: ["firepea", "ignite", "ignite2"], + Tooltip: "Peas that pass through it turn into fireballs", + Produce: + 'Torch Stump can turn peas that pass through him into fireballs, causing
Double damage.

Features:Causes fireballs that pass through him to deal double damage. fireball also
against nearby zombies
Deals splash damage

Everyone loves and respects torch stumps. they like his
Honest and steadfast friendship, and the ability to increase pea damage.
But he also has his own secret: he cant read!', + PrivateBirth: function (c) { + var a = c.R, + b = c.C; + oGd.$Torch[a + "_" + b] = c.id; + oS.HaveFog && oGd.GatherFog(a, b, 1, 1, 0); + }, + InitTrigger: function () {}, + PrivateDie: function (c) { + var a = c.R, + b = c.C; + delete oGd.$Torch[a + "_" + b]; + oS.HaveFog && oGd.GatherFog(a, b, 1, 1, 1); + }, + NormalAttack: function () { + var a = this, + b = "PB" + Math.random(); + EditEle( + a.BulletEle.cloneNode(false), + { + id: b, + }, + 0, + EDPZ + ); + oSym.addTask( + 15, + function (d) { + var c = $(d); + c && SetVisible(c); + }, + [b] + ); + oSym.addTask( + 1, + function (f, j, h, c, n, i, m, k, o, g) { + var l, + e = GetC(n), + d = oZ["getZ" + c](n, i); + m == 0 && + g[i + "_" + e] && + k != e && + (PlayAudio("firepea"), + (m = 1), + (h = 40), + (k = e), + (j.src = "images/Plants/PB" + m + c + ".png")); + d && d.Altitude == 1 + ? (d[ + { + "-1": "getSnowPea", + 0: "getPea", + 1: "getFirePea", + }[m] + ](d, h, c), + (SetStyle(j, { + left: o + 28 + "px", + }).src = "images/Plants/FireBulletHit.png"), + oSym.addTask(75, ClearChild, [j])) + : (n += l = !c ? 5 : -5) < oS.W && n > 100 + ? ((j.style.left = (o += l) + "px"), + oSym.addTask(1, arguments.callee, [ + f, + j, + h, + c, + n, + i, + m, + k, + o, + g, + ])) + : ClearChild(j); + }, + [ + b, + $(b), + 20, + 0, + a.AttackedLX, + a.R, + 0, + 0, + a.AttackedLX - 40, + oGd.$Torch, + ] + ); + }, + }), + oWallNut = InheritO(CPlants, { + EName: "oWallNut", + CName: "Wall-Nut", + width: 65, + height: 73, + beAttackedPointR: 45, + SunNum: 50, + coolTime: 15.5, + HP: 4e3, + PicArr: [ + "images/Card/Plants/WallNut.png", + "images/Plants/WallNut/0.gif", + "images/Plants/WallNut/WallNut.gif", + "images/Plants/WallNut/Wallnut_cracked1.gif", + "images/Plants/WallNut/Wallnut_cracked2.gif", + ], + Tooltip: "Blocks off zombies and protects your other plants", + Produce: + 'Nut Walls are tough enough for you to use to protect other plants
shell.

Toughness:high

Wall of Nuts: People want to know what its like to be constantly gnawed by zombies
how? They dont know that my limited senses can only let me
Feel a tingling, like, relaxing back massage. "', + CanGrow: function (c, b, f) { + var a = b + "_" + f, + d = c[1], + e = oS.ArP; + return e + ? oGd.$LF[b] == 1 + ? f > 0 && + f < e.ArC[1] && + !(oGd.$Crater[a] || oGd.$Tombstones[a] || d) + : c[0] && !d + : d && d.EName == "oWallNut" + ? 1 + : oGd.$LF[b] == 1 + ? !(f < 1 || f > 9 || oGd.$Crater[a] || oGd.$Tombstones[a] || d) + : c[0] && !d; + }, + InitTrigger: function () {}, + HurtStatus: 0, + getHurt: function (e, b, a) { + var c = this, + d = $(c.id).childNodes[1]; + !(b % 3) + ? (c.HP -= a) < 1 + ? c.Die() + : c.HP < 1334 + ? c.HurtStatus < 2 && + ((c.HurtStatus = 2), + (d.src = "images/Plants/WallNut/Wallnut_cracked2.gif")) + : c.HP < 2667 && + c.HurtStatus < 1 && + ((c.HurtStatus = 1), + (d.src = "images/Plants/WallNut/Wallnut_cracked1.gif")) + : c.Die(1); + }, + }), + oSeedWallNut = InheritO(CPlants, { + EName: "oSeedWallNut", + CName: "Wall-Nut", + width: 65, + height: 73, + beAttackedPointR: 45, + SunNum: 0, + coolTime: 15.5, + HP: 4e3, + PicArr: [ + "images/Card/Plants/WallNut.png", + "images/Plants/WallNut/0.gif", + "images/Plants/WallNut/WallNut.gif", + "images/Plants/WallNut/Wallnut_cracked1.gif", + "images/Plants/WallNut/Wallnut_cracked2.gif", + ], + Tooltip: "Blocks off zombies and protects your other plants", + Produce: + 'Nut Walls are tough enough for you to use to protect other plants
shell.

Toughness:high

Wall of Nuts: People want to know what its like to be constantly gnawed by zombies
how? They dont know that my limited senses can only let me
Feel a tingling, like, relaxing back massage. "', + CanGrow: function (c, b, f) { + var a = b + "_" + f, + d = c[1], + e = oS.ArP; + return e + ? oGd.$LF[b] == 1 + ? f > 0 && + f < e.ArC[1] && + !(oGd.$Crater[a] || oGd.$Tombstones[a] || d) + : c[0] && !d + : d && d.EName == "oWallNut" + ? 1 + : oGd.$LF[b] == 1 + ? !(f < 1 || f > 9 || oGd.$Crater[a] || oGd.$Tombstones[a] || d) + : c[0] && !d; + }, + InitTrigger: function () {}, + HurtStatus: 0, + getHurt: function (e, b, a) { + var c = this, + d = $(c.id).childNodes[1]; + !(b % 3) + ? (c.HP -= a) < 1 + ? c.Die() + : c.HP < 1334 + ? c.HurtStatus < 2 && + ((c.HurtStatus = 2), + (d.src = "images/Plants/WallNut/Wallnut_cracked2.gif")) + : c.HP < 2667 && + c.HurtStatus < 1 && + ((c.HurtStatus = 1), + (d.src = "images/Plants/WallNut/Wallnut_cracked1.gif")) + : c.Die(1); + }, + }), + oBalloon = InheritO(CPlants, { + EName: "oBalloon", + CName: "Balloonatic", + width: 65, + height: 73, + beAttackedPointR: 45, + SunNum: "+75", + coolTime: "Wave", + HP: 1, + PicArr: [ + "images/Card/Plants/BalloonGoober.png", + "images/Zombies/Balloon/balloonalmanac.png", + "images/Zombies/Balloon/popped.png", + ], + Tooltip: "goober", + Produce: + 'Has a chance to spawn every wave. Popping Balloonatic
gives you a sun worth 75 sun.

Toughness:low

">:3" says the Balloonatic, ">:3" says the Balloonatic, again.', + CanGrow: function (c, b, f) { + var a = b + "_" + f, + d = c[1], + e = oS.ArP; + return e + ? oGd.$LF[b] == 1 + ? f > 0 && + f < e.ArC[1] && + !(oGd.$Crater[a] || oGd.$Tombstones[a] || d) + : c[0] && !d + : d && d.EName == "oBalloon" + ? 1 + : oGd.$LF[b] == 1 + ? !(f < 1 || f > 9 || oGd.$Crater[a] || oGd.$Tombstones[a] || d) + : c[0] && !d; + }, + InitTrigger: function () {}, + HurtStatus: 0, + getHurt: function (e, b, a) { + var c = this, + d = $(c.id).childNodes[1]; + !(b % 3) + ? (c.HP -= a) < 1 + ? c.Die() + : c.HP < 1334 + ? c.HurtStatus < 2 && + ((c.HurtStatus = 2), + (d.src = "images/Card/Plants/BalloonGoober.png")) + : c.HP < 2667 && + c.HurtStatus < 1 && + ((c.HurtStatus = 1), + (d.src = "images/Zombies/Balloon/popped.png")) + : c.Die(1); + }, + }), + oCattail = InheritO(oPeashooter, { + EName: "oCattail", + CName: "Cattail", + width: 190, + height: 90, + beAttackedPointR: 100, + SunNum: 225, + coolTime: 50, + AttackGif: 5, + Attack: 20, + BookHandBack: 4.9, + getTriggerRange: function (a, b, c) { + return [[0, oS.W, 0]]; + }, + getTriggerR: function (a) { + return [1, oS.R]; + }, + InitTrigger: function (c, b, f, a, h, g) { + var j = {}, + i = c.getTriggerR(f), + e = i[0], + d = i[1]; + do { + oT.add(e, (j[e] = c.getTriggerRange(e, h, g)), b); + } while (e++ != d); + c.oTrigger = j; + }, + getShadow: function (a) { + return "display:none"; + }, + AudioArr: ["CabbageAttack1", "CabbageAttack2"], + PicArr: (function () { + var a = "images/Plants/Cattail/"; + return [ + "images/Card/Plants/Catttail.png", + a + "cat.gif", + a + "cat.gif", + "images/Plants/Cactus/Projectile" + + ($User.Browser.IE6 ? 8 : 32) + + ".png", + "images/interface/blank.png", + a + "Attack.gif", + ]; + })(), + Tooltip: + 'Attacks any lane and shoots down balloon zombies

(requires lily pad)', + Produce: + '猫尾草能够攻击气球僵尸或任何一条路上的僵尸。

必须种在睡莲上。

魔法猫咪!稳辣!稳辣!猫尾草不知道从哪里听的这句话,总之在听完之后,她破防了,她怒骂道:“一群*东西!我下次就用我对待僵尸的方式十倍来对待你们!”', + TriggerCheck: function (b, a) { + this.AttackCheck2(b) && + ((this.canTrigger = 0), this.CheckLoop(b.id, a)); + }, + CanGrow: function (b, a, d) { + var c = b[0]; + if (!b[1] && c && c.EName == "oLilyPad") { + return 1; + } + return 0; + }, + AttackCheck2: function (c) { + var b = c.Altitude; + return b == 1; + }, + AttackCheckZ: function () { + //查找僵尸 + var self = this, + z, + otarget, + llen, + lastx; + var Target = -1; + for (z in $Z) { + otarget = $Z[z]; + if ((otarget.Altitude <= 0) | (otarget.PZ == 0)) continue; + if (Target == -1 && otarget.Altitude > 0) { + Target = otarget; + continue; + } + llen = self.Plength1(self, otarget); + if ( + otarget.Altitude == Target.Altitude && + otarget.Altitude > 2 && + llen < self.Plength1(self, Target) + ) { + Target = otarget; + } else { + if (Target.Altitude > 2) continue; + if (otarget.Altitude > 2) Target = otarget; + if (llen < self.Plength1(self, Target)) Target = otarget; + } + } + + return Target; + }, + Plength1: function (pid, zid) { + //计算僵尸和磁力菇之间的距离 blehhhh :P + var chang = Math.abs(zid.R - pid.R) * 100; + var kuan = Math.abs(zid.X - GetX(pid.C)); + return ( + Math.sqrt(chang * chang + kuan * kuan) + + Math.abs(zid.R - pid.R) * 3 + ); + }, + PrivateBirth(a) { + a.BulletEle = NewImg( + 0, + a.PicArr[3], + "left:" + + (a.pixelLeft + 50) + + "px;top:" + + (a.pixelTop + 10) + + "px;visibility:hidden;z-index:" + + (a.zIndex + 2) + ); + var p, + oBalloon, + self = a; + for (p in $P) { + oBalloon = $P[p]; + if ( + oBalloon.R == self.R && + self.C == oBalloon.C && + oBalloon.EName == "oLilyPad" + ) { + oBalloon.Die(); + break; + } + } + }, + one(p1, p2, t) { + return p1 * (1 - t) + p2 * t; + }, + CheckLoop(zid, direction) { + var self = this; + var pid = self.id; + if ($P[pid]) { + self.NormalAttack(zid, 0); + oSym.addTask(50 + 90 + 90, (_) => { + $P[pid] && self.AttackCheck1(zid, direction); + }); + oSym.addTask(90, (_) => { + $P[pid] && self.NormalAttack(zid, 1); + }); + } + }, + HitZombie(zombieTarget, self) { + if (zombieTarget.Altitude == 3) { + zombieTarget.getPea(zombieTarget, 20); + zombieTarget.Drop(); + } else { + zombieTarget.getPea(zombieTarget, 0); + zombieTarget.getHit2(zombieTarget, 20); + } + }, + AttackAnim(ele, self) { + ele.childNodes[1].src = self.PicArr[self.AttackGif] + "?" + this.id; + }, + getAngle(x, y, lastX, lastY) { + return (180 / Math.PI) * Math.atan2(y - lastY, x - lastX); + }, + catlen(x, y, last) { + var ac = Math.abs(x - last[0]), + bc = Math.abs(y - last[1]), + ab = Math.sqrt(ac * ac, bc * bc) * 0.6; + return ab; + }, + NormalAttack(zid, fu) { + var self = this; + var ele = $(self.id); + var zombieTarget = self.AttackCheckZ(); + if (zombieTarget == -1) return; + if (!$Z[zombieTarget.id]) return; + if (!$P[self.id]) return; + var bullet = EditEle( + self.BulletEle.cloneNode(false), + { + id: "CB" + Math.random(), + }, + 0, + EDPZ + ); + //alert(bullet); + self.AttackAnim(ele, self); + if (fu) { + oSym.addTask( + 120, + (_) => + $P[self.id] && + (ele.childNodes[1].src = + self.PicArr[self.NormalGif] + "?" + this.id) + ); + } + oSym.addTask(85, (_) => { + //PlayAudio(self.AudioArr.slice(0, 2).random()); + if (!$P[self.id]) return; + if (!$Z[zombieTarget.id]) { + ele.childNodes[1].src = + self.PicArr[self.NormalGif] + "?" + this.id; + return; + } + SetVisible(bullet); + var x = self.pixelLeft + 80; + var y = self.pixelTop + 10; + var x1 = x, + y1 = y; + var zomRelativePos = zombieTarget.HeadPosition[ + zombieTarget.isAttacking + ] + ? zombieTarget.HeadPosition[zombieTarget.isAttacking] + : zombieTarget.HeadPosition[0]; + var s = + Number.parseInt(zombieTarget.Ele.style.left) + + zomRelativePos.x - + 10 - + x - + !zombieTarget.isAttacking * + zombieTarget.Speed * + zombieTarget.DeltaDirectionSpeed[ + zombieTarget.FangXiang + ] * + 10 * + 1; + var y3 = + Number.parseInt(zombieTarget.Ele.style.top) + + zomRelativePos.y + + 20; + var time = 1; + var f = 0; + var gravity = 0.2; + var vy = -10; + var vx = -(gravity * s) / (2 * vy); + var x2 = x + 40; + var y2 = y - 10; + var last = [x, y]; + var defAngle = self.getAngle( + x + vx, + y + vy + gravity, + last[0], + last[1] + ); + var x3 = x + s, + t = 0, + ws = 100; + var fum = 0; + (function drawFrame() { + if (fum == 0) { + x = self.one( + self.one(x1, x2, t / ws), + self.one(x2, x3, t / ws), + t / ws + ); + y = self.one( + self.one(y1, y2, t / ws), + self.one(y2, y3, t / ws), + t / ws + ); + var ab = self.catlen(x, y, last); + while (t < ws / 2 && ab < 1.5) { + t++; + x = self.one( + self.one(x1, x2, t / ws), + self.one(x2, x3, t / ws), + t / ws + ); + y = self.one( + self.one(y1, y2, t / ws), + self.one(y2, y3, t / ws), + t / ws + ); + ab = self.catlen(x, y, last); + } + bullet.style.left = x + "px"; + bullet.style.top = y + "px"; + bullet.style.transform = `rotate(${self.getAngle( + x, + y, + last[0], + last[1] + )}deg)`; + t++; + + if (t >= ws + 1) { + bullet && + ((bullet.src = self.PicArr[4]), + (bullet.style.transform = `rotate(0deg)`), + oSym.addTask(120, ClearChild, [bullet])); + $Z[zombieTarget.id] && + self.HitZombie(zombieTarget, self); + + return; + } + + if (!$Z[zombieTarget.id]) { + fum = 1; + ele.childNodes[1].src = + self.PicArr[self.NormalGif] + "?" + this.id; + oSym.addTask(1, drawFrame); + } else oSym.addTask(ab * 0.4, drawFrame); + } else { + (function drawFrame() { + if (fum == 1) { + x = self.one( + self.one(x1, x2, t / ws), + self.one(x2, x3, t / ws), + t / ws + ); + y = self.one( + self.one(y1, y2, t / ws), + self.one(y2, y3, t / ws), + t / ws + ); + var ab = self.catlen(x, y, last); + while (t < ws / 2 && ab < 1.5) { + t++; + x = self.one( + self.one(x1, x2, t / ws), + self.one(x2, x3, t / ws), + t / ws + ); + y = self.one( + self.one(y1, y2, t / ws), + self.one(y2, y3, t / ws), + t / ws + ); + ab = self.catlen(x, y, last); + } + bullet.style.left = x + "px"; + bullet.style.top = y + "px"; + bullet.style.transform = `rotate(${self.getAngle( + x, + y, + last[0], + last[1] + )}deg)`; + t++; + + if (t >= ws + 1) { + bullet && + ((bullet.src = self.PicArr[4]), + (bullet.style.transform = `rotate(0deg)`), + oSym.addTask(120, ClearChild, [ + bullet, + ])); + $Z[zombieTarget.id] && + self.HitZombie(zombieTarget, self); + + return; + } + + if (!$Z[zombieTarget.id]) { + fum = 1; + ele.childNodes[1].src = + self.PicArr[self.NormalGif] + + "?" + + this.id; + oSym.addTask(1, drawFrame); + } else oSym.addTask(ab * 0.4, drawFrame); + } else { + bullet.style.left = (x -= 3) + "px"; + bullet.style.top = (y -= 3) + "px"; + bullet.style.transform = `rotate(${self.getAngle( + x, + y, + last[0], + last[1] + )}deg)`; + if (x <= 0 || y <= 0) { + bullet && + ((bullet.src = self.PicArr[4]), + (bullet.style.transform = `rotate(0deg)`), + oSym.addTask(120, ClearChild, [ + bullet, + ])); + return; + } + oSym.addTask(1, drawFrame); + } + last = [x, y]; + })(); + } + last = [x, y]; + })(); + }); + }, + }), + oLing = InheritO(oWallNut, { + EName: "oLing", + CName: "Water-nut", + width: 90, + height: 72, + beAttackedPointL: 15, + beAttackedPointR: 80, + BookHandBack: 4.9, + HP: 1e4, + getShadow: function (a) { + return "display:none"; + }, + PicArr: [ + "images/Card/Plants/Ling.png", + "images/Plants/Ling/0.gif", + "images/Plants/Ling/Ling.gif", + ], + Tooltip: "Nanhu Ling is the first obstacle in the water", + Produce: + 'Nanhu Ling is the first obstacle in the water

Toughness:high

Look, how big is a cashew nut?
He said, but he didnt care. In Nanhulings head, every day only
think about one thing"If Qianlong didnt open the golden mouth, I wouldnt be able to use it
Horn to stab zombies? !"', + CanGrow: function (c, b, d) { + var a = b + "_" + d; + return !( + d < 1 || + d > 9 || + oGd.$LF[b] - 2 || + c[0] || + c[1] || + oGd.$Crater[a] || + oGd.$Tombstones[a] + ); + }, + getHurt: function (e, b, a) { + var c = this, + d = $(c.id).childNodes[1]; + !(b % 3) + ? (c.HP -= a) < 1 + ? c.Die() + : c.HP < 1334 + ? c.HurtStatus < 2 && + ((c.HurtStatus = 2), + (d.src = "images/Plants/Ling/Ling.gif")) + : c.HP < 2667 && + c.HurtStatus < 1 && + ((c.HurtStatus = 1), + (d.src = "images/Plants/Ling/Ling.gif")) + : c.Die(1); + }, + }), + oNutBowling = InheritO(CPlants, { + EName: "oNutBowling", + CName: "Wall-nut", + width: 71, + height: 71, + beAttackedPointL: 10, + beAttackedPointR: 61, + SunNum: 0, + HP: 4e3, + coolTime: 0, + canEat: 0, + Tooltip: "", + PicArr: [ + "images/Card/Plants/WallNut.png", + "images/Plants/WallNut/0.gif", + "images/Plants/WallNut/WallNutRoll.gif", + ], + AudioArr: ["bowling", "bowlingimpact", "bowlingimpact2"], + Produce: "", + CanAttack: 1, + InitTrigger: function () {}, + getHurt: function () {}, + CanGrow: function (d, e, f) { + return true; + }, + NormalAttack: null, + PrivateBirth: function (c) { + var d = $(c.id); + PlayAudio("bowling"); + (function (z, y, q, r, p, x, e, g, b) { + var a = z.R, + l = z.C, + A, + u, + s, + v = 0, + w, + i, + t = false; + if (z.CanAttack && (A = oZ.getZ0(r, a)) && A.getCrushed(z)) { + u = A.id; + PlayAudio( + ["bowlingimpact", "bowlingimpact2"][ + Math.floor(Math.random() * 2) + ] + ); + switch (A.Ornaments) { + case 0: + A.NormalDie(); + break; + case 1: + A.getHit0(A, Math.min(A.OrnHP, 900), 0); + break; + default: + z.side + ? A.Normaldie() + : A.CheckOrnHP( + A, + u, + A.OrnHP, + 400, + A.PicArr, + 0, + 0, + 0 + ); + } + z.CanAttack = 0; + switch (a) { + case oS.R: + e = -1; + break; + case 1: + e = 1; + break; + default: + switch (e) { + case 1: + e = -1; + break; + case -1: + e = 1; + break; + default: + e = Math.random() > 0.5 ? 1 : -1; + } + } + oSym.addTask(1, arguments.callee, [ + z, + y, + z.AttackedLX + 20, + z.AttackedRX + 20, + z.pixelLeft + 20, + x, + e, + g, + b, + ]); + } else { + switch (e) { + case 1: + z.pixelBottom + 2 > b && (e = -1); + break; + case -1: + z.pixelBottom - 2 < g && (e = 1); + break; + } + q > y + ? z.Die() + : ((i = GetC((z.pixelRight += 2))), + (z.AttackedLX = q += 2), + (z.AttackedRX = r += 2), + (w = GetR((z.pixelBottom += e * 2))), + SetStyle(x, { + left: (z.pixelLeft = p += 2) + "px", + top: (z.pixelTop += e * 2) + "px", + }), + w != a && + ((z.R = w), + (t = true), + !z.CanAttack && (z.CanAttack = 1)), + i != l && ((z.C = i), (t = true)), + t && + (oGd.del({ + R: a, + C: l, + PKind: 1, + }), + oGd.add(z, w + "_" + i + "_1")), + oSym.addTask(1, arguments.callee, [ + z, + y, + z.AttackedLX, + z.AttackedRX, + z.pixelLeft, + x, + e, + g, + b, + ])); + } + })( + c, + oS.W, + c.AttackedLX, + c.AttackedRX, + c.pixelLeft, + d, + 0, + GetY1Y2(1)[0], + 600 + ); + }, + }), + oHugeNutBowling = InheritO(oNutBowling, { + EName: "oHugeNutBowling", + CName: "Giant Wall-nut", + width: 142, + height: 142, + beAttackedPointL: 5, + beAttackedPointR: 137, + HP: 8e3, + Stature: 1, + PicArr: [ + "images/Card/Plants/HugeWallNut.png", + "images/Plants/WallNut/2.gif", + "images/Plants/WallNut/HugeWallNutRoll.gif", + ], + PrivateBirth: function (a) { + PlayAudio("bowling"); + (function (b, c, n, m, e, g) { + var d = oZ.getArZ(n, m, e), + f = d.length, + k, + j, + l = b.R, + h = b.C; + while (f--) { + (k = d[f]).getCrushed(b) && k.CrushDie(); + } + n > c + ? b.Die() + : ((j = GetC((b.pixelRight += 2))), + (b.AttackedLX = n += 2), + (b.AttackedRX = m += 2), + (g.style.left = (b.pixelLeft += 2) + "px"), + j != h && + ((b.C = j), + oGd.del({ + R: l, + C: h, + PKind: 1, + }), + oGd.add(b, l + "_" + j + "_1")), + oSym.addTask(1, arguments.callee, [b, c, n, m, e, g])); + })(a, oS.W, a.AttackedLX, a.AttackedRX, a.R, $(a.id)); + }, + }), + oBoomNutBowling = InheritO(oNutBowling, { + EName: "oBoomNutBowling", + CName: "Explode-o-nut", + PicArr: [ + "images/Card/Plants/BoomWallNut.png", + "images/Plants/WallNut/1.gif", + "images/Plants/WallNut/BoomWallNutRoll.gif", + "images/Plants/CherryBomb/Boom.gif", + ], + AudioArr: ["cherrybomb", "bowling"], + PrivateBirth: function (a) { + PlayAudio("bowling"); + (function (s, q, b, c, m) { + var v = s.R, + p = s.C, + t, + l; + if ((t = oZ.getZ0(c, v)) && t.getCrushed(s)) { + var j = v > 2 ? v - 1 : 1, + g = v < oS.R ? v + 1 : oS.R, + u = s.pixelLeft - 80, + r = s.pixelLeft + 160, + e, + k; + PlayAudio("cherrybomb"); + do { + k = (e = oZ.getArZ(u, r, j)).length; + while (k--) { + e[k].ExplosionDie(); + } + } while (j++ < g); + s.Die(1); + EditEle( + m.childNodes[1], + { + src: "images/Plants/CherryBomb/Boom.gif", + }, + { + width: "213px", + height: "160px", + left: "-50px", + top: "-30px", + } + ); + oSym.addTask(65, ClearChild, [m]); + } else { + b > q + ? s.Die() + : ((l = GetC((s.pixelRight += 2))), + (s.AttackedLX = b += 2), + (s.AttackedRX = c += 2), + SetStyle(m, { + left: (s.pixelLeft += 2) + "px", + }), + l != p && + ((s.C = l), + oGd.del({ + R: v, + C: p, + PKind: 1, + }), + oGd.add(s, v + "_" + l + "_1")), + oSym.addTask(1, arguments.callee, [ + s, + q, + s.AttackedLX, + s.AttackedRX, + m, + ])); + } + })(a, oS.W, a.AttackedLX, a.AttackedRX, $(a.id)); + }, + }), + oTallNut = InheritO(oWallNut, { + EName: "oTallNut", + CName: "Tall-nut", + width: 83, + height: 119, + beAttackedPointR: 63, + SunNum: 125, + HP: 8e3, + coolTime: 24.5, + PicArr: [ + "images/Card/Plants/TallNut.png", + "images/Plants/TallNut/0.gif", + "images/Plants/TallNut/TallNut.gif", + "images/Plants/TallNut/TallnutCracked1.gif", + "images/Plants/TallNut/TallnutCracked2.gif", + ], + Tooltip: "Heavy-duty wall that can't be vaulted over", + Produce: + '高坚果是重型壁垒植物,而且不会被跳过。

Toughness:非常高
特殊:不会被跨过或越过

人们想知道,坚果墙和高坚果是否在竞争。高
坚果以男中音的声调大声笑了。“我们之间怎么
会存在竞争关系?我们是哥们儿。你知道坚果墙
为我做了什么吗……”高坚果的声音越来越小,
他狡黠地笑着。”', + CanGrow: function (c, b, f) { + var a = b + "_" + f, + d = c[1], + e = oS.ArP; + return e + ? oGd.$LF[b] == 1 + ? f > 0 && + f < e.ArC[1] && + !(oGd.$Crater[a] || oGd.$Tombstones[a] || d) + : c[0] && !d + : d && d.EName == "oTallNut" + ? 1 + : oGd.$LF[b] == 1 + ? !(f < 1 || f > 9 || oGd.$Crater[a] || oGd.$Tombstones[a] || d) + : c[0] && !d; + }, + Stature: 1, + getHurt: function (e, b, a) { + var c = this, + d = $(c.id).childNodes[1]; + !(b % 3) + ? (c.HP -= a) < 1 + ? c.Die() + : c.HP < 2667 + ? c.HurtStatus < 2 && + ((c.HurtStatus = 2), + (d.src = "images/Plants/TallNut/TallnutCracked2.gif")) + : c.HP < 5333 && + c.HurtStatus < 1 && + ((c.HurtStatus = 1), + (d.src = "images/Plants/TallNut/TallnutCracked1.gif")) + : c.Die(1); + }, + }), + oSeedTallNut = InheritO(oWallNut, { + EName: "oSeedTallNut", + CName: "Tall-nut", + width: 83, + height: 119, + beAttackedPointR: 63, + SunNum: 0, + HP: 8e3, + coolTime: 24.5, + PicArr: [ + "images/Card/Plants/TallNut.png", + "images/Plants/TallNut/0.gif", + "images/Plants/TallNut/TallNut.gif", + "images/Plants/TallNut/TallnutCracked1.gif", + "images/Plants/TallNut/TallnutCracked2.gif", + ], + Tooltip: "Heavy-duty wall that can't be vaulted over", + Produce: + '高坚果是重型壁垒植物,而且不会被跳过。

Toughness:非常高
特殊:不会被跨过或越过

人们想知道,坚果墙和高坚果是否在竞争。高
坚果以男中音的声调大声笑了。“我们之间怎么
会存在竞争关系?我们是哥们儿。你知道坚果墙
为我做了什么吗……”高坚果的声音越来越小,
他狡黠地笑着。”', + CanGrow: function (c, b, f) { + var a = b + "_" + f, + d = c[1], + e = oS.ArP; + return e + ? oGd.$LF[b] == 1 + ? f > 0 && + f < e.ArC[1] && + !(oGd.$Crater[a] || oGd.$Tombstones[a] || d) + : c[0] && !d + : d && d.EName == "oTallNut" + ? 1 + : oGd.$LF[b] == 1 + ? !(f < 1 || f > 9 || oGd.$Crater[a] || oGd.$Tombstones[a] || d) + : c[0] && !d; + }, + Stature: 1, + getHurt: function (e, b, a) { + var c = this, + d = $(c.id).childNodes[1]; + !(b % 3) + ? (c.HP -= a) < 1 + ? c.Die() + : c.HP < 2667 + ? c.HurtStatus < 2 && + ((c.HurtStatus = 2), + (d.src = "images/Plants/TallNut/TallnutCracked2.gif")) + : c.HP < 5333 && + c.HurtStatus < 1 && + ((c.HurtStatus = 1), + (d.src = "images/Plants/TallNut/TallnutCracked1.gif")) + : c.Die(1); + }, + }), + oTenManNut = InheritO(CPlants, { + EName: "oTenManNut", + CName: "Vine-nut", + width: 155, + height: 130, + beAttackedPointL: 63, + beAttackedPointR: 75, + SunNum: 150, + HP: 11e3, + Stature: 1, + canEat: 1, + PicArr: [ + "images/Card/Plants/TenManNut.png", + "images/Plants/TenManNut/0.gif", + "images/Plants/TenManNut/Spikeweed.gif", + ], + Attack: 40, + ArZ: {}, + Tooltip: "Damages zombies that eat it", + Produce: + '能近距离攻击僵尸

Harm:普通
强度:非常高

大家一直在质疑高坚果和坚果的特殊关系,直
到高坚果找到了属于他的藤蔓,这种谣言才不
攻自散。', + getHurt: function (f, c, b) { + var e = this, + d, + a = $(e.id).childNodes[1]; + switch (c) { + case 2: + f.flatTire(); + break; + case 1: + f.getHit2(f, 40, 0); + } + switch (true) { + case (d = e.HP -= b) < 1: + e.Die(); + break; + case d < 101: + a.src = "images/Plants/TenManNut/Spikeweed.gif"; + break; + case d < 201: + a.src = "images/Plants/TenManNut/Spikeweed.gif"; + } + }, + NormalAttack: function (b, a) { + var c = $Z[b]; + c.getHit2(c, this.Attack, 0); + }, + getTriggerRange: function (a, b, c) { + return [[this.pixelLeft - 80, this.pixelRight + 80, 0]]; + }, + TriggerCheck: function (i, h) { + var c = i.id, + g = this.ArZ, + a, + b, + e, + f; + i.PZ && + !g[c] && + ((a = i.AttackedLX), + (b = i.AttackedRX), + (e = this.AttackedLX), + (f = this.AttackedRX), + (a <= f && a >= e) || + (b <= f && b >= e) || + (a <= e && b >= f)) && + this.AttackCheck2(i) && + ((g[c] = 1), + this.NormalAttack(c), + oSym.addTask( + 100, + function (d, j) { + var k = $P[d]; + k && delete k.ArZ[j]; + }, + [this.id, c] + )); + }, + AttackCheck2: function (a) { + return a.Altitude == 1 && a.beAttacked; + }, + }), + oCherryBomb = InheritO(CPlants, { + EName: "oCherryBomb", + CName: "Cherry Bomb", + width: 112, + height: 81, + beAttackedPointR: 92, + SunNum: 150, + coolTime: 20, + PicArr: [ + "images/Card/Plants/CherryBomb.png", + "images/Plants/CherryBomb/0.gif", + "images/Plants/CherryBomb/CherryBomb.gif", + "images/Plants/CherryBomb/Boom.gif" + $Random, + ], + AudioArr: ["cherrybomb"], + Tooltip: "Blows up all zombies in an area", + Produce: + 'Cherry bomb can blow up all zombies in a certain area.
One will detonate immediately. So please plant them on zombies
around them.

Harm:huge
Scope:All zombies in a medium area
Instructions:Instant use, it explodes immediately

“I am going to explode. "Cherry No. 1 said. "No, we are
‘炸’开了!”Said its brother Cherry No. 2. After intense discussion
After discussion, they finally agreed on the term "explosion."”', + InitTrigger: function () {}, + getHurt: function () {}, + PrivateBirth: function (a) { + oSym.addTask( + 40, + function (b) { + var c = $P[b]; + if (c) { + PlayAudio("cherrybomb"); + var f = $(b), + j = c.R, + g = j > 2 ? j - 1 : 1, + e = j < oS.R ? j + 1 : oS.R, + l = c.pixelLeft - 80, + k = c.pixelLeft + 160, + d, + h; + do { + h = (d = oZ.getArZ(l, k, g)).length; + while (h--) { + d[h].getExplosion(); + } + } while (g++ < e); + c.Die(1); + EditEle( + f.childNodes[1], + { + src: c.PicArr[3] + Math.random(), + }, + { + width: "213px", + height: "196px", + left: "-50px", + top: "-37px", + } + ); + oSym.addTask(120, ClearChild, [f]); + } + }, + [a.id] + ); + }, + }), + oSeedCherryBomb = InheritO(CPlants, { + EName: "oSeedCherryBomb", + CName: "Cherry Bomb", + width: 112, + height: 81, + beAttackedPointR: 92, + SunNum: 0, + coolTime: 20, + PicArr: [ + "images/Card/Plants/CherryBomb.png", + "images/Plants/CherryBomb/0.gif", + "images/Plants/CherryBomb/CherryBomb.gif", + "images/Plants/CherryBomb/Boom.gif" + $Random, + ], + AudioArr: ["cherrybomb"], + Tooltip: "Blows up all zombies in an area", + Produce: + 'Cherry bomb can blow up all zombies in a certain area.
One will detonate immediately. So please plant them on zombies
around them.

Harm:huge
Scope:All zombies in a medium area
Instructions:Instant use, it explodes immediately

“I am going to explode. "Cherry No. 1 said. "No, we are
‘炸’开了!”Said its brother Cherry No. 2. After intense discussion
After discussion, they finally agreed on the term "explosion."”', + InitTrigger: function () {}, + getHurt: function () {}, + PrivateBirth: function (a) { + oSym.addTask( + 40, + function (b) { + var c = $P[b]; + if (c) { + PlayAudio("cherrybomb"); + var f = $(b), + j = c.R, + g = j > 2 ? j - 1 : 1, + e = j < oS.R ? j + 1 : oS.R, + l = c.pixelLeft - 80, + k = c.pixelLeft + 160, + d, + h; + do { + h = (d = oZ.getArZ(l, k, g)).length; + while (h--) { + d[h].getExplosion(); + } + } while (g++ < e); + c.Die(1); + EditEle( + f.childNodes[1], + { + src: c.PicArr[3] + Math.random(), + }, + { + width: "213px", + height: "196px", + left: "-50px", + top: "-37px", + } + ); + oSym.addTask(120, ClearChild, [f]); + } + }, + [a.id] + ); + }, + }), + oJalapeno = InheritO(oCherryBomb, { + EName: "oJalapeno", + CName: "Jalapeno", + width: 68, + height: 89, + SunNum: 125, + beAttackedPointR: 48, + PicArr: [ + "images/Card/Plants/Jalapeno.png", + "images/Plants/Jalapeno/0.gif", + "images/Plants/Jalapeno/Jalapeno.gif", + "images/Plants/Jalapeno/JalapenoAttack.gif", + ], + AudioArr: ["jalapeno"], + Tooltip: "Destroys an entire lane of zombies", + Produce: + '火爆辣椒可以摧毁一整条线上的敌人。

Harm:极高
Scope:整条线上的僵尸
用法:单独使用,立即生效

“嘎嘎嘎嘎嘎嘎嘎!!!”火爆辣椒说。他现在
不会爆炸,还不到时候,不过快了,喔~,快了快
了,快来了。他知道,他感受到了,他一生都是
在等待这个时刻!', + PrivateBirth: function (a) { + oSym.addTask( + 40, + function (j) { + var h = $P[j]; + if (h) { + PlayAudio("jalapeno"); + var b = $(j), + f = h.R, + c = oZ.getArZ(100, oS.W, f), + e = c.length, + g = oGd.$Ice[f], + d = oGd.$Crater; + while (e--) { + c[e].getExplosion(); + } + h.Die(1); + EditEle( + b.childNodes[1], + { + src: "images/Plants/Jalapeno/JalapenoAttack.gif", + }, + { + width: "755px", + height: "131px", + left: 120 - h.pixelLeft + "px", + top: "-42px", + } + ); + oSym.addTask(135, ClearChild, [b]); + ClearChild($("dIceCar" + f)); + if (g) { + for (e = g[1]; e < 11; e++) { + delete d[f + "_" + e]; + } + } + } + }, + [a.id] + ); + }, + }), + oSeedJalapeno = InheritO(oCherryBomb, { + EName: "oSeedJalapeno", + CName: "Jalapeno", + width: 68, + height: 89, + SunNum: 0, + beAttackedPointR: 48, + PicArr: [ + "images/Card/Plants/Jalapeno.png", + "images/Plants/Jalapeno/0.gif", + "images/Plants/Jalapeno/Jalapeno.gif", + "images/Plants/Jalapeno/JalapenoAttack.gif", + ], + AudioArr: ["jalapeno"], + Tooltip: "Destroys an entire lane of zombies", + Produce: + '火爆辣椒可以摧毁一整条线上的敌人。

Harm:极高
Scope:整条线上的僵尸
用法:单独使用,立即生效

“嘎嘎嘎嘎嘎嘎嘎!!!”火爆辣椒说。他现在
不会爆炸,还不到时候,不过快了,喔~,快了快
了,快来了。他知道,他感受到了,他一生都是
在等待这个时刻!', + PrivateBirth: function (a) { + oSym.addTask( + 40, + function (j) { + var h = $P[j]; + if (h) { + PlayAudio("jalapeno"); + var b = $(j), + f = h.R, + c = oZ.getArZ(100, oS.W, f), + e = c.length, + g = oGd.$Ice[f], + d = oGd.$Crater; + while (e--) { + c[e].getExplosion(); + } + h.Die(1); + EditEle( + b.childNodes[1], + { + src: "images/Plants/Jalapeno/JalapenoAttack.gif", + }, + { + width: "755px", + height: "131px", + left: 120 - h.pixelLeft + "px", + top: "-42px", + } + ); + oSym.addTask(135, ClearChild, [b]); + ClearChild($("dIceCar" + f)); + if (g) { + for (e = g[1]; e < 11; e++) { + delete d[f + "_" + e]; + } + } + } + }, + [a.id] + ); + }, + }), + oSpikeweed = InheritO(CPlants, { + EName: "oSpikeweed", + CName: "Spikeweed", + width: 85, + height: 35, + beAttackedPointL: 10, + beAttackedPointR: 75, + SunNum: 100, + Stature: -1, + canEat: 0, + PicArr: [ + "images/Card/Plants/Spikeweed.png", + "images/Plants/Spikeweed/0.gif", + "images/Plants/Spikeweed/Spikeweed.gif", + ], + Attack: 20, + ArZ: {}, + Tooltip: "Pops tires and hurts zombies that step on it", + Produce: + '地刺可以扎破轮胎,并对踩到他的僵尸造成伤

Harm:普通
Scope:所有踩到他的僵尸
Features:不会被僵尸吃掉

地刺痴迷冰球,他买了包厢的季票。他一直关
注着他喜欢的球员,他也始终如一的在赛后清理
冰球场。但只有一个问题:他害怕冰球。', + CanGrow: function (c, b, e) { + var a = b + "_" + e, + d = oS.ArP; + return d + ? e > 0 && e < d.ArC[1] && oGd.$LF[b] == 1 && !(c[1] || c[0]) + : !( + e < 1 || + e > 9 || + oGd.$LF[b] - 1 || + c[1] || + c[0] || + oGd.$Crater[a] || + oGd.$Tombstones[a] + ); + }, + getHurt: function (d, b, a) { + var c = this; + switch (b) { + case 2: + d.flatTire(); + c.Die(); + break; + case 1: + d.getHit2(d, 20, 0); + c.Die(); + break; + default: + (c.HP -= a) < 1 && c.Die(); + } + }, + NormalAttack: function (b, a) { + var c = $Z[b]; + c.getHit2(c, this.Attack, 0); + }, + GetDY: function (b, c, a) { + return -2; + }, + getTriggerRange: function (a, b, c) { + return [[this.pixelLeft - 80, this.pixelRight + 80, 0]]; + }, + TriggerCheck: function (i, h) { + var c = i.id, + g = this.ArZ, + a, + b, + e, + f; + i.PZ && + !g[c] && + ((a = i.AttackedLX), + (b = i.AttackedRX), + (e = this.AttackedLX), + (f = this.AttackedRX), + (a <= f && a >= e) || + (b <= f && b >= e) || + (a <= e && b >= f)) && + this.AttackCheck2(i) && + ((g[c] = 1), + this.NormalAttack(c), + oSym.addTask( + 100, + function (d, j) { + var k = $P[d]; + k && delete k.ArZ[j]; + }, + [this.id, c] + )); + }, + AttackCheck2: function (a) { + return a.Altitude == 1 && a.beAttacked; + }, + }), + oSeedSpikeweed = InheritO(CPlants, { + EName: "oSeedSpikeweed", + CName: "Spikeweed", + width: 85, + height: 35, + beAttackedPointL: 10, + beAttackedPointR: 75, + SunNum: 0, + Stature: -1, + canEat: 0, + PicArr: [ + "images/Card/Plants/Spikeweed.png", + "images/Plants/Spikeweed/0.gif", + "images/Plants/Spikeweed/Spikeweed.gif", + ], + Attack: 20, + ArZ: {}, + Tooltip: "Pops tires and hurts zombies that step on it", + Produce: + '地刺可以扎破轮胎,并对踩到他的僵尸造成伤

Harm:普通
Scope:所有踩到他的僵尸
Features:不会被僵尸吃掉

地刺痴迷冰球,他买了包厢的季票。他一直关
注着他喜欢的球员,他也始终如一的在赛后清理
冰球场。但只有一个问题:他害怕冰球。', + CanGrow: function (c, b, e) { + var a = b + "_" + e, + d = oS.ArP; + return d + ? e > 0 && e < d.ArC[1] && oGd.$LF[b] == 1 && !(c[1] || c[0]) + : !( + e < 1 || + e > 9 || + oGd.$LF[b] - 1 || + c[1] || + c[0] || + oGd.$Crater[a] || + oGd.$Tombstones[a] + ); + }, + getHurt: function (d, b, a) { + var c = this; + switch (b) { + case 2: + d.flatTire(); + c.Die(); + break; + case 1: + d.getHit2(d, 20, 0); + c.Die(); + break; + default: + (c.HP -= a) < 1 && c.Die(); + } + }, + NormalAttack: function (b, a) { + var c = $Z[b]; + c.getHit2(c, this.Attack, 0); + }, + GetDY: function (b, c, a) { + return -2; + }, + getTriggerRange: function (a, b, c) { + return [[this.pixelLeft - 80, this.pixelRight + 80, 0]]; + }, + TriggerCheck: function (i, h) { + var c = i.id, + g = this.ArZ, + a, + b, + e, + f; + i.PZ && + !g[c] && + ((a = i.AttackedLX), + (b = i.AttackedRX), + (e = this.AttackedLX), + (f = this.AttackedRX), + (a <= f && a >= e) || + (b <= f && b >= e) || + (a <= e && b >= f)) && + this.AttackCheck2(i) && + ((g[c] = 1), + this.NormalAttack(c), + oSym.addTask( + 100, + function (d, j) { + var k = $P[d]; + k && delete k.ArZ[j]; + }, + [this.id, c] + )); + }, + AttackCheck2: function (a) { + return a.Altitude == 1 && a.beAttacked; + }, + }), + oSpikerock = InheritO(oSpikeweed, { + EName: "oSpikerock", + CName: "Spikerock", + width: 84, + height: 43, + beAttackedPointL: 10, + beAttackedPointR: 74, + SunNum: 125, + PicArr: [ + "images/Card/Plants/Spikerock.png", + "images/Plants/Spikerock/0.gif", + "images/Plants/Spikerock/Spikerock.gif", + "images/Plants/Spikerock/2.gif", + "images/Plants/Spikerock/3.gif", + ], + Attack: 40, + Tooltip: + 'Pops multiple tires and damages zombies that walk over it

(requires spikeweed)', + Produce: + '地刺王可以扎破多个轮胎,并对踩到他的僵尸
造成伤害。

可以种植在地刺上

地刺王刚刚从欧洲旅行回来。他玩的很高兴,
也认识了很多有趣的人。这些都真的拓展了他
视野——他从来不知道,他们建造了这么大博
物馆,有这么多的画作。这对他说太惊奇了。', + CanGrow: function (b, a, d) { + var c = b[1]; + return c && c.EName == "oSpikeweed"; + }, + GetDY: function (b, c, a) { + return 0; + }, + getHurt: function (f, c, b) { + var e = this, + d, + a = $(e.id).childNodes[1]; + switch (c) { + case 2: + f.flatTire(); + break; + case 1: + f.getHit2(f, 40, 0); + } + switch (true) { + case (d = e.HP -= b) < 1: + e.Die(); + break; + case d < 101: + a.src = "images/Plants/Spikerock/3.gif"; + break; + case d < 201: + a.src = "images/Plants/Spikerock/2.gif"; + } + }, + }), + oGarlic = InheritO(CPlants, { + EName: "oGarlic", + CName: "Garlic", + width: 60, + height: 59, + beAttackedPointR: 40, + SunNum: 50, + HP: 400, + PicArr: [ + "images/Card/Plants/Garlic.png", + "images/Plants/Garlic/0.gif", + "images/Plants/Garlic/Garlic.gif", + "images/Plants/Garlic/Garlic_body2.gif", + "images/Plants/Garlic/Garlic_body3.gif", + ], + Tooltip: "Diverts zombies into other lanes", + Produce: + '大蒜可以让僵尸改变前进的路线。

Scope:近距离接触
Features:改变僵尸的前进路线

路线转向,这不仅仅是大蒜的专业,更是他
的热情所在。他在布鲁塞尔大学里,获得了转向
学的博士学位。他能把路线向量和反击阵列,讲
上一整天。他甚至会把家里的东西,推到街上去
。不知道为啥,他老婆还可以忍受这些。', + CanGrow: function (c, b, f) { + var a = b + "_" + f, + d = c[1], + e = oS.ArP; + return e + ? oGd.$LF[b] == 1 + ? f > 0 && + f < e.ArC[1] && + !(oGd.$Crater[a] || oGd.$Tombstones[a] || d) + : c[0] && !d + : d && d.EName == "oGarlic" + ? 1 + : oGd.$LF[b] == 1 + ? !(f < 1 || f > 9 || oGd.$Crater[a] || oGd.$Tombstones[a] || d) + : c[0] && !d; + }, + InitTrigger: function () {}, + HurtStatus: 0, + getHurt: function (e, b, a) { + let yuckrng = Math.floor(Math.random() * 2) + 1; // note the uppercase M in Math + if (yuckrng == 1) { + PlayAudio("yuck"); + } else if (yuckrng == 2) { + PlayAudio("yuck2"); + } + var c = this, + d = $(c.id).childNodes[1]; + !(b % 3) + ? (c.HP -= 20) < 1 + ? c.Die() + : (e.ChangeR({ + R: c.R, + }), + c.HP < 134 + ? c.HurtStatus < 2 && + ((c.HurtStatus = 2), + (d.src = "images/Plants/Garlic/Garlic_body3.gif")) + : c.HP < 267 && + c.HurtStatus < 1 && + ((c.HurtStatus = 1), + (d.src = + "images/Plants/Garlic/Garlic_body2.gif"))) + : c.Die(1); + }, + }), + oSeedGarlic = InheritO(CPlants, { + EName: "oSeedGarlic", + CName: "Garlic", + width: 60, + height: 59, + beAttackedPointR: 40, + SunNum: 0, + HP: 400, + PicArr: [ + "images/Card/Plants/Garlic.png", + "images/Plants/Garlic/0.gif", + "images/Plants/Garlic/Garlic.gif", + "images/Plants/Garlic/Garlic_body2.gif", + "images/Plants/Garlic/Garlic_body3.gif", + ], + Tooltip: "Diverts zombies into other lanes", + Produce: + '大蒜可以让僵尸改变前进的路线。

Scope:近距离接触
Features:改变僵尸的前进路线

路线转向,这不仅仅是大蒜的专业,更是他
的热情所在。他在布鲁塞尔大学里,获得了转向
学的博士学位。他能把路线向量和反击阵列,讲
上一整天。他甚至会把家里的东西,推到街上去
。不知道为啥,他老婆还可以忍受这些。', + CanGrow: function (c, b, f) { + var a = b + "_" + f, + d = c[1], + e = oS.ArP; + return e + ? oGd.$LF[b] == 1 + ? f > 0 && + f < e.ArC[1] && + !(oGd.$Crater[a] || oGd.$Tombstones[a] || d) + : c[0] && !d + : d && d.EName == "oGarlic" + ? 1 + : oGd.$LF[b] == 1 + ? !(f < 1 || f > 9 || oGd.$Crater[a] || oGd.$Tombstones[a] || d) + : c[0] && !d; + }, + InitTrigger: function () {}, + HurtStatus: 0, + getHurt: function (e, b, a) { + let yuckrng = Math.floor(Math.random() * 2) + 1; // note the uppercase M in Math + if (yuckrng == 1) { + PlayAudio("yuck"); + } else if (yuckrng == 2) { + PlayAudio("yuck2"); + } + var c = this, + d = $(c.id).childNodes[1]; + !(b % 3) + ? (c.HP -= 20) < 1 + ? c.Die() + : (e.ChangeR({ + R: c.R, + }), + c.HP < 134 + ? c.HurtStatus < 2 && + ((c.HurtStatus = 2), + (d.src = "images/Plants/Garlic/Garlic_body3.gif")) + : c.HP < 267 && + c.HurtStatus < 1 && + ((c.HurtStatus = 1), + (d.src = + "images/Plants/Garlic/Garlic_body2.gif"))) + : c.Die(1); + }, + }), + oSquash = InheritO(CPlants, { + EName: "oSquash", + CName: "Squash", + width: 100, + height: 226, + beAttackedPointR: 67, + SunNum: 50, + PicArr: [ + "images/Card/Plants/Squash.png", + "images/Plants/Squash/0.gif", + "images/Plants/Squash/Squash.gif", + "images/Plants/Squash/SquashAttack.gif", + "images/Plants/Squash/SquashL.png", + "images/Plants/Squash/SquashR.png", + ], + AudioArr: ["squash_hmm", "gargantuar_thump"], + Tooltip: "Squashes zombies", + Produce: + '窝瓜会压扁第一个接近它的僵尸。

Harm:极高
Scope:短,覆盖所有它压到的僵尸。
用法:单独使用

“我准备好了!”窝瓜大吼道,“干吧!!算我
一份!没人比我厉害!我就是你要的人!来啊!
等啥啊?要的就是这个!”', + GetDY: function (b, c, a) { + return a[0] ? -21 : -10; + }, + getHurt: function (d, b, a) { + var c = this; + b != 3 + ? c.NormalAttack( + c, + d.id, + d.ZX + d.Speed * 4 * (!d.WalkDirection ? -1 : 1) - 50 + ) + : (c.HP -= a) < 1 && c.Die(); + }, + getTriggerRange: function (a, b, c) { + return [[b - 50, c + 80, 0]]; + }, + TriggerCheck: function (h, g, e) { + var c = h.ZX, + b = this.id, + a = $(b).childNodes[1], + f = h.isAttacking; + h.beAttacked && + h.Altitude > -1 && + h.Altitude < 2 && + (f || (!f && c - this.AttackedRX < 71)) && + (PlayAudio("squash_hmm"), + oT.$[this.R].splice(e, 1), + (a.src = + c > this.AttackedRX + ? "images/Plants/Squash/SquashR.png" + : "images/Plants/Squash/SquashL.png"), + oSym.addTask( + 100, + function (d, j, i) { + var k = $P[d]; + k && k.NormalAttack(k, h.id, i); + }, + [ + b, + h.id, + h.ZX + h.Speed * 4 * (!h.WalkDirection ? -1 : 1) - 50, + ] + )); + }, + NormalAttack: function (d, c, b) { + var a = $(d.id), + e = $Z[c]; + e && (b = e.ZX + e.Speed * 4 * (!e.WalkDirection ? -1 : 1) - 50); + a.childNodes[1].src = + "images/Plants/Squash/SquashAttack.gif" + + $Random + + Math.random(); + SetStyle(a, { + left: b + "px", + }); + d.Die(1); + oSym.addTask( + 45, + function (f, l, j) { + PlayAudio("gargantuar_thump"); + var g = oZ.getArZ(l, l + 100, j), + h = g.length, + k; + while (h--) { + (k = g[h]).Altitude > -1 && + k.PZ && + k.Altitude < 3 && + k.getThump(); + } + oSym.addTask(185, ClearChild, [f]); + }, + [a, b, d.R] + ); + }, + }), + oSeedSquash = InheritO(CPlants, { + EName: "oSeedSquash", + CName: "Squash", + width: 100, + height: 226, + beAttackedPointR: 67, + SunNum: 0, + PicArr: [ + "images/Card/Plants/Squash.png", + "images/Plants/Squash/0.gif", + "images/Plants/Squash/Squash.gif", + "images/Plants/Squash/SquashAttack.gif", + "images/Plants/Squash/SquashL.png", + "images/Plants/Squash/SquashR.png", + ], + AudioArr: ["squash_hmm", "gargantuar_thump"], + Tooltip: "Squashes zombies", + Produce: + '窝瓜会压扁第一个接近它的僵尸。

Harm:极高
Scope:短,覆盖所有它压到的僵尸。
用法:单独使用

“我准备好了!”窝瓜大吼道,“干吧!!算我
一份!没人比我厉害!我就是你要的人!来啊!
等啥啊?要的就是这个!”', + GetDY: function (b, c, a) { + return a[0] ? -21 : -10; + }, + getHurt: function (d, b, a) { + var c = this; + b != 3 + ? c.NormalAttack( + c, + d.id, + d.ZX + d.Speed * 4 * (!d.WalkDirection ? -1 : 1) - 50 + ) + : (c.HP -= a) < 1 && c.Die(); + }, + getTriggerRange: function (a, b, c) { + return [[b - 50, c + 80, 0]]; + }, + TriggerCheck: function (h, g, e) { + var c = h.ZX, + b = this.id, + a = $(b).childNodes[1], + f = h.isAttacking; + h.beAttacked && + h.Altitude > -1 && + h.Altitude < 2 && + (f || (!f && c - this.AttackedRX < 71)) && + (PlayAudio("squash_hmm"), + oT.$[this.R].splice(e, 1), + (a.src = + c > this.AttackedRX + ? "images/Plants/Squash/SquashR.png" + : "images/Plants/Squash/SquashL.png"), + oSym.addTask( + 100, + function (d, j, i) { + var k = $P[d]; + k && k.NormalAttack(k, h.id, i); + }, + [ + b, + h.id, + h.ZX + h.Speed * 4 * (!h.WalkDirection ? -1 : 1) - 50, + ] + )); + }, + NormalAttack: function (d, c, b) { + var a = $(d.id), + e = $Z[c]; + e && (b = e.ZX + e.Speed * 4 * (!e.WalkDirection ? -1 : 1) - 50); + a.childNodes[1].src = + "images/Plants/Squash/SquashAttack.gif" + + $Random + + Math.random(); + SetStyle(a, { + left: b + "px", + }); + d.Die(1); + oSym.addTask( + 45, + function (f, l, j) { + PlayAudio("gargantuar_thump"); + var g = oZ.getArZ(l, l + 100, j), + h = g.length, + k; + while (h--) { + (k = g[h]).Altitude > -1 && + k.PZ && + k.Altitude < 3 && + k.getThump(); + } + oSym.addTask(185, ClearChild, [f]); + }, + [a, b, d.R] + ); + }, + }), + oChomper = InheritO(CPlants, { + EName: "oChomper", + CName: "Chomper", + width: 130, + height: 114, + beAttackedPointR: 70, + SunNum: 150, + AudioArr: ["bigchomp"], + PicArr: [ + "images/Card/Plants/Chomper.png", + "images/Plants/Chomper/0.gif", + "images/Plants/Chomper/Chomper.gif", + "images/Plants/Chomper/ChomperAttack.gif", + "images/Plants/Chomper/ChomperDigest.gif", + ], + Tooltip: "Devours a zombie whole, but is vulnerable while chewing", + Produce: + 'Big-mouthed flowers can swallow a whole zombie in one bite, but they are very fragile when digesting zombies.

Harm:huge
Scope:very close
Features:Digestion takes a long time

Big Mouth Flower can almost go to "Little Shop of Horrors"”,to perform its absolute best
Skilled, but his agent squeezed him too much money.
Because he didnt go. Despite this, Dazuihua has no complaints, only
Said it was just part of the deal.', + GetDX: function () { + return -40; + }, + getShadow: function (a) { + return "top:" + (a.height - 22) + "px"; + }, + getTriggerRange: function (a, b, c) { + return [[this.pixelLeft, c + 80, 0]]; + }, + TriggerCheck: function (a) { + this.AttackCheck2(a) && + ((this.canTrigger = 0), this.NormalAttack(this.id, a.id)); + }, + AttackCheck2: function (a) { + return a.Altitude == 1 && a.beAttacked; + }, + NormalAttack: function (a, b) { + $(a).childNodes[1].src = + "images/Plants/Chomper/ChomperAttack.gif" + + $Random + + Math.random(); + oSym.addTask( + 70, + function (c, d) { + PlayAudio("bigchomp"); + $P[c] && + oSym.addTask( + 18, + function (e, f) { + var g = $P[e], + h; + g && + ((h = $Z[f]) && h.beAttacked && h.PZ + ? ($(e).childNodes[1].src = h.getRaven( + e + ) + ? (oSym.addTask( + 4200, + function (i) { + var j = $P[i]; + j && + ((j.canTrigger = 1), + ($( + i + ).childNodes[1].src = + "images/Plants/Chomper/Chomper.gif")); + }, + [e] + ), + "images/Plants/Chomper/ChomperDigest.gif") + : ((g.canTrigger = 1), + "images/Plants/Chomper/Chomper.gif")) + : oSym.addTask( + 18, + function (i) { + var j = $P[i]; + j && + ((j.canTrigger = 1), + ($( + i + ).childNodes[1].src = + "images/Plants/Chomper/Chomper.gif")); + }, + [e] + )); + }, + [c, d] + ); + }, + [a, b] + ); + }, + }), + oSeedChomper = InheritO(CPlants, { + EName: "oSeedChomper", + CName: "Chomper", + width: 130, + height: 114, + beAttackedPointR: 70, + SunNum: 0, + AudioArr: ["bigchomp"], + PicArr: [ + "images/Card/Plants/Chomper.png", + "images/Plants/Chomper/0.gif", + "images/Plants/Chomper/Chomper.gif", + "images/Plants/Chomper/ChomperAttack.gif", + "images/Plants/Chomper/ChomperDigest.gif", + ], + Tooltip: "Devours a zombie whole, but is vulnerable while chewing", + Produce: + 'Big-mouthed flowers can swallow a whole zombie in one bite, but they are very fragile when digesting zombies.

Harm:huge
Scope:very close
Features:Digestion takes a long time

Big Mouth Flower can almost go to "Little Shop of Horrors"”,to perform its absolute best
Skilled, but his agent squeezed him too much money.
Because he didnt go. Despite this, Dazuihua has no complaints, only
Said it was just part of the deal.', + GetDX: function () { + return -40; + }, + getShadow: function (a) { + return "top:" + (a.height - 22) + "px"; + }, + getTriggerRange: function (a, b, c) { + return [[this.pixelLeft, c + 80, 0]]; + }, + TriggerCheck: function (a) { + this.AttackCheck2(a) && + ((this.canTrigger = 0), this.NormalAttack(this.id, a.id)); + }, + AttackCheck2: function (a) { + return a.Altitude == 1 && a.beAttacked; + }, + NormalAttack: function (a, b) { + $(a).childNodes[1].src = + "images/Plants/Chomper/ChomperAttack.gif" + + $Random + + Math.random(); + oSym.addTask( + 70, + function (c, d) { + PlayAudio("bigchomp"); + $P[c] && + oSym.addTask( + 18, + function (e, f) { + var g = $P[e], + h; + g && + ((h = $Z[f]) && h.beAttacked && h.PZ + ? ($(e).childNodes[1].src = h.getRaven( + e + ) + ? (oSym.addTask( + 4200, + function (i) { + var j = $P[i]; + j && + ((j.canTrigger = 1), + ($( + i + ).childNodes[1].src = + "images/Plants/Chomper/Chomper.gif")); + }, + [e] + ), + "images/Plants/Chomper/ChomperDigest.gif") + : ((g.canTrigger = 1), + "images/Plants/Chomper/Chomper.gif")) + : oSym.addTask( + 18, + function (i) { + var j = $P[i]; + j && + ((j.canTrigger = 1), + ($( + i + ).childNodes[1].src = + "images/Plants/Chomper/Chomper.gif")); + }, + [e] + )); + }, + [c, d] + ); + }, + [a, b] + ); + }, + }), + oBigChomper = InheritO(oChomper, { + EName: "oBigChomper", + CName: "Super Chomper", + coolTime: 15, + PicArr: [ + "images/Card/Plants/BigChomper.png", + "images/Plants/BigChomper/0.gif", + "images/Plants/BigChomper/Chomper.gif", + "images/Plants/BigChomper/ChomperAttack.gif", + "images/Plants/BigChomper/ChomperDigest.gif", + ], + Tooltip: + "Can devour multiple zombie whole at once, but is vulnerable while rapidly chewing", + Produce: + '超级大嘴花能一口气吞下一只僵尸, 并且咀嚼速
度是普通大嘴花的50%。

Harm:巨大
Scope:非常近
Features:咀嚼时间短

超级大嘴花曾经是电视节目“超级大胃王”节
目的常客,但后来他被踢出了节目组,原因是
它的存在直接影响到观众的饮食量和节目收视
率。没办法,为了糊口他只得干起吞食僵尸行
动。', + /* +CanGrow: function(b, a, d) { +var c = b[1]; +return c && c.EName == "oChomper" +}, +*/ +<<<<<<< HEAD + NormalAttack: function (a, b) { + $(a).childNodes[1].src = + "images/Plants/BigChomper/ChomperAttack.gif" + + $Random + + Math.random(); + oSym.addTask( + 70, + function (c, d) { + PlayAudio("bigchomp"); + $P[c] && + oSym.addTask( + 9, + function (e, f) { + var g = $P[e], + h; + g && + ((h = $Z[f]) && h.beAttacked && h.PZ + ? ($(e).childNodes[1].src = h.getRaven( + e + ) + ? (oSym.addTask( + 2100, + function (i) { + var j = $P[i]; + j && + ((j.canTrigger = 1), + ($( + i + ).childNodes[1].src = + "images/Plants/BigChomper/Chomper.gif")); + }, + [e] + ), + "images/Plants/BigChomper/ChomperDigest.gif") + : ((g.canTrigger = 1), + "images/Plants/BigChomper/Chomper.gif")) + : oSym.addTask( + 9, + function (i) { + var j = $P[i]; + j && + ((j.canTrigger = 1), + ($(i).childNodes[1].src = + "images/Plants/BigChomper/Chomper.gif")); + }, + [e] + )); + }, + [c, d] + ); + }, + [a, b] + ); }, + }), + oFumeShroom = InheritO(CPlants, { + EName: "oFumeShroom", + CName: "Fume-shroom", + width: 100, + height: 88, + beAttackedPointR: 80, + SunNum: 75, + BookHandBack: 2.5, + SleepGif: 3, + night: true, + PicArr: [ + "images/Card/Plants/FumeShroom.png", + "images/Plants/FumeShroom/0.gif", + "images/Plants/FumeShroom/FumeShroom.gif", + "images/Plants/FumeShroom/FumeShroomSleep.gif", + "images/Plants/FumeShroom/FumeShroomAttack.gif", + "images/Plants/FumeShroom/FumeShroomBullet.gif", + ], + AudioArr: ["fume"], + Tooltip: "Shoots fumes that can pass through screen doors", + Produce: + '大喷菇喷出的臭气可以穿透铁丝网门。

Harm:普通,可穿透铁丝网门
Scope:臭气中的所有僵尸
白天睡觉

“我以前那份没前途的工作,是为一个面包房
生产酵母孢,”大喷菇说。“然后小喷菇,上帝
保佑它,告诉了我这个喷杀僵尸的机会。现在
我真觉得自己完全不同了。”', GetDY: function (b, c, a) { - return a[0] ? -21 : -15; + return a[0] ? -18 : -10; }, GetDX: function () { - return -Math.floor(this.width * 0.5); - }, - GetDBottom: function () { - return this.height; - }, - Birth: function (d, c, h, a, m, n) { - var e = this, - k = d + e.GetDX(), - i = c + e.GetDY(h, a, m), - l = e.prototype, - g = i - e.height, - b = (e.id = "P_" + Math.random()), - j = (e.zIndex += 3 * h), - f = NewEle(0, "div", "position:absolute"); - NewImg(0, ShadowPNG, e.getShadow(e), f); - NewImg(0, e.PicArr[e.NormalGif], "", f); - e.pixelLeft = k; - e.pixelRight = k + e.width; - e.pixelTop = g; - e.pixelBottom = g + e.GetDBottom(); - e.opacity = 1; - e.InitTrigger( - e, - b, - (e.R = h), - (e.C = a), - (e.AttackedLX = k + e.beAttackedPointL), - (e.AttackedRX = k + e.beAttackedPointR) - ); - $P[b] = e; - $P.length += 1; - e.BirthStyle( - e, - b, - f, - { - left: k + "px", - top: g + "px", - zIndex: j, - }, - n - ); - oGd.add(e, h + "_" + a + "_" + e.PKind); - e.PrivateBirth(e, n); - }, - getShadow: function (a) { - return ( - "left:" + - (a.width * 0.5 - 48) + - "px;top:" + - (a.height - 22) + - "px" - ); + return -45; }, BirthStyle: function (c, d, b, a) { + oS.DKind && + ((c.canTrigger = 0), + (c.Sleep = 1), + (b.childNodes[1].src = c.PicArr[c.SleepGif])); EditEle( b, { @@ -107,117 +5827,103 @@ var CPlants = NewO({ EDPZ ); }, - PrivateBirth: function (a) {}, - getTriggerRange: function (a, b, c) { - return [[b, oS.W, 0]]; - }, - getTriggerR: function (a) { - return [a, a]; - }, - InitTrigger: function (c, b, f, a, h, g) { - var j = {}, - i = c.getTriggerR(f), - e = i[0], - d = i[1]; - do { - oT.add(e, (j[e] = c.getTriggerRange(e, h, g)), b); - } while (e++ != d); - c.oTrigger = j; - }, - TriggerCheck: function (b, a) { - this.AttackCheck2(b) && - ((this.canTrigger = 0), this.CheckLoop(b.id, a)); - }, - CheckLoop: function (b, c) { - var a = this.id; - this.NormalAttack(b); - oSym.addTask( - 140, - function (e, f, h) { - var g; - (g = $P[e]) && g.AttackCheck1(f, h); - }, - [a, b, c] + PrivateBirth: function (b) { + var a = b.id; + NewEle( + a + "_Bullet", + "div", + "position:absolute;visibility:hidden;width:343px;height:62px;left:" + + b.AttackedRX + + "px;top:" + + (b.pixelTop + 5) + + "px;background:url(images/Plants/FumeShroom/FumeShroomBullet.gif);z-index:" + + (b.zIndex + 1), + 0, + EDPZ ); }, - AttackCheck1: function (g, f) { - var b = this, - c = b.oTrigger, - a = $Z[g], - h, - e, - k, - j; - if (a && a.PZ && (h = c[a.R])) { - k = a.ZX; - e = h.length; - while (e--) { - j = h[e]; - if (j[0] <= k && j[1] >= k && b.AttackCheck2(a)) { - b.CheckLoop(g, j[2]); - return; - } - } - } - b.canTrigger = 1; - }, - AttackCheck2: function (a) { - return a.Altitude > 0; + PrivateDie: function (a) { + ClearChild($(a.id + "_Bullet")); }, - PrivateDie: function (a) {}, - BoomDie: function () { - var a = this, - b = a.id; - a.oTrigger && oT.delP(a); - a.HP = 0; - delete $P[b]; - delete oGd.$[a.R + "_" + a.C + "_" + a.PKind]; - $P.length -= 1; - ClearChild($(b)); - a.PrivateDie(a); + getTriggerRange: function (a, b, c) { + return [[b, Math.min(c + 330, oS.W), 0]]; }, - Die: function (a) { - var b = this, - c = b.id; - b.oTrigger && oT.delP(b); - b.HP = 0; - delete $P[c]; - delete oGd.$[b.R + "_" + b.C + "_" + b.PKind]; - $P.length -= 1; - !a && ClearChild($(c)); - b.PrivateDie(b); + NormalAttack: function () { + PlayAudio("fume"); + var f = this, + d = oZ.getArZ( + f.AttackedLX, + Math.min(f.AttackedRX + 330, oS.W), + f.R + ), + e = d.length, + g, + c = f.id, + b = $(c), + a = c + "_Bullet"; + while (e--) { + (g = d[e]).Altitude < 2 && g.getHit1(g, 20); + } + b.childNodes[1].src = + "images/Plants/FumeShroom/FumeShroomAttack.gif"; + SetVisible($(a)); + ImgSpriter( + a, + c, + [ + ["0 0", 9, 1], + ["0 -62px", 9, 2], + ["0 -124px", 9, 3], + ["0 -186px", 9, 4], + ["0 -248px", 9, 5], + ["0 -310px", 9, 6], + ["0 -372px", 9, 7], + ["0 -434px", 9, -1], + ], + 0, + function (i, j) { + var h = $(j); + $P[j] && + ((h.childNodes[1].src = + "images/Plants/FumeShroom/FumeShroom.gif"), + SetHidden($(i))); + } + ); }, }), - oGraveBuster = InheritO(CPlants, { - EName: "oGraveBuster", - CName: "Grave Buster", - width: 99, - height: 106, - beAttackedPointR: 70, - SunNum: 75, + oSeedFumeShroom = InheritO(CPlants, { + EName: "oSeedFumeShroom", + CName: "Fume-shroom", + width: 100, + height: 88, + beAttackedPointR: 80, + SunNum: 0, BookHandBack: 2.5, - canEat: 0, + SleepGif: 3, + night: true, PicArr: [ - "images/Card/Plants/GraveBuster.png", - "images/Plants/GraveBuster/0.gif", - "images/Plants/GraveBuster/GraveBuster.gif" + - $Random + - Math.random(), + "images/Card/Plants/FumeShroom.png", + "images/Plants/FumeShroom/0.gif", + "images/Plants/FumeShroom/FumeShroom.gif", + "images/Plants/FumeShroom/FumeShroomSleep.gif", + "images/Plants/FumeShroom/FumeShroomAttack.gif", + "images/Plants/FumeShroom/FumeShroomBullet.gif", ], - AudioArr: ["gravebusterchomp"], - CanGrow: function (b, a, d) { - var c = oS.ArP; - return c - ? d > 0 && - d < c.ArC[1] && - a + "_" + d in oGd.$Tombstones && - !b[1] - : a + "_" + d in oGd.$Tombstones && !b[1]; + AudioArr: ["fume"], + Tooltip: "Shoots fumes that can pass through screen doors", + Produce: + '大喷菇喷出的臭气可以穿透铁丝网门。

Harm:普通,可穿透铁丝网门
Scope:臭气中的所有僵尸
白天睡觉

“我以前那份没前途的工作,是为一个面包房
生产酵母孢,”大喷菇说。“然后小喷菇,上帝
保佑它,告诉了我这个喷杀僵尸的机会。现在
我真觉得自己完全不同了。”', + GetDY: function (b, c, a) { + return a[0] ? -18 : -10; }, - getShadow: function (a) { - return "left:" + (a.width * 0.5 - 48) + "px;top:" + a.height + "px"; + GetDX: function () { + return -45; }, BirthStyle: function (c, d, b, a) { + oS.DKind && + ((c.canTrigger = 0), + (c.Sleep = 1), + (b.childNodes[1].src = c.PicArr[c.SleepGif])); EditEle( b, { @@ -227,1164 +5933,495 @@ var CPlants = NewO({ EDPZ ); }, - GetDY: function (b, c, a) { - return -30; - }, - InitTrigger: function () {}, - Tooltip: "Plant it on a grave to remove the grave", - Produce: - 'Biting the Tombstone is used to eat the tombstone.

Instructions:Single use, only effective on tombstones.
Features:Devour tombstones.

Despite his intimidating appearance, he wants everyone
Everyone knows that he actually likes kittens, and uses his spare time
while volunteering at a zombie rehabilitation center. "Im just
doing the right thing, he said.', - PrivateBirth: function (a) { - PlayAudio("gravebusterchomp"); - oSym.addTask( - 420, - function (b) { - var e = $P[b], - c, - d, - f; - e && - ((d = e.R), - (f = e.C), - delete oGd.$Tombstones[(c = d + "_" + f)], - e.Die(), - ClearChild($("dTombstones" + c)), - oS.StaticCard && - AppearSun( - Math.floor(GetX(f) + Math.random() * 41), - GetY(d), - 25, - 0 - )); - }, - [a.id] + PrivateBirth: function (b) { + var a = b.id; + NewEle( + a + "_Bullet", + "div", + "position:absolute;visibility:hidden;width:343px;height:62px;left:" + + b.AttackedRX + + "px;top:" + + (b.pixelTop + 5) + + "px;background:url(images/Plants/FumeShroom/FumeShroomBullet.gif);z-index:" + + (b.zIndex + 1), + 0, + EDPZ ); }, - }), - oLawnCleaner = InheritO(CPlants, { - EName: "oLawnCleaner", - CName: "Lawn mower", - width: 71, - height: 57, - beAttackedPointL: 0, - beAttackedPointR: 71, - SunNum: 0, - PicArr: [ - "images/interface/LawnCleaner.png", - "images/interface/LawnCleaner1.png", - ], - AudioArr: ["lawnmower"], - NormalGif: 0, - canEat: 0, - Stature: 1, - getShadow: function (a) { - return ( - "left:" + - (a.width * 0.5 - 38) + - "px;top:" + - (a.height - 22) + - "px" - ); + PrivateDie: function (a) { + ClearChild($(a.id + "_Bullet")); }, getTriggerRange: function (a, b, c) { - return [[b, c, 0]]; - }, - TriggerCheck: function (b, a) { - b.beAttacked && - b.Altitude > 0 && - ((this.canTrigger = 0), this.NormalAttack(this)); + return [[b, Math.min(c + 330, oS.W), 0]]; }, - BoomDie: function () {}, - Tooltip: "Most common lawn mower", - NormalAttack: function (a) { - PlayAudio(a.AudioArr[0]); - (function (b, c, k, j, e, g) { - var d = oZ.getArZ(k, j, e), - f = d.length, - h; - $(a.id).childNodes[1].src = "images/interface/LawnCleaner1.png"; - while (f--) { - (h = d[f]).getCrushed(b) && h.CrushDie(); + NormalAttack: function () { + PlayAudio("fume"); + var f = this, + d = oZ.getArZ( + f.AttackedLX, + Math.min(f.AttackedRX + 330, oS.W), + f.R + ), + e = d.length, + g, + c = f.id, + b = $(c), + a = c + "_Bullet"; + while (e--) { + (g = d[e]).Altitude < 2 && g.getHit1(g, 20); + } + b.childNodes[1].src = + "images/Plants/FumeShroom/FumeShroomAttack.gif"; + SetVisible($(a)); + ImgSpriter( + a, + c, + [ + ["0 0", 9, 1], + ["0 -62px", 9, 2], + ["0 -124px", 9, 3], + ["0 -186px", 9, 4], + ["0 -248px", 9, 5], + ["0 -310px", 9, 6], + ["0 -372px", 9, 7], + ["0 -434px", 9, -1], + ], + 0, + function (i, j) { + var h = $(j); + $P[j] && + ((h.childNodes[1].src = + "images/Plants/FumeShroom/FumeShroom.gif"), + SetHidden($(i))); } - k > c - ? b.Die() - : ((b.pixelRight += 10), - (b.AttackedLX = k += 10), - (b.AttackedRX = j += 10), - (g.style.left = (b.pixelLeft += 10) + "px"), - oSym.addTask(1, arguments.callee, [b, c, k, j, e, g]), - [this]); - })(a, oS.W, a.AttackedLX, a.AttackedRX, a.R, $(a.id)); + ); }, }), - oCleaner1 = InheritO(oLawnCleaner, { - EName: "oCleaner", - CName: "Cleaner", - width: 80, - height: 80, - beAttackedPointL: 0, - beAttackedPointR: 57, - SunNum: 0, + oIceFumeShroom = InheritO(oFumeShroom, { + EName: "oIceFumeShroom", + CName: "Icy Fume-shroom", + SunNum: 200, PicArr: [ - "images/interface/BZ.png", - "images/Plants/Jalapeno/JalapenoAttack.gif", + "images/Card/Plants/IcyFumeShroom.png", + "images/Plants/IcyFumeShroom/0.gif", + "images/Plants/IcyFumeShroom/FumeShroom.gif", + "images/Plants/IcyFumeShroom/FumeShroomSleep.gif", + "images/Plants/IcyFumeShroom/FumeShroomAttack.gif", + "images/Plants/IcyFumeShroom/FumeShroomBullet.gif", ], - Tooltip: "Firecrackers", - AudioArr: ["jalapeno"], - }), - oCleaner = InheritO(oCleaner1, { - EName: "oCleaner", - NormalAttack: function (a) { - oSym.addTask( - 40, - function (j) { - var h = $P[j]; - if (h) { - PlayAudio("jalapeno"); - var b = $(j), - f = h.R, - c = oZ.getArZ(100, oS.W, f), - e = c.length, - g = oGd.$Ice[f], - d = oGd.$Crater; - while (e--) { - c[e].getExplosion(); - } - h.Die(1); - EditEle( - b.childNodes[1], - { - src: "images/Plants/Jalapeno/JalapenoAttack.gif", - }, - { - width: "755px", - height: "131px", - left: 120 - h.pixelLeft + "px", - top: "-42px", - } - ); - oSym.addTask(135, ClearChild, [b]); - ClearChild($("dIceCar" + f)); - if (g) { - for (e = g[1]; e < 11; e++) { - delete d[f + "_" + e]; - } - } - } - }, - [a.id] + Tooltip: + 'Shoots icy fumes that can pass through screen doors

(requires fume-shroom)', + Produce: + '大喷菇喷出的臭气可以穿透铁丝网门。

Harm:普通,可穿透铁丝网门
Scope:臭气中的所有僵尸
白天睡觉

“我以前那份没前途的工作,是为一个面包房
生产酵母孢,”大喷菇说。“然后小喷菇,上帝
保佑它,告诉了我这个喷杀僵尸的机会。现在
我真觉得自己完全不同了。”', + PrivateBirth: function (b) { + var a = b.id; + NewEle( + a + "_Bullet", + "div", + "position:absolute;visibility:hidden;width:343px;height:62px;left:" + + b.AttackedRX + + "px;top:" + + (b.pixelTop + 5) + + "px;background:url(images/Plants/IcyFumeShroom/FumeShroomBullet.gif);z-index:" + + (b.zIndex + 1), + 0, + EDPZ ); }, - }), - oPoolCleaner = InheritO(oLawnCleaner, { - EName: "oPoolCleaner", - CName: "Pool Cleaner", - width: 47, - height: 64, - beAttackedPointL: 0, - beAttackedPointR: 47, - SunNum: 0, - PicArr: [ - "images/interface/PoolCleaner.png", - "images/interface/PoolCleaner1.png", - ], - Tooltip: "Pond Sweeper", - AudioArr: ["pool_cleaner"], - NormalAttack: function (a) { - PlayAudio(a.AudioArr[0]); - (function (b, c, k, j, e, g) { - var d = oZ.getArZ(k, j, e), - f = d.length, - h; - $(a.id).childNodes[1].src = "images/interface/PoolCleaner1.png"; - while (f--) { - (h = d[f]).getCrushed(b) && h.CrushDie(); + NormalAttack: function () { + PlayAudio("fume"); + var f = this, + d = oZ.getArZ( + f.AttackedLX, + Math.min(f.AttackedRX + 330, oS.W), + f.R + ), + e = d.length, + g, + c = f.id, + b = $(c), + a = c + "_Bullet"; + while (e--) { + (g = d[e]).Altitude < 2 && g.getSnowPea(g, 20); + } + b.childNodes[1].src = + "images/Plants/IcyFumeShroom/FumeShroomAttack.gif"; + SetVisible($(a)); + ImgSpriter( + a, + c, + [ + ["0 0", 9, 1], + ["0 -62px", 9, 2], + ["0 -124px", 9, 3], + ["0 -186px", 9, 4], + ["0 -248px", 9, 5], + ["0 -310px", 9, 6], + ["0 -372px", 9, 7], + ["0 -434px", 9, -1], + ], + 0, + function (i, j) { + var h = $(j); + $P[j] && + ((h.childNodes[1].src = + "images/Plants/IcyFumeShroom/FumeShroom.gif"), + SetHidden($(i))); } - k > c - ? b.Die() - : ((b.pixelRight += 10), - (b.AttackedLX = k += 10), - (b.AttackedRX = j += 10), - (g.style.left = (b.pixelLeft += 10) + "px"), - oSym.addTask(1, arguments.callee, [b, c, k, j, e, g]), - [this]); - })(a, oS.W, a.AttackedLX, a.AttackedRX, a.R, $(a.id)); - }, - }), - oBrains = InheritO(CPlants, { - EName: "oBrains", - CName: "Brains", - width: 32, - height: 31, - beAttackedPointL: 0, - beAttackedPointR: 32, - SunNum: 0, - HP: 1, - PicArr: ["images/interface/brain.png"], - Tooltip: "Delicious brain", - NormalGif: 0, - InitTrigger: function () {}, - PrivateBirth: function (a) { - a.PrivateDie = oS.BrainsNum - ? ((a.DieStep = Math.floor(150 / oS.BrainsNum)), - function (d) { - var c, b; - AppearSun( - Math.floor(GetX(d.C) - 40 + Math.random() * 41), - GetY(d.R), - 50, - 0 - ); - (b = --oS.BrainsNum) - ? ((c = b * d.DieStep), - ($("imgFlagHead").style.left = c - 11 + "px"), - ($("imgFlagMeterFull").style.clip = - "rect(0,157px,21px," + c + "px)")) - : (($("imgFlagHead").style.left = "-1px"), - ($("imgFlagMeterFull").style.clip = - "rect(0,157px,21px,0)"), - oP.FlagToEnd()); - }) - : function (b) { - GameOver(); - }; - }, - GetDX: function () { - return -40; + ); }, }), - oStarfruit = InheritO(CPlants, { - EName: "oStarfruit", - CName: "Starfruit", - width: 77, - height: 70, - beAttackedPointR: 57, - SunNum: 125, - GetDY: function (b, c, a) { - return a[0] ? -17 : -10; - }, + oCoffeeBean = InheritO(CPlants, { + EName: "oCoffeeBean", + CName: "Coffee Bean", + width: 39, + height: 97, + beAttackedPointL: 10, + beAttackedPointR: 29, + SunNum: 75, + PKind: 3, + canEat: 0, PicArr: [ - "images/Card/Plants/Starfruit.png", - "images/Plants/Starfruit/0.gif", - "images/Plants/Starfruit/Starfruit.gif", - "images/Plants/Starfruit/Star.gif", + "images/Card/Plants/CoffeeBean.png", + "images/Plants/CoffeeBean/0.gif", + "images/Plants/CoffeeBean/CoffeeBean.gif", + "images/Plants/CoffeeBean/CoffeeBeanEat.gif" + $Random, ], - Tooltip: "Shoots stars in 5 directions", + AudioArr: ["coffee", "wakeup"], + Tooltip: "Plant it on a mushroom to wake it up", Produce: - 'Starfruit can fire small starfruits in five directions.

Harm:medium
Scope:five directions

Starfruit: "Hey man, I went to the dentist one day and he said
I have four cavities. When I count, I only have one tooth! one
Carambola: "Hey man, theres a tooth with four cavities? Why is that?" I went to the dentist and he said', - getTriggerRange: function (e, g, f) { - var a = this.R, - b = GetY(a), - c = oS.W, - j = this.ArFlyTime, - h = this.ArHitX, - i, - d = 0.5 * (g + f); - !j && ((j = this.ArFlyTime = {}), (h = this.ArHitX = {})); - switch (true) { - case e < a: - j[e] = [(i = b - GetY(e)) / 5, i / 3]; - h[e] = [d, d + (i / 3) * 4]; - return [[100, c, 0]]; - case e == a: - return [[100, g + 25, 4]]; - default: - j[e] = [(i = GetY(e) - b) / 5, i / 3]; - h[e] = [d, d + (i / 3) * 4]; - return [[100, c, 0]]; - } + '咖啡豆,可以唤醒睡眠中的蘑菇们。

Instructions:单独使用,立即生效
Features:可以种在其他植物上,用来唤醒蘑菇们

咖啡豆:“嘿,伙计们!嘿,怎么回事?是谁?
嘿!你瞧见那个东西没?什么东西?哇!是狮子
!”嗯,咖啡豆确定,这样可以让自己很兴奋
。', + InitTrigger: function () {}, + GetDBottom: function () { + return 49; }, - AttackCheck2: function (l) { - var j = l.R; - if (j == this.R) { - return l.Altitude > 0; - } - var q = 0, - t = l.AttackedLX, - b = l.AttackedRX, - e, - g, - d = this.ArFlyTime, - c = this.ArHitX, - s = d[j], - r = c[j], - f = l.WalkDirection ? -1 : 1, - k = false, - m, - p, - n, - h, - a = l.Speed; - while (q < s.length) { - h = a * s[q] * f * 0.1; - e = Math.floor(t - h); - g = Math.floor(b - h); - p = r[0]; - n = r[1]; - if ((e + 20 < p && g - 20 > p) || (e < n && g > n)) { - k = true; - break; - } - ++q; - } - return k && l.Altitude > 0; + GetDY: function () { + return -30; }, - getTriggerR: function (a) { - return [1, oS.R]; + CanGrow: function (a, b) { + return (b = a[1]) && b.Sleep && !a[3]; }, - PrivateBirth: function (d) { - var c = d.pixelLeft + 38, - b = c - 15, - a = d.pixelTop + 20; - d.BulletEle = NewImg( - 0, - "images/Plants/Starfruit/Star.gif", - "left:" + b + "px;top:" + a + "px;z-index:" + (d.zIndex + 2) + BirthStyle: function (c, d, b, a) { + b.childNodes[1].src = this.PicArr[3] + Math.random(); + EditEle( + b, + { + id: d, + }, + a, + EDPZ ); }, - PrivateDie: function (a) { - a.BulletEle = null; - }, - getHurt: function (d, b, a) { - var c = this; - b != 3 && c.NormalAttack(); - (c.HP -= a) < 1 && c.Die(); - }, - NormalAttack: function () { - var g = this, - f = g.pixelLeft + 38, - d = f - 15, - b = g.pixelTop + 20, - c = g.R, - e = f + 15, - a = function (j, i, h) { - return j && j.Altitude == 1 - ? (j.getPea(j, 20, i), ClearChild(h), false) - : true; - }; - (function (h) { - oSym.addTask( - 15, - function (j) { - var i = $(j); - i && SetVisible(i); - }, - [h] - ); - oSym.addTask( - 1, - function (m, k, l, i, j) { - j(oZ.getZ1(m, k), 4, i) && - ((m -= 5) < 100 - ? ClearChild(i) - : ((i.style.left = (l -= 5) + "px"), - oSym.addTask(1, arguments.callee, [ - m, - k, - l, - i, - j, - ]))); - }, - [ - f, - c, - d, - EditEle( - g.BulletEle.cloneNode(false), - { - id: h, - }, - 0, - EDPZ - ), - a, - ] - ); - })("StarB" + Math.random()); - (function (h) { - oSym.addTask( - 15, - function (j) { - var i = $(j); - i && SetVisible(i); - }, - [h] - ); - oSym.addTask( - 1, - function (m, n, l, k, i, j) { - j(oZ.getRangeLeftZ(m, n, l), 6, i) && - ((k -= 5) < -15 - ? ClearChild(i) - : ((i.style.top = k + "px"), - oSym.addTask(1, arguments.callee, [ - m, - n, - GetR(k + 15), - k, - i, - j, - ]))); - }, - [ - d, - e, - c, - b, - EditEle( - g.BulletEle.cloneNode(false), - { - id: h, - }, - 0, - EDPZ - ), - a, - ] - ); - })("StarB" + Math.random()); - (function (h) { - oSym.addTask( - 15, - function (j) { - var i = $(j); - i && SetVisible(i); - }, - [h] - ); - oSym.addTask( - 1, - function (m, n, l, k, i, j) { - j(oZ.getRangeLeftZ(m, n, l), 2, i) && - ((k += 5) > 600 - ? ClearChild(i) - : ((i.style.top = k + "px"), - oSym.addTask(1, arguments.callee, [ - m, - n, - GetR(k + 15), - k, - i, - j, - ]))); - }, - [ - d, - e, - c, - b, - EditEle( - g.BulletEle.cloneNode(false), - { - id: h, - }, - 0, - EDPZ - ), - a, - ] - ); - })("StarB" + Math.random()); - (function (h) { - oSym.addTask( - 15, - function (j) { - var i = $(j); - i && SetVisible(i); - }, - [h] - ); - oSym.addTask( - 1, - function (n, l, m, k, i, j) { - j(oZ.getZ0(n, l), 7, i) && - ((n += 4) > 900 || (k -= 3) < -15 - ? ClearChild(i) - : (SetStyle(i, { - left: (m += 4) + "px", - top: k + "px", - }), - oSym.addTask(1, arguments.callee, [ - n, - GetR(k + 15), - m, - k, - i, - j, - ]))); - }, - [ - f, - c, - d, - b, - EditEle( - g.BulletEle.cloneNode(false), - { - id: h, - }, - 0, - EDPZ - ), - a, - ] - ); - })("StarB" + Math.random()); - (function (h) { - oSym.addTask( - 15, - function (j) { - var i = $(j); - i && SetVisible(i); - }, - [h] - ); - oSym.addTask( - 1, - function (n, l, m, k, i, j) { - j(oZ.getZ0(n, l), 1, i) && - ((n += 4) > 900 || (k += 3) > 600 - ? ClearChild(i) - : (SetStyle(i, { - left: (m += 4) + "px", - top: k + "px", - }), - oSym.addTask(1, arguments.callee, [ - n, - GetR(k + 15), - m, - k, - i, - j, - ]))); - }, - [ - f, - c, - d, - b, - EditEle( - g.BulletEle.cloneNode(false), - { - id: h, - }, - 0, - EDPZ - ), - a, - ] - ); - })("StarB" + Math.random()); + PrivateBirth: function (a) { + SetHidden($(a.id).firstChild); + PlayAudio("coffee"); + oSym.addTask( + 240, + function (c) { + PlayAudio("wakeup"); + var d = oGd.$[c], + b; + d && + ((b = d.WakeUP), + !b + ? (($(d.id).childNodes[1].src = + d.PicArr[d.NormalGif]), + (d.canTrigger = 1), + (d.Sleep = 0)) + : b(d)); + a.Die(); + }, + [a.R + "_" + a.C + "_1"] + ); }, }), - oSeedStarfruit = InheritO(CPlants, { - EName: "oSeedStarfruit", - CName: "Starfruit", - width: 77, - height: 70, - beAttackedPointR: 57, - SunNum: 0, - GetDY: function (b, c, a) { - return a[0] ? -17 : -10; - }, + oGloomShroom = InheritO(oFumeShroom, { + EName: "oGloomShroom", + CName: "Gloom-shroom", + width: 112, + height: 81, + beAttackedPointR: 92, + SunNum: 150, PicArr: [ - "images/Card/Plants/Starfruit.png", - "images/Plants/Starfruit/0.gif", - "images/Plants/Starfruit/Starfruit.gif", - "images/Plants/Starfruit/Star.gif", + "images/Card/Plants/GloomShroom.png", + "images/Plants/GloomShroom/0.gif", + "images/Plants/GloomShroom/GloomShroom.gif", + "images/Plants/GloomShroom/GloomShroomSleep.gif", + "images/Plants/GloomShroom/GloomShroomAttack.gif", + "images/Plants/GloomShroom/GloomShroomBullet.gif", ], - Tooltip: "Shoots stars in 5 directions", + AudioArr: ["kernelpult", "kernelpult2"], + Tooltip: + 'Releases heavy fumes in an area around itself

(requires fume-shroom)', Produce: - 'Starfruit can fire small starfruits in five directions.

Harm:medium
Scope:five directions

Starfruit: "Hey man, I went to the dentist one day and he said
I have four cavities. When I count, I only have one tooth! one
Carambola: "Hey man, theres a tooth with four cavities? Why is that?" I went to the dentist and he said', - getTriggerRange: function (e, g, f) { - var a = this.R, - b = GetY(a), - c = oS.W, - j = this.ArFlyTime, - h = this.ArHitX, - i, - d = 0.5 * (g + f); - !j && ((j = this.ArFlyTime = {}), (h = this.ArHitX = {})); - switch (true) { - case e < a: - j[e] = [(i = b - GetY(e)) / 5, i / 3]; - h[e] = [d, d + (i / 3) * 4]; - return [[100, c, 0]]; - case e == a: - return [[100, g + 25, 4]]; - default: - j[e] = [(i = GetY(e) - b) / 5, i / 3]; - h[e] = [d, d + (i / 3) * 4]; - return [[100, c, 0]]; - } + '围绕自身释放大量孢子

可以种植在大喷菇上

“我喜欢喷射大量烟雾。”忧郁蘑菇说,“我
知道许多人不喜欢这样,他们说这又粗鲁啦烟
雾又很臭啦之类的,我只想说,你们想不想自
己的脑袋被僵尸吃掉?”', + CanGrow: function (b, a, d) { + var c = b[1]; + return c && c.EName == "oFumeShroom"; }, - AttackCheck2: function (l) { - var j = l.R; - if (j == this.R) { - return l.Altitude > 0; - } - var q = 0, - t = l.AttackedLX, - b = l.AttackedRX, - e, - g, - d = this.ArFlyTime, - c = this.ArHitX, - s = d[j], - r = c[j], - f = l.WalkDirection ? -1 : 1, - k = false, - m, - p, - n, - h, - a = l.Speed; - while (q < s.length) { - h = a * s[q] * f * 0.1; - e = Math.floor(t - h); - g = Math.floor(b - h); - p = r[0]; - n = r[1]; - if ((e + 20 < p && g - 20 > p) || (e < n && g > n)) { - k = true; - break; - } - ++q; - } - return k && l.Altitude > 0; + BirthStyle: function (c, d, b, a) { + oGd.$[c.R + "_" + c.C + "_1"] && + oGd.$[c.R + "_" + c.C + "_1"].Sleep && + ((c.canTrigger = 0), + (c.Sleep = 1), + (b.childNodes[1].src = c.PicArr[3])); + EditEle(b, { id: d }, a, EDPZ); }, - getTriggerR: function (a) { - return [1, oS.R]; + GetDX: function () { + return -58; }, - PrivateBirth: function (d) { - var c = d.pixelLeft + 38, - b = c - 15, - a = d.pixelTop + 20; - d.BulletEle = NewImg( + PrivateBirth: function (b) { + var a = b.id; + NewEle( + a + "_Bullet", + "div", + "position:absolute;visibility:hidden;width:210px;height:200px;left:" + + (b.pixelLeft - 60) + + "px;top:" + + (b.pixelTop - 65) + + "px;background:url(images/Plants/GloomShroom/GloomShroomBullet.gif);z-index:" + + (b.zIndex + 1), 0, - "images/Plants/Starfruit/Star.gif", - "left:" + b + "px;top:" + a + "px;z-index:" + (d.zIndex + 2) + EDPZ ); }, PrivateDie: function (a) { - a.BulletEle = null; - }, - getHurt: function (d, b, a) { - var c = this; - b != 3 && c.NormalAttack(); - (c.HP -= a) < 1 && c.Die(); - }, - NormalAttack: function () { - var g = this, - f = g.pixelLeft + 38, - d = f - 15, - b = g.pixelTop + 20, - c = g.R, - e = f + 15, - a = function (j, i, h) { - return j && j.Altitude == 1 - ? (j.getPea(j, 20, i), ClearChild(h), false) - : true; - }; - (function (h) { - oSym.addTask( - 15, - function (j) { - var i = $(j); - i && SetVisible(i); - }, - [h] - ); - oSym.addTask( - 1, - function (m, k, l, i, j) { - j(oZ.getZ1(m, k), 4, i) && - ((m -= 5) < 100 - ? ClearChild(i) - : ((i.style.left = (l -= 5) + "px"), - oSym.addTask(1, arguments.callee, [ - m, - k, - l, - i, - j, - ]))); - }, - [ - f, - c, - d, - EditEle( - g.BulletEle.cloneNode(false), - { - id: h, - }, - 0, - EDPZ - ), - a, - ] - ); - })("StarB" + Math.random()); - (function (h) { - oSym.addTask( - 15, - function (j) { - var i = $(j); - i && SetVisible(i); - }, - [h] - ); - oSym.addTask( - 1, - function (m, n, l, k, i, j) { - j(oZ.getRangeLeftZ(m, n, l), 6, i) && - ((k -= 5) < -15 - ? ClearChild(i) - : ((i.style.top = k + "px"), - oSym.addTask(1, arguments.callee, [ - m, - n, - GetR(k + 15), - k, - i, - j, - ]))); - }, - [ - d, - e, - c, - b, - EditEle( - g.BulletEle.cloneNode(false), - { - id: h, - }, - 0, - EDPZ - ), - a, - ] - ); - })("StarB" + Math.random()); - (function (h) { - oSym.addTask( - 15, - function (j) { - var i = $(j); - i && SetVisible(i); - }, - [h] - ); - oSym.addTask( - 1, - function (m, n, l, k, i, j) { - j(oZ.getRangeLeftZ(m, n, l), 2, i) && - ((k += 5) > 600 - ? ClearChild(i) - : ((i.style.top = k + "px"), - oSym.addTask(1, arguments.callee, [ - m, - n, - GetR(k + 15), - k, - i, - j, - ]))); - }, - [ - d, - e, - c, - b, - EditEle( - g.BulletEle.cloneNode(false), - { - id: h, - }, - 0, - EDPZ - ), - a, - ] - ); - })("StarB" + Math.random()); - (function (h) { - oSym.addTask( - 15, - function (j) { - var i = $(j); - i && SetVisible(i); - }, - [h] - ); - oSym.addTask( - 1, - function (n, l, m, k, i, j) { - j(oZ.getZ0(n, l), 7, i) && - ((n += 4) > 900 || (k -= 3) < -15 - ? ClearChild(i) - : (SetStyle(i, { - left: (m += 4) + "px", - top: k + "px", - }), - oSym.addTask(1, arguments.callee, [ - n, - GetR(k + 15), - m, - k, - i, - j, - ]))); - }, - [ - f, - c, - d, - b, - EditEle( - g.BulletEle.cloneNode(false), - { - id: h, - }, - 0, - EDPZ - ), - a, - ] - ); - })("StarB" + Math.random()); - (function (h) { - oSym.addTask( - 15, - function (j) { - var i = $(j); - i && SetVisible(i); - }, - [h] - ); - oSym.addTask( - 1, - function (n, l, m, k, i, j) { - j(oZ.getZ0(n, l), 1, i) && - ((n += 4) > 900 || (k += 3) > 600 - ? ClearChild(i) - : (SetStyle(i, { - left: (m += 4) + "px", - top: k + "px", - }), - oSym.addTask(1, arguments.callee, [ - n, - GetR(k + 15), - m, - k, - i, - j, - ]))); - }, - [ - f, - c, - d, - b, - EditEle( - g.BulletEle.cloneNode(false), - { - id: h, - }, - 0, - EDPZ - ), - a, - ] - ); - })("StarB" + Math.random()); + ClearChild($(a.id + "_Bullet")); }, - }), - oPeashooter = InheritO(CPlants, { - EName: "oPeashooter", - CName: "Peashooter", - width: 71, - height: 71, - beAttackedPointR: 51, - SunNum: 100, - BKind: 0, - AudioArr: [ - "splat1", - "splat2", - "splat3", - "plastichit", - "shieldhit", - "shieldhit2", - ], - PicArr: [ - "images/Card/Plants/Peashooter.png", - "images/Plants/Peashooter/0.gif", - "images/Plants/Peashooter/Peashooter.gif", - "images/Plants/PB00.gif", - "images/Plants/PeaBulletHit.gif", - ], - Tooltip: "Shoots peas at the enemy", - Produce: - 'Pea shooters are your first line of defense. They shoot peas at attacking zombies.

Damage: normal

How can a single plant grow and shoot so many peas so quickly? Peashooter says, "Hard work, commitment, and a healthy, well-balanced breakfast of sunlight and high-fiber carbon dioxide make it all possible." ', - PrivateBirth: function (a) { - a.BulletEle = NewImg( - 0, - a.PicArr[3], - "left:" + - (a.AttackedLX - 40) + - "px;top:" + - (a.pixelTop + 3) + - "px;visibility:hidden;z-index:" + - (a.zIndex + 2) - ); + getTriggerRange: function (c, d, e) { + var f = GetX(this.C), + b = (this.MinX = f - 120), + a = (this.MaxX = f + 120); + return [[b, a, 0]]; }, - PrivateDie: function (a) { - a.BulletEle = null; + getTriggerR: function (c) { + var b = (this.MinR = c > 2 ? c - 1 : 1), + a = (this.MaxR = c < oS.R ? Number(c) + 1 : c); + return [b, a]; }, NormalAttack: function () { - var a = this, - b = "PB" + Math.random(); - EditEle( - a.BulletEle.cloneNode(false), - { - id: b, - }, - 0, - EDPZ - ); + var k = this, + g, + f = k.MaxR, + c = k.MinX, + b = k.MaxX, + e, + h, + a, + j = k.id, + d = $(j), + l = j + "_Bullet"; + for (g = k.MinR; g <= f; g++) { + e = oZ.getArZ(c, b, g); + for ( + h = e.length; + h--; + (a = e[h]).Altitude < 2 && a.getHit1(a, 80) + ) {} + } oSym.addTask( - 15, - function (d) { - var c = $(d); - c && SetVisible(c); + 100, + function (i) { + PlayAudio( + ["kernelpult", "kernelpult2"][ + Math.floor(Math.random() * 2) + ] + ); + --i && oSym.addTask(100, arguments.callee, [i]); }, - [b] + [4] ); - oSym.addTask( - 1, - function (f, j, h, c, n, i, m, k, o, g) { - var l, - e = GetC(n), - d = oZ["getZ" + c](n, i); - m == 0 && - g[i + "_" + e] && - k != e && - (PlayAudio("firepea"), - (m = 1), - (h = 40), - (k = e), - (j.src = "images/Plants/PB" + m + c + ".png")); - d && d.Altitude == 1 - ? (d[ - { - "-1": "getSnowPea", - 0: "getPea", - 1: "getFirePea", - }[m] - ](d, h, c), - (SetStyle(j, { - left: o + 28 + "px", - }).src = [ - "images/Plants/PeaBulletHit.gif", - "images/Plants/FireBulletHit.png", - ][m]), - oSym.addTask(10, ClearChild, [j])) - : (n += l = !c ? 5 : -5) < oS.W && n > 100 - ? ((j.style.left = (o += l) + "px"), - oSym.addTask(1, arguments.callee, [ - f, - j, - h, - c, - n, - i, - m, - k, - o, - g, - ])) - : ClearChild(j); - }, + d.childNodes[1].src = + "images/Plants/GloomShroom/GloomShroomAttack.gif"; + SetVisible($(l)); + ImgSpriter( + l, + j, [ - b, - $(b), - 20, - 0, - a.AttackedLX, - a.R, - 0, - 0, - a.AttackedLX - 40, - oGd.$Torch, - ] + ["0 0", 9, 1], + ["0 -200px", 9, 2], + ["0 -400px", 9, 3], + ["0 -600px", 9, 4], + ["0 -800px", 9, 5], + ["0 -1000px", 9, 6], + ["0 -1200px", 9, 7], + ["0 -1400px", 9, 8], + ["0 -1600px", 9, 9], + ["0 -1800px", 9, 10], + ["0 -2000px", 9, 11], + ["0 -2200px", 9, -1], + ], + 0, + function (m, n) { + var i = $(n); + $P[n] && + (i.childNodes[1].src = + "images/Plants/GloomShroom/GloomShroom.gif"); + SetHidden($(m)); + } ); }, }), - oSeedPeashooter = InheritO(CPlants, { - EName: "oSeedPeashooter", - CName: "Peashooter", - width: 71, - height: 71, - beAttackedPointR: 51, - SunNum: 0, - BKind: 0, - AudioArr: [ - "splat1", - "splat2", - "splat3", - "plastichit", - "shieldhit", - "shieldhit2", - ], + oSeedGloomShroom = InheritO(oSeedFumeShroom, { + EName: "oSeedGloomShroom", + CName: "Gloom-shroom", + width: 112, + height: 81, + beAttackedPointR: 92, + SunNum: 0, PicArr: [ - "images/Card/Plants/Peashooter.png", - "images/Plants/Peashooter/0.gif", - "images/Plants/Peashooter/Peashooter.gif", - "images/Plants/PB00.gif", - "images/Plants/PeaBulletHit.gif", + "images/Card/Plants/GloomShroom.png", + "images/Plants/GloomShroom/0.gif", + "images/Plants/GloomShroom/GloomShroom.gif", + "images/Plants/GloomShroom/GloomShroomSleep.gif", + "images/Plants/GloomShroom/GloomShroomAttack.gif", + "images/Plants/GloomShroom/GloomShroomBullet.gif", ], - Tooltip: "Shoots peas at the enemy", + AudioArr: ["kernelpult", "kernelpult2"], + Tooltip: + 'Releases heavy fumes in an area around itself

(requires fume-shroom)', Produce: - 'Pea shooters are your first line of defense. They shoot peas at attacking zombies.

Damage: normal

How can a single plant grow and shoot so many peas so quickly? Peashooter says, "Hard work, commitment, and a healthy, well-balanced breakfast of sunlight and high-fiber carbon dioxide make it all possible." ', - PrivateBirth: function (a) { - a.BulletEle = NewImg( - 0, - a.PicArr[3], - "left:" + - (a.AttackedLX - 40) + + '围绕自身释放大量孢子

可以种植在大喷菇上

“我喜欢喷射大量烟雾。”忧郁蘑菇说,“我
知道许多人不喜欢这样,他们说这又粗鲁啦烟
雾又很臭啦之类的,我只想说,你们想不想自
己的脑袋被僵尸吃掉?”', + CanGrow: function (b, a, d) { + var c = b[1]; + return c && c.EName == "oSeedFumeShroom"; + }, + BirthStyle: function (c, d, b, a) { + oGd.$[c.R + "_" + c.C + "_1"] && + oGd.$[c.R + "_" + c.C + "_1"].Sleep && + ((c.canTrigger = 0), + (c.Sleep = 1), + (b.childNodes[1].src = c.PicArr[3])); + EditEle(b, { id: d }, a, EDPZ); + }, + GetDX: function () { + return -58; + }, + PrivateBirth: function (b) { + var a = b.id; + NewEle( + a + "_Bullet", + "div", + "position:absolute;visibility:hidden;width:210px;height:200px;left:" + + (b.pixelLeft - 60) + "px;top:" + - (a.pixelTop + 3) + - "px;visibility:hidden;z-index:" + - (a.zIndex + 2) + (b.pixelTop - 65) + + "px;background:url(images/Plants/GloomShroom/GloomShroomBullet.gif);z-index:" + + (b.zIndex + 1), + 0, + EDPZ ); }, PrivateDie: function (a) { - a.BulletEle = null; + ClearChild($(a.id + "_Bullet")); + }, + getTriggerRange: function (c, d, e) { + var f = GetX(this.C), + b = (this.MinX = f - 120), + a = (this.MaxX = f + 120); + return [[b, a, 0]]; + }, + getTriggerR: function (c) { + var b = (this.MinR = c > 2 ? c - 1 : 1), + a = (this.MaxR = c < oS.R ? Number(c) + 1 : c); + return [b, a]; }, NormalAttack: function () { - var a = this, - b = "PB" + Math.random(); - EditEle( - a.BulletEle.cloneNode(false), - { - id: b, - }, - 0, - EDPZ - ); + var k = this, + g, + f = k.MaxR, + c = k.MinX, + b = k.MaxX, + e, + h, + a, + j = k.id, + d = $(j), + l = j + "_Bullet"; + for (g = k.MinR; g <= f; g++) { + e = oZ.getArZ(c, b, g); + for ( + h = e.length; + h--; + (a = e[h]).Altitude < 2 && a.getHit1(a, 80) + ) {} + } oSym.addTask( - 15, - function (d) { - var c = $(d); - c && SetVisible(c); + 100, + function (i) { + PlayAudio( + ["kernelpult", "kernelpult2"][ + Math.floor(Math.random() * 2) + ] + ); + --i && oSym.addTask(100, arguments.callee, [i]); }, - [b] + [4] ); - oSym.addTask( - 1, - function (f, j, h, c, n, i, m, k, o, g) { - var l, - e = GetC(n), - d = oZ["getZ" + c](n, i); - m == 0 && - g[i + "_" + e] && - k != e && - (PlayAudio("firepea"), - (m = 1), - (h = 40), - (k = e), - (j.src = "images/Plants/PB" + m + c + ".png")); - d && d.Altitude == 1 - ? (d[ - { - "-1": "getSnowPea", - 0: "getPea", - 1: "getFirePea", - }[m] - ](d, h, c), - (SetStyle(j, { - left: o + 28 + "px", - }).src = [ - "images/Plants/PeaBulletHit.gif", - "images/Plants/FireBulletHit.png", - ][m]), - oSym.addTask(10, ClearChild, [j])) - : (n += l = !c ? 5 : -5) < oS.W && n > 100 - ? ((j.style.left = (o += l) + "px"), - oSym.addTask(1, arguments.callee, [ - f, - j, - h, - c, - n, - i, - m, - k, - o, - g, - ])) - : ClearChild(j); - }, + d.childNodes[1].src = + "images/Plants/GloomShroom/GloomShroomAttack.gif"; + SetVisible($(l)); + ImgSpriter( + l, + j, [ - b, - $(b), - 20, - 0, - a.AttackedLX, - a.R, - 0, - 0, - a.AttackedLX - 40, - oGd.$Torch, - ] + ["0 0", 9, 1], + ["0 -200px", 9, 2], + ["0 -400px", 9, 3], + ["0 -600px", 9, 4], + ["0 -800px", 9, 5], + ["0 -1000px", 9, 6], + ["0 -1200px", 9, 7], + ["0 -1400px", 9, 8], + ["0 -1600px", 9, 9], + ["0 -1800px", 9, 10], + ["0 -2000px", 9, 11], + ["0 -2200px", 9, -1], + ], + 0, + function (m, n) { + var i = $(n); + $P[n] && + (i.childNodes[1].src = + "images/Plants/GloomShroom/GloomShroom.gif"); + SetHidden($(m)); + } ); }, }), - oLotusRoot = InheritO(oPeashooter, { - EName: "oLotusRoot", - CName: "Lotus Root", - width: 130, - height: 114, - beAttackedPointR: 70, - SunNum: 250, - BookHandBack: 4.9, - coolTime: 25, - getShadow: function (a) { - return "display:none"; - }, + oPuffShroom = InheritO(oFumeShroom, { + EName: "oPuffShroom", + CName: "Puff-shroom", + width: 40, + height: 66, + beAttackedPointL: 15, + beAttackedPointR: 25, + SunNum: 0, + Stature: -1, PicArr: [ - "images/Card/Plants/LotusRoot.png", - "images/Plants/LotusRoot/0.gif", - "images/Plants/LotusRoot/Peashooter.gif", - "images/Plants/LotusRoot/Missile.png", - "images/Plants/LotusRoot/BulletHit.png", + "images/Card/Plants/PuffShroom.png", + "images/Plants/PuffShroom/0.gif", + "images/Plants/PuffShroom/PuffShroom.gif", + "images/Plants/PuffShroom/PuffShroomSleep.gif", + "images/Plants/ShroomBullet.gif", + "images/Plants/ShroomBulletHit.gif", ], - Tooltip: "Fire high-powered rocket launchers, inflicting heavy damage", + AudioArr: ["puff"], + Tooltip: "Shoots short-ranged spores at the enemy", Produce: - 'The lotus root rocket launcher can launch high-fire rocket launchers, targeting warships and
The submarine inflicted heavy damage.

Harm:极高

What else can the lotus root rocket launcher do besides firing shells. Ok,
For this question, you should ask the intensive phobia patient
。”', - CanGrow: function (c, b, d) { - var a = b + "_" + d; - return !( - d < 1 || - d > 9 || - oGd.$LF[b] - 2 || - c[0] || - c[1] || - oGd.$Crater[a] || - oGd.$Tombstones[a] - ); + '小喷菇是免费的,不过射程很近。

Harm: 中等
Scope:
白天要睡觉

小喷菇:“我也是最近才知道僵尸的存在,和
很多蘑菇一样,我只是把他们想象成童话和电
影里的怪物。不过这次的经历已经让我大开眼
界了。', + GetDX: CPlants.prototype.GetDX, + getTriggerRange: function (a, b, c) { + return [[b, Math.min(c + 250, oS.W), 0]]; }, PrivateBirth: function (a) { a.BulletEle = NewImg( 0, - a.PicArr[3], + "images/Plants/ShroomBullet.gif", "left:" + - (a.AttackedLX - 40) + + (a.AttackedLX - 46) + "px;top:" + - (a.pixelTop + 3) + + (a.pixelTop + 40) + "px;visibility:hidden;z-index:" + (a.zIndex + 2) ); @@ -1393,1404 +6430,690 @@ var CPlants = NewO({ a.BulletEle = null; }, NormalAttack: function () { - var a = this, - b = "PB" + Math.random(); + PlayAudio("puff"); + var b = this, + c = "PSB" + Math.random(), + a = b.AttackedLX; EditEle( - a.BulletEle.cloneNode(false), + b.BulletEle.cloneNode(false), { - id: b, + id: c, }, 0, EDPZ ); oSym.addTask( 15, - function (o) { - $(a.id).childNodes[1].src = - "images/Plants/LotusRoot/Peashooter.gif"; - }, - [this] - ); - oSym.addTask( - 15, - function (d) { - var c = $(d); - c && SetVisible(c); + function (e) { + var d = $(e); + d && SetVisible(d); }, - [b] + [c] ); oSym.addTask( 1, - function (f, j, h, c, n, i, m, k, o, g) { - var l, - e = GetC(n), - d = oZ["getZ" + c](n, i); - m == 0 && - g[i + "_" + e] && - k != e && - (PlayAudio("firepea"), - (m = 1), - (h = 40), - (k = e), - (j.src = "images/Plants/LotusRoot/Missile.png")); - d && d.Altitude == 1 - ? (d[ - { - "-1": "getSnowPea", - 0: "getPea", - 1: "getFirePea", - }[m] - ](d, h, c), - (SetStyle(j, { - left: o + 28 + "px", - }).src = "images/Plants/LotusRoot/BulletHit.png"), - oSym.addTask(10, ClearChild, [j])) - : (n += l = !c ? 5 : -5) < oS.W && n > 100 - ? ((j.style.left = (o += l) + "px"), - oSym.addTask(1, arguments.callee, [ - f, - j, - h, - c, - n, - i, - m, - k, - o, - g, - ])) - : ClearChild(j); + function (j, d, e, f, g) { + var i = GetC(e), + h = oZ.getZ0(e, f); + h && h.Altitude == 1 + ? (h.getPea(h, 20, 0), + (SetStyle(d, { + left: g + 38 + "px", + }).src = "images/Plants/ShroomBulletHit.gif"), + oSym.addTask(10, ClearChild, [d])) + : (e += 5) < oS.W + ? ((d.style.left = (g += 5) + "px"), + oSym.addTask(1, arguments.callee, [j, d, e, f, g])) + : ClearChild(d); }, - [ - b, - $(b), - 500, - 0, - a.AttackedLX, - a.R, - 0, - 0, - a.AttackedLX - 40, - oGd.$Torch, - ] + [c, $(c), a, b.R, a - 46] ); }, }), - oSnowPea = InheritO(oPeashooter, { - EName: "oSnowPea", - CName: "SnowPea", - SunNum: 175, - BKind: -1, + oSeedPuffShroom = InheritO(oFumeShroom, { + EName: "oSeedPuffShroom", + CName: "Puff-shroom", + width: 40, + height: 66, + beAttackedPointL: 15, + beAttackedPointR: 25, + SunNum: 0, + Stature: -1, PicArr: [ - "images/Card/Plants/SnowPea.png", - "images/Plants/SnowPea/0.gif", - "images/Plants/SnowPea/SnowPea.gif", - "images/Plants/PB-10.gif", - "images/Plants/PeaBulletHit1.gif", - ], - AudioArr: [ - "frozen", - "splat1", - "splat2", - "splat3", - "shieldhit", - "shieldhit2", - "plastichit", + "images/Card/Plants/PuffShroom.png", + "images/Plants/PuffShroom/0.gif", + "images/Plants/PuffShroom/PuffShroom.gif", + "images/Plants/PuffShroom/PuffShroomSleep.gif", + "images/Plants/ShroomBullet.gif", + "images/Plants/ShroomBulletHit.gif", ], - Tooltip: "Shoots frozen peas that damage and slow the enemy", + AudioArr: ["puff"], + Tooltip: "Shoots short-ranged spores at the enemy", Produce: - 'The Frost Archer fires Frozen Peas to attack enemies and has
Slow down effect.

Harm:Medium, with a slowing effect

People often tell the ice shooter how cold he is, or
Admonish him to be calm. They told him to keep your composure. cold
The ice shooter just rolled his eyes. In fact, he heard it all.', + '小喷菇是免费的,不过射程很近。

Harm: 中等
Scope:
白天要睡觉

小喷菇:“我也是最近才知道僵尸的存在,和
很多蘑菇一样,我只是把他们想象成童话和电
影里的怪物。不过这次的经历已经让我大开眼
界了。', + GetDX: CPlants.prototype.GetDX, + getTriggerRange: function (a, b, c) { + return [[b, Math.min(c + 250, oS.W), 0]]; + }, + PrivateBirth: function (a) { + a.BulletEle = NewImg( + 0, + "images/Plants/ShroomBullet.gif", + "left:" + + (a.AttackedLX - 46) + + "px;top:" + + (a.pixelTop + 40) + + "px;visibility:hidden;z-index:" + + (a.zIndex + 2) + ); + }, + PrivateDie: function (a) { + a.BulletEle = null; + }, NormalAttack: function () { - var a = this, - b = "PB" + Math.random(); + PlayAudio("puff"); + var b = this, + c = "PSB" + Math.random(), + a = b.AttackedLX; EditEle( - a.BulletEle.cloneNode(false), + b.BulletEle.cloneNode(false), { - id: b, + id: c, }, 0, EDPZ ); oSym.addTask( 15, - function (d) { - var c = $(d); - c && SetVisible(c); + function (e) { + var d = $(e); + d && SetVisible(d); }, - [b] + [c] ); oSym.addTask( 1, - function (f, j, h, c, n, i, m, k, o, g) { - var l, - e = GetC(n), - d = oZ["getZ" + c](n, i); - m < 1 && - g[i + "_" + e] && - k != e && - (PlayAudio("firepea"), - ++m && (h = 40), - (k = e), - (j.src = "images/Plants/PB" + m + c + ".png")); - d && d.Altitude == 1 - ? (d[ - { - "-1": "getSnowPea", - 0: "getPea", - 1: "getFirePea", - }[m] - ](d, h, c), - (SetStyle(j, { - left: o + 28 + "px", - }).src = "images/Plants/PeaBulletHit1.gif"), - oSym.addTask(10, ClearChild, [j])) - : (n += l = !c ? 5 : -5) < oS.W && n > 100 - ? ((j.style.left = (o += l) + "px"), - oSym.addTask(1, arguments.callee, [ - f, - j, - h, - c, - n, - i, - m, - k, - o, - g, - ])) - : ClearChild(j); - }, - [ - b, - $(b), - 30, - 0, - a.AttackedLX, - a.R, - -1, - 0, - a.AttackedLX - 40, - oGd.$Torch, - ] - ); - }, - }), - oSeedSnowPea = InheritO(oPeashooter, { - EName: "oSeedSnowPea", - CName: "SnowPea", - SunNum: 0, - BKind: -1, + function (j, d, e, f, g) { + var i = GetC(e), + h = oZ.getZ0(e, f); + h && h.Altitude == 1 + ? (h.getPea(h, 20, 0), + (SetStyle(d, { + left: g + 38 + "px", + }).src = "images/Plants/ShroomBulletHit.gif"), + oSym.addTask(10, ClearChild, [d])) + : (e += 5) < oS.W + ? ((d.style.left = (g += 5) + "px"), + oSym.addTask(1, arguments.callee, [j, d, e, f, g])) + : ClearChild(d); + }, + [c, $(c), a, b.R, a - 46] + ); + }, + }), + oScaredyShroom = InheritO(oFumeShroom, { + EName: "oScaredyShroom", + CName: "Scaredy-shroom", + width: 57, + height: 81, + beAttackedPointR: 37, + SunNum: 25, + Cry: 0, + ArZ: [], + Attacking: 0, PicArr: [ - "images/Card/Plants/SnowPea.png", - "images/Plants/SnowPea/0.gif", - "images/Plants/SnowPea/SnowPea.gif", - "images/Plants/PB-10.gif", - "images/Plants/PeaBulletHit1.gif", - ], - AudioArr: [ - "frozen", - "splat1", - "splat2", - "splat3", - "shieldhit", - "shieldhit2", - "plastichit", + "images/Card/Plants/ScaredyShroom.png", + "images/Plants/ScaredyShroom/0.gif", + "images/Plants/ScaredyShroom/ScaredyShroom.gif", + "images/Plants/ScaredyShroom/ScaredyShroomSleep.gif", + "images/Plants/ScaredyShroom/ScaredyShroomCry.gif", + "images/Plants/ShroomBullet.gif", + "images/Plants/ShroomBulletHit.gif", ], - Tooltip: "Shoots frozen peas that damage and slow the enemy", + Tooltip: "Long-ranged shooter that hides when enemies get near it", Produce: - 'The Frost Archer fires Frozen Peas to attack enemies and has
Slow down effect.

Harm:Medium, with a slowing effect

People often tell the ice shooter how cold he is, or
Admonish him to be calm. They told him to keep your composure. cold
The ice shooter just rolled his eyes. In fact, he heard it all.', + '胆小菇是一种远程射手,敌人接近后会躲起来。

Harm:普通
Features:敌人接近后就停止攻击
白天睡觉

“谁在那?”胆小菇低声说,声音细微难辨。“
走开!我不想见任何人。除非……除非你是马
戏团的人。”', + GetDX: CPlants.prototype.GetDX, + getTriggerRange: CPlants.prototype.getTriggerRange, + getTriggerR: function (c) { + var b = (this.MinR = c > 2 ? c - 1 : 1), + a = (this.MaxR = c < oS.R ? Number(c) + 1 : c); + return [b, a]; + }, + TriggerCheck: function (e, c) { + var b = this, + a = b.id; + e.PZ && Math.abs(e.ZX - b.MX) < 121 && e.beAttacked + ? (b.ArZ.push(e.id), + !b.Cry && + ((b.Cry = 1), + ($(a).childNodes[1].src = + "images/Plants/ScaredyShroom/ScaredyShroomCry.gif"), + b.CryCheck(a))) + : e.R == b.R && + !b.Cry && + !b.Attacking && + e.Altitude > 0 && + e.Altitude < 3 && + b.NormalAttack(); + }, + PrivateBirth: function (c) { + var b = c.AttackedLX, + a = b - 46; + c.BulletClass = NewO({ + X: b, + R: c.R, + pixelLeft: a, + F: oGd.MB2, + }); + c.BulletEle = NewImg( + 0, + "images/Plants/ShroomBullet.gif", + "left:" + + a + + "px;top:" + + (c.pixelTop + 35) + + "px;visibility:hidden;z-index:" + + (c.zIndex + 2) + ); + c.MX = b + 9; + }, + PrivateDie: function (a) { + a.BulletEle = null; + }, NormalAttack: function () { - var a = this, - b = "PB" + Math.random(); + var c = this, + a = c.id, + d = "SSB" + Math.random(), + b = c.AttackedLX; EditEle( - a.BulletEle.cloneNode(false), + c.BulletEle.cloneNode(false), { - id: b, + id: d, }, 0, EDPZ ); oSym.addTask( - 15, - function (d) { - var c = $(d); - c && SetVisible(c); + 1, + function (k, e, f, g, h) { + var j = GetC(f), + i = oZ.getZ0(f, g); + i && i.Altitude == 1 + ? (i.getPea(i, 20, 0), + (SetStyle(e, { + left: h + 38 + "px", + }).src = "images/Plants/ShroomBulletHit.gif"), + oSym.addTask(10, ClearChild, [e])) + : (f += 5) < oS.W + ? ((e.style.left = (h += 5) + "px"), + oSym.addTask(1, arguments.callee, [k, e, f, g, h])) + : ClearChild(e); }, - [b] + [d, $(d), b, c.R, b - 46] ); + c.Attacking = 1; oSym.addTask( - 1, - function (f, j, h, c, n, i, m, k, o, g) { - var l, - e = GetC(n), - d = oZ["getZ" + c](n, i); - m < 1 && - g[i + "_" + e] && - k != e && - (PlayAudio("firepea"), - ++m && (h = 40), - (k = e), - (j.src = "images/Plants/PB" + m + c + ".png")); - d && d.Altitude == 1 - ? (d[ - { - "-1": "getSnowPea", - 0: "getPea", - 1: "getFirePea", - }[m] - ](d, h, c), - (SetStyle(j, { - left: o + 28 + "px", - }).src = "images/Plants/PeaBulletHit1.gif"), - oSym.addTask(10, ClearChild, [j])) - : (n += l = !c ? 5 : -5) < oS.W && n > 100 - ? ((j.style.left = (o += l) + "px"), - oSym.addTask(1, arguments.callee, [ - f, - j, - h, - c, - n, - i, - m, - k, - o, - g, - ])) - : ClearChild(j); + 10, + function (g, e) { + var f = $(g); + f && SetVisible(f); + oSym.addTask( + 130, + function (h) { + var i = $P[h]; + i && (i.Attacking = 0); + }, + [e] + ); }, - [ - b, - $(b), - 30, - 0, - a.AttackedLX, - a.R, - -1, - 0, - a.AttackedLX - 40, - oGd.$Torch, - ] + [d, a] ); }, - }), - oSnowRepeater = InheritO(oSnowPea, { - EName: "oSnowRepeater", - CName: "Snow Repeater", - SunNum: 250, - PicArr: [ - "images/Card/Plants/SnowRepeater.png", - "images/Plants/SnowRepeater/0.gif", - "images/Plants/SnowRepeater/SnowPea.gif", - "images/Plants/PB-10.gif", - "images/Plants/PeaBulletHit1.gif", - ], - Tooltip: - "Fires two frozen peas that damage and slow the enemy at a time", - Produce: - 'Fires two frozen peas that damage and slow the enemy at a time.

Harm:medium (each)
Launch speed:double

The dual-shot ice shooter is a shooting enthusiast, he often
People mention how accurate their shots are. Well, although things
Not so.', - NormalAttack1: oSnowPea.prototype.NormalAttack, - NormalAttack: function (a) { - this.NormalAttack1(); + CryCheck: function (a) { oSym.addTask( - 15, - function (c) { - var b = $P[c]; - b && b.NormalAttack1(); + 140, + function (b) { + var d = $P[b], + c, + f, + e; + if (d) { + c = (f = d.ArZ).length; + while (c--) { + (!(e = $Z[f[c]]) || + !e.PZ || + Math.abs(e.ZX - d.MX) > 120) && + f.splice(c, 1); + } + f.length + ? d.CryCheck(b) + : ((d.Cry = 0), + ($(b).childNodes[1].src = + "images/Plants/ScaredyShroom/ScaredyShroom.gif")); + } }, - [this.id] + [a] ); }, }), - oSeedRepeater = InheritO(oPeashooter, { - EName: "oSeedRepeater", - CName: "Repeater", - width: 73, - height: 71, - beAttackedPointR: 53, + oSeedScaredyShroom = InheritO(oFumeShroom, { + EName: "oSeedScaredyShroom", + CName: "Scaredy-shroom", + width: 57, + height: 81, + beAttackedPointR: 37, SunNum: 0, + Cry: 0, + ArZ: [], + Attacking: 0, PicArr: [ - "images/Card/Plants/Repeater.png", - "images/Plants/Repeater/0.gif", - "images/Plants/Repeater/Repeater.gif", - "images/Plants/PB00.gif", - "images/Plants/PeaBulletHit.gif", - ], - AudioArr: [ - "splat1", - "splat2", - "splat3", - "plastichit", - "shieldhit", - "shieldhit2", + "images/Card/Plants/ScaredyShroom.png", + "images/Plants/ScaredyShroom/0.gif", + "images/Plants/ScaredyShroom/ScaredyShroom.gif", + "images/Plants/ScaredyShroom/ScaredyShroomSleep.gif", + "images/Plants/ScaredyShroom/ScaredyShroomCry.gif", + "images/Plants/ShroomBullet.gif", + "images/Plants/ShroomBulletHit.gif", ], - Tooltip: "Fires two peas at a time", + Tooltip: "Long-ranged shooter that hides when enemies get near it", Produce: - 'Dual shooters can shoot two peas at once

Harm:Medium (per piece)
Launch speed:double

The dual shooter is fierce, and he grew up on the street. Hes not in now
Regardless of anyones opinion, whether its a plant or a zombie, he fights
Out of peas, is to keep others away from him. Actually, double
The launcher has been secretly longing for love.', - NormalAttack1: oPeashooter.prototype.NormalAttack, - NormalAttack: function (a) { - this.NormalAttack1(); - oSym.addTask( - 15, - function (c) { - var b = $P[c]; - b && b.NormalAttack1(); - }, - [this.id] - ); + '胆小菇是一种远程射手,敌人接近后会躲起来。

Harm:普通
Features:敌人接近后就停止攻击
白天睡觉

“谁在那?”胆小菇低声说,声音细微难辨。“
走开!我不想见任何人。除非……除非你是马
戏团的人。”', + GetDX: CPlants.prototype.GetDX, + getTriggerRange: CPlants.prototype.getTriggerRange, + getTriggerR: function (c) { + var b = (this.MinR = c > 2 ? c - 1 : 1), + a = (this.MaxR = c < oS.R ? Number(c) + 1 : c); + return [b, a]; }, - }), - oRepeater = InheritO(oPeashooter, { - EName: "oRepeater", - CName: "Repeater", - width: 73, - height: 71, - beAttackedPointR: 53, - SunNum: 200, - PicArr: [ - "images/Card/Plants/Repeater.png", - "images/Plants/Repeater/0.gif", - "images/Plants/Repeater/Repeater.gif", - "images/Plants/PB00.gif", - "images/Plants/PeaBulletHit.gif", - ], - AudioArr: [ - "splat1", - "splat2", - "splat3", - "plastichit", - "shieldhit", - "shieldhit2", - ], - Tooltip: "Fires two peas at a time", - Produce: - 'Dual shooters can shoot two peas at once

Harm:Medium (per piece)
Launch speed:double

The dual shooter is fierce, and he grew up on the street. Hes not in now
Regardless of anyones opinion, whether its a plant or a zombie, he fights
Out of peas, is to keep others away from him. Actually, double
The launcher has been secretly longing for love.', - NormalAttack1: oPeashooter.prototype.NormalAttack, - NormalAttack: function (a) { - this.NormalAttack1(); - oSym.addTask( - 15, - function (c) { - var b = $P[c]; - b && b.NormalAttack1(); - }, - [this.id] + TriggerCheck: function (e, c) { + var b = this, + a = b.id; + e.PZ && Math.abs(e.ZX - b.MX) < 121 && e.beAttacked + ? (b.ArZ.push(e.id), + !b.Cry && + ((b.Cry = 1), + ($(a).childNodes[1].src = + "images/Plants/ScaredyShroom/ScaredyShroomCry.gif"), + b.CryCheck(a))) + : e.R == b.R && + !b.Cry && + !b.Attacking && + e.Altitude > 0 && + e.Altitude < 3 && + b.NormalAttack(); + }, + PrivateBirth: function (c) { + var b = c.AttackedLX, + a = b - 46; + c.BulletClass = NewO({ + X: b, + R: c.R, + pixelLeft: a, + F: oGd.MB2, + }); + c.BulletEle = NewImg( + 0, + "images/Plants/ShroomBullet.gif", + "left:" + + a + + "px;top:" + + (c.pixelTop + 35) + + "px;visibility:hidden;z-index:" + + (c.zIndex + 2) ); + c.MX = b + 9; }, - }), - oSeedRepeater2 = InheritO(oRepeater, { - EName: "oSeedRepeater2", - CName: "Reverse Repeater", - SunNum: 0, - PicArr: [ - "images/Card/Plants/Repeater2.png", - "images/Plants/Repeater2/0.gif", - "images/Plants/Repeater2/Repeater2.gif", - "images/Plants/PB00.gif", - "images/Plants/PeaBulletHit.gif", - ], - NormalAttack1: function () { - var a = this, - b = "PB" + Math.random(); + PrivateDie: function (a) { + a.BulletEle = null; + }, + NormalAttack: function () { + var c = this, + a = c.id, + d = "SSB" + Math.random(), + b = c.AttackedLX; EditEle( - a.BulletEle.cloneNode(false), + c.BulletEle.cloneNode(false), { - id: b, + id: d, }, 0, EDPZ ); - oSym.addTask( - 15, - function (d) { - var c = $(d); - c && SetVisible(c); - }, - [b] - ); oSym.addTask( 1, - function (f, j, h, c, n, i, m, k, o, g) { - var l, - e = GetC(n), - d = oZ["getZ" + c](n, i); - m == 0 && - g[i + "_" + e] && - k != e && - (PlayAudio("firepea"), - (m = 1), - (h = 40), - (k = e), - (j.src = "images/Plants/PB" + m + c + ".png")); - d && d.Altitude == 1 - ? (d[ - { - "-1": "getSnowPea", - 0: "getPea", - 1: "getFirePea", - }[m] - ](d, h, c), - (SetStyle(j, { - left: o + 28 + "px", - width: "52px", - height: "46px", - }).src = "images/Plants/PeaBulletHit.gif"), - oSym.addTask(10, ClearChild, [j])) - : (n += l = !c ? 5 : -5) < oS.W && n > 100 - ? ((j.style.left = (o += l) + "px"), - oSym.addTask(1, arguments.callee, [ - f, - j, - h, - c, - n, - i, - m, - k, - o, - g, - ])) - : ClearChild(j); - }, - [ - b, - $(b), - 20, - 1, - a.AttackedLX + 30, - a.R, - 0, - 0, - a.AttackedRX, - oGd.$Torch, - ] - ); - }, - getTriggerRange: function (a, b, c) { - return [[100, b + 25, 1]]; - }, - }), - oRepeater2 = InheritO(oRepeater, { - EName: "oRepeater2", - CName: "Reverse Repeater", - PicArr: [ - "images/Card/Plants/Repeater2.png", - "images/Plants/Repeater2/0.gif", - "images/Plants/Repeater2/Repeater2.gif", - "images/Plants/PB00.gif", - "images/Plants/PeaBulletHit.gif", - ], - NormalAttack1: function () { - var a = this, - b = "PB" + Math.random(); - EditEle( - a.BulletEle.cloneNode(false), - { - id: b, + function (k, e, f, g, h) { + var j = GetC(f), + i = oZ.getZ0(f, g); + i && i.Altitude == 1 + ? (i.getPea(i, 20, 0), + (SetStyle(e, { + left: h + 38 + "px", + }).src = "images/Plants/ShroomBulletHit.gif"), + oSym.addTask(10, ClearChild, [e])) + : (f += 5) < oS.W + ? ((e.style.left = (h += 5) + "px"), + oSym.addTask(1, arguments.callee, [k, e, f, g, h])) + : ClearChild(e); }, - 0, - EDPZ + [d, $(d), b, c.R, b - 46] ); + c.Attacking = 1; oSym.addTask( - 15, - function (d) { - var c = $(d); - c && SetVisible(c); + 10, + function (g, e) { + var f = $(g); + f && SetVisible(f); + oSym.addTask( + 130, + function (h) { + var i = $P[h]; + i && (i.Attacking = 0); + }, + [e] + ); }, - [b] + [d, a] ); + }, + CryCheck: function (a) { oSym.addTask( - 1, - function (f, j, h, c, n, i, m, k, o, g) { - var l, - e = GetC(n), - d = oZ["getZ" + c](n, i); - m == 0 && - g[i + "_" + e] && - k != e && - (PlayAudio("firepea"), - (m = 1), - (h = 40), - (k = e), - (j.src = "images/Plants/PB" + m + c + ".png")); - d && d.Altitude == 1 - ? (d[ - { - "-1": "getSnowPea", - 0: "getPea", - 1: "getFirePea", - }[m] - ](d, h, c), - (SetStyle(j, { - left: o + 28 + "px", - width: "52px", - height: "46px", - }).src = "images/Plants/PeaBulletHit.gif"), - oSym.addTask(10, ClearChild, [j])) - : (n += l = !c ? 5 : -5) < oS.W && n > 100 - ? ((j.style.left = (o += l) + "px"), - oSym.addTask(1, arguments.callee, [ - f, - j, - h, - c, - n, - i, - m, - k, - o, - g, - ])) - : ClearChild(j); + 140, + function (b) { + var d = $P[b], + c, + f, + e; + if (d) { + c = (f = d.ArZ).length; + while (c--) { + (!(e = $Z[f[c]]) || + !e.PZ || + Math.abs(e.ZX - d.MX) > 120) && + f.splice(c, 1); + } + f.length + ? d.CryCheck(b) + : ((d.Cry = 0), + ($(b).childNodes[1].src = + "images/Plants/ScaredyShroom/ScaredyShroom.gif")); + } }, - [ - b, - $(b), - 20, - 1, - a.AttackedLX + 30, - a.R, - 0, - 0, - a.AttackedRX, - oGd.$Torch, - ] + [a] ); }, - getTriggerRange: function (a, b, c) { - return [[100, b + 25, 1]]; - }, }), - oThreepeater = InheritO(oPeashooter, { - EName: "oThreepeater", - CName: "Threepeater", - width: 73, - height: 80, - beAttackedPointR: 53, - SunNum: 325, + oHypnoShroom = InheritO(oFumeShroom, { + EName: "oHypnoShroom", + CName: "Hypno-shroom", + width: 71, + height: 78, + beAttackedPointL: 10, + beAttackedPointR: 61, + SunNum: 75, + coolTime: 30, + HP: 0, PicArr: [ - "images/Card/Plants/Threepeater.png", - "images/Plants/Threepeater/0.gif", - "images/Plants/Threepeater/Threepeater.gif", - "images/Plants/PB00.gif", - "images/Plants/PeaBulletHit.gif", - "images/Plants/FireBulletHit.png", - ], - AudioArr: [ - "splat1", - "splat2", - "splat3", - "plastichit", - "shieldhit", - "shieldhit2", + "images/Card/Plants/HypnoShroom.png", + "images/Plants/HypnoShroom/0.gif", + "images/Plants/HypnoShroom/HypnoShroom.gif", + "images/Plants/HypnoShroom/HypnoShroomSleep.gif", ], - Tooltip: "Shoots peas in three lanes", + Tooltip: "Makes a zombie fight for you", Produce: - 'A three-line shooter can shoot peas on three lines at the same time.

Harm:Ordinary (each)
Scope:three lines

The three-line shooter enjoys reading, playing chess and sitting in the park. he
Also enjoys performing, especially modern jazz. "Im looking for
The other half of my life," he said. The third-line shooters favorite number
The word is 5.', - getTriggerR: function (a) { - return [a > 2 ? a - 1 : 1, a < oS.R ? Number(a) + 1 : a]; - }, - PrivateBirth: function (f) { - var e = f.AttackedLX, - d = e - 40, - a, - c = f.oTrigger, - b; - f.BulletClass = []; - f.BulletEle = []; - for (b in c) { - f.BulletClass.push( - NewO({ - X: e, - R: b, - D: 0, - Attack: 20, - Kind: 0, - ChangeC: 0, - pixelLeft: d, - F: oGd.MB1, - }) - ); - f.BulletEle.push( - NewImg( - 0, - "images/Plants/PB00.gif", - "left:" + - d + - "px;top:" + - (GetY(b) - 50) + - "px;visibility:hidden;z-index:" + - (3 * b + 2) - ) - ); - } - }, - PrivateDie: function (a) { - a.BulletEle.length = 0; - }, - NormalAttack: function () { - var a, - c = this, - d, - b = 0; - for (a in c.oTrigger) { - EditEle( - c.BulletEle[b++].cloneNode(false), - { - id: (d = "PB" + Math.random()), - }, - 0, - EDPZ - ); - oSym.addTask( - 15, - function (f) { - var e = $(f); - e && SetVisible(e); - }, - [d] - ); - oSym.addTask( - 1, - function (h, l, j, e, p, k, o, m, q, i) { - var n, - g = GetC(p), - f = oZ["getZ" + e](p, k); - o == 0 && - i[k + "_" + g] && - m != g && - (PlayAudio("firepea"), - (o = 1), - (j = 40), - (m = g), - (l.src = "images/Plants/PB" + o + e + ".png")); - f && f.Altitude == 1 - ? (f[ - { - "-1": "getSnowPea", - 0: "getPea", - 1: "getFirePea", - }[o] - ](f, j, e), - (SetStyle(l, { - left: q + 28 + "px", - }).src = [ - "images/Plants/PeaBulletHit.gif", - "images/Plants/FireBulletHit.png", - ][o]), - oSym.addTask(10, ClearChild, [l])) - : (p += n = !e ? 5 : -5) < oS.W && p > 100 - ? ((l.style.left = (q += n) + "px"), - oSym.addTask(1, arguments.callee, [ - h, - l, - j, - e, - p, - k, - o, - m, - q, - i, - ])) - : ClearChild(l); - }, - [ - d, - $(d), - 20, - 0, - c.AttackedLX, - a, - 0, - 0, - c.AttackedLX - 40, - oGd.$Torch, - ] - ); + '当僵尸吃下魅惑菇后,他将会掉转方向为你作
战。

Instructions:单独使用,接触生效
Features:让一只僵尸为你作战
白天睡觉

魅惑菇声称:“僵尸们是我们的朋友,他们被
严重误解了,僵尸们在我们的生态环境里扮演着
重要角色。我们可以也应当更努力地让他们学
会用我们的方式来思考。”', + InitTrigger: function () {}, + getHurt: function (d, b, a) { + var c = this; + switch (b) { + case 3: + (c.HP -= a) < 1 && c.Die(); + break; + case 0: + !c.Sleep && d.bedevil(d); + PlayAudio("mindcontrolled"); + c.Die(); + break; + default: + c.Die(1); } }, }), - oSeedThreepeater = InheritO(oPeashooter, { - EName: "oSeedThreepeater", - CName: "Threepeater", - width: 73, - height: 80, - beAttackedPointR: 53, + oSeedHypnoShroom = InheritO(oFumeShroom, { + EName: "oSeedHypnoShroom", + CName: "Hypno-shroom", + width: 71, + height: 78, + beAttackedPointL: 10, + beAttackedPointR: 61, SunNum: 0, + coolTime: 30, + HP: 0, PicArr: [ - "images/Card/Plants/Threepeater.png", - "images/Plants/Threepeater/0.gif", - "images/Plants/Threepeater/Threepeater.gif", - "images/Plants/PB00.gif", - "images/Plants/PeaBulletHit.gif", - "images/Plants/FireBulletHit.png", - ], - AudioArr: [ - "splat1", - "splat2", - "splat3", - "plastichit", - "shieldhit", - "shieldhit2", + "images/Card/Plants/HypnoShroom.png", + "images/Plants/HypnoShroom/0.gif", + "images/Plants/HypnoShroom/HypnoShroom.gif", + "images/Plants/HypnoShroom/HypnoShroomSleep.gif", ], - Tooltip: "Shoots peas in three lanes", + Tooltip: "Makes a zombie fight for you", Produce: - 'A three-line shooter can shoot peas on three lines at the same time.

Harm:Ordinary (each)
Scope:three lines

The three-line shooter enjoys reading, playing chess and sitting in the park. he
Also enjoys performing, especially modern jazz. "Im looking for
The other half of my life," he said. The third-line shooters favorite number
The word is 5.', - getTriggerR: function (a) { - return [a > 2 ? a - 1 : 1, a < oS.R ? Number(a) + 1 : a]; - }, - PrivateBirth: function (f) { - var e = f.AttackedLX, - d = e - 40, - a, - c = f.oTrigger, - b; - f.BulletClass = []; - f.BulletEle = []; - for (b in c) { - f.BulletClass.push( - NewO({ - X: e, - R: b, - D: 0, - Attack: 20, - Kind: 0, - ChangeC: 0, - pixelLeft: d, - F: oGd.MB1, - }) - ); - f.BulletEle.push( - NewImg( - 0, - "images/Plants/PB00.gif", - "left:" + - d + - "px;top:" + - (GetY(b) - 50) + - "px;visibility:hidden;z-index:" + - (3 * b + 2) - ) - ); - } - }, - PrivateDie: function (a) { - a.BulletEle.length = 0; - }, - NormalAttack: function () { - var a, - c = this, - d, - b = 0; - for (a in c.oTrigger) { - EditEle( - c.BulletEle[b++].cloneNode(false), - { - id: (d = "PB" + Math.random()), - }, - 0, - EDPZ - ); - oSym.addTask( - 15, - function (f) { - var e = $(f); - e && SetVisible(e); - }, - [d] - ); - oSym.addTask( - 1, - function (h, l, j, e, p, k, o, m, q, i) { - var n, - g = GetC(p), - f = oZ["getZ" + e](p, k); - o == 0 && - i[k + "_" + g] && - m != g && - (PlayAudio("firepea"), - (o = 1), - (j = 40), - (m = g), - (l.src = "images/Plants/PB" + o + e + ".png")); - f && f.Altitude == 1 - ? (f[ - { - "-1": "getSnowPea", - 0: "getPea", - 1: "getFirePea", - }[o] - ](f, j, e), - (SetStyle(l, { - left: q + 28 + "px", - }).src = [ - "images/Plants/PeaBulletHit.gif", - "images/Plants/FireBulletHit.png", - ][o]), - oSym.addTask(10, ClearChild, [l])) - : (p += n = !e ? 5 : -5) < oS.W && p > 100 - ? ((l.style.left = (q += n) + "px"), - oSym.addTask(1, arguments.callee, [ - h, - l, - j, - e, - p, - k, - o, - m, - q, - i, - ])) - : ClearChild(l); - }, - [ - d, - $(d), - 20, - 0, - c.AttackedLX, - a, - 0, - 0, - c.AttackedLX - 40, - oGd.$Torch, - ] - ); + '当僵尸吃下魅惑菇后,他将会掉转方向为你作
战。

Instructions:单独使用,接触生效
Features:让一只僵尸为你作战
白天睡觉

魅惑菇声称:“僵尸们是我们的朋友,他们被
严重误解了,僵尸们在我们的生态环境里扮演着
重要角色。我们可以也应当更努力地让他们学
会用我们的方式来思考。”', + InitTrigger: function () {}, + getHurt: function (d, b, a) { + var c = this; + switch (b) { + case 3: + (c.HP -= a) < 1 && c.Die(); + break; + case 0: + !c.Sleep && d.bedevil(d); + PlayAudio("mindcontrolled"); + c.Die(); + break; + default: + c.Die(1); } }, }), - oGatlingPea = InheritO(oPeashooter, { - EName: "oGatlingPea", - CName: "Gatling Pea", - width: 88, - height: 84, - beAttackedPointR: 68, - SunNum: 250, + oIceShroom = InheritO(oFumeShroom, { + EName: "oIceShroom", + CName: "Ice-shroom", + width: 83, + height: 75, + beAttackedPointR: 63, + SunNum: 75, + coolTime: 50, PicArr: [ - "images/Card/Plants/GatlingPea.png", - "images/Plants/GatlingPea/0.gif", - "images/Plants/GatlingPea/GatlingPea.gif", - "images/Plants/PB00.gif", - "images/Plants/PeaBulletHit.gif", - ], - AudioArr: [ - "splat1", - "splat2", - "splat3", - "plastichit", - "shieldhit", - "shieldhit2", + "images/Card/Plants/IceShroom.png", + "images/Plants/IceShroom/0.gif", + "images/Plants/IceShroom/IceShroom.gif", + "images/Plants/IceShroom/IceShroomSleep.gif", + "images/Plants/IceShroom/Snow.gif", + "images/Plants/IceShroom/icetrap.gif", ], - Tooltip: - 'shoots four peas at a time

(requires repeater)', + AudioArr: ["frozen", "wakeup"], + Tooltip: "Temporarily immobilizes all zombies on the screen", Produce: - 'The machine gun shooter can fire four peas at once

Harm:medium (each)
Launch speed:four times
Can be planted on dual launchers

He was worried, and they said to him in unison: "When Gatlin announced that he was going to join the army, his parents were very excited,
He was worried, and they said to him in unison: "My dear,
Its too dangerous. "Gatlin refuses to budge," life is in danger
Dangerous," he replied, and in his eyes,
Flashes of steely faith.', - PrivateBirth: function (c) { - var b = c.AttackedLX, - a = b - 40; - c.BulletClass = NewO({ - X: b, - R: c.R, - D: 0, - Attack: 20, - Kind: c.BKind, - ChangeC: 0, - pixelLeft: a, - F: oGd.MB1, - }); - c.BulletEle = NewImg( - 0, - c.PicArr[3], - "left:" + - a + - "px;top:" + - (c.pixelTop + 8) + - "px;visibility:hidden;z-index:" + - (c.zIndex + 2) - ); + '寒冰菇,能短暂的冻结屏幕上所有僵尸。

Harm:非常低,冻结僵尸
Scope:屏幕上的所有僵尸
用法:单独使用,立即生效
白天睡觉

寒冰菇皱着眉头,倒不是因为它不高兴或不满
意,只是因为,它儿时因受创伤而
遗留下了面瘫。', + GetDX: CPlants.prototype.GetDX, + GetDY: CPlants.prototype.GetDY, + InitTrigger: function () {}, + PrivateDie: function (a) {}, + PrivateBirth: function (a) { + !oS.DKind + ? (a.NormalAttack(a.id), (a.getHurt = function (d, c, b) {})) + : (a.getHurt = CPlants.prototype.getHurt); }, - CanGrow: function (b, a, d) { - var c = b[1]; - return c && c.EName == "oRepeater"; + WakeUP: function (a) { + var b = a.id; + a.Sleep = 0; + $(b).childNodes[1].src = "images/Plants/IceShroom/IceShroom.gif"; + a.NormalAttack(b); }, - NormalAttack1: oPeashooter.prototype.NormalAttack, NormalAttack: function (a) { - this.NormalAttack1(); - oSym.addTask( - 15, - function (d, b) { - var c = $P[d]; - c && c.NormalAttack1(); - --b && oSym.addTask(15, arguments.callee, [d, b]); - }, - [this.id, 3] - ); - }, - }), - oSplitPea = InheritO(oPeashooter, { - EName: "oSplitPea", - CName: "Split Pea", - width: 92, - height: 72, - beAttackedPointR: 72, - SunNum: 125, - PicArr: [ - "images/Card/Plants/SplitPea.png", - "images/Plants/SplitPea/0.gif", - "images/Plants/SplitPea/SplitPea.gif", - "images/Plants/PB00.gif", - "images/Plants/PB01.gif", - "images/Plants/PeaBulletHit.gif", - ], - AudioArr: [ - "splat1", - "splat2", - "splat3", - "plastichit", - "shieldhit", - "shieldhit2", - ], - Tooltip: "Shoots peas forward and backwards", - Produce: - 'A split shooter that can fire peas in both forward and back directions.

Harm:medium
Scope:front and back
Launch speed:Normal speed at the front, double speed at the back

Split Sagittarius: "Yes, Im a Gemini. I know,
This is really surprising. However, there are two heads, or the actual
on the top, with a head and a head-like thing, on the back,
Great help for my defense on this line.', - GetDX: function () { - return -55; - }, - getShadow: function (a) { - return "left:5px;top:" + (a.height - 22) + "px"; - }, - getTriggerRange: function (a, b, c) { - return [ - [100, b + 25, 1], - [b + 26, oS.W, 0], - ]; - }, - PrivateBirth: function (c) { - var b = c.PicArr, - a = - "px;top:" + - (c.pixelTop + 3) + - "px;visibility:hidden;z-index:" + - (c.zIndex + 2); - (c.BulletEle = [ - NewImg(0, b[3], "left:" + (c.AttackedLX - 40) + a), - NewImg(0, b[4], "left:" + (c.AttackedRX - 16) + a), - ]), - (c.aTri = [0, 0]); - }, - PrivateDie: function (a) { - a.BulletEle.length = 0; - }, - TriggerCheck: function (b, a) { - if (this.aTri[a]) { - return; - } - if (this.AttackCheck2(b)) { - ++this.aTri[a]; - this.aTri[0] && this.aTri[1] && (this.canTrigger = 0); - this.CheckLoop(b.id, a); - } - }, - AttackCheck1: function (b, f) { - var e = this, - c = $Z[b], - a; - if (c && c.PZ && c.R == e.R) { - a = c.ZX > e.AttackedLX + 25 ? 0 : 1; - f == a - ? e.AttackCheck2(c) - ? e.CheckLoop(b, f) - : --e.aTri[f] - : (++e.aTri[a], --e.aTri[f]); - } else { - --e.aTri[f]; - } - e.canTrigger = e.aTri[0] && e.aTri[1] ? 0 : 1; - }, - CheckLoop: function (a, b) { - this.NormalAttack(b); oSym.addTask( - 140, - function (c, e, g) { - var f; - (f = $P[c]) && f.AttackCheck1(e, g); + 100, + function (c) { + var f = $P[c]; + if (f) { + PlayAudio("frozen"); + var e, + d, + b = "Snow_" + Math.random(); + for (d in $Z) { + (e = $Z[d]).ZX < 901 && e.getFreeze(e, d); + } + oSym.addTask( + 40, + function (g) { + ClearChild(g); + }, + [ + NewEle( + b, + "div", + "position:absolute;left:0;top:0;width:900px;height:600px;z-index:10;filter:alpha(opacity=50);opacity:.5;background:#9CF url(images/Plants/IceShroom/Snow.gif) no-repeat scroll " + + (f.pixelLeft - 197) + + "px " + + (f.pixelTop - 80) + + "px", + 0, + EDPZ + ), + ] + ); + f.Die(); + } }, - [this.id, a, b] + [a] ); }, - NormalAttack: function (c) { - var d = this, - e, - a = c - ? (oSym.addTask( - 15, - function (f) { - $P[f] && b(1); - }, - [d.id] - ), - d.AttackedRX - 16) - : d.AttackedLX - 40, - b = function () { - EditEle( - d.BulletEle[c].cloneNode(false), - { - id: (e = "PB" + Math.random()), - }, - 0, - EDPZ - ); - oSym.addTask( - 15, - function (g) { - var f = $(g); - f && SetVisible(f); - }, - [e] - ); - oSym.addTask( - 1, - function (i, m, k, f, q, l, p, n, r, j) { - var o, - h = GetC(q), - g = oZ["getZ" + f](q, l); - p == 0 && - j[l + "_" + h] && - n != h && - (PlayAudio("firepea"), - (p = 1), - (k = 40), - (n = h), - (m.src = "images/Plants/PB" + p + f + ".png")); - g && g.Altitude == 1 - ? (g[ - { - "-1": "getSnowPea", - 0: "getPea", - 1: "getFirePea", - }[p] - ](g, k, f), - (SetStyle(m, { - left: r + 28 + "px", - }).src = [ - "images/Plants/PeaBulletHit.gif", - "images/Plants/FireBulletHit.png", - ][m]), - oSym.addTask(10, ClearChild, [m])) - : (q += o = !f ? 5 : -5) < oS.W && q > 100 - ? ((m.style.left = (r += o) + "px"), - oSym.addTask(1, arguments.callee, [ - i, - m, - k, - f, - q, - l, - p, - n, - r, - j, - ])) - : ClearChild(m); - }, - [e, $(e), 20, c, d.AttackedLX, d.R, 0, 0, a, oGd.$Torch] - ); - }; - b(); - }, - }), - oSunFlower = InheritO(CPlants, { - EName: "oSunFlower", - CName: "SunFlower", - width: 73, - height: 74, - beAttackedPointR: 53, - SunNum: 50, - PicArr: [ - "images/Card/Plants/SunFlower.png", - "images/Plants/SunFlower/0.gif", - "images/Plants/SunFlower/SunFlower1.gif", - "images/Plants/SunFlower/SunFlower.gif", - ], - Tooltip: "Gives you additional sun", - Produce: - 'Sunflowers are essential for you to produce extra sun. Try planting as many as you can!

Sun production: normal

Sunflower can\'t resist bouncing to the beat. Which beat is that? Why, the life-giving jazzy rhythm of the Earth itself, thumping at a frequency only Sunflower can hear.', - /* - BirthStyle: function (c, e, b, a) { - var d = b.childNodes[1]; - d.src = "images/Plants/SunFlower/SunFlower.gif"; - d.style.clip = "rect(0,auto,74px,0)"; - d.style.height = "148px"; - EditEle( - b, - { - id: e, - }, - a, - EDPZ - ); - }, - */ // unused stuff lol (why didnt they just remove this instead of making both of the gifs like that) - ChangePosition: function (c, a) { - var b = c.childNodes[1]; - a - ? SetStyle(b, { - clip: "rect(74px,auto,auto,auto)", - top: "-74px", - }) - : SetStyle(b, { - clip: "rect(auto,auto,74px,auto)", - top: 0, - }); - }, - PrivateBirth: function (a) { - oS.ProduceSun - ? oSym.addTask( - 500, - function (d, c, b) { - $P[d] && - (a.ChangePosition($(d), 0), - oSym.addTask( - 100, - function (h, g, f, e) { - $P[h] && - (AppearSun( - Math.floor( - g + Math.random() * 41 - ), - f, - 50, - 0 - ), - oSym.addTask( - 100, - function (i) { - $P[i] && - a.ChangePosition($(i), 0); - }, - [h] - ), - oSym.addTask(2400, e, [h, g, f])); - }, - [d, c, b, arguments.callee] - )); - }, - [a.id, GetX(a.C) - 40, GetY(a.R)] - ) - : (a.getHurt = function (f, c, b) { - var e = this; - switch (c) { - case 0: - var d = (e.HP -= b); - !(d % 100) && - (AppearSun( - Math.floor( - GetX(e.C) - 40 + Math.random() * 41 - ), - GetY(e.R), - 25, - 0 - ), - oSym.addTask( - 50, - function (h, g) { - AppearSun( - Math.floor( - GetX(h) - - 40 + - Math.random() * 41 - ), - GetY(g), - 25, - 0 - ); - }, - [e.C, e.R] - ), - d < 1 - ? e.Die() - : oSym.addTask( - 50, - function (h, g) { - AppearSun( - Math.floor( - GetX(h) - - 40 + - Math.random() * 41 - ), - GetY(g), - 25, - 0 - ); - }, - [e.C, e.R] - )); - break; - case 3: - (e.HP -= b) < 1 && e.Die(); - break; - default: - e.Die(1); - } - }); - }, - InitTrigger: function () {}, }), - oTwinSunflower = InheritO(oSunFlower, { - EName: "oTwinSunflower", - CName: "Twin Sunflower", + oSeedIceShroom = InheritO(oSeedFumeShroom, { + EName: "oSeedIceShroom", + CName: "Ice-shroom", width: 83, - height: 84, + height: 75, beAttackedPointR: 63, - SunNum: 150, + SunNum: 0, + coolTime: 50, PicArr: [ - "images/Card/Plants/TwinSunflower.png", - "images/Plants/TwinSunflower/0.gif", - "images/Plants/TwinSunflower/TwinSunflower1.gif", - "images/Plants/TwinSunflower/TwinSunflower.gif", + "images/Card/Plants/IceShroom.png", + "images/Plants/IceShroom/0.gif", + "images/Plants/IceShroom/IceShroom.gif", + "images/Plants/IceShroom/IceShroomSleep.gif", + "images/Plants/IceShroom/Snow.gif", + "images/Plants/IceShroom/icetrap.gif", ], - Tooltip: - 'Gives twice as much sun as a sunflower

(requires sunflower)', + AudioArr: ["frozen", "wakeup"], + Tooltip: "Temporarily immobilizes all zombies on the screen", Produce: - 'Twin sunflowers produce twice as much sunlight as regular sunflowers.

Sunlight Yield:double
Can be planted on common sunflowers

Its a crazy night where forbidden science and technology make double
The cell sunflower came to this world. Lightning, thunder, gust of wind, roar
, are expressing the worlds rejection of him. but everything
To no avail, Gemini Sunflower is still alive!', - CanGrow: function (b, a, d) { - var c = b[1]; - return c && c.EName == "oSunFlower"; - }, - /* -BirthStyle: function (c, e, b, a) { - var d = b.childNodes[1]; - d.src = "images/Plants/TwinSunflower/TwinSunflower.gif"; - d.style.clip = "rect(0,auto,84px,0)"; - d.style.height = "168px"; - EditEle( - b, - { - id: e, + '寒冰菇,能短暂的冻结屏幕上所有僵尸。

Harm:非常低,冻结僵尸
Scope:屏幕上的所有僵尸
用法:单独使用,立即生效
白天睡觉

寒冰菇皱着眉头,倒不是因为它不高兴或不满
意,只是因为,它儿时因受创伤而
遗留下了面瘫。', + GetDX: CPlants.prototype.GetDX, + GetDY: CPlants.prototype.GetDY, + InitTrigger: function () {}, + PrivateDie: function (a) {}, + PrivateBirth: function (a) { + !oS.DKind + ? (a.NormalAttack(a.id), (a.getHurt = function (d, c, b) {})) + : (a.getHurt = CPlants.prototype.getHurt); }, - a, - EDPZ - ); -}, -*/ // same thing here - ChangePosition: function (c, a) { - var b = c.childNodes[1]; - a - ? SetStyle(b, { - clip: "rect(84px,auto,auto,auto)", - top: "-84px", - }) - : SetStyle(b, { - clip: "rect(auto,auto,84px,auto)", - top: 0, - }); + WakeUP: function (a) { + var b = a.id; + a.Sleep = 0; + $(b).childNodes[1].src = "images/Plants/IceShroom/IceShroom.gif"; + a.NormalAttack(b); }, - PrivateBirth: function (a) { - var b = GetX(a.C); + NormalAttack: function (a) { oSym.addTask( - 500, - function (f, d, c, e) { - $P[f] && - (a.ChangePosition($(f), 0), + 100, + function (c) { + var f = $P[c]; + if (f) { + PlayAudio("frozen"); + var e, + d, + b = "Snow_" + Math.random(); + for (d in $Z) { + (e = $Z[d]).ZX < 901 && e.getFreeze(e, d); + } oSym.addTask( - 100, - function (k, h, g, j, i) { - AppearSun( - Math.floor(h + Math.random() * 21), - j, - 50, - 0 - ), - AppearSun( - Math.floor(g + Math.random() * 21), - j, - 50, - 0 - ), - oSym.addTask( - 100, - function (l) { - $P[l] && a.ChangePosition($(l), 0); - }, - [k] - ), - oSym.addTask(2400, i, [k, h, g, j]); + 40, + function (g) { + ClearChild(g); }, - [f, d, c, e, arguments.callee] - )); + [ + NewEle( + b, + "div", + "position:absolute;left:0;top:0;width:900px;height:600px;z-index:10;filter:alpha(opacity=50);opacity:.5;background:#9CF url(images/Plants/IceShroom/Snow.gif) no-repeat scroll " + + (f.pixelLeft - 197) + + "px " + + (f.pixelTop - 80) + + "px", + 0, + EDPZ + ), + ] + ); + f.Die(); + } }, - [a.id, b - 40, b - 20, GetY(a.R)] + [a] ); }, }), - oPumpkinHead = InheritO(CPlants, { - EName: "oPumpkinHead", - CName: "Pumpkin", - width: 97, - height: 67, + oSunShroom = InheritO(oFumeShroom, { + EName: "oSunShroom", + CName: "Sun-shroom", + width: 59, + height: 61, beAttackedPointL: 15, - beAttackedPointR: 82, - SunNum: 125, - PKind: 2, - HP: 4e3, - coolTime: 30, - zIndex: 1, + beAttackedPointR: 44, + SunNum: 25, + Stature: -1, + Status: 0, PicArr: [ - "images/Card/Plants/PumpkinHead.png", - "images/Plants/PumpkinHead/0.gif", - "images/Plants/PumpkinHead/PumpkinHead.gif", - "images/Plants/PumpkinHead/PumpkinHead1.gif", - "images/Plants/PumpkinHead/PumpkinHead2.gif", - "images/Plants/PumpkinHead/Pumpkin_damage1.gif", - "images/Plants/PumpkinHead/Pumpkin_damage2.gif", - "images/Plants/PumpkinHead/Pumpkin_back.gif", + "images/Card/Plants/SunShroom.png", + "images/Plants/SunShroom/0.gif", + "images/Plants/SunShroom/SunShroom2.gif", + "images/Plants/SunShroom/SunShroomSleep.gif", + "images/Plants/SunShroom/SunShroom.gif", ], - Tooltip: "Protects plants that are within its shell", + Tooltip: "Gives small sun at first and normal sun later", Produce: - 'Pumpkin head, can use his shell to protect other plants.

Toughness:high
Features:可以种在其他植物上

Pumpkin head hasnt been received recently, about his cousin Resfield
information. Clearly, Renfield is a big star, a kind of...
What is a sports star called...? Pegg jump ball big
division? Pumpkin Head doesnt understand what exercise is anyway, he just wants to do well
his own work.', - CanGrow: function (c, b, d) { - var a = b + "_" + d; - return c[2] - ? 1 - : oGd.$LF[b] == 1 - ? !(d < 1 || d > 9 || oGd.$Crater[a] || oGd.$Tombstones[a]) - : c[0]; - }, - GetDY: function (b, c, a) { - return a[0] ? -12 : -5; - }, - HurtStatus: 0, - getHurt: function (e, c, b) { - var d = this, - f = d.id, - a = $(f); - switch (true) { - case c && c < 3: - d.Die(1); - break; - case (d.HP -= b) < 1: - d.Die(); - break; - case d.HP < 1334: - d.HurtStatus < 2 && - ((d.HurtStatus = 2), - (a.childNodes[1].src = - "images/Plants/PumpkinHead/Pumpkin_damage2.gif")); - break; - case d.HP < 2667: - d.HurtStatus < 1 && - ((d.HurtStatus = 1), - (a.childNodes[1].src = - "images/Plants/PumpkinHead/Pumpkin_damage1.gif"), - ($(f + "_2").src = - "images/Plants/PumpkinHead/Pumpkin_back.gif")); - } - }, + '阳光菇开始提供少量阳光,稍后提供正常数量
阳光。

生产阳光:开始低,之后正常
白天睡觉

阳光菇讨厌阳光。恨到当它内部产生点阳光时
,就尽可能快的吐出来。它就是不能忍受这个
。对它来说,阳光令人厌恶。', + GetDX: CPlants.prototype.GetDX, + GetDY: CPlants.prototype.GetDY, InitTrigger: function () {}, + PrivateDie: function (a) {}, + PrivateBirth: function () {}, BirthStyle: function (c, d, b, a) { - b.childNodes[1].src = "images/Plants/PumpkinHead/PumpkinHead1.gif"; + oS.DKind + ? ((c.canTrigger = 0), + (c.Sleep = 1), + (b.childNodes[1].src = + "images/Plants/SunShroom/SunShroomSleep.gif")) + : (oSym.addTask( + 600, + function (h, g, f) { + var e = $P[h]; + e && e.ProduceSun(e, g, f); + }, + [d, GetX(c.C) - 40, GetY(c.R)] + ), + oSym.addTask( + 12e3, + function (f) { + var e = $P[f]; + e && + ((e.Sleep = 0), + ($(f).childNodes[1].src = + "images/Plants/SunShroom/SunShroom.gif"), + (e.Status = 1)); + }, + [d] + )); EditEle( b, { @@ -2799,88 +7122,290 @@ BirthStyle: function (c, e, b, a) { a, EDPZ ); - NewImg( - d + "_2", - "images/Plants/PumpkinHead/PumpkinHead2.gif", - "left:" + - c.pixelLeft + - "px;top:" + - c.pixelTop + - "px;z-index:" + - (c.zIndex - 2), - EDPZ - ); }, - PrivateDie: function (a) { - ClearChild($(a.id + "_2")); + ProduceSun: function (a, c, b) { + AppearSun( + Math.floor(c + Math.random() * 41), + b, + !a.Status ? 15 : 25, + 0 + ), + oSym.addTask( + 2400, + function (g, f, e) { + var d = $P[g]; + d && d.ProduceSun(d, f, e); + }, + [a.id, c, b] + ); + }, + WakeUP: function (a) { + var b = a.id; + a.ProduceSun(a, GetX(a.C) - 40, GetY(a.R)); + $(b).childNodes[1].src = "images/Plants/SunShroom/SunShroom2.gif"; + a.Sleep = 0; + oSym.addTask( + 12e3, + function (d) { + var c = $P[d]; + c && + (($(d).childNodes[1].src = + "images/Plants/SunShroom/SunShroom.gif"), + (c.Status = 1)); + }, + [b] + ); }, }), - oSeedPumpkinHead = InheritO(CPlants, { - EName: "oSeedPumpkinHead", - CName: "Pumpkin", - width: 97, - height: 67, - beAttackedPointL: 15, - beAttackedPointR: 82, - SunNum: 0, - PKind: 2, - HP: 4e3, - coolTime: 30, - zIndex: 1, - PicArr: [ - "images/Card/Plants/PumpkinHead.png", - "images/Plants/PumpkinHead/0.gif", - "images/Plants/PumpkinHead/PumpkinHead.gif", - "images/Plants/PumpkinHead/PumpkinHead1.gif", - "images/Plants/PumpkinHead/PumpkinHead2.gif", - "images/Plants/PumpkinHead/Pumpkin_damage1.gif", - "images/Plants/PumpkinHead/Pumpkin_damage2.gif", - "images/Plants/PumpkinHead/Pumpkin_back.gif", - ], - Tooltip: "Protects plants that are within its shell", - Produce: - 'Pumpkin head, can use his shell to protect other plants.

Toughness:high
Features:可以种在其他植物上

Pumpkin head hasnt been received recently, about his cousin Resfield
information. Clearly, Renfield is a big star, a kind of...
What is a sports star called...? Pegg jump ball big
division? Pumpkin Head doesnt understand what exercise is anyway, he just wants to do well
his own work.', - CanGrow: function (c, b, d) { - var a = b + "_" + d; - return c[2] - ? 1 - : oGd.$LF[b] == 1 - ? !(d < 1 || d > 9 || oGd.$Crater[a] || oGd.$Tombstones[a]) - : c[0]; + oDoomShroom = InheritO(oFumeShroom, { + EName: "oDoomShroom", + CName: "Doom-shroom", + width: 102, + height: 91, + beAttackedPointR: 80, + coolTime: 50, + SunNum: 125, + AudioArr: ["doomshroom"], + PicArr: [ + "images/Card/Plants/DoomShroom.png", + "images/Plants/DoomShroom/0.gif", + "images/Plants/DoomShroom/DoomShroom.gif", + "images/Plants/DoomShroom/Sleep.gif", + "images/Plants/DoomShroom/BeginBoom.gif", + "images/Plants/DoomShroom/crater10.png", + "images/Plants/DoomShroom/crater11.png", + "images/Plants/DoomShroom/crater20.png", + "images/Plants/DoomShroom/crater21.png", + "images/Plants/DoomShroom/crater30.png", + "images/Plants/DoomShroom/crater31.png", + "images/Plants/DoomShroom/Boom.png", + ], + Tooltip: "Destroys a large area, leaving a crater in its wake", + Produce: + '毁灭菇可以摧毁大范围的僵尸,并留下一个不
能种植物的大弹坑。

Harm:极高
Scope:大范围内的所有僵尸
用法:单独使用,立即生效
Features:留下一个弹坑
白天睡觉

“你很幸运,我是和你一伙的,”毁灭菇说,“
我能摧毁任何你所珍视的东西,小菜一碟。”', + InitTrigger: function () {}, + BirthStyle: function (c, d, b, a) { + oS.DKind + ? ((c.Sleep = 1), (b.childNodes[1].src = c.PicArr[c.SleepGif])) + : ((c.Sleep = 0), + (c.getHurt = function () {}), + (b.childNodes[1].src = + "images/Plants/DoomShroom/BeginBoom.gif"), + c.NormalAttack(d)); + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); }, - GetDY: function (b, c, a) { - return a[0] ? -12 : -5; + WakeUP: function (a) { + var b = a.id; + a.Sleep = 0; + a.getHurt = function () {}; + $(b).childNodes[1].src = "images/Plants/DoomShroom/BeginBoom.gif"; + a.NormalAttack(b); + }, + NormalAttack: function (a) { + oSym.addTask( + 50, + function (c) { + PlayAudio("doomshroom"); + var d = $P[c], + q = c + "_Boom"; + if (d) { + var g = $(c), + l = d.R, + h = l > 3 ? l - 2 : 1, + f = Math.min(oS.R, l + 2), + n = d.pixelLeft - 240, + m = d.pixelRight + 240, + e, + k, + b = GetC(d.AttackedLX), + o, + r = l + "_" + b, + j = oGd.$; + do { + k = (e = oZ.getArZ(n, m, h)).length; + while (k--) { + e[k].getExplosion(); + } + } while (h++ < f); + d.Die(); + (o = j[r + "_" + 0]) && o.Die(); + (o = j[r + "_" + 2]) && o.Die(); + oGd.$Crater[r] = 2; + NewEle( + q, + "div", + "position:absolute;overflow:hidden;z-index:" + + (d.zIndex + 2) + + ";width:283px;height:324px;left:" + + (d.pixelLeft - 80) + + "px;top:" + + (d.pixelTop - 220) + + "px;background:url(images/Plants/DoomShroom/Boom.png) no-repeat", + 0, + EDPZ + ); + oSym.addTask( + 20, + function (i) { + ClearChild(i); + }, + [ + NewEle( + q, + "div", + "position:absolute;z-index:20;width:900px;height:600px;left:0;top:0;background:#FFF;*filter:alpha(opacity=50);opacity:.5", + 0, + EDPZ + ), + ] + ); + ImgSpriter( + q, + c, + [ + ["0 0", 10, 1], + ["-283px 0", 10, 2], + ["-566px 0", 10, 3], + ["-849px 0", 10, 4], + ["-1132px 0", 10, 5], + ["-1415px 0", 10, 6], + ["-1698px 0", 10, 7], + ["-1981px 0", 10, 8], + ["-2264px 0", 10, 9], + ["-2547px 0", 10, -1], + ], + 0, + function (i, p) { + ClearChild($(i)); + d.setCrater( + c + "_crater", + l, + b, + d.pixelLeft + 3, + d.pixelTop + 50 + ); + } + ); + } + }, + [a] + ); }, - HurtStatus: 0, - getHurt: function (e, c, b) { - var d = this, - f = d.id, - a = $(f); - switch (true) { - case c && c < 3: - d.Die(1); + setCrater: function (f, b, d, e, c) { + var a; + switch (oGd.$LF[b]) { + case 1: + a = NewEle( + f, + "div", + "position:absolute;z-index:" + + (3 * b - 1) + + ";overflow:hidden;background:url(images/Plants/DoomShroom/crater1" + + oS.DKind + + ".png) no-repeat;width:90px;height:61px;left:" + + (e || GetX(d) - 45) + + "px;top:" + + (c || GetY(b) - 30) + + "px", + 0, + EDPZ + ); break; - case (d.HP -= b) < 1: - d.Die(); + case 2: + a = NewEle( + f, + "div", + "position:absolute;z-index:" + + (3 * b - 1) + + ";overflow:hidden;background:url(images/Plants/DoomShroom/crater2" + + oS.DKind + + ".png) no-repeat;width:85px;height:53px;left:" + + (e || GetX(d) - 42) + + "px;top:" + + (c || GetY(b) - 26) + + "px", + 0, + EDPZ + ); break; - case d.HP < 1334: - d.HurtStatus < 2 && - ((d.HurtStatus = 2), - (a.childNodes[1].src = - "images/Plants/PumpkinHead/Pumpkin_damage2.gif")); + case 3: + a = NewEle( + f, + "div", + "position:absolute;z-index:" + + (3 * b - 1) + + ";overflow:hidden;background:url(images/Plants/DoomShroom/crater31.png) no-repeat;width:75px;height:77px;left:" + + (e || GetX(d) - 37) + + "px;top:" + + (c || GetY(b) - 19) + + "px", + 0, + EDPZ + ); break; - case d.HP < 2667: - d.HurtStatus < 1 && - ((d.HurtStatus = 1), - (a.childNodes[1].src = - "images/Plants/PumpkinHead/Pumpkin_damage1.gif"), - ($(f + "_2").src = - "images/Plants/PumpkinHead/Pumpkin_back.gif")); + default: } + oSym.addTask( + 9e3, + function (g) { + var h = b + "_" + d; + g.style.backgroundPosition = "100% 0"; + oGd.$Crater[h] = 1; + oSym.addTask( + 9e3, + function (i, j) { + ClearChild(i); + delete oGd.$Crater[j]; + }, + [g, h] + ); + }, + [a] + ); }, + }), + oSeedDoomShroom = InheritO(oFumeShroom, { + EName: "oSeedDoomShroom", + CName: "Doom-shroom", + width: 102, + height: 91, + beAttackedPointR: 80, + coolTime: 50, + SunNum: 0, + AudioArr: ["doomshroom"], + PicArr: [ + "images/Card/Plants/DoomShroom.png", + "images/Plants/DoomShroom/0.gif", + "images/Plants/DoomShroom/DoomShroom.gif", + "images/Plants/DoomShroom/Sleep.gif", + "images/Plants/DoomShroom/BeginBoom.gif", + "images/Plants/DoomShroom/crater10.png", + "images/Plants/DoomShroom/crater11.png", + "images/Plants/DoomShroom/crater20.png", + "images/Plants/DoomShroom/crater21.png", + "images/Plants/DoomShroom/crater30.png", + "images/Plants/DoomShroom/crater31.png", + "images/Plants/DoomShroom/Boom.png", + ], + Tooltip: "Destroys a large area, leaving a crater in its wake", + Produce: + '毁灭菇可以摧毁大范围的僵尸,并留下一个不
能种植物的大弹坑。

Harm:极高
Scope:大范围内的所有僵尸
用法:单独使用,立即生效
Features:留下一个弹坑
白天睡觉

“你很幸运,我是和你一伙的,”毁灭菇说,“
我能摧毁任何你所珍视的东西,小菜一碟。”', InitTrigger: function () {}, BirthStyle: function (c, d, b, a) { - b.childNodes[1].src = "images/Plants/PumpkinHead/PumpkinHead1.gif"; + oS.DKind + ? ((c.Sleep = 1), (b.childNodes[1].src = c.PicArr[c.SleepGif])) + : ((c.Sleep = 0), + (c.getHurt = function () {}), + (b.childNodes[1].src = + "images/Plants/DoomShroom/BeginBoom.gif"), + c.NormalAttack(d)); EditEle( b, { @@ -2889,6262 +7414,222 @@ BirthStyle: function (c, e, b, a) { a, EDPZ ); - NewImg( - d + "_2", - "images/Plants/PumpkinHead/PumpkinHead2.gif", - "left:" + - c.pixelLeft + - "px;top:" + - c.pixelTop + - "px;z-index:" + - (c.zIndex - 2), - EDPZ - ); }, - PrivateDie: function (a) { - ClearChild($(a.id + "_2")); + WakeUP: function (a) { + var b = a.id; + a.Sleep = 0; + a.getHurt = function () {}; + $(b).childNodes[1].src = "images/Plants/DoomShroom/BeginBoom.gif"; + a.NormalAttack(b); }, - }), - oFlowerPot = InheritO(CPlants, { - EName: "oFlowerPot", - CName: "Flower Pot", - width: 72, - height: 68, - beAttackedPointR: 52, - SunNum: 25, - BookHandBack: 6, - HP: 1e3, - PicArr: [ - "images/Card/Plants/FlowerPot.png", - "images/Plants/FlowerPot/0.gif", - "images/Plants/FlowerPot/FlowerPot.gif", - ], - PKind: 0, - Stature: -1, - GetDY: function (b, c, a) { - return 6; - }, - CanGrow: function (e, d, f) { - var c = d + "_" + f, - b = oGd.$LF[d], - a = f < 1 || f > 9; - return b % 2 - ? b < 3 - ? !( - a || - e[1] || - e[2] || - e[0] || - oGd.$Crater[c] || - oGd.$Tombstones[c] - ) - : !(a || e[0] || oGd.$Crater[c]) - : 0; - }, - Tooltip: "Lets you plant on the roof", - Produce: - 'Pots allow you to grow plants on your roof.

Features:Allows you to plant on the roof

"I am a pot for plants, but I am also a
plant. Is it surprising?', - InitTrigger: function () {}, - }), - oCFlowerPot = InheritO(oFlowerPot, { - EName: "oCFlowerPot", - PicArr: [ - "images/Card/Plants/CFlowerPot.png", - "images/Plants/FlowerPot/C/0.gif", - "images/Plants/FlowerPot/C/CFlowerPot.gif", - ], - Produce: - "Allows plants to be planted on tiled terrain.

Celadon flower pot, no introduction needed", - }), - oLilyPad = InheritO(oFlowerPot, { - BookHandBack: 4.9, - Stature: -1, - EName: "oLilyPad", - CName: "LilyPad", - width: 79, - height: 58, - beAttackedPointR: 59, - // HP: 1e3, - PicArr: [ - "images/Card/Plants/LilyPad.png", - "images/Plants/LilyPad/0.gif", - "images/Plants/LilyPad/LilyPad.gif", - ], - getShadow: function (a) { - return "left:-8px;top:25px"; - }, - CanGrow: function (c, b, d) { - var a = b + "_" + d; - return !( - d < 1 || - d > 9 || - oGd.$LF[b] - 2 || - c[0] || - c[1] || - oGd.$Crater[a] || - oGd.$Tombstones[a] - ); - }, - Tooltip: "Lilypads allow you to grow non-aquatic plants on them。", - Produce: - 'Lilypads allow you to grow non-aquatic plants on top of them。

Features:Non-aquatic plants can be planted on it
Must be planted on water

Lilypad never complains, it never wants to know what happened
Plant a plant on it and it wont say anything.
,Does it have any surprising ideas or terrible secrets??
Lotus Ye buries all these inside of her heart。', - }), - oSeedLilyPad = InheritO(oFlowerPot, { - BookHandBack: 4.9, - Stature: -1, - EName: "oSeedLilyPad", - CName: "LilyPad", - width: 79, - height: 58, - beAttackedPointR: 59, - // HP: 1e3, - PicArr: [ - "images/Card/Plants/LilyPad.png", - "images/Plants/LilyPad/0.gif", - "images/Plants/LilyPad/LilyPad.gif", - ], - getShadow: function (a) { - return "left:-8px;top:25px"; - }, - CanGrow: function (c, b, d) { - var a = b + "_" + d; - return !( - d < 1 || - d > 9 || - oGd.$LF[b] - 2 || - c[0] || - c[1] || - oGd.$Crater[a] || - oGd.$Tombstones[a] - ); - }, - Tooltip: "Lilypads allow you to grow non-aquatic plants on them。", - Produce: - 'Lilypads allow you to grow non-aquatic plants on top of them。

Features:Non-aquatic plants can be planted on it
Must be planted on water

Lilypad never complains, it never wants to know what happened
Plant a plant on it and it wont say anything.
,Does it have any surprising ideas or terrible secrets??
Lotus Ye buries all these inside of her heart。', - }), - oILilyPad = InheritO(oFlowerPot, { - BookHandBack: 4.9, - Stature: -2, - EName: "oILilyPad", - CName: "LilyPad", - width: 79, - height: 58, - beAttackedPointR: 59, - HP: 1e3, - PicArr: [ - "images/Card/Plants/LilyPad.png", - "images/Plants/LilyPad/0.gif", - "images/Plants/LilyPad/LilyPad.gif", - ], - getShadow: function (a) { - return "left:-8px;top:25px"; - }, - CanGrow: function (c, b, d) { - var a = b + "_" + d; - return !( - d < 1 || - d > 9 || - oGd.$LF[b] - 2 || - c[0] || - c[1] || - oGd.$Crater[a] || - oGd.$Tombstones[a] - ); - }, - Tooltip: "Lilypads allow you to grow non-aquatic plants on them。", - Produce: - 'Lilypads allow you to grow non-aquatic plants on top of them。

Features:Non-aquatic plants can be planted on it
Must be planted on water

Lilypad never complains, it never wants to know what happened
Plant a plant on it and it wont say anything.
,Does it have any surprising ideas or terrible secrets??
Lotus Ye buries all these inside of her heart。', - }), - oLilyPad1 = InheritO(oLilyPad, { - EName: "oLilyPad1", - }), - oPotatoMine = InheritO(CPlants, { - EName: "oPotatoMine", - CName: "Potato Mine", - width: 75, - height: 55, - beAttackedPointR: 55, - SunNum: 25, - coolTime: 30, - Stature: -1, - HP: 1e3, - CanGrow: function (c, b, e) { - var a = b + "_" + e, - d = oS.ArP; - return d - ? oGd.$LF[b] == 1 - ? e > 0 && - e < d.ArC[1] && - !(oGd.$Crater[a] || oGd.$Tombstones[a] || c[1]) - : c[0] && !c[1] - : oGd.$LF[b] == 1 - ? !( - e < 1 || - e > 9 || - oGd.$Crater[a] || - oGd.$Tombstones[a] || - c[1] - ) - : c[0] && !c[1]; - }, - PicArr: [ - "images/Card/Plants/PotatoMine.png", - "images/Plants/PotatoMine/0.gif", - "images/Plants/PotatoMine/PotatoMine.gif", - "images/Plants/PotatoMine/PotatoMineNotReady.gif", - "images/Plants/PotatoMine/PotatoMine_mashed.gif", - "images/Plants/PotatoMine/ExplosionSpudow.gif", - ], - Tooltip: "Explodes on contact, but takes time to arm itself", - Produce: - 'Potato mines are powerful, but they take time
to arm yourself. You should plant them in the way of zombies
, which explode when they are touched.

Harm:huge
Scope:All zombies in a small area
Instructions:It takes some preparation time to use alone.

Some people say Potato Ray is lazy because he always puts everything
Save for last. Tudou Lei didnt have time to talk to them, he was busy with exams
Consider his investment strategy.', - Status: 0, - AudioArr: ["potato_mine"], - canTrigger: 0, - BirthStyle: function (d, e, c, b, a) { - c.childNodes[1].src = !a - ? "images/Plants/PotatoMine/PotatoMineNotReady.gif" - : (~(function () { - d.Status = 1; - d.canTrigger = 1; - d.getHurt = d.getHurt2; - })(), - "images/Plants/PotatoMine/PotatoMine.gif"); - EditEle( - c, - { - id: e, - }, - b, - EDPZ - ); - }, - getHurt2: function (d, b, a) { - var c = this; - b > 2 - ? (c.HP -= a) < 1 && c.Die() - : c.NormalAttack(c.pixelLeft, c.pixelRight, c.R); - }, - PrivateBirth: function (b, a) { - !a && - oSym.addTask( - 1500, - function (d) { - var c = $P[d]; - c && - (($(d).childNodes[1].src = - "images/Plants/PotatoMine/PotatoMine.gif"), - (c.Status = 1), - (c.canTrigger = 1), - (c.getHurt = c.getHurt2)); - }, - [b.id] - ); - }, - getTriggerRange: function (a, b, c) { - return [[b, c, 0]]; - }, - TriggerCheck: function (e, c) { - var a = this.R, - b = this.C; - e.beAttacked && - e.Altitude < 2 && - !oGd.$[a + "_" + b + "_2"] && - this.NormalAttack(this.pixelLeft, this.pixelRight, this.R); - }, - NormalAttack: function (j, h, e) { - var g = this, - b = g.id, - d = $(b), - c = oZ.getArZ(j, h, e), - f = c.length, - a; - while (f--) { - (a = c[f]).Altitude < 2 && a.getThump(); - } - g.Die(1); - PlayAudio("potato_mine"); - EditEle( - d.childNodes[1], - { - src: "images/Plants/PotatoMine/PotatoMine_mashed.gif", - }, - { - width: "132px", - height: "93px", - left: "-40px", - top: "-20px", - } - ); - NewImg( - 0, - "images/Plants/PotatoMine/ExplosionSpudow.gif", - "left:-90px;top:-40px", - d - ); - oSym.addTask( - 200, - function (i) { - ClearChild(i.lastChild); - oSym.addTask(100, ClearChild, [i]); - }, - [d] - ); - }, - }), - oSeedPotatoMine = InheritO(CPlants, { - EName: "oSeedPotatoMine", - CName: "Potato Mine", - width: 75, - height: 55, - beAttackedPointR: 55, - SunNum: 0, - coolTime: 30, - Stature: -1, - HP: 1e3, - CanGrow: function (c, b, e) { - var a = b + "_" + e, - d = oS.ArP; - return d - ? oGd.$LF[b] == 1 - ? e > 0 && - e < d.ArC[1] && - !(oGd.$Crater[a] || oGd.$Tombstones[a] || c[1]) - : c[0] && !c[1] - : oGd.$LF[b] == 1 - ? !( - e < 1 || - e > 9 || - oGd.$Crater[a] || - oGd.$Tombstones[a] || - c[1] - ) - : c[0] && !c[1]; - }, - PicArr: [ - "images/Card/Plants/PotatoMine.png", - "images/Plants/PotatoMine/0.gif", - "images/Plants/PotatoMine/PotatoMine.gif", - "images/Plants/PotatoMine/PotatoMineNotReady.gif", - "images/Plants/PotatoMine/PotatoMine_mashed.gif", - "images/Plants/PotatoMine/ExplosionSpudow.gif", - ], - Tooltip: "Explodes on contact, but takes time to arm itself", - Produce: - 'Potato mines are powerful, but they take time
to arm yourself. You should plant them in the way of zombies
, which explode when they are touched.

Harm:huge
Scope:All zombies in a small area
Instructions:It takes some preparation time to use alone.

Some people say Potato Ray is lazy because he always puts everything
Save for last. Tudou Lei didnt have time to talk to them, he was busy with exams
Consider his investment strategy.', - Status: 0, - AudioArr: ["potato_mine"], - canTrigger: 0, - BirthStyle: function (d, e, c, b, a) { - c.childNodes[1].src = !a - ? "images/Plants/PotatoMine/PotatoMineNotReady.gif" - : (~(function () { - d.Status = 1; - d.canTrigger = 1; - d.getHurt = d.getHurt2; - })(), - "images/Plants/PotatoMine/PotatoMine.gif"); - EditEle( - c, - { - id: e, - }, - b, - EDPZ - ); - }, - getHurt2: function (d, b, a) { - var c = this; - b > 2 - ? (c.HP -= a) < 1 && c.Die() - : c.NormalAttack(c.pixelLeft, c.pixelRight, c.R); - }, - PrivateBirth: function (b, a) { - !a && - oSym.addTask( - 1500, - function (d) { - var c = $P[d]; - c && - (($(d).childNodes[1].src = - "images/Plants/PotatoMine/PotatoMine.gif"), - (c.Status = 1), - (c.canTrigger = 1), - (c.getHurt = c.getHurt2)); - }, - [b.id] - ); - }, - getTriggerRange: function (a, b, c) { - return [[b, c, 0]]; - }, - TriggerCheck: function (e, c) { - var a = this.R, - b = this.C; - e.beAttacked && - e.Altitude < 2 && - !oGd.$[a + "_" + b + "_2"] && - this.NormalAttack(this.pixelLeft, this.pixelRight, this.R); - }, - NormalAttack: function (j, h, e) { - var g = this, - b = g.id, - d = $(b), - c = oZ.getArZ(j, h, e), - f = c.length, - a; - while (f--) { - (a = c[f]).Altitude < 2 && a.getThump(); - } - g.Die(1); - PlayAudio("potato_mine"); - EditEle( - d.childNodes[1], - { - src: "images/Plants/PotatoMine/PotatoMine_mashed.gif", - }, - { - width: "132px", - height: "93px", - left: "-40px", - top: "-20px", - } - ); - NewImg( - 0, - "images/Plants/PotatoMine/ExplosionSpudow.gif", - "left:-90px;top:-40px", - d - ); - oSym.addTask( - 200, - function (i) { - ClearChild(i.lastChild); - oSym.addTask(100, ClearChild, [i]); - }, - [d] - ); - }, - }), - oIPotatoMine = InheritO(CPlants, { - EName: "oIPotatoMine", - CName: "Potato Mine", - width: 75, - height: 55, - beAttackedPointR: 55, - SunNum: 25, - coolTime: 1, - Stature: -1, - HP: 13, - CanGrow: function (c, b, e) { - var a = b + "_" + e, - d = oS.ArP; - return d - ? oGd.$LF[b] == 1 - ? e > 0 && - e < d.ArC[1] && - !(oGd.$Crater[a] || oGd.$Tombstones[a] || c[1]) - : c[0] && !c[1] - : oGd.$LF[b] == 1 - ? !( - e < 1 || - e > 9 || - oGd.$Crater[a] || - oGd.$Tombstones[a] || - c[1] - ) - : c[0] && !c[1]; - }, - PicArr: [ - "images/Card/Plants/PotatoMine.png", - "images/Plants/PotatoMine/0.gif", - "images/Plants/PotatoMine/PotatoMine.gif", - "images/Plants/PotatoMine/PotatoMineNotReady.gif", - "images/Plants/PotatoMine/PotatoMine_mashed.gif", - "images/Plants/PotatoMine/ExplosionSpudow.gif", - ], - Tooltip: "Explodes on contact, but takes time to arm itself", - Produce: - 'Potato mines are powerful, but they take time
to arm yourself. You should plant them in the way of zombies
, which explode when they are touched.

Harm:huge
Scope:All zombies in a small area
Instructions:It takes some preparation time to use alone.

Some people say Potato Ray is lazy because he always puts everything
Save for last. Tudou Lei didnt have time to talk to them, he was busy with exams
Consider his investment strategy.', - Status: 0, - AudioArr: ["potato_mine"], - canTrigger: 0, - BirthStyle: function (d, e, c, b, a) { - c.childNodes[1].src = !a - ? "images/Plants/PotatoMine/PotatoMine.gif" - : (~(function () { - d.Status = 1; - d.canTrigger = 1; - d.getHurt = d.getHurt2; - })(), - "images/Plants/PotatoMine/PotatoMine.gif"); - EditEle( - c, - { - id: e, - }, - b, - EDPZ - ); - }, - getHurt2: function (d, b, a) { - var c = this; - b > 2 - ? (c.HP -= a) < 1 && c.Die() - : c.NormalAttack(c.pixelLeft, c.pixelRight, c.R); - }, - PrivateBirth: function (b, a) { - !a && - oSym.addTask( - 1500, - function (d) { - var c = $P[d]; - c && - (($(d).childNodes[1].src = - "images/Plants/PotatoMine/PotatoMine.gif"), - (c.Status = 1), - (c.canTrigger = 1), - (c.getHurt = c.getHurt2)); - }, - [b.id] - ); - }, - getTriggerRange: function (a, b, c) { - return [[b, c, 0]]; - }, - TriggerCheck: function (e, c) { - var a = this.R, - b = this.C; - e.beAttacked && - e.Altitude < 2 && - !oGd.$[a + "_" + b + "_2"] && - this.NormalAttack(this.pixelLeft, this.pixelRight, this.R); - }, - NormalAttack: function (j, h, e) { - var g = this, - b = g.id, - d = $(b), - c = oZ.getArZ(j, h, e), - f = c.length, - a; - while (f--) { - (a = c[f]).Altitude < 2 && a.getThump(); - } - g.Die(1); - PlayAudio("potato_mine"); - EditEle( - d.childNodes[1], - { - src: "images/Plants/PotatoMine/PotatoMine_mashed.gif", - }, - { - width: "132px", - height: "93px", - left: "-40px", - top: "-20px", - } - ); - NewImg( - 0, - "images/Plants/PotatoMine/ExplosionSpudow.gif", - "left:-90px;top:-40px", - d - ); - oSym.addTask( - 200, - function (i) { - ClearChild(i.lastChild); - oSym.addTask(100, ClearChild, [i]); - }, - [d] - ); - }, - }), - oTorchwood = InheritO(CPlants, { - EName: "oTorchwood", - CName: "Torchwood", - width: 73, - height: 83, - beAttackedPointR: 53, - SunNum: 175, - PicArr: [ - "images/Card/Plants/Torchwood.png", - "images/Plants/Torchwood/0.gif", - "images/Plants/Torchwood/Torchwood.gif", - "images/Plants/PB00.png", - "images/Plants/PB01.png", - "images/Plants/PB10.png", - "images/Plants/PB11.png", - "images/Plants/Torchwood/SputteringFire.gif", - ], - AudioArr: ["firepea", "ignite", "ignite2"], - Tooltip: "Peas that pass through it turn into fireballs", - Produce: - 'Torch Stump can turn peas that pass through him into fireballs, causing
Double damage.

Features:Causes fireballs that pass through him to deal double damage. fireball also
against nearby zombies
Deals splash damage

Everyone loves and respects torch stumps. they like his
Honest and steadfast friendship, and the ability to increase pea damage.
But he also has his own secret: he cant read!', - PrivateBirth: function (c) { - var a = c.R, - b = c.C; - oGd.$Torch[a + "_" + b] = c.id; - oS.HaveFog && oGd.GatherFog(a, b, 1, 1, 0); - }, - InitTrigger: function () {}, - PrivateDie: function (c) { - var a = c.R, - b = c.C; - delete oGd.$Torch[a + "_" + b]; - oS.HaveFog && oGd.GatherFog(a, b, 1, 1, 1); - }, - NormalAttack: function () { - var a = this, - b = "PB" + Math.random(); - EditEle( - a.BulletEle.cloneNode(false), - { - id: b, - }, - 0, - EDPZ - ); - oSym.addTask( - 15, - function (d) { - var c = $(d); - c && SetVisible(c); - }, - [b] - ); - oSym.addTask( - 1, - function (f, j, h, c, n, i, m, k, o, g) { - var l, - e = GetC(n), - d = oZ["getZ" + c](n, i); - m == 0 && - g[i + "_" + e] && - k != e && - (PlayAudio("firepea"), - (m = 1), - (h = 40), - (k = e), - (j.src = "images/Plants/PB" + m + c + ".png")); - d && d.Altitude == 1 - ? (d[ - { - "-1": "getSnowPea", - 0: "getPea", - 1: "getFirePea", - }[m] - ](d, h, c), - (SetStyle(j, { - left: o + 28 + "px", - }).src = "images/Plants/FireBulletHit.png"), - oSym.addTask(75, ClearChild, [j])) - : (n += l = !c ? 5 : -5) < oS.W && n > 100 - ? ((j.style.left = (o += l) + "px"), - oSym.addTask(1, arguments.callee, [ - f, - j, - h, - c, - n, - i, - m, - k, - o, - g, - ])) - : ClearChild(j); - }, - [ - b, - $(b), - 20, - 0, - a.AttackedLX, - a.R, - 0, - 0, - a.AttackedLX - 40, - oGd.$Torch, - ] - ); - }, - }), - oSeedTorchwood = InheritO(CPlants, { - EName: "oSeedTorchwood", - CName: "Torchwood", - width: 73, - height: 83, - beAttackedPointR: 53, - SunNum: 0, - PicArr: [ - "images/Card/Plants/Torchwood.png", - "images/Plants/Torchwood/0.gif", - "images/Plants/Torchwood/Torchwood.gif", - "images/Plants/PB00.png", - "images/Plants/PB01.png", - "images/Plants/PB10.png", - "images/Plants/PB11.png", - "images/Plants/Torchwood/SputteringFire.gif", - ], - AudioArr: ["firepea", "ignite", "ignite2"], - Tooltip: "Peas that pass through it turn into fireballs", - Produce: - 'Torch Stump can turn peas that pass through him into fireballs, causing
Double damage.

Features:Causes fireballs that pass through him to deal double damage. fireball also
against nearby zombies
Deals splash damage

Everyone loves and respects torch stumps. they like his
Honest and steadfast friendship, and the ability to increase pea damage.
But he also has his own secret: he cant read!', - PrivateBirth: function (c) { - var a = c.R, - b = c.C; - oGd.$Torch[a + "_" + b] = c.id; - oS.HaveFog && oGd.GatherFog(a, b, 1, 1, 0); - }, - InitTrigger: function () {}, - PrivateDie: function (c) { - var a = c.R, - b = c.C; - delete oGd.$Torch[a + "_" + b]; - oS.HaveFog && oGd.GatherFog(a, b, 1, 1, 1); - }, - NormalAttack: function () { - var a = this, - b = "PB" + Math.random(); - EditEle( - a.BulletEle.cloneNode(false), - { - id: b, - }, - 0, - EDPZ - ); - oSym.addTask( - 15, - function (d) { - var c = $(d); - c && SetVisible(c); - }, - [b] - ); - oSym.addTask( - 1, - function (f, j, h, c, n, i, m, k, o, g) { - var l, - e = GetC(n), - d = oZ["getZ" + c](n, i); - m == 0 && - g[i + "_" + e] && - k != e && - (PlayAudio("firepea"), - (m = 1), - (h = 40), - (k = e), - (j.src = "images/Plants/PB" + m + c + ".png")); - d && d.Altitude == 1 - ? (d[ - { - "-1": "getSnowPea", - 0: "getPea", - 1: "getFirePea", - }[m] - ](d, h, c), - (SetStyle(j, { - left: o + 28 + "px", - }).src = "images/Plants/FireBulletHit.png"), - oSym.addTask(75, ClearChild, [j])) - : (n += l = !c ? 5 : -5) < oS.W && n > 100 - ? ((j.style.left = (o += l) + "px"), - oSym.addTask(1, arguments.callee, [ - f, - j, - h, - c, - n, - i, - m, - k, - o, - g, - ])) - : ClearChild(j); - }, - [ - b, - $(b), - 20, - 0, - a.AttackedLX, - a.R, - 0, - 0, - a.AttackedLX - 40, - oGd.$Torch, - ] - ); - }, - }), - oWallNut = InheritO(CPlants, { - EName: "oWallNut", - CName: "Wall-Nut", - width: 65, - height: 73, - beAttackedPointR: 45, - SunNum: 50, - coolTime: 15.5, - HP: 4e3, - PicArr: [ - "images/Card/Plants/WallNut.png", - "images/Plants/WallNut/0.gif", - "images/Plants/WallNut/WallNut.gif", - "images/Plants/WallNut/Wallnut_cracked1.gif", - "images/Plants/WallNut/Wallnut_cracked2.gif", - ], - Tooltip: "Blocks off zombies and protects your other plants", - Produce: - 'Nut Walls are tough enough for you to use to protect other plants
shell.

Toughness:high

Wall of Nuts: People want to know what its like to be constantly gnawed by zombies
how? They dont know that my limited senses can only let me
Feel a tingling, like, relaxing back massage. "', - CanGrow: function (c, b, f) { - var a = b + "_" + f, - d = c[1], - e = oS.ArP; - return e - ? oGd.$LF[b] == 1 - ? f > 0 && - f < e.ArC[1] && - !(oGd.$Crater[a] || oGd.$Tombstones[a] || d) - : c[0] && !d - : d && d.EName == "oWallNut" - ? 1 - : oGd.$LF[b] == 1 - ? !(f < 1 || f > 9 || oGd.$Crater[a] || oGd.$Tombstones[a] || d) - : c[0] && !d; - }, - InitTrigger: function () {}, - HurtStatus: 0, - getHurt: function (e, b, a) { - var c = this, - d = $(c.id).childNodes[1]; - !(b % 3) - ? (c.HP -= a) < 1 - ? c.Die() - : c.HP < 1334 - ? c.HurtStatus < 2 && - ((c.HurtStatus = 2), - (d.src = "images/Plants/WallNut/Wallnut_cracked2.gif")) - : c.HP < 2667 && - c.HurtStatus < 1 && - ((c.HurtStatus = 1), - (d.src = "images/Plants/WallNut/Wallnut_cracked1.gif")) - : c.Die(1); - }, - }), - oSeedWallNut = InheritO(CPlants, { - EName: "oSeedWallNut", - CName: "Wall-Nut", - width: 65, - height: 73, - beAttackedPointR: 45, - SunNum: 0, - coolTime: 15.5, - HP: 4e3, - PicArr: [ - "images/Card/Plants/WallNut.png", - "images/Plants/WallNut/0.gif", - "images/Plants/WallNut/WallNut.gif", - "images/Plants/WallNut/Wallnut_cracked1.gif", - "images/Plants/WallNut/Wallnut_cracked2.gif", - ], - Tooltip: "Blocks off zombies and protects your other plants", - Produce: - 'Nut Walls are tough enough for you to use to protect other plants
shell.

Toughness:high

Wall of Nuts: People want to know what its like to be constantly gnawed by zombies
how? They dont know that my limited senses can only let me
Feel a tingling, like, relaxing back massage. "', - CanGrow: function (c, b, f) { - var a = b + "_" + f, - d = c[1], - e = oS.ArP; - return e - ? oGd.$LF[b] == 1 - ? f > 0 && - f < e.ArC[1] && - !(oGd.$Crater[a] || oGd.$Tombstones[a] || d) - : c[0] && !d - : d && d.EName == "oWallNut" - ? 1 - : oGd.$LF[b] == 1 - ? !(f < 1 || f > 9 || oGd.$Crater[a] || oGd.$Tombstones[a] || d) - : c[0] && !d; - }, - InitTrigger: function () {}, - HurtStatus: 0, - getHurt: function (e, b, a) { - var c = this, - d = $(c.id).childNodes[1]; - !(b % 3) - ? (c.HP -= a) < 1 - ? c.Die() - : c.HP < 1334 - ? c.HurtStatus < 2 && - ((c.HurtStatus = 2), - (d.src = "images/Plants/WallNut/Wallnut_cracked2.gif")) - : c.HP < 2667 && - c.HurtStatus < 1 && - ((c.HurtStatus = 1), - (d.src = "images/Plants/WallNut/Wallnut_cracked1.gif")) - : c.Die(1); - }, - }), - oBalloon = InheritO(CPlants, { - EName: "oBalloon", - CName: "Balloonatic", - width: 65, - height: 73, - beAttackedPointR: 45, - SunNum: "+75", - coolTime: "Wave", - HP: 1, - PicArr: [ - "images/Card/Plants/BalloonGoober.png", - "images/Zombies/Balloon/balloonalmanac.png", - "images/Zombies/Balloon/popped.png", - ], - Tooltip: "goober", - Produce: - 'Has a chance to spawn every wave. Popping Balloonatic
gives you a sun worth 75 sun.

Toughness:low

">:3" says the Balloonatic, ">:3" says the Balloonatic, again.', - CanGrow: function (c, b, f) { - var a = b + "_" + f, - d = c[1], - e = oS.ArP; - return e - ? oGd.$LF[b] == 1 - ? f > 0 && - f < e.ArC[1] && - !(oGd.$Crater[a] || oGd.$Tombstones[a] || d) - : c[0] && !d - : d && d.EName == "oBalloon" - ? 1 - : oGd.$LF[b] == 1 - ? !(f < 1 || f > 9 || oGd.$Crater[a] || oGd.$Tombstones[a] || d) - : c[0] && !d; - }, - InitTrigger: function () {}, - HurtStatus: 0, - getHurt: function (e, b, a) { - var c = this, - d = $(c.id).childNodes[1]; - !(b % 3) - ? (c.HP -= a) < 1 - ? c.Die() - : c.HP < 1334 - ? c.HurtStatus < 2 && - ((c.HurtStatus = 2), - (d.src = "images/Card/Plants/BalloonGoober.png")) - : c.HP < 2667 && - c.HurtStatus < 1 && - ((c.HurtStatus = 1), - (d.src = "images/Zombies/Balloon/popped.png")) - : c.Die(1); - }, - }), - oCattail = InheritO(oPeashooter, { - EName: "oCattail", - CName: "Cattail", - width: 190, - height: 90, - beAttackedPointR: 100, - SunNum: 225, - coolTime: 50, - AttackGif: 5, - Attack: 20, - BookHandBack: 4.9, - getTriggerRange: function (a, b, c) { - return [[0, oS.W, 0]]; - }, - getTriggerR: function (a) { - return [1, oS.R]; - }, - InitTrigger: function (c, b, f, a, h, g) { - var j = {}, - i = c.getTriggerR(f), - e = i[0], - d = i[1]; - do { - oT.add(e, (j[e] = c.getTriggerRange(e, h, g)), b); - } while (e++ != d); - c.oTrigger = j; - }, - getShadow: function (a) { - return "display:none"; - }, - AudioArr: ["CabbageAttack1", "CabbageAttack2"], - PicArr: (function () { - var a = "images/Plants/Cattail/"; - return [ - "images/Card/Plants/Catttail.png", - a + "cat.gif", - a + "cat.gif", - "images/Plants/Cactus/Projectile" + - ($User.Browser.IE6 ? 8 : 32) + - ".png", - "images/interface/blank.png", - a + "Attack.gif", - ]; - })(), - Tooltip: - 'Attacks any lane and shoots down balloon zombies

(requires lily pad)', - Produce: - '猫尾草能够攻击气球僵尸或任何一条路上的僵尸。

必须种在睡莲上。

魔法猫咪!稳辣!稳辣!猫尾草不知道从哪里听的这句话,总之在听完之后,她破防了,她怒骂道:“一群*东西!我下次就用我对待僵尸的方式十倍来对待你们!”', - TriggerCheck: function (b, a) { - this.AttackCheck2(b) && - ((this.canTrigger = 0), this.CheckLoop(b.id, a)); - }, - CanGrow: function (b, a, d) { - var c = b[0]; - if (!b[1] && c && c.EName == "oLilyPad") { - return 1; - } - return 0; - }, - AttackCheck2: function (c) { - var b = c.Altitude; - return b == 1; - }, - AttackCheckZ: function () { - //查找僵尸 - var self = this, - z, - otarget, - llen, - lastx; - var Target = -1; - for (z in $Z) { - otarget = $Z[z]; - if ((otarget.Altitude <= 0) | (otarget.PZ == 0)) continue; - if (Target == -1 && otarget.Altitude > 0) { - Target = otarget; - continue; - } - llen = self.Plength1(self, otarget); - if ( - otarget.Altitude == Target.Altitude && - otarget.Altitude > 2 && - llen < self.Plength1(self, Target) - ) { - Target = otarget; - } else { - if (Target.Altitude > 2) continue; - if (otarget.Altitude > 2) Target = otarget; - if (llen < self.Plength1(self, Target)) Target = otarget; - } - } - - return Target; - }, - Plength1: function (pid, zid) { - //计算僵尸和磁力菇之间的距离 blehhhh :P - var chang = Math.abs(zid.R - pid.R) * 100; - var kuan = Math.abs(zid.X - GetX(pid.C)); - return ( - Math.sqrt(chang * chang + kuan * kuan) + - Math.abs(zid.R - pid.R) * 3 - ); - }, - PrivateBirth(a) { - a.BulletEle = NewImg( - 0, - a.PicArr[3], - "left:" + - (a.pixelLeft + 50) + - "px;top:" + - (a.pixelTop + 10) + - "px;visibility:hidden;z-index:" + - (a.zIndex + 2) - ); - var p, - oBalloon, - self = a; - for (p in $P) { - oBalloon = $P[p]; - if ( - oBalloon.R == self.R && - self.C == oBalloon.C && - oBalloon.EName == "oLilyPad" - ) { - oBalloon.Die(); - break; - } - } - }, - one(p1, p2, t) { - return p1 * (1 - t) + p2 * t; - }, - CheckLoop(zid, direction) { - var self = this; - var pid = self.id; - if ($P[pid]) { - self.NormalAttack(zid, 0); - oSym.addTask(50 + 90 + 90, (_) => { - $P[pid] && self.AttackCheck1(zid, direction); - }); - oSym.addTask(90, (_) => { - $P[pid] && self.NormalAttack(zid, 1); - }); - } - }, - HitZombie(zombieTarget, self) { - if (zombieTarget.Altitude == 3) { - zombieTarget.getPea(zombieTarget, 20); - zombieTarget.Drop(); - } else { - zombieTarget.getPea(zombieTarget, 0); - zombieTarget.getHit2(zombieTarget, 20); - } - }, - AttackAnim(ele, self) { - ele.childNodes[1].src = self.PicArr[self.AttackGif] + "?" + this.id; - }, - getAngle(x, y, lastX, lastY) { - return (180 / Math.PI) * Math.atan2(y - lastY, x - lastX); - }, - catlen(x, y, last) { - var ac = Math.abs(x - last[0]), - bc = Math.abs(y - last[1]), - ab = Math.sqrt(ac * ac, bc * bc) * 0.6; - return ab; - }, - NormalAttack(zid, fu) { - var self = this; - var ele = $(self.id); - var zombieTarget = self.AttackCheckZ(); - if (zombieTarget == -1) return; - if (!$Z[zombieTarget.id]) return; - if (!$P[self.id]) return; - var bullet = EditEle( - self.BulletEle.cloneNode(false), - { - id: "CB" + Math.random(), - }, - 0, - EDPZ - ); - //alert(bullet); - self.AttackAnim(ele, self); - if (fu) { - oSym.addTask( - 120, - (_) => - $P[self.id] && - (ele.childNodes[1].src = - self.PicArr[self.NormalGif] + "?" + this.id) - ); - } - oSym.addTask(85, (_) => { - //PlayAudio(self.AudioArr.slice(0, 2).random()); - if (!$P[self.id]) return; - if (!$Z[zombieTarget.id]) { - ele.childNodes[1].src = - self.PicArr[self.NormalGif] + "?" + this.id; - return; - } - SetVisible(bullet); - var x = self.pixelLeft + 80; - var y = self.pixelTop + 10; - var x1 = x, - y1 = y; - var zomRelativePos = zombieTarget.HeadPosition[ - zombieTarget.isAttacking - ] - ? zombieTarget.HeadPosition[zombieTarget.isAttacking] - : zombieTarget.HeadPosition[0]; - var s = - Number.parseInt(zombieTarget.Ele.style.left) + - zomRelativePos.x - - 10 - - x - - !zombieTarget.isAttacking * - zombieTarget.Speed * - zombieTarget.DeltaDirectionSpeed[ - zombieTarget.FangXiang - ] * - 10 * - 1; - var y3 = - Number.parseInt(zombieTarget.Ele.style.top) + - zomRelativePos.y + - 20; - var time = 1; - var f = 0; - var gravity = 0.2; - var vy = -10; - var vx = -(gravity * s) / (2 * vy); - var x2 = x + 40; - var y2 = y - 10; - var last = [x, y]; - var defAngle = self.getAngle( - x + vx, - y + vy + gravity, - last[0], - last[1] - ); - var x3 = x + s, - t = 0, - ws = 100; - var fum = 0; - (function drawFrame() { - if (fum == 0) { - x = self.one( - self.one(x1, x2, t / ws), - self.one(x2, x3, t / ws), - t / ws - ); - y = self.one( - self.one(y1, y2, t / ws), - self.one(y2, y3, t / ws), - t / ws - ); - var ab = self.catlen(x, y, last); - while (t < ws / 2 && ab < 1.5) { - t++; - x = self.one( - self.one(x1, x2, t / ws), - self.one(x2, x3, t / ws), - t / ws - ); - y = self.one( - self.one(y1, y2, t / ws), - self.one(y2, y3, t / ws), - t / ws - ); - ab = self.catlen(x, y, last); - } - bullet.style.left = x + "px"; - bullet.style.top = y + "px"; - bullet.style.transform = `rotate(${self.getAngle( - x, - y, - last[0], - last[1] - )}deg)`; - t++; - - if (t >= ws + 1) { - bullet && - ((bullet.src = self.PicArr[4]), - (bullet.style.transform = `rotate(0deg)`), - oSym.addTask(120, ClearChild, [bullet])); - $Z[zombieTarget.id] && - self.HitZombie(zombieTarget, self); - - return; - } - - if (!$Z[zombieTarget.id]) { - fum = 1; - ele.childNodes[1].src = - self.PicArr[self.NormalGif] + "?" + this.id; - oSym.addTask(1, drawFrame); - } else oSym.addTask(ab * 0.4, drawFrame); - } else { - (function drawFrame() { - if (fum == 1) { - x = self.one( - self.one(x1, x2, t / ws), - self.one(x2, x3, t / ws), - t / ws - ); - y = self.one( - self.one(y1, y2, t / ws), - self.one(y2, y3, t / ws), - t / ws - ); - var ab = self.catlen(x, y, last); - while (t < ws / 2 && ab < 1.5) { - t++; - x = self.one( - self.one(x1, x2, t / ws), - self.one(x2, x3, t / ws), - t / ws - ); - y = self.one( - self.one(y1, y2, t / ws), - self.one(y2, y3, t / ws), - t / ws - ); - ab = self.catlen(x, y, last); - } - bullet.style.left = x + "px"; - bullet.style.top = y + "px"; - bullet.style.transform = `rotate(${self.getAngle( - x, - y, - last[0], - last[1] - )}deg)`; - t++; - - if (t >= ws + 1) { - bullet && - ((bullet.src = self.PicArr[4]), - (bullet.style.transform = `rotate(0deg)`), - oSym.addTask(120, ClearChild, [ - bullet, - ])); - $Z[zombieTarget.id] && - self.HitZombie(zombieTarget, self); - - return; - } - - if (!$Z[zombieTarget.id]) { - fum = 1; - ele.childNodes[1].src = - self.PicArr[self.NormalGif] + - "?" + - this.id; - oSym.addTask(1, drawFrame); - } else oSym.addTask(ab * 0.4, drawFrame); - } else { - bullet.style.left = (x -= 3) + "px"; - bullet.style.top = (y -= 3) + "px"; - bullet.style.transform = `rotate(${self.getAngle( - x, - y, - last[0], - last[1] - )}deg)`; - if (x <= 0 || y <= 0) { - bullet && - ((bullet.src = self.PicArr[4]), - (bullet.style.transform = `rotate(0deg)`), - oSym.addTask(120, ClearChild, [ - bullet, - ])); - return; - } - oSym.addTask(1, drawFrame); - } - last = [x, y]; - })(); - } - last = [x, y]; - })(); - }); - }, - }), - oLing = InheritO(oWallNut, { - EName: "oLing", - CName: "Water-nut", - width: 90, - height: 72, - beAttackedPointL: 15, - beAttackedPointR: 80, - BookHandBack: 4.9, - HP: 1e4, - getShadow: function (a) { - return "display:none"; - }, - PicArr: [ - "images/Card/Plants/Ling.png", - "images/Plants/Ling/0.gif", - "images/Plants/Ling/Ling.gif", - ], - Tooltip: "Nanhu Ling is the first obstacle in the water", - Produce: - 'Nanhu Ling is the first obstacle in the water

Toughness:high

Look, how big is a cashew nut?
He said, but he didnt care. In Nanhulings head, every day only
think about one thing"If Qianlong didnt open the golden mouth, I wouldnt be able to use it
Horn to stab zombies? !"', - CanGrow: function (c, b, d) { - var a = b + "_" + d; - return !( - d < 1 || - d > 9 || - oGd.$LF[b] - 2 || - c[0] || - c[1] || - oGd.$Crater[a] || - oGd.$Tombstones[a] - ); - }, - getHurt: function (e, b, a) { - var c = this, - d = $(c.id).childNodes[1]; - !(b % 3) - ? (c.HP -= a) < 1 - ? c.Die() - : c.HP < 1334 - ? c.HurtStatus < 2 && - ((c.HurtStatus = 2), - (d.src = "images/Plants/Ling/Ling.gif")) - : c.HP < 2667 && - c.HurtStatus < 1 && - ((c.HurtStatus = 1), - (d.src = "images/Plants/Ling/Ling.gif")) - : c.Die(1); - }, - }), - oNutBowling = InheritO(CPlants, { - EName: "oNutBowling", - CName: "Wall-nut", - width: 71, - height: 71, - beAttackedPointL: 10, - beAttackedPointR: 61, - SunNum: 0, - HP: 4e3, - coolTime: 0, - canEat: 0, - Tooltip: "", - PicArr: [ - "images/Card/Plants/WallNut.png", - "images/Plants/WallNut/0.gif", - "images/Plants/WallNut/WallNutRoll.gif", - ], - AudioArr: ["bowling", "bowlingimpact", "bowlingimpact2"], - Produce: "", - CanAttack: 1, - InitTrigger: function () {}, - getHurt: function () {}, - CanGrow: function (d, e, f) { - return true; - }, - NormalAttack: null, - PrivateBirth: function (c) { - var d = $(c.id); - PlayAudio("bowling"); - (function (z, y, q, r, p, x, e, g, b) { - var a = z.R, - l = z.C, - A, - u, - s, - v = 0, - w, - i, - t = false; - if (z.CanAttack && (A = oZ.getZ0(r, a)) && A.getCrushed(z)) { - u = A.id; - PlayAudio( - ["bowlingimpact", "bowlingimpact2"][ - Math.floor(Math.random() * 2) - ] - ); - switch (A.Ornaments) { - case 0: - A.NormalDie(); - break; - case 1: - A.getHit0(A, Math.min(A.OrnHP, 900), 0); - break; - default: - z.side - ? A.Normaldie() - : A.CheckOrnHP( - A, - u, - A.OrnHP, - 400, - A.PicArr, - 0, - 0, - 0 - ); - } - z.CanAttack = 0; - switch (a) { - case oS.R: - e = -1; - break; - case 1: - e = 1; - break; - default: - switch (e) { - case 1: - e = -1; - break; - case -1: - e = 1; - break; - default: - e = Math.random() > 0.5 ? 1 : -1; - } - } - oSym.addTask(1, arguments.callee, [ - z, - y, - z.AttackedLX + 20, - z.AttackedRX + 20, - z.pixelLeft + 20, - x, - e, - g, - b, - ]); - } else { - switch (e) { - case 1: - z.pixelBottom + 2 > b && (e = -1); - break; - case -1: - z.pixelBottom - 2 < g && (e = 1); - break; - } - q > y - ? z.Die() - : ((i = GetC((z.pixelRight += 2))), - (z.AttackedLX = q += 2), - (z.AttackedRX = r += 2), - (w = GetR((z.pixelBottom += e * 2))), - SetStyle(x, { - left: (z.pixelLeft = p += 2) + "px", - top: (z.pixelTop += e * 2) + "px", - }), - w != a && - ((z.R = w), - (t = true), - !z.CanAttack && (z.CanAttack = 1)), - i != l && ((z.C = i), (t = true)), - t && - (oGd.del({ - R: a, - C: l, - PKind: 1, - }), - oGd.add(z, w + "_" + i + "_1")), - oSym.addTask(1, arguments.callee, [ - z, - y, - z.AttackedLX, - z.AttackedRX, - z.pixelLeft, - x, - e, - g, - b, - ])); - } - })( - c, - oS.W, - c.AttackedLX, - c.AttackedRX, - c.pixelLeft, - d, - 0, - GetY1Y2(1)[0], - 600 - ); - }, - }), - oHugeNutBowling = InheritO(oNutBowling, { - EName: "oHugeNutBowling", - CName: "Giant Wall-nut", - width: 142, - height: 142, - beAttackedPointL: 5, - beAttackedPointR: 137, - HP: 8e3, - Stature: 1, - PicArr: [ - "images/Card/Plants/HugeWallNut.png", - "images/Plants/WallNut/2.gif", - "images/Plants/WallNut/HugeWallNutRoll.gif", - ], - PrivateBirth: function (a) { - PlayAudio("bowling"); - (function (b, c, n, m, e, g) { - var d = oZ.getArZ(n, m, e), - f = d.length, - k, - j, - l = b.R, - h = b.C; - while (f--) { - (k = d[f]).getCrushed(b) && k.CrushDie(); - } - n > c - ? b.Die() - : ((j = GetC((b.pixelRight += 2))), - (b.AttackedLX = n += 2), - (b.AttackedRX = m += 2), - (g.style.left = (b.pixelLeft += 2) + "px"), - j != h && - ((b.C = j), - oGd.del({ - R: l, - C: h, - PKind: 1, - }), - oGd.add(b, l + "_" + j + "_1")), - oSym.addTask(1, arguments.callee, [b, c, n, m, e, g])); - })(a, oS.W, a.AttackedLX, a.AttackedRX, a.R, $(a.id)); - }, - }), - oBoomNutBowling = InheritO(oNutBowling, { - EName: "oBoomNutBowling", - CName: "Explode-o-nut", - PicArr: [ - "images/Card/Plants/BoomWallNut.png", - "images/Plants/WallNut/1.gif", - "images/Plants/WallNut/BoomWallNutRoll.gif", - "images/Plants/CherryBomb/Boom.gif", - ], - AudioArr: ["cherrybomb", "bowling"], - PrivateBirth: function (a) { - PlayAudio("bowling"); - (function (s, q, b, c, m) { - var v = s.R, - p = s.C, - t, - l; - if ((t = oZ.getZ0(c, v)) && t.getCrushed(s)) { - var j = v > 2 ? v - 1 : 1, - g = v < oS.R ? v + 1 : oS.R, - u = s.pixelLeft - 80, - r = s.pixelLeft + 160, - e, - k; - PlayAudio("cherrybomb"); - do { - k = (e = oZ.getArZ(u, r, j)).length; - while (k--) { - e[k].ExplosionDie(); - } - } while (j++ < g); - s.Die(1); - EditEle( - m.childNodes[1], - { - src: "images/Plants/CherryBomb/Boom.gif", - }, - { - width: "213px", - height: "160px", - left: "-50px", - top: "-30px", - } - ); - oSym.addTask(65, ClearChild, [m]); - } else { - b > q - ? s.Die() - : ((l = GetC((s.pixelRight += 2))), - (s.AttackedLX = b += 2), - (s.AttackedRX = c += 2), - SetStyle(m, { - left: (s.pixelLeft += 2) + "px", - }), - l != p && - ((s.C = l), - oGd.del({ - R: v, - C: p, - PKind: 1, - }), - oGd.add(s, v + "_" + l + "_1")), - oSym.addTask(1, arguments.callee, [ - s, - q, - s.AttackedLX, - s.AttackedRX, - m, - ])); - } - })(a, oS.W, a.AttackedLX, a.AttackedRX, $(a.id)); - }, - }), - oTallNut = InheritO(oWallNut, { - EName: "oTallNut", - CName: "Tall-nut", - width: 83, - height: 119, - beAttackedPointR: 63, - SunNum: 125, - HP: 8e3, - coolTime: 24.5, - PicArr: [ - "images/Card/Plants/TallNut.png", - "images/Plants/TallNut/0.gif", - "images/Plants/TallNut/TallNut.gif", - "images/Plants/TallNut/TallnutCracked1.gif", - "images/Plants/TallNut/TallnutCracked2.gif", - ], - Tooltip: "Heavy-duty wall that can't be vaulted over", - Produce: - '高坚果是重型壁垒植物,而且不会被跳过。

Toughness:非常高
特殊:不会被跨过或越过

人们想知道,坚果墙和高坚果是否在竞争。高
坚果以男中音的声调大声笑了。“我们之间怎么
会存在竞争关系?我们是哥们儿。你知道坚果墙
为我做了什么吗……”高坚果的声音越来越小,
他狡黠地笑着。”', - CanGrow: function (c, b, f) { - var a = b + "_" + f, - d = c[1], - e = oS.ArP; - return e - ? oGd.$LF[b] == 1 - ? f > 0 && - f < e.ArC[1] && - !(oGd.$Crater[a] || oGd.$Tombstones[a] || d) - : c[0] && !d - : d && d.EName == "oTallNut" - ? 1 - : oGd.$LF[b] == 1 - ? !(f < 1 || f > 9 || oGd.$Crater[a] || oGd.$Tombstones[a] || d) - : c[0] && !d; - }, - Stature: 1, - getHurt: function (e, b, a) { - var c = this, - d = $(c.id).childNodes[1]; - !(b % 3) - ? (c.HP -= a) < 1 - ? c.Die() - : c.HP < 2667 - ? c.HurtStatus < 2 && - ((c.HurtStatus = 2), - (d.src = "images/Plants/TallNut/TallnutCracked2.gif")) - : c.HP < 5333 && - c.HurtStatus < 1 && - ((c.HurtStatus = 1), - (d.src = "images/Plants/TallNut/TallnutCracked1.gif")) - : c.Die(1); - }, - }), - oSeedTallNut = InheritO(oWallNut, { - EName: "oSeedTallNut", - CName: "Tall-nut", - width: 83, - height: 119, - beAttackedPointR: 63, - SunNum: 0, - HP: 8e3, - coolTime: 24.5, - PicArr: [ - "images/Card/Plants/TallNut.png", - "images/Plants/TallNut/0.gif", - "images/Plants/TallNut/TallNut.gif", - "images/Plants/TallNut/TallnutCracked1.gif", - "images/Plants/TallNut/TallnutCracked2.gif", - ], - Tooltip: "Heavy-duty wall that can't be vaulted over", - Produce: - '高坚果是重型壁垒植物,而且不会被跳过。

Toughness:非常高
特殊:不会被跨过或越过

人们想知道,坚果墙和高坚果是否在竞争。高
坚果以男中音的声调大声笑了。“我们之间怎么
会存在竞争关系?我们是哥们儿。你知道坚果墙
为我做了什么吗……”高坚果的声音越来越小,
他狡黠地笑着。”', - CanGrow: function (c, b, f) { - var a = b + "_" + f, - d = c[1], - e = oS.ArP; - return e - ? oGd.$LF[b] == 1 - ? f > 0 && - f < e.ArC[1] && - !(oGd.$Crater[a] || oGd.$Tombstones[a] || d) - : c[0] && !d - : d && d.EName == "oTallNut" - ? 1 - : oGd.$LF[b] == 1 - ? !(f < 1 || f > 9 || oGd.$Crater[a] || oGd.$Tombstones[a] || d) - : c[0] && !d; - }, - Stature: 1, - getHurt: function (e, b, a) { - var c = this, - d = $(c.id).childNodes[1]; - !(b % 3) - ? (c.HP -= a) < 1 - ? c.Die() - : c.HP < 2667 - ? c.HurtStatus < 2 && - ((c.HurtStatus = 2), - (d.src = "images/Plants/TallNut/TallnutCracked2.gif")) - : c.HP < 5333 && - c.HurtStatus < 1 && - ((c.HurtStatus = 1), - (d.src = "images/Plants/TallNut/TallnutCracked1.gif")) - : c.Die(1); - }, - }), - oTenManNut = InheritO(CPlants, { - EName: "oTenManNut", - CName: "Vine-nut", - width: 155, - height: 130, - beAttackedPointL: 63, - beAttackedPointR: 75, - SunNum: 150, - HP: 11e3, - Stature: 1, - canEat: 1, - PicArr: [ - "images/Card/Plants/TenManNut.png", - "images/Plants/TenManNut/0.gif", - "images/Plants/TenManNut/Spikeweed.gif", - ], - Attack: 40, - ArZ: {}, - Tooltip: "Damages zombies that eat it", - Produce: - '能近距离攻击僵尸

Harm:普通
强度:非常高

大家一直在质疑高坚果和坚果的特殊关系,直
到高坚果找到了属于他的藤蔓,这种谣言才不
攻自散。', - getHurt: function (f, c, b) { - var e = this, - d, - a = $(e.id).childNodes[1]; - switch (c) { - case 2: - f.flatTire(); - break; - case 1: - f.getHit2(f, 40, 0); - } - switch (true) { - case (d = e.HP -= b) < 1: - e.Die(); - break; - case d < 101: - a.src = "images/Plants/TenManNut/Spikeweed.gif"; - break; - case d < 201: - a.src = "images/Plants/TenManNut/Spikeweed.gif"; - } - }, - NormalAttack: function (b, a) { - var c = $Z[b]; - c.getHit2(c, this.Attack, 0); - }, - getTriggerRange: function (a, b, c) { - return [[this.pixelLeft - 80, this.pixelRight + 80, 0]]; - }, - TriggerCheck: function (i, h) { - var c = i.id, - g = this.ArZ, - a, - b, - e, - f; - i.PZ && - !g[c] && - ((a = i.AttackedLX), - (b = i.AttackedRX), - (e = this.AttackedLX), - (f = this.AttackedRX), - (a <= f && a >= e) || - (b <= f && b >= e) || - (a <= e && b >= f)) && - this.AttackCheck2(i) && - ((g[c] = 1), - this.NormalAttack(c), - oSym.addTask( - 100, - function (d, j) { - var k = $P[d]; - k && delete k.ArZ[j]; - }, - [this.id, c] - )); - }, - AttackCheck2: function (a) { - return a.Altitude == 1 && a.beAttacked; - }, - }), - oCherryBomb = InheritO(CPlants, { - EName: "oCherryBomb", - CName: "Cherry Bomb", - width: 112, - height: 81, - beAttackedPointR: 92, - SunNum: 150, - coolTime: 20, - PicArr: [ - "images/Card/Plants/CherryBomb.png", - "images/Plants/CherryBomb/0.gif", - "images/Plants/CherryBomb/CherryBomb.gif", - "images/Plants/CherryBomb/Boom.gif" + $Random, - ], - AudioArr: ["cherrybomb"], - Tooltip: "Blows up all zombies in an area", - Produce: - 'Cherry bomb can blow up all zombies in a certain area.
One will detonate immediately. So please plant them on zombies
around them.

Harm:huge
Scope:All zombies in a medium area
Instructions:Instant use, it explodes immediately

“I am going to explode. "Cherry No. 1 said. "No, we are
‘炸’开了!”Said its brother Cherry No. 2. After intense discussion
After discussion, they finally agreed on the term "explosion."”', - InitTrigger: function () {}, - getHurt: function () {}, - PrivateBirth: function (a) { - oSym.addTask( - 40, - function (b) { - var c = $P[b]; - if (c) { - PlayAudio("cherrybomb"); - var f = $(b), - j = c.R, - g = j > 2 ? j - 1 : 1, - e = j < oS.R ? j + 1 : oS.R, - l = c.pixelLeft - 80, - k = c.pixelLeft + 160, - d, - h; - do { - h = (d = oZ.getArZ(l, k, g)).length; - while (h--) { - d[h].getExplosion(); - } - } while (g++ < e); - c.Die(1); - EditEle( - f.childNodes[1], - { - src: c.PicArr[3] + Math.random(), - }, - { - width: "213px", - height: "196px", - left: "-50px", - top: "-37px", - } - ); - oSym.addTask(120, ClearChild, [f]); - } - }, - [a.id] - ); - }, - }), - oSeedCherryBomb = InheritO(CPlants, { - EName: "oSeedCherryBomb", - CName: "Cherry Bomb", - width: 112, - height: 81, - beAttackedPointR: 92, - SunNum: 0, - coolTime: 20, - PicArr: [ - "images/Card/Plants/CherryBomb.png", - "images/Plants/CherryBomb/0.gif", - "images/Plants/CherryBomb/CherryBomb.gif", - "images/Plants/CherryBomb/Boom.gif" + $Random, - ], - AudioArr: ["cherrybomb"], - Tooltip: "Blows up all zombies in an area", - Produce: - 'Cherry bomb can blow up all zombies in a certain area.
One will detonate immediately. So please plant them on zombies
around them.

Harm:huge
Scope:All zombies in a medium area
Instructions:Instant use, it explodes immediately

“I am going to explode. "Cherry No. 1 said. "No, we are
‘炸’开了!”Said its brother Cherry No. 2. After intense discussion
After discussion, they finally agreed on the term "explosion."”', - InitTrigger: function () {}, - getHurt: function () {}, - PrivateBirth: function (a) { - oSym.addTask( - 40, - function (b) { - var c = $P[b]; - if (c) { - PlayAudio("cherrybomb"); - var f = $(b), - j = c.R, - g = j > 2 ? j - 1 : 1, - e = j < oS.R ? j + 1 : oS.R, - l = c.pixelLeft - 80, - k = c.pixelLeft + 160, - d, - h; - do { - h = (d = oZ.getArZ(l, k, g)).length; - while (h--) { - d[h].getExplosion(); - } - } while (g++ < e); - c.Die(1); - EditEle( - f.childNodes[1], - { - src: c.PicArr[3] + Math.random(), - }, - { - width: "213px", - height: "196px", - left: "-50px", - top: "-37px", - } - ); - oSym.addTask(120, ClearChild, [f]); - } - }, - [a.id] - ); - }, - }), - oJalapeno = InheritO(oCherryBomb, { - EName: "oJalapeno", - CName: "Jalapeno", - width: 68, - height: 89, - SunNum: 125, - beAttackedPointR: 48, - PicArr: [ - "images/Card/Plants/Jalapeno.png", - "images/Plants/Jalapeno/0.gif", - "images/Plants/Jalapeno/Jalapeno.gif", - "images/Plants/Jalapeno/JalapenoAttack.gif", - ], - AudioArr: ["jalapeno"], - Tooltip: "Destroys an entire lane of zombies", - Produce: - '火爆辣椒可以摧毁一整条线上的敌人。

Harm:极高
Scope:整条线上的僵尸
用法:单独使用,立即生效

“嘎嘎嘎嘎嘎嘎嘎!!!”火爆辣椒说。他现在
不会爆炸,还不到时候,不过快了,喔~,快了快
了,快来了。他知道,他感受到了,他一生都是
在等待这个时刻!', - PrivateBirth: function (a) { - oSym.addTask( - 40, - function (j) { - var h = $P[j]; - if (h) { - PlayAudio("jalapeno"); - var b = $(j), - f = h.R, - c = oZ.getArZ(100, oS.W, f), - e = c.length, - g = oGd.$Ice[f], - d = oGd.$Crater; - while (e--) { - c[e].getExplosion(); - } - h.Die(1); - EditEle( - b.childNodes[1], - { - src: "images/Plants/Jalapeno/JalapenoAttack.gif", - }, - { - width: "755px", - height: "131px", - left: 120 - h.pixelLeft + "px", - top: "-42px", - } - ); - oSym.addTask(135, ClearChild, [b]); - ClearChild($("dIceCar" + f)); - if (g) { - for (e = g[1]; e < 11; e++) { - delete d[f + "_" + e]; - } - } - } - }, - [a.id] - ); - }, - }), - oSeedJalapeno = InheritO(oCherryBomb, { - EName: "oSeedJalapeno", - CName: "Jalapeno", - width: 68, - height: 89, - SunNum: 0, - beAttackedPointR: 48, - PicArr: [ - "images/Card/Plants/Jalapeno.png", - "images/Plants/Jalapeno/0.gif", - "images/Plants/Jalapeno/Jalapeno.gif", - "images/Plants/Jalapeno/JalapenoAttack.gif", - ], - AudioArr: ["jalapeno"], - Tooltip: "Destroys an entire lane of zombies", - Produce: - '火爆辣椒可以摧毁一整条线上的敌人。

Harm:极高
Scope:整条线上的僵尸
用法:单独使用,立即生效

“嘎嘎嘎嘎嘎嘎嘎!!!”火爆辣椒说。他现在
不会爆炸,还不到时候,不过快了,喔~,快了快
了,快来了。他知道,他感受到了,他一生都是
在等待这个时刻!', - PrivateBirth: function (a) { - oSym.addTask( - 40, - function (j) { - var h = $P[j]; - if (h) { - PlayAudio("jalapeno"); - var b = $(j), - f = h.R, - c = oZ.getArZ(100, oS.W, f), - e = c.length, - g = oGd.$Ice[f], - d = oGd.$Crater; - while (e--) { - c[e].getExplosion(); - } - h.Die(1); - EditEle( - b.childNodes[1], - { - src: "images/Plants/Jalapeno/JalapenoAttack.gif", - }, - { - width: "755px", - height: "131px", - left: 120 - h.pixelLeft + "px", - top: "-42px", - } - ); - oSym.addTask(135, ClearChild, [b]); - ClearChild($("dIceCar" + f)); - if (g) { - for (e = g[1]; e < 11; e++) { - delete d[f + "_" + e]; - } - } - } - }, - [a.id] - ); - }, - }), - oSpikeweed = InheritO(CPlants, { - EName: "oSpikeweed", - CName: "Spikeweed", - width: 85, - height: 35, - beAttackedPointL: 10, - beAttackedPointR: 75, - SunNum: 100, - Stature: -1, - canEat: 0, - PicArr: [ - "images/Card/Plants/Spikeweed.png", - "images/Plants/Spikeweed/0.gif", - "images/Plants/Spikeweed/Spikeweed.gif", - ], - Attack: 20, - ArZ: {}, - Tooltip: "Pops tires and hurts zombies that step on it", - Produce: - '地刺可以扎破轮胎,并对踩到他的僵尸造成伤

Harm:普通
Scope:所有踩到他的僵尸
Features:不会被僵尸吃掉

地刺痴迷冰球,他买了包厢的季票。他一直关
注着他喜欢的球员,他也始终如一的在赛后清理
冰球场。但只有一个问题:他害怕冰球。', - CanGrow: function (c, b, e) { - var a = b + "_" + e, - d = oS.ArP; - return d - ? e > 0 && e < d.ArC[1] && oGd.$LF[b] == 1 && !(c[1] || c[0]) - : !( - e < 1 || - e > 9 || - oGd.$LF[b] - 1 || - c[1] || - c[0] || - oGd.$Crater[a] || - oGd.$Tombstones[a] - ); - }, - getHurt: function (d, b, a) { - var c = this; - switch (b) { - case 2: - d.flatTire(); - c.Die(); - break; - case 1: - d.getHit2(d, 20, 0); - c.Die(); - break; - default: - (c.HP -= a) < 1 && c.Die(); - } - }, - NormalAttack: function (b, a) { - var c = $Z[b]; - c.getHit2(c, this.Attack, 0); - }, - GetDY: function (b, c, a) { - return -2; - }, - getTriggerRange: function (a, b, c) { - return [[this.pixelLeft - 80, this.pixelRight + 80, 0]]; - }, - TriggerCheck: function (i, h) { - var c = i.id, - g = this.ArZ, - a, - b, - e, - f; - i.PZ && - !g[c] && - ((a = i.AttackedLX), - (b = i.AttackedRX), - (e = this.AttackedLX), - (f = this.AttackedRX), - (a <= f && a >= e) || - (b <= f && b >= e) || - (a <= e && b >= f)) && - this.AttackCheck2(i) && - ((g[c] = 1), - this.NormalAttack(c), - oSym.addTask( - 100, - function (d, j) { - var k = $P[d]; - k && delete k.ArZ[j]; - }, - [this.id, c] - )); - }, - AttackCheck2: function (a) { - return a.Altitude == 1 && a.beAttacked; - }, - }), - oSeedSpikeweed = InheritO(CPlants, { - EName: "oSeedSpikeweed", - CName: "Spikeweed", - width: 85, - height: 35, - beAttackedPointL: 10, - beAttackedPointR: 75, - SunNum: 0, - Stature: -1, - canEat: 0, - PicArr: [ - "images/Card/Plants/Spikeweed.png", - "images/Plants/Spikeweed/0.gif", - "images/Plants/Spikeweed/Spikeweed.gif", - ], - Attack: 20, - ArZ: {}, - Tooltip: "Pops tires and hurts zombies that step on it", - Produce: - '地刺可以扎破轮胎,并对踩到他的僵尸造成伤

Harm:普通
Scope:所有踩到他的僵尸
Features:不会被僵尸吃掉

地刺痴迷冰球,他买了包厢的季票。他一直关
注着他喜欢的球员,他也始终如一的在赛后清理
冰球场。但只有一个问题:他害怕冰球。', - CanGrow: function (c, b, e) { - var a = b + "_" + e, - d = oS.ArP; - return d - ? e > 0 && e < d.ArC[1] && oGd.$LF[b] == 1 && !(c[1] || c[0]) - : !( - e < 1 || - e > 9 || - oGd.$LF[b] - 1 || - c[1] || - c[0] || - oGd.$Crater[a] || - oGd.$Tombstones[a] - ); - }, - getHurt: function (d, b, a) { - var c = this; - switch (b) { - case 2: - d.flatTire(); - c.Die(); - break; - case 1: - d.getHit2(d, 20, 0); - c.Die(); - break; - default: - (c.HP -= a) < 1 && c.Die(); - } - }, - NormalAttack: function (b, a) { - var c = $Z[b]; - c.getHit2(c, this.Attack, 0); - }, - GetDY: function (b, c, a) { - return -2; - }, - getTriggerRange: function (a, b, c) { - return [[this.pixelLeft - 80, this.pixelRight + 80, 0]]; - }, - TriggerCheck: function (i, h) { - var c = i.id, - g = this.ArZ, - a, - b, - e, - f; - i.PZ && - !g[c] && - ((a = i.AttackedLX), - (b = i.AttackedRX), - (e = this.AttackedLX), - (f = this.AttackedRX), - (a <= f && a >= e) || - (b <= f && b >= e) || - (a <= e && b >= f)) && - this.AttackCheck2(i) && - ((g[c] = 1), - this.NormalAttack(c), - oSym.addTask( - 100, - function (d, j) { - var k = $P[d]; - k && delete k.ArZ[j]; - }, - [this.id, c] - )); - }, - AttackCheck2: function (a) { - return a.Altitude == 1 && a.beAttacked; - }, - }), - oSpikerock = InheritO(oSpikeweed, { - EName: "oSpikerock", - CName: "Spikerock", - width: 84, - height: 43, - beAttackedPointL: 10, - beAttackedPointR: 74, - SunNum: 125, - PicArr: [ - "images/Card/Plants/Spikerock.png", - "images/Plants/Spikerock/0.gif", - "images/Plants/Spikerock/Spikerock.gif", - "images/Plants/Spikerock/2.gif", - "images/Plants/Spikerock/3.gif", - ], - Attack: 40, - Tooltip: - 'Pops multiple tires and damages zombies that walk over it

(requires spikeweed)', - Produce: - '地刺王可以扎破多个轮胎,并对踩到他的僵尸
造成伤害。

可以种植在地刺上

地刺王刚刚从欧洲旅行回来。他玩的很高兴,
也认识了很多有趣的人。这些都真的拓展了他
视野——他从来不知道,他们建造了这么大博
物馆,有这么多的画作。这对他说太惊奇了。', - CanGrow: function (b, a, d) { - var c = b[1]; - return c && c.EName == "oSpikeweed"; - }, - GetDY: function (b, c, a) { - return 0; - }, - getHurt: function (f, c, b) { - var e = this, - d, - a = $(e.id).childNodes[1]; - switch (c) { - case 2: - f.flatTire(); - break; - case 1: - f.getHit2(f, 40, 0); - } - switch (true) { - case (d = e.HP -= b) < 1: - e.Die(); - break; - case d < 101: - a.src = "images/Plants/Spikerock/3.gif"; - break; - case d < 201: - a.src = "images/Plants/Spikerock/2.gif"; - } - }, - }), - oGarlic = InheritO(CPlants, { - EName: "oGarlic", - CName: "Garlic", - width: 60, - height: 59, - beAttackedPointR: 40, - SunNum: 50, - HP: 400, - PicArr: [ - "images/Card/Plants/Garlic.png", - "images/Plants/Garlic/0.gif", - "images/Plants/Garlic/Garlic.gif", - "images/Plants/Garlic/Garlic_body2.gif", - "images/Plants/Garlic/Garlic_body3.gif", - ], - Tooltip: "Diverts zombies into other lanes", - Produce: - '大蒜可以让僵尸改变前进的路线。

Scope:近距离接触
Features:改变僵尸的前进路线

路线转向,这不仅仅是大蒜的专业,更是他
的热情所在。他在布鲁塞尔大学里,获得了转向
学的博士学位。他能把路线向量和反击阵列,讲
上一整天。他甚至会把家里的东西,推到街上去
。不知道为啥,他老婆还可以忍受这些。', - CanGrow: function (c, b, f) { - var a = b + "_" + f, - d = c[1], - e = oS.ArP; - return e - ? oGd.$LF[b] == 1 - ? f > 0 && - f < e.ArC[1] && - !(oGd.$Crater[a] || oGd.$Tombstones[a] || d) - : c[0] && !d - : d && d.EName == "oGarlic" - ? 1 - : oGd.$LF[b] == 1 - ? !(f < 1 || f > 9 || oGd.$Crater[a] || oGd.$Tombstones[a] || d) - : c[0] && !d; - }, - InitTrigger: function () {}, - HurtStatus: 0, - getHurt: function (e, b, a) { - let yuckrng = Math.floor(Math.random() * 2) + 1; // note the uppercase M in Math - if (yuckrng == 1) { - PlayAudio("yuck"); - } else if (yuckrng == 2) { - PlayAudio("yuck2"); - } - var c = this, - d = $(c.id).childNodes[1]; - !(b % 3) - ? (c.HP -= 20) < 1 - ? c.Die() - : (e.ChangeR({ - R: c.R, - }), - c.HP < 134 - ? c.HurtStatus < 2 && - ((c.HurtStatus = 2), - (d.src = "images/Plants/Garlic/Garlic_body3.gif")) - : c.HP < 267 && - c.HurtStatus < 1 && - ((c.HurtStatus = 1), - (d.src = "images/Plants/Garlic/Garlic_body2.gif"))) - : c.Die(1); - }, - }), - oSeedGarlic = InheritO(CPlants, { - EName: "oSeedGarlic", - CName: "Garlic", - width: 60, - height: 59, - beAttackedPointR: 40, - SunNum: 0, - HP: 400, - PicArr: [ - "images/Card/Plants/Garlic.png", - "images/Plants/Garlic/0.gif", - "images/Plants/Garlic/Garlic.gif", - "images/Plants/Garlic/Garlic_body2.gif", - "images/Plants/Garlic/Garlic_body3.gif", - ], - Tooltip: "Diverts zombies into other lanes", - Produce: - '大蒜可以让僵尸改变前进的路线。

Scope:近距离接触
Features:改变僵尸的前进路线

路线转向,这不仅仅是大蒜的专业,更是他
的热情所在。他在布鲁塞尔大学里,获得了转向
学的博士学位。他能把路线向量和反击阵列,讲
上一整天。他甚至会把家里的东西,推到街上去
。不知道为啥,他老婆还可以忍受这些。', - CanGrow: function (c, b, f) { - var a = b + "_" + f, - d = c[1], - e = oS.ArP; - return e - ? oGd.$LF[b] == 1 - ? f > 0 && - f < e.ArC[1] && - !(oGd.$Crater[a] || oGd.$Tombstones[a] || d) - : c[0] && !d - : d && d.EName == "oGarlic" - ? 1 - : oGd.$LF[b] == 1 - ? !(f < 1 || f > 9 || oGd.$Crater[a] || oGd.$Tombstones[a] || d) - : c[0] && !d; - }, - InitTrigger: function () {}, - HurtStatus: 0, - getHurt: function (e, b, a) { - let yuckrng = Math.floor(Math.random() * 2) + 1; // note the uppercase M in Math - if (yuckrng == 1) { - PlayAudio("yuck"); - } else if (yuckrng == 2) { - PlayAudio("yuck2"); - } - var c = this, - d = $(c.id).childNodes[1]; - !(b % 3) - ? (c.HP -= 20) < 1 - ? c.Die() - : (e.ChangeR({ - R: c.R, - }), - c.HP < 134 - ? c.HurtStatus < 2 && - ((c.HurtStatus = 2), - (d.src = "images/Plants/Garlic/Garlic_body3.gif")) - : c.HP < 267 && - c.HurtStatus < 1 && - ((c.HurtStatus = 1), - (d.src = "images/Plants/Garlic/Garlic_body2.gif"))) - : c.Die(1); - }, - }), - oSquash = InheritO(CPlants, { - EName: "oSquash", - CName: "Squash", - width: 100, - height: 226, - beAttackedPointR: 67, - SunNum: 50, - PicArr: [ - "images/Card/Plants/Squash.png", - "images/Plants/Squash/0.gif", - "images/Plants/Squash/Squash.gif", - "images/Plants/Squash/SquashAttack.gif", - "images/Plants/Squash/SquashL.png", - "images/Plants/Squash/SquashR.png", - ], - AudioArr: ["squash_hmm", "gargantuar_thump"], - Tooltip: "Squashes zombies", - Produce: - '窝瓜会压扁第一个接近它的僵尸。

Harm:极高
Scope:短,覆盖所有它压到的僵尸。
用法:单独使用

“我准备好了!”窝瓜大吼道,“干吧!!算我
一份!没人比我厉害!我就是你要的人!来啊!
等啥啊?要的就是这个!”', - GetDY: function (b, c, a) { - return a[0] ? -21 : -10; - }, - getHurt: function (d, b, a) { - var c = this; - b != 3 - ? c.NormalAttack( - c, - d.id, - d.ZX + d.Speed * 4 * (!d.WalkDirection ? -1 : 1) - 50 - ) - : (c.HP -= a) < 1 && c.Die(); - }, - getTriggerRange: function (a, b, c) { - return [[b - 50, c + 80, 0]]; - }, - TriggerCheck: function (h, g, e) { - var c = h.ZX, - b = this.id, - a = $(b).childNodes[1], - f = h.isAttacking; - h.beAttacked && - h.Altitude > -1 && - h.Altitude < 2 && - (f || (!f && c - this.AttackedRX < 71)) && - (PlayAudio("squash_hmm"), - oT.$[this.R].splice(e, 1), - (a.src = - c > this.AttackedRX - ? "images/Plants/Squash/SquashR.png" - : "images/Plants/Squash/SquashL.png"), - oSym.addTask( - 100, - function (d, j, i) { - var k = $P[d]; - k && k.NormalAttack(k, h.id, i); - }, - [ - b, - h.id, - h.ZX + h.Speed * 4 * (!h.WalkDirection ? -1 : 1) - 50, - ] - )); - }, - NormalAttack: function (d, c, b) { - var a = $(d.id), - e = $Z[c]; - e && (b = e.ZX + e.Speed * 4 * (!e.WalkDirection ? -1 : 1) - 50); - a.childNodes[1].src = - "images/Plants/Squash/SquashAttack.gif" + - $Random + - Math.random(); - SetStyle(a, { - left: b + "px", - }); - d.Die(1); - oSym.addTask( - 45, - function (f, l, j) { - PlayAudio("gargantuar_thump"); - var g = oZ.getArZ(l, l + 100, j), - h = g.length, - k; - while (h--) { - (k = g[h]).Altitude > -1 && - k.PZ && - k.Altitude < 3 && - k.getThump(); - } - oSym.addTask(185, ClearChild, [f]); - }, - [a, b, d.R] - ); - }, - }), - oSeedSquash = InheritO(CPlants, { - EName: "oSeedSquash", - CName: "Squash", - width: 100, - height: 226, - beAttackedPointR: 67, - SunNum: 0, - PicArr: [ - "images/Card/Plants/Squash.png", - "images/Plants/Squash/0.gif", - "images/Plants/Squash/Squash.gif", - "images/Plants/Squash/SquashAttack.gif", - "images/Plants/Squash/SquashL.png", - "images/Plants/Squash/SquashR.png", - ], - AudioArr: ["squash_hmm", "gargantuar_thump"], - Tooltip: "Squashes zombies", - Produce: - '窝瓜会压扁第一个接近它的僵尸。

Harm:极高
Scope:短,覆盖所有它压到的僵尸。
用法:单独使用

“我准备好了!”窝瓜大吼道,“干吧!!算我
一份!没人比我厉害!我就是你要的人!来啊!
等啥啊?要的就是这个!”', - GetDY: function (b, c, a) { - return a[0] ? -21 : -10; - }, - getHurt: function (d, b, a) { - var c = this; - b != 3 - ? c.NormalAttack( - c, - d.id, - d.ZX + d.Speed * 4 * (!d.WalkDirection ? -1 : 1) - 50 - ) - : (c.HP -= a) < 1 && c.Die(); - }, - getTriggerRange: function (a, b, c) { - return [[b - 50, c + 80, 0]]; - }, - TriggerCheck: function (h, g, e) { - var c = h.ZX, - b = this.id, - a = $(b).childNodes[1], - f = h.isAttacking; - h.beAttacked && - h.Altitude > -1 && - h.Altitude < 2 && - (f || (!f && c - this.AttackedRX < 71)) && - (PlayAudio("squash_hmm"), - oT.$[this.R].splice(e, 1), - (a.src = - c > this.AttackedRX - ? "images/Plants/Squash/SquashR.png" - : "images/Plants/Squash/SquashL.png"), - oSym.addTask( - 100, - function (d, j, i) { - var k = $P[d]; - k && k.NormalAttack(k, h.id, i); - }, - [ - b, - h.id, - h.ZX + h.Speed * 4 * (!h.WalkDirection ? -1 : 1) - 50, - ] - )); - }, - NormalAttack: function (d, c, b) { - var a = $(d.id), - e = $Z[c]; - e && (b = e.ZX + e.Speed * 4 * (!e.WalkDirection ? -1 : 1) - 50); - a.childNodes[1].src = - "images/Plants/Squash/SquashAttack.gif" + - $Random + - Math.random(); - SetStyle(a, { - left: b + "px", - }); - d.Die(1); - oSym.addTask( - 45, - function (f, l, j) { - PlayAudio("gargantuar_thump"); - var g = oZ.getArZ(l, l + 100, j), - h = g.length, - k; - while (h--) { - (k = g[h]).Altitude > -1 && - k.PZ && - k.Altitude < 3 && - k.getThump(); - } - oSym.addTask(185, ClearChild, [f]); - }, - [a, b, d.R] - ); - }, - }), - oChomper = InheritO(CPlants, { - EName: "oChomper", - CName: "Chomper", - width: 130, - height: 114, - beAttackedPointR: 70, - SunNum: 150, - AudioArr: ["bigchomp"], - PicArr: [ - "images/Card/Plants/Chomper.png", - "images/Plants/Chomper/0.gif", - "images/Plants/Chomper/Chomper.gif", - "images/Plants/Chomper/ChomperAttack.gif", - "images/Plants/Chomper/ChomperDigest.gif", - ], - Tooltip: "Devours a zombie whole, but is vulnerable while chewing", - Produce: - 'Big-mouthed flowers can swallow a whole zombie in one bite, but they are very fragile when digesting zombies.

Harm:huge
Scope:very close
Features:Digestion takes a long time

Big Mouth Flower can almost go to "Little Shop of Horrors"”,to perform its absolute best
Skilled, but his agent squeezed him too much money.
Because he didnt go. Despite this, Dazuihua has no complaints, only
Said it was just part of the deal.', - GetDX: function () { - return -40; - }, - getShadow: function (a) { - return "top:" + (a.height - 22) + "px"; - }, - getTriggerRange: function (a, b, c) { - return [[this.pixelLeft, c + 80, 0]]; - }, - TriggerCheck: function (a) { - this.AttackCheck2(a) && - ((this.canTrigger = 0), this.NormalAttack(this.id, a.id)); - }, - AttackCheck2: function (a) { - return a.Altitude == 1 && a.beAttacked; - }, - NormalAttack: function (a, b) { - $(a).childNodes[1].src = - "images/Plants/Chomper/ChomperAttack.gif" + - $Random + - Math.random(); - oSym.addTask( - 70, - function (c, d) { - PlayAudio("bigchomp"); - $P[c] && - oSym.addTask( - 18, - function (e, f) { - var g = $P[e], - h; - g && - ((h = $Z[f]) && h.beAttacked && h.PZ - ? ($(e).childNodes[1].src = h.getRaven( - e - ) - ? (oSym.addTask( - 4200, - function (i) { - var j = $P[i]; - j && - ((j.canTrigger = 1), - ($( - i - ).childNodes[1].src = - "images/Plants/Chomper/Chomper.gif")); - }, - [e] - ), - "images/Plants/Chomper/ChomperDigest.gif") - : ((g.canTrigger = 1), - "images/Plants/Chomper/Chomper.gif")) - : oSym.addTask( - 18, - function (i) { - var j = $P[i]; - j && - ((j.canTrigger = 1), - ($(i).childNodes[1].src = - "images/Plants/Chomper/Chomper.gif")); - }, - [e] - )); - }, - [c, d] - ); - }, - [a, b] - ); - }, - }), - oSeedChomper = InheritO(CPlants, { - EName: "oSeedChomper", - CName: "Chomper", - width: 130, - height: 114, - beAttackedPointR: 70, - SunNum: 0, - AudioArr: ["bigchomp"], - PicArr: [ - "images/Card/Plants/Chomper.png", - "images/Plants/Chomper/0.gif", - "images/Plants/Chomper/Chomper.gif", - "images/Plants/Chomper/ChomperAttack.gif", - "images/Plants/Chomper/ChomperDigest.gif", - ], - Tooltip: "Devours a zombie whole, but is vulnerable while chewing", - Produce: - 'Big-mouthed flowers can swallow a whole zombie in one bite, but they are very fragile when digesting zombies.

Harm:huge
Scope:very close
Features:Digestion takes a long time

Big Mouth Flower can almost go to "Little Shop of Horrors"”,to perform its absolute best
Skilled, but his agent squeezed him too much money.
Because he didnt go. Despite this, Dazuihua has no complaints, only
Said it was just part of the deal.', - GetDX: function () { - return -40; - }, - getShadow: function (a) { - return "top:" + (a.height - 22) + "px"; - }, - getTriggerRange: function (a, b, c) { - return [[this.pixelLeft, c + 80, 0]]; - }, - TriggerCheck: function (a) { - this.AttackCheck2(a) && - ((this.canTrigger = 0), this.NormalAttack(this.id, a.id)); - }, - AttackCheck2: function (a) { - return a.Altitude == 1 && a.beAttacked; - }, - NormalAttack: function (a, b) { - $(a).childNodes[1].src = - "images/Plants/Chomper/ChomperAttack.gif" + - $Random + - Math.random(); - oSym.addTask( - 70, - function (c, d) { - PlayAudio("bigchomp"); - $P[c] && - oSym.addTask( - 18, - function (e, f) { - var g = $P[e], - h; - g && - ((h = $Z[f]) && h.beAttacked && h.PZ - ? ($(e).childNodes[1].src = h.getRaven( - e - ) - ? (oSym.addTask( - 4200, - function (i) { - var j = $P[i]; - j && - ((j.canTrigger = 1), - ($( - i - ).childNodes[1].src = - "images/Plants/Chomper/Chomper.gif")); - }, - [e] - ), - "images/Plants/Chomper/ChomperDigest.gif") - : ((g.canTrigger = 1), - "images/Plants/Chomper/Chomper.gif")) - : oSym.addTask( - 18, - function (i) { - var j = $P[i]; - j && - ((j.canTrigger = 1), - ($(i).childNodes[1].src = - "images/Plants/Chomper/Chomper.gif")); - }, - [e] - )); - }, - [c, d] - ); - }, - [a, b] - ); - }, - }), - oBigChomper = InheritO(oChomper, { - EName: "oBigChomper", - CName: "Super Chomper", - coolTime: 15, - PicArr: [ - "images/Card/Plants/BigChomper.png", - "images/Plants/BigChomper/0.gif", - "images/Plants/BigChomper/Chomper.gif", - "images/Plants/BigChomper/ChomperAttack.gif", - "images/Plants/BigChomper/ChomperDigest.gif", - ], - Tooltip: - "Can devour multiple zombie whole at once, but is vulnerable while rapidly chewing", - Produce: - '超级大嘴花能一口气吞下一只僵尸, 并且咀嚼速
度是普通大嘴花的50%。

Harm:巨大
Scope:非常近
Features:咀嚼时间短

超级大嘴花曾经是电视节目“超级大胃王”节
目的常客,但后来他被踢出了节目组,原因是
它的存在直接影响到观众的饮食量和节目收视
率。没办法,为了糊口他只得干起吞食僵尸行
动。', - /* -CanGrow: function(b, a, d) { -var c = b[1]; -return c && c.EName == "oChomper" -}, -*/ - NormalAttack: function (a, b) { - $(a).childNodes[1].src = - "images/Plants/BigChomper/ChomperAttack.gif" + - $Random + - Math.random(); - oSym.addTask( - 70, - function (c, d) { - PlayAudio("bigchomp"); - $P[c] && - oSym.addTask( - 9, - function (e, f) { - var g = $P[e], - h; - g && - ((h = $Z[f]) && h.beAttacked && h.PZ - ? ($(e).childNodes[1].src = h.getRaven( - e - ) - ? (oSym.addTask( - 2100, - function (i) { - var j = $P[i]; - j && - ((j.canTrigger = 1), - ($( - i - ).childNodes[1].src = - "images/Plants/BigChomper/Chomper.gif")); - }, - [e] - ), - "images/Plants/BigChomper/ChomperDigest.gif") - : ((g.canTrigger = 1), - "images/Plants/BigChomper/Chomper.gif")) - : oSym.addTask( - 9, - function (i) { - var j = $P[i]; - j && - ((j.canTrigger = 1), - ($(i).childNodes[1].src = - "images/Plants/BigChomper/Chomper.gif")); - }, - [e] - )); - }, - [c, d] - ); - }, - [a, b] - ); - }, - }), - oFumeShroom = InheritO(CPlants, { - EName: "oFumeShroom", - CName: "Fume-shroom", - width: 100, - height: 88, - beAttackedPointR: 80, - SunNum: 75, - BookHandBack: 2.5, - SleepGif: 3, - night: true, - PicArr: [ - "images/Card/Plants/FumeShroom.png", - "images/Plants/FumeShroom/0.gif", - "images/Plants/FumeShroom/FumeShroom.gif", - "images/Plants/FumeShroom/FumeShroomSleep.gif", - "images/Plants/FumeShroom/FumeShroomAttack.gif", - "images/Plants/FumeShroom/FumeShroomBullet.gif", - ], - AudioArr: ["fume"], - Tooltip: "Shoots fumes that can pass through screen doors", - Produce: - '大喷菇喷出的臭气可以穿透铁丝网门。

Harm:普通,可穿透铁丝网门
Scope:臭气中的所有僵尸
白天睡觉

“我以前那份没前途的工作,是为一个面包房
生产酵母孢,”大喷菇说。“然后小喷菇,上帝
保佑它,告诉了我这个喷杀僵尸的机会。现在
我真觉得自己完全不同了。”', - GetDY: function (b, c, a) { - return a[0] ? -18 : -10; - }, - GetDX: function () { - return -45; - }, - BirthStyle: function (c, d, b, a) { - oS.DKind && - ((c.canTrigger = 0), - (c.Sleep = 1), - (b.childNodes[1].src = c.PicArr[c.SleepGif])); - EditEle( - b, - { - id: d, - }, - a, - EDPZ - ); - }, - PrivateBirth: function (b) { - var a = b.id; - NewEle( - a + "_Bullet", - "div", - "position:absolute;visibility:hidden;width:343px;height:62px;left:" + - b.AttackedRX + - "px;top:" + - (b.pixelTop + 5) + - "px;background:url(images/Plants/FumeShroom/FumeShroomBullet.gif);z-index:" + - (b.zIndex + 1), - 0, - EDPZ - ); - }, - PrivateDie: function (a) { - ClearChild($(a.id + "_Bullet")); - }, - getTriggerRange: function (a, b, c) { - return [[b, Math.min(c + 330, oS.W), 0]]; - }, - NormalAttack: function () { - PlayAudio("fume"); - var f = this, - d = oZ.getArZ( - f.AttackedLX, - Math.min(f.AttackedRX + 330, oS.W), - f.R - ), - e = d.length, - g, - c = f.id, - b = $(c), - a = c + "_Bullet"; - while (e--) { - (g = d[e]).Altitude < 2 && g.getHit1(g, 20); - } - b.childNodes[1].src = - "images/Plants/FumeShroom/FumeShroomAttack.gif"; - SetVisible($(a)); - ImgSpriter( - a, - c, - [ - ["0 0", 9, 1], - ["0 -62px", 9, 2], - ["0 -124px", 9, 3], - ["0 -186px", 9, 4], - ["0 -248px", 9, 5], - ["0 -310px", 9, 6], - ["0 -372px", 9, 7], - ["0 -434px", 9, -1], - ], - 0, - function (i, j) { - var h = $(j); - $P[j] && - ((h.childNodes[1].src = - "images/Plants/FumeShroom/FumeShroom.gif"), - SetHidden($(i))); - } - ); - }, - }), - oSeedFumeShroom = InheritO(CPlants, { - EName: "oSeedFumeShroom", - CName: "Fume-shroom", - width: 100, - height: 88, - beAttackedPointR: 80, - SunNum: 0, - BookHandBack: 2.5, - SleepGif: 3, - night: true, - PicArr: [ - "images/Card/Plants/FumeShroom.png", - "images/Plants/FumeShroom/0.gif", - "images/Plants/FumeShroom/FumeShroom.gif", - "images/Plants/FumeShroom/FumeShroomSleep.gif", - "images/Plants/FumeShroom/FumeShroomAttack.gif", - "images/Plants/FumeShroom/FumeShroomBullet.gif", - ], - AudioArr: ["fume"], - Tooltip: "Shoots fumes that can pass through screen doors", - Produce: - '大喷菇喷出的臭气可以穿透铁丝网门。

Harm:普通,可穿透铁丝网门
Scope:臭气中的所有僵尸
白天睡觉

“我以前那份没前途的工作,是为一个面包房
生产酵母孢,”大喷菇说。“然后小喷菇,上帝
保佑它,告诉了我这个喷杀僵尸的机会。现在
我真觉得自己完全不同了。”', - GetDY: function (b, c, a) { - return a[0] ? -18 : -10; - }, - GetDX: function () { - return -45; - }, - BirthStyle: function (c, d, b, a) { - oS.DKind && - ((c.canTrigger = 0), - (c.Sleep = 1), - (b.childNodes[1].src = c.PicArr[c.SleepGif])); - EditEle( - b, - { - id: d, - }, - a, - EDPZ - ); - }, - PrivateBirth: function (b) { - var a = b.id; - NewEle( - a + "_Bullet", - "div", - "position:absolute;visibility:hidden;width:343px;height:62px;left:" + - b.AttackedRX + - "px;top:" + - (b.pixelTop + 5) + - "px;background:url(images/Plants/FumeShroom/FumeShroomBullet.gif);z-index:" + - (b.zIndex + 1), - 0, - EDPZ - ); - }, - PrivateDie: function (a) { - ClearChild($(a.id + "_Bullet")); - }, - getTriggerRange: function (a, b, c) { - return [[b, Math.min(c + 330, oS.W), 0]]; - }, - NormalAttack: function () { - PlayAudio("fume"); - var f = this, - d = oZ.getArZ( - f.AttackedLX, - Math.min(f.AttackedRX + 330, oS.W), - f.R - ), - e = d.length, - g, - c = f.id, - b = $(c), - a = c + "_Bullet"; - while (e--) { - (g = d[e]).Altitude < 2 && g.getHit1(g, 20); - } - b.childNodes[1].src = - "images/Plants/FumeShroom/FumeShroomAttack.gif"; - SetVisible($(a)); - ImgSpriter( - a, - c, - [ - ["0 0", 9, 1], - ["0 -62px", 9, 2], - ["0 -124px", 9, 3], - ["0 -186px", 9, 4], - ["0 -248px", 9, 5], - ["0 -310px", 9, 6], - ["0 -372px", 9, 7], - ["0 -434px", 9, -1], - ], - 0, - function (i, j) { - var h = $(j); - $P[j] && - ((h.childNodes[1].src = - "images/Plants/FumeShroom/FumeShroom.gif"), - SetHidden($(i))); - } - ); - }, - }), - oIceFumeShroom = InheritO(oFumeShroom, { - EName: "oIceFumeShroom", - CName: "Icy Fume-shroom", - SunNum: 200, - PicArr: [ - "images/Card/Plants/IcyFumeShroom.png", - "images/Plants/IcyFumeShroom/0.gif", - "images/Plants/IcyFumeShroom/FumeShroom.gif", - "images/Plants/IcyFumeShroom/FumeShroomSleep.gif", - "images/Plants/IcyFumeShroom/FumeShroomAttack.gif", - "images/Plants/IcyFumeShroom/FumeShroomBullet.gif", - ], - Tooltip: - 'Shoots icy fumes that can pass through screen doors

(requires fume-shroom)', - Produce: - '大喷菇喷出的臭气可以穿透铁丝网门。

Harm:普通,可穿透铁丝网门
Scope:臭气中的所有僵尸
白天睡觉

“我以前那份没前途的工作,是为一个面包房
生产酵母孢,”大喷菇说。“然后小喷菇,上帝
保佑它,告诉了我这个喷杀僵尸的机会。现在
我真觉得自己完全不同了。”', - PrivateBirth: function (b) { - var a = b.id; - NewEle( - a + "_Bullet", - "div", - "position:absolute;visibility:hidden;width:343px;height:62px;left:" + - b.AttackedRX + - "px;top:" + - (b.pixelTop + 5) + - "px;background:url(images/Plants/IcyFumeShroom/FumeShroomBullet.gif);z-index:" + - (b.zIndex + 1), - 0, - EDPZ - ); - }, - NormalAttack: function () { - PlayAudio("fume"); - var f = this, - d = oZ.getArZ( - f.AttackedLX, - Math.min(f.AttackedRX + 330, oS.W), - f.R - ), - e = d.length, - g, - c = f.id, - b = $(c), - a = c + "_Bullet"; - while (e--) { - (g = d[e]).Altitude < 2 && g.getSnowPea(g, 20); - } - b.childNodes[1].src = - "images/Plants/IcyFumeShroom/FumeShroomAttack.gif"; - SetVisible($(a)); - ImgSpriter( - a, - c, - [ - ["0 0", 9, 1], - ["0 -62px", 9, 2], - ["0 -124px", 9, 3], - ["0 -186px", 9, 4], - ["0 -248px", 9, 5], - ["0 -310px", 9, 6], - ["0 -372px", 9, 7], - ["0 -434px", 9, -1], - ], - 0, - function (i, j) { - var h = $(j); - $P[j] && - ((h.childNodes[1].src = - "images/Plants/IcyFumeShroom/FumeShroom.gif"), - SetHidden($(i))); - } - ); - }, - }), - oCoffeeBean = InheritO(CPlants, { - EName: "oCoffeeBean", - CName: "Coffee Bean", - width: 39, - height: 97, - beAttackedPointL: 10, - beAttackedPointR: 29, - SunNum: 75, - PKind: 3, - canEat: 0, - PicArr: [ - "images/Card/Plants/CoffeeBean.png", - "images/Plants/CoffeeBean/0.gif", - "images/Plants/CoffeeBean/CoffeeBean.gif", - "images/Plants/CoffeeBean/CoffeeBeanEat.gif" + $Random, - ], - AudioArr: ["coffee", "wakeup"], - Tooltip: "Plant it on a mushroom to wake it up", - Produce: - '咖啡豆,可以唤醒睡眠中的蘑菇们。

Instructions:单独使用,立即生效
Features:可以种在其他植物上,用来唤醒蘑菇们

咖啡豆:“嘿,伙计们!嘿,怎么回事?是谁?
嘿!你瞧见那个东西没?什么东西?哇!是狮子
!”嗯,咖啡豆确定,这样可以让自己很兴奋
。', - InitTrigger: function () {}, - GetDBottom: function () { - return 49; - }, - GetDY: function () { - return -30; - }, - CanGrow: function (a, b) { - return (b = a[1]) && b.Sleep && !a[3]; - }, - BirthStyle: function (c, d, b, a) { - b.childNodes[1].src = this.PicArr[3] + Math.random(); - EditEle( - b, - { - id: d, - }, - a, - EDPZ - ); - }, - PrivateBirth: function (a) { - SetHidden($(a.id).firstChild); - PlayAudio("coffee"); - oSym.addTask( - 240, - function (c) { - PlayAudio("wakeup"); - var d = oGd.$[c], - b; - d && - ((b = d.WakeUP), - !b - ? (($(d.id).childNodes[1].src = - d.PicArr[d.NormalGif]), - (d.canTrigger = 1), - (d.Sleep = 0)) - : b(d)); - a.Die(); - }, - [a.R + "_" + a.C + "_1"] - ); - }, - }), - oGloomShroom = InheritO(oFumeShroom, { - EName: "oGloomShroom", - CName: "Gloom-shroom", - width: 112, - height: 81, - beAttackedPointR: 92, - SunNum: 150, - PicArr: [ - "images/Card/Plants/GloomShroom.png", - "images/Plants/GloomShroom/0.gif", - "images/Plants/GloomShroom/GloomShroom.gif", - "images/Plants/GloomShroom/GloomShroomSleep.gif", - "images/Plants/GloomShroom/GloomShroomAttack.gif", - "images/Plants/GloomShroom/GloomShroomBullet.gif", - ], - AudioArr: ["kernelpult", "kernelpult2"], - Tooltip: - 'Releases heavy fumes in an area around itself

(requires fume-shroom)', - Produce: - '围绕自身释放大量孢子

可以种植在大喷菇上

“我喜欢喷射大量烟雾。”忧郁蘑菇说,“我
知道许多人不喜欢这样,他们说这又粗鲁啦烟
雾又很臭啦之类的,我只想说,你们想不想自
己的脑袋被僵尸吃掉?”', - CanGrow: function (b, a, d) { - var c = b[1]; - return c && c.EName == "oFumeShroom"; - }, - BirthStyle: function (c, d, b, a) { - oGd.$[c.R + "_" + c.C + "_1"] && - oGd.$[c.R + "_" + c.C + "_1"].Sleep && - ((c.canTrigger = 0), - (c.Sleep = 1), - (b.childNodes[1].src = c.PicArr[3])); - EditEle(b, { id: d }, a, EDPZ); - }, - GetDX: function () { - return -58; - }, - PrivateBirth: function (b) { - var a = b.id; - NewEle( - a + "_Bullet", - "div", - "position:absolute;visibility:hidden;width:210px;height:200px;left:" + - (b.pixelLeft - 60) + - "px;top:" + - (b.pixelTop - 65) + - "px;background:url(images/Plants/GloomShroom/GloomShroomBullet.gif);z-index:" + - (b.zIndex + 1), - 0, - EDPZ - ); - }, - PrivateDie: function (a) { - ClearChild($(a.id + "_Bullet")); - }, - getTriggerRange: function (c, d, e) { - var f = GetX(this.C), - b = (this.MinX = f - 120), - a = (this.MaxX = f + 120); - return [[b, a, 0]]; - }, - getTriggerR: function (c) { - var b = (this.MinR = c > 2 ? c - 1 : 1), - a = (this.MaxR = c < oS.R ? Number(c) + 1 : c); - return [b, a]; - }, - NormalAttack: function () { - var k = this, - g, - f = k.MaxR, - c = k.MinX, - b = k.MaxX, - e, - h, - a, - j = k.id, - d = $(j), - l = j + "_Bullet"; - for (g = k.MinR; g <= f; g++) { - e = oZ.getArZ(c, b, g); - for ( - h = e.length; - h--; - (a = e[h]).Altitude < 2 && a.getHit1(a, 80) - ) {} - } - oSym.addTask( - 100, - function (i) { - PlayAudio( - ["kernelpult", "kernelpult2"][ - Math.floor(Math.random() * 2) - ] - ); - --i && oSym.addTask(100, arguments.callee, [i]); - }, - [4] - ); - d.childNodes[1].src = - "images/Plants/GloomShroom/GloomShroomAttack.gif"; - SetVisible($(l)); - ImgSpriter( - l, - j, - [ - ["0 0", 9, 1], - ["0 -200px", 9, 2], - ["0 -400px", 9, 3], - ["0 -600px", 9, 4], - ["0 -800px", 9, 5], - ["0 -1000px", 9, 6], - ["0 -1200px", 9, 7], - ["0 -1400px", 9, 8], - ["0 -1600px", 9, 9], - ["0 -1800px", 9, 10], - ["0 -2000px", 9, 11], - ["0 -2200px", 9, -1], - ], - 0, - function (m, n) { - var i = $(n); - $P[n] && - (i.childNodes[1].src = - "images/Plants/GloomShroom/GloomShroom.gif"); - SetHidden($(m)); - } - ); - }, - }), - oSeedGloomShroom = InheritO(oSeedFumeShroom, { - EName: "oSeedGloomShroom", - CName: "Gloom-shroom", - width: 112, - height: 81, - beAttackedPointR: 92, - SunNum: 0, - PicArr: [ - "images/Card/Plants/GloomShroom.png", - "images/Plants/GloomShroom/0.gif", - "images/Plants/GloomShroom/GloomShroom.gif", - "images/Plants/GloomShroom/GloomShroomSleep.gif", - "images/Plants/GloomShroom/GloomShroomAttack.gif", - "images/Plants/GloomShroom/GloomShroomBullet.gif", - ], - AudioArr: ["kernelpult", "kernelpult2"], - Tooltip: - 'Releases heavy fumes in an area around itself

(requires fume-shroom)', - Produce: - '围绕自身释放大量孢子

可以种植在大喷菇上

“我喜欢喷射大量烟雾。”忧郁蘑菇说,“我
知道许多人不喜欢这样,他们说这又粗鲁啦烟
雾又很臭啦之类的,我只想说,你们想不想自
己的脑袋被僵尸吃掉?”', - CanGrow: function (b, a, d) { - var c = b[1]; - return c && c.EName == "oSeedFumeShroom"; - }, - BirthStyle: function (c, d, b, a) { - oGd.$[c.R + "_" + c.C + "_1"] && - oGd.$[c.R + "_" + c.C + "_1"].Sleep && - ((c.canTrigger = 0), - (c.Sleep = 1), - (b.childNodes[1].src = c.PicArr[3])); - EditEle(b, { id: d }, a, EDPZ); - }, - GetDX: function () { - return -58; - }, - PrivateBirth: function (b) { - var a = b.id; - NewEle( - a + "_Bullet", - "div", - "position:absolute;visibility:hidden;width:210px;height:200px;left:" + - (b.pixelLeft - 60) + - "px;top:" + - (b.pixelTop - 65) + - "px;background:url(images/Plants/GloomShroom/GloomShroomBullet.gif);z-index:" + - (b.zIndex + 1), - 0, - EDPZ - ); - }, - PrivateDie: function (a) { - ClearChild($(a.id + "_Bullet")); - }, - getTriggerRange: function (c, d, e) { - var f = GetX(this.C), - b = (this.MinX = f - 120), - a = (this.MaxX = f + 120); - return [[b, a, 0]]; - }, - getTriggerR: function (c) { - var b = (this.MinR = c > 2 ? c - 1 : 1), - a = (this.MaxR = c < oS.R ? Number(c) + 1 : c); - return [b, a]; - }, - NormalAttack: function () { - var k = this, - g, - f = k.MaxR, - c = k.MinX, - b = k.MaxX, - e, - h, - a, - j = k.id, - d = $(j), - l = j + "_Bullet"; - for (g = k.MinR; g <= f; g++) { - e = oZ.getArZ(c, b, g); - for ( - h = e.length; - h--; - (a = e[h]).Altitude < 2 && a.getHit1(a, 80) - ) {} - } - oSym.addTask( - 100, - function (i) { - PlayAudio( - ["kernelpult", "kernelpult2"][ - Math.floor(Math.random() * 2) - ] - ); - --i && oSym.addTask(100, arguments.callee, [i]); - }, - [4] - ); - d.childNodes[1].src = - "images/Plants/GloomShroom/GloomShroomAttack.gif"; - SetVisible($(l)); - ImgSpriter( - l, - j, - [ - ["0 0", 9, 1], - ["0 -200px", 9, 2], - ["0 -400px", 9, 3], - ["0 -600px", 9, 4], - ["0 -800px", 9, 5], - ["0 -1000px", 9, 6], - ["0 -1200px", 9, 7], - ["0 -1400px", 9, 8], - ["0 -1600px", 9, 9], - ["0 -1800px", 9, 10], - ["0 -2000px", 9, 11], - ["0 -2200px", 9, -1], - ], - 0, - function (m, n) { - var i = $(n); - $P[n] && - (i.childNodes[1].src = - "images/Plants/GloomShroom/GloomShroom.gif"); - SetHidden($(m)); - } - ); - }, - }), - oPuffShroom = InheritO(oFumeShroom, { - EName: "oPuffShroom", - CName: "Puff-shroom", - width: 40, - height: 66, - beAttackedPointL: 15, - beAttackedPointR: 25, - SunNum: 0, - Stature: -1, - PicArr: [ - "images/Card/Plants/PuffShroom.png", - "images/Plants/PuffShroom/0.gif", - "images/Plants/PuffShroom/PuffShroom.gif", - "images/Plants/PuffShroom/PuffShroomSleep.gif", - "images/Plants/ShroomBullet.gif", - "images/Plants/ShroomBulletHit.gif", - ], - AudioArr: ["puff"], - Tooltip: "Shoots short-ranged spores at the enemy", - Produce: - '小喷菇是免费的,不过射程很近。

Harm: 中等
Scope:
白天要睡觉

小喷菇:“我也是最近才知道僵尸的存在,和
很多蘑菇一样,我只是把他们想象成童话和电
影里的怪物。不过这次的经历已经让我大开眼
界了。', - GetDX: CPlants.prototype.GetDX, - getTriggerRange: function (a, b, c) { - return [[b, Math.min(c + 250, oS.W), 0]]; - }, - PrivateBirth: function (a) { - a.BulletEle = NewImg( - 0, - "images/Plants/ShroomBullet.gif", - "left:" + - (a.AttackedLX - 46) + - "px;top:" + - (a.pixelTop + 40) + - "px;visibility:hidden;z-index:" + - (a.zIndex + 2) - ); - }, - PrivateDie: function (a) { - a.BulletEle = null; - }, - NormalAttack: function () { - PlayAudio("puff"); - var b = this, - c = "PSB" + Math.random(), - a = b.AttackedLX; - EditEle( - b.BulletEle.cloneNode(false), - { - id: c, - }, - 0, - EDPZ - ); - oSym.addTask( - 15, - function (e) { - var d = $(e); - d && SetVisible(d); - }, - [c] - ); - oSym.addTask( - 1, - function (j, d, e, f, g) { - var i = GetC(e), - h = oZ.getZ0(e, f); - h && h.Altitude == 1 - ? (h.getPea(h, 20, 0), - (SetStyle(d, { - left: g + 38 + "px", - }).src = "images/Plants/ShroomBulletHit.gif"), - oSym.addTask(10, ClearChild, [d])) - : (e += 5) < oS.W - ? ((d.style.left = (g += 5) + "px"), - oSym.addTask(1, arguments.callee, [j, d, e, f, g])) - : ClearChild(d); - }, - [c, $(c), a, b.R, a - 46] - ); - }, - }), - oSeedPuffShroom = InheritO(oFumeShroom, { - EName: "oSeedPuffShroom", - CName: "Puff-shroom", - width: 40, - height: 66, - beAttackedPointL: 15, - beAttackedPointR: 25, - SunNum: 0, - Stature: -1, - PicArr: [ - "images/Card/Plants/PuffShroom.png", - "images/Plants/PuffShroom/0.gif", - "images/Plants/PuffShroom/PuffShroom.gif", - "images/Plants/PuffShroom/PuffShroomSleep.gif", - "images/Plants/ShroomBullet.gif", - "images/Plants/ShroomBulletHit.gif", - ], - AudioArr: ["puff"], - Tooltip: "Shoots short-ranged spores at the enemy", - Produce: - '小喷菇是免费的,不过射程很近。

Harm: 中等
Scope:
白天要睡觉

小喷菇:“我也是最近才知道僵尸的存在,和
很多蘑菇一样,我只是把他们想象成童话和电
影里的怪物。不过这次的经历已经让我大开眼
界了。', - GetDX: CPlants.prototype.GetDX, - getTriggerRange: function (a, b, c) { - return [[b, Math.min(c + 250, oS.W), 0]]; - }, - PrivateBirth: function (a) { - a.BulletEle = NewImg( - 0, - "images/Plants/ShroomBullet.gif", - "left:" + - (a.AttackedLX - 46) + - "px;top:" + - (a.pixelTop + 40) + - "px;visibility:hidden;z-index:" + - (a.zIndex + 2) - ); - }, - PrivateDie: function (a) { - a.BulletEle = null; - }, - NormalAttack: function () { - PlayAudio("puff"); - var b = this, - c = "PSB" + Math.random(), - a = b.AttackedLX; - EditEle( - b.BulletEle.cloneNode(false), - { - id: c, - }, - 0, - EDPZ - ); - oSym.addTask( - 15, - function (e) { - var d = $(e); - d && SetVisible(d); - }, - [c] - ); - oSym.addTask( - 1, - function (j, d, e, f, g) { - var i = GetC(e), - h = oZ.getZ0(e, f); - h && h.Altitude == 1 - ? (h.getPea(h, 20, 0), - (SetStyle(d, { - left: g + 38 + "px", - }).src = "images/Plants/ShroomBulletHit.gif"), - oSym.addTask(10, ClearChild, [d])) - : (e += 5) < oS.W - ? ((d.style.left = (g += 5) + "px"), - oSym.addTask(1, arguments.callee, [j, d, e, f, g])) - : ClearChild(d); - }, - [c, $(c), a, b.R, a - 46] - ); - }, - }), - oScaredyShroom = InheritO(oFumeShroom, { - EName: "oScaredyShroom", - CName: "Scaredy-shroom", - width: 57, - height: 81, - beAttackedPointR: 37, - SunNum: 25, - Cry: 0, - ArZ: [], - Attacking: 0, - PicArr: [ - "images/Card/Plants/ScaredyShroom.png", - "images/Plants/ScaredyShroom/0.gif", - "images/Plants/ScaredyShroom/ScaredyShroom.gif", - "images/Plants/ScaredyShroom/ScaredyShroomSleep.gif", - "images/Plants/ScaredyShroom/ScaredyShroomCry.gif", - "images/Plants/ShroomBullet.gif", - "images/Plants/ShroomBulletHit.gif", - ], - Tooltip: "Long-ranged shooter that hides when enemies get near it", - Produce: - '胆小菇是一种远程射手,敌人接近后会躲起来。

Harm:普通
Features:敌人接近后就停止攻击
白天睡觉

“谁在那?”胆小菇低声说,声音细微难辨。“
走开!我不想见任何人。除非……除非你是马
戏团的人。”', - GetDX: CPlants.prototype.GetDX, - getTriggerRange: CPlants.prototype.getTriggerRange, - getTriggerR: function (c) { - var b = (this.MinR = c > 2 ? c - 1 : 1), - a = (this.MaxR = c < oS.R ? Number(c) + 1 : c); - return [b, a]; - }, - TriggerCheck: function (e, c) { - var b = this, - a = b.id; - e.PZ && Math.abs(e.ZX - b.MX) < 121 && e.beAttacked - ? (b.ArZ.push(e.id), - !b.Cry && - ((b.Cry = 1), - ($(a).childNodes[1].src = - "images/Plants/ScaredyShroom/ScaredyShroomCry.gif"), - b.CryCheck(a))) - : e.R == b.R && - !b.Cry && - !b.Attacking && - e.Altitude > 0 && - e.Altitude < 3 && - b.NormalAttack(); - }, - PrivateBirth: function (c) { - var b = c.AttackedLX, - a = b - 46; - c.BulletClass = NewO({ - X: b, - R: c.R, - pixelLeft: a, - F: oGd.MB2, - }); - c.BulletEle = NewImg( - 0, - "images/Plants/ShroomBullet.gif", - "left:" + - a + - "px;top:" + - (c.pixelTop + 35) + - "px;visibility:hidden;z-index:" + - (c.zIndex + 2) - ); - c.MX = b + 9; - }, - PrivateDie: function (a) { - a.BulletEle = null; - }, - NormalAttack: function () { - var c = this, - a = c.id, - d = "SSB" + Math.random(), - b = c.AttackedLX; - EditEle( - c.BulletEle.cloneNode(false), - { - id: d, - }, - 0, - EDPZ - ); - oSym.addTask( - 1, - function (k, e, f, g, h) { - var j = GetC(f), - i = oZ.getZ0(f, g); - i && i.Altitude == 1 - ? (i.getPea(i, 20, 0), - (SetStyle(e, { - left: h + 38 + "px", - }).src = "images/Plants/ShroomBulletHit.gif"), - oSym.addTask(10, ClearChild, [e])) - : (f += 5) < oS.W - ? ((e.style.left = (h += 5) + "px"), - oSym.addTask(1, arguments.callee, [k, e, f, g, h])) - : ClearChild(e); - }, - [d, $(d), b, c.R, b - 46] - ); - c.Attacking = 1; - oSym.addTask( - 10, - function (g, e) { - var f = $(g); - f && SetVisible(f); - oSym.addTask( - 130, - function (h) { - var i = $P[h]; - i && (i.Attacking = 0); - }, - [e] - ); - }, - [d, a] - ); - }, - CryCheck: function (a) { - oSym.addTask( - 140, - function (b) { - var d = $P[b], - c, - f, - e; - if (d) { - c = (f = d.ArZ).length; - while (c--) { - (!(e = $Z[f[c]]) || - !e.PZ || - Math.abs(e.ZX - d.MX) > 120) && - f.splice(c, 1); - } - f.length - ? d.CryCheck(b) - : ((d.Cry = 0), - ($(b).childNodes[1].src = - "images/Plants/ScaredyShroom/ScaredyShroom.gif")); - } - }, - [a] - ); - }, - }), - oSeedScaredyShroom = InheritO(oFumeShroom, { - EName: "oSeedScaredyShroom", - CName: "Scaredy-shroom", - width: 57, - height: 81, - beAttackedPointR: 37, - SunNum: 0, - Cry: 0, - ArZ: [], - Attacking: 0, - PicArr: [ - "images/Card/Plants/ScaredyShroom.png", - "images/Plants/ScaredyShroom/0.gif", - "images/Plants/ScaredyShroom/ScaredyShroom.gif", - "images/Plants/ScaredyShroom/ScaredyShroomSleep.gif", - "images/Plants/ScaredyShroom/ScaredyShroomCry.gif", - "images/Plants/ShroomBullet.gif", - "images/Plants/ShroomBulletHit.gif", - ], - Tooltip: "Long-ranged shooter that hides when enemies get near it", - Produce: - '胆小菇是一种远程射手,敌人接近后会躲起来。

Harm:普通
Features:敌人接近后就停止攻击
白天睡觉

“谁在那?”胆小菇低声说,声音细微难辨。“
走开!我不想见任何人。除非……除非你是马
戏团的人。”', - GetDX: CPlants.prototype.GetDX, - getTriggerRange: CPlants.prototype.getTriggerRange, - getTriggerR: function (c) { - var b = (this.MinR = c > 2 ? c - 1 : 1), - a = (this.MaxR = c < oS.R ? Number(c) + 1 : c); - return [b, a]; - }, - TriggerCheck: function (e, c) { - var b = this, - a = b.id; - e.PZ && Math.abs(e.ZX - b.MX) < 121 && e.beAttacked - ? (b.ArZ.push(e.id), - !b.Cry && - ((b.Cry = 1), - ($(a).childNodes[1].src = - "images/Plants/ScaredyShroom/ScaredyShroomCry.gif"), - b.CryCheck(a))) - : e.R == b.R && - !b.Cry && - !b.Attacking && - e.Altitude > 0 && - e.Altitude < 3 && - b.NormalAttack(); - }, - PrivateBirth: function (c) { - var b = c.AttackedLX, - a = b - 46; - c.BulletClass = NewO({ - X: b, - R: c.R, - pixelLeft: a, - F: oGd.MB2, - }); - c.BulletEle = NewImg( - 0, - "images/Plants/ShroomBullet.gif", - "left:" + - a + - "px;top:" + - (c.pixelTop + 35) + - "px;visibility:hidden;z-index:" + - (c.zIndex + 2) - ); - c.MX = b + 9; - }, - PrivateDie: function (a) { - a.BulletEle = null; - }, - NormalAttack: function () { - var c = this, - a = c.id, - d = "SSB" + Math.random(), - b = c.AttackedLX; - EditEle( - c.BulletEle.cloneNode(false), - { - id: d, - }, - 0, - EDPZ - ); - oSym.addTask( - 1, - function (k, e, f, g, h) { - var j = GetC(f), - i = oZ.getZ0(f, g); - i && i.Altitude == 1 - ? (i.getPea(i, 20, 0), - (SetStyle(e, { - left: h + 38 + "px", - }).src = "images/Plants/ShroomBulletHit.gif"), - oSym.addTask(10, ClearChild, [e])) - : (f += 5) < oS.W - ? ((e.style.left = (h += 5) + "px"), - oSym.addTask(1, arguments.callee, [k, e, f, g, h])) - : ClearChild(e); - }, - [d, $(d), b, c.R, b - 46] - ); - c.Attacking = 1; - oSym.addTask( - 10, - function (g, e) { - var f = $(g); - f && SetVisible(f); - oSym.addTask( - 130, - function (h) { - var i = $P[h]; - i && (i.Attacking = 0); - }, - [e] - ); - }, - [d, a] - ); - }, - CryCheck: function (a) { - oSym.addTask( - 140, - function (b) { - var d = $P[b], - c, - f, - e; - if (d) { - c = (f = d.ArZ).length; - while (c--) { - (!(e = $Z[f[c]]) || - !e.PZ || - Math.abs(e.ZX - d.MX) > 120) && - f.splice(c, 1); - } - f.length - ? d.CryCheck(b) - : ((d.Cry = 0), - ($(b).childNodes[1].src = - "images/Plants/ScaredyShroom/ScaredyShroom.gif")); - } - }, - [a] - ); - }, - }), - oHypnoShroom = InheritO(oFumeShroom, { - EName: "oHypnoShroom", - CName: "Hypno-shroom", - width: 71, - height: 78, - beAttackedPointL: 10, - beAttackedPointR: 61, - SunNum: 75, - coolTime: 30, - HP: 0, - PicArr: [ - "images/Card/Plants/HypnoShroom.png", - "images/Plants/HypnoShroom/0.gif", - "images/Plants/HypnoShroom/HypnoShroom.gif", - "images/Plants/HypnoShroom/HypnoShroomSleep.gif", - ], - Tooltip: "Makes a zombie fight for you", - Produce: - '当僵尸吃下魅惑菇后,他将会掉转方向为你作
战。

Instructions:单独使用,接触生效
Features:让一只僵尸为你作战
白天睡觉

魅惑菇声称:“僵尸们是我们的朋友,他们被
严重误解了,僵尸们在我们的生态环境里扮演着
重要角色。我们可以也应当更努力地让他们学
会用我们的方式来思考。”', - InitTrigger: function () {}, - getHurt: function (d, b, a) { - var c = this; - switch (b) { - case 3: - (c.HP -= a) < 1 && c.Die(); - break; - case 0: - !c.Sleep && d.bedevil(d); - PlayAudio("mindcontrolled"); - c.Die(); - break; - default: - c.Die(1); - } - }, - }), - oSeedHypnoShroom = InheritO(oFumeShroom, { - EName: "oSeedHypnoShroom", - CName: "Hypno-shroom", - width: 71, - height: 78, - beAttackedPointL: 10, - beAttackedPointR: 61, - SunNum: 0, - coolTime: 30, - HP: 0, - PicArr: [ - "images/Card/Plants/HypnoShroom.png", - "images/Plants/HypnoShroom/0.gif", - "images/Plants/HypnoShroom/HypnoShroom.gif", - "images/Plants/HypnoShroom/HypnoShroomSleep.gif", - ], - Tooltip: "Makes a zombie fight for you", - Produce: - '当僵尸吃下魅惑菇后,他将会掉转方向为你作
战。

Instructions:单独使用,接触生效
Features:让一只僵尸为你作战
白天睡觉

魅惑菇声称:“僵尸们是我们的朋友,他们被
严重误解了,僵尸们在我们的生态环境里扮演着
重要角色。我们可以也应当更努力地让他们学
会用我们的方式来思考。”', - InitTrigger: function () {}, - getHurt: function (d, b, a) { - var c = this; - switch (b) { - case 3: - (c.HP -= a) < 1 && c.Die(); - break; - case 0: - !c.Sleep && d.bedevil(d); - PlayAudio("mindcontrolled"); - c.Die(); - break; - default: - c.Die(1); - } - }, - }), - oIceShroom = InheritO(oFumeShroom, { - EName: "oIceShroom", - CName: "Ice-shroom", - width: 83, - height: 75, - beAttackedPointR: 63, - SunNum: 75, - coolTime: 50, - PicArr: [ - "images/Card/Plants/IceShroom.png", - "images/Plants/IceShroom/0.gif", - "images/Plants/IceShroom/IceShroom.gif", - "images/Plants/IceShroom/IceShroomSleep.gif", - "images/Plants/IceShroom/Snow.gif", - "images/Plants/IceShroom/icetrap.gif", - ], - AudioArr: ["frozen", "wakeup"], - Tooltip: "Temporarily immobilizes all zombies on the screen", - Produce: - '寒冰菇,能短暂的冻结屏幕上所有僵尸。

Harm:非常低,冻结僵尸
Scope:屏幕上的所有僵尸
用法:单独使用,立即生效
白天睡觉

寒冰菇皱着眉头,倒不是因为它不高兴或不满
意,只是因为,它儿时因受创伤而
遗留下了面瘫。', - GetDX: CPlants.prototype.GetDX, - GetDY: CPlants.prototype.GetDY, - InitTrigger: function () {}, - PrivateDie: function (a) {}, - PrivateBirth: function (a) { - !oS.DKind - ? (a.NormalAttack(a.id), (a.getHurt = function (d, c, b) {})) - : (a.getHurt = CPlants.prototype.getHurt); - }, - WakeUP: function (a) { - var b = a.id; - a.Sleep = 0; - $(b).childNodes[1].src = "images/Plants/IceShroom/IceShroom.gif"; - a.NormalAttack(b); - }, - NormalAttack: function (a) { - oSym.addTask( - 100, - function (c) { - var f = $P[c]; - if (f) { - PlayAudio("frozen"); - var e, - d, - b = "Snow_" + Math.random(); - for (d in $Z) { - (e = $Z[d]).ZX < 901 && e.getFreeze(e, d); - } - oSym.addTask( - 40, - function (g) { - ClearChild(g); - }, - [ - NewEle( - b, - "div", - "position:absolute;left:0;top:0;width:900px;height:600px;z-index:10;filter:alpha(opacity=50);opacity:.5;background:#9CF url(images/Plants/IceShroom/Snow.gif) no-repeat scroll " + - (f.pixelLeft - 197) + - "px " + - (f.pixelTop - 80) + - "px", - 0, - EDPZ - ), - ] - ); - f.Die(); - } - }, - [a] - ); - }, - }), - oSeedIceShroom = InheritO(oSeedFumeShroom, { - EName: "oSeedIceShroom", - CName: "Ice-shroom", - width: 83, - height: 75, - beAttackedPointR: 63, - SunNum: 0, - coolTime: 50, - PicArr: [ - "images/Card/Plants/IceShroom.png", - "images/Plants/IceShroom/0.gif", - "images/Plants/IceShroom/IceShroom.gif", - "images/Plants/IceShroom/IceShroomSleep.gif", - "images/Plants/IceShroom/Snow.gif", - "images/Plants/IceShroom/icetrap.gif", - ], - AudioArr: ["frozen", "wakeup"], - Tooltip: "Temporarily immobilizes all zombies on the screen", - Produce: - '寒冰菇,能短暂的冻结屏幕上所有僵尸。

Harm:非常低,冻结僵尸
Scope:屏幕上的所有僵尸
用法:单独使用,立即生效
白天睡觉

寒冰菇皱着眉头,倒不是因为它不高兴或不满
意,只是因为,它儿时因受创伤而
遗留下了面瘫。', - GetDX: CPlants.prototype.GetDX, - GetDY: CPlants.prototype.GetDY, - InitTrigger: function () {}, - PrivateDie: function (a) {}, - PrivateBirth: function (a) { - !oS.DKind - ? (a.NormalAttack(a.id), (a.getHurt = function (d, c, b) {})) - : (a.getHurt = CPlants.prototype.getHurt); - }, - WakeUP: function (a) { - var b = a.id; - a.Sleep = 0; - $(b).childNodes[1].src = "images/Plants/IceShroom/IceShroom.gif"; - a.NormalAttack(b); - }, - NormalAttack: function (a) { - oSym.addTask( - 100, - function (c) { - var f = $P[c]; - if (f) { - PlayAudio("frozen"); - var e, - d, - b = "Snow_" + Math.random(); - for (d in $Z) { - (e = $Z[d]).ZX < 901 && e.getFreeze(e, d); - } - oSym.addTask( - 40, - function (g) { - ClearChild(g); - }, - [ - NewEle( - b, - "div", - "position:absolute;left:0;top:0;width:900px;height:600px;z-index:10;filter:alpha(opacity=50);opacity:.5;background:#9CF url(images/Plants/IceShroom/Snow.gif) no-repeat scroll " + - (f.pixelLeft - 197) + - "px " + - (f.pixelTop - 80) + - "px", - 0, - EDPZ - ), - ] - ); - f.Die(); - } - }, - [a] - ); - }, - }), - oSunShroom = InheritO(oFumeShroom, { - EName: "oSunShroom", - CName: "Sun-shroom", - width: 59, - height: 61, - beAttackedPointL: 15, - beAttackedPointR: 44, - SunNum: 25, - Stature: -1, - Status: 0, - PicArr: [ - "images/Card/Plants/SunShroom.png", - "images/Plants/SunShroom/0.gif", - "images/Plants/SunShroom/SunShroom2.gif", - "images/Plants/SunShroom/SunShroomSleep.gif", - "images/Plants/SunShroom/SunShroom.gif", - ], - Tooltip: "Gives small sun at first and normal sun later", - Produce: - '阳光菇开始提供少量阳光,稍后提供正常数量
阳光。

生产阳光:开始低,之后正常
白天睡觉

阳光菇讨厌阳光。恨到当它内部产生点阳光时
,就尽可能快的吐出来。它就是不能忍受这个
。对它来说,阳光令人厌恶。', - GetDX: CPlants.prototype.GetDX, - GetDY: CPlants.prototype.GetDY, - InitTrigger: function () {}, - PrivateDie: function (a) {}, - PrivateBirth: function () {}, - BirthStyle: function (c, d, b, a) { - oS.DKind - ? ((c.canTrigger = 0), - (c.Sleep = 1), - (b.childNodes[1].src = - "images/Plants/SunShroom/SunShroomSleep.gif")) - : (oSym.addTask( - 600, - function (h, g, f) { - var e = $P[h]; - e && e.ProduceSun(e, g, f); - }, - [d, GetX(c.C) - 40, GetY(c.R)] - ), - oSym.addTask( - 12e3, - function (f) { - var e = $P[f]; - e && - ((e.Sleep = 0), - ($(f).childNodes[1].src = - "images/Plants/SunShroom/SunShroom.gif"), - (e.Status = 1)); - }, - [d] - )); - EditEle( - b, - { - id: d, - }, - a, - EDPZ - ); - }, - ProduceSun: function (a, c, b) { - AppearSun( - Math.floor(c + Math.random() * 41), - b, - !a.Status ? 15 : 25, - 0 - ), - oSym.addTask( - 2400, - function (g, f, e) { - var d = $P[g]; - d && d.ProduceSun(d, f, e); - }, - [a.id, c, b] - ); - }, - WakeUP: function (a) { - var b = a.id; - a.ProduceSun(a, GetX(a.C) - 40, GetY(a.R)); - $(b).childNodes[1].src = "images/Plants/SunShroom/SunShroom2.gif"; - a.Sleep = 0; - oSym.addTask( - 12e3, - function (d) { - var c = $P[d]; - c && - (($(d).childNodes[1].src = - "images/Plants/SunShroom/SunShroom.gif"), - (c.Status = 1)); - }, - [b] - ); - }, - }), - oDoomShroom = InheritO(oFumeShroom, { - EName: "oDoomShroom", - CName: "Doom-shroom", - width: 102, - height: 91, - beAttackedPointR: 80, - coolTime: 50, - SunNum: 125, - AudioArr: ["doomshroom"], - PicArr: [ - "images/Card/Plants/DoomShroom.png", - "images/Plants/DoomShroom/0.gif", - "images/Plants/DoomShroom/DoomShroom.gif", - "images/Plants/DoomShroom/Sleep.gif", - "images/Plants/DoomShroom/BeginBoom.gif", - "images/Plants/DoomShroom/crater10.png", - "images/Plants/DoomShroom/crater11.png", - "images/Plants/DoomShroom/crater20.png", - "images/Plants/DoomShroom/crater21.png", - "images/Plants/DoomShroom/crater30.png", - "images/Plants/DoomShroom/crater31.png", - "images/Plants/DoomShroom/Boom.png", - ], - Tooltip: "Destroys a large area, leaving a crater in its wake", - Produce: - '毁灭菇可以摧毁大范围的僵尸,并留下一个不
能种植物的大弹坑。

Harm:极高
Scope:大范围内的所有僵尸
用法:单独使用,立即生效
Features:留下一个弹坑
白天睡觉

“你很幸运,我是和你一伙的,”毁灭菇说,“
我能摧毁任何你所珍视的东西,小菜一碟。”', - InitTrigger: function () {}, - BirthStyle: function (c, d, b, a) { - oS.DKind - ? ((c.Sleep = 1), (b.childNodes[1].src = c.PicArr[c.SleepGif])) - : ((c.Sleep = 0), - (c.getHurt = function () {}), - (b.childNodes[1].src = - "images/Plants/DoomShroom/BeginBoom.gif"), - c.NormalAttack(d)); - EditEle( - b, - { - id: d, - }, - a, - EDPZ - ); - }, - WakeUP: function (a) { - var b = a.id; - a.Sleep = 0; - a.getHurt = function () {}; - $(b).childNodes[1].src = "images/Plants/DoomShroom/BeginBoom.gif"; - a.NormalAttack(b); - }, - NormalAttack: function (a) { - oSym.addTask( - 50, - function (c) { - PlayAudio("doomshroom"); - var d = $P[c], - q = c + "_Boom"; - if (d) { - var g = $(c), - l = d.R, - h = l > 3 ? l - 2 : 1, - f = Math.min(oS.R, l + 2), - n = d.pixelLeft - 240, - m = d.pixelRight + 240, - e, - k, - b = GetC(d.AttackedLX), - o, - r = l + "_" + b, - j = oGd.$; - do { - k = (e = oZ.getArZ(n, m, h)).length; - while (k--) { - e[k].getExplosion(); - } - } while (h++ < f); - d.Die(); - (o = j[r + "_" + 0]) && o.Die(); - (o = j[r + "_" + 2]) && o.Die(); - oGd.$Crater[r] = 2; - NewEle( - q, - "div", - "position:absolute;overflow:hidden;z-index:" + - (d.zIndex + 2) + - ";width:283px;height:324px;left:" + - (d.pixelLeft - 80) + - "px;top:" + - (d.pixelTop - 220) + - "px;background:url(images/Plants/DoomShroom/Boom.png) no-repeat", - 0, - EDPZ - ); - oSym.addTask( - 20, - function (i) { - ClearChild(i); - }, - [ - NewEle( - q, - "div", - "position:absolute;z-index:20;width:900px;height:600px;left:0;top:0;background:#FFF;*filter:alpha(opacity=50);opacity:.5", - 0, - EDPZ - ), - ] - ); - ImgSpriter( - q, - c, - [ - ["0 0", 10, 1], - ["-283px 0", 10, 2], - ["-566px 0", 10, 3], - ["-849px 0", 10, 4], - ["-1132px 0", 10, 5], - ["-1415px 0", 10, 6], - ["-1698px 0", 10, 7], - ["-1981px 0", 10, 8], - ["-2264px 0", 10, 9], - ["-2547px 0", 10, -1], - ], - 0, - function (i, p) { - ClearChild($(i)); - d.setCrater( - c + "_crater", - l, - b, - d.pixelLeft + 3, - d.pixelTop + 50 - ); - } - ); - } - }, - [a] - ); - }, - setCrater: function (f, b, d, e, c) { - var a; - switch (oGd.$LF[b]) { - case 1: - a = NewEle( - f, - "div", - "position:absolute;z-index:" + - (3 * b - 1) + - ";overflow:hidden;background:url(images/Plants/DoomShroom/crater1" + - oS.DKind + - ".png) no-repeat;width:90px;height:61px;left:" + - (e || GetX(d) - 45) + - "px;top:" + - (c || GetY(b) - 30) + - "px", - 0, - EDPZ - ); - break; - case 2: - a = NewEle( - f, - "div", - "position:absolute;z-index:" + - (3 * b - 1) + - ";overflow:hidden;background:url(images/Plants/DoomShroom/crater2" + - oS.DKind + - ".png) no-repeat;width:85px;height:53px;left:" + - (e || GetX(d) - 42) + - "px;top:" + - (c || GetY(b) - 26) + - "px", - 0, - EDPZ - ); - break; - case 3: - a = NewEle( - f, - "div", - "position:absolute;z-index:" + - (3 * b - 1) + - ";overflow:hidden;background:url(images/Plants/DoomShroom/crater31.png) no-repeat;width:75px;height:77px;left:" + - (e || GetX(d) - 37) + - "px;top:" + - (c || GetY(b) - 19) + - "px", - 0, - EDPZ - ); - break; - default: - } - oSym.addTask( - 9e3, - function (g) { - var h = b + "_" + d; - g.style.backgroundPosition = "100% 0"; - oGd.$Crater[h] = 1; - oSym.addTask( - 9e3, - function (i, j) { - ClearChild(i); - delete oGd.$Crater[j]; - }, - [g, h] - ); - }, - [a] - ); - }, - }), - oSeedDoomShroom = InheritO(oFumeShroom, { - EName: "oSeedDoomShroom", - CName: "Doom-shroom", - width: 102, - height: 91, - beAttackedPointR: 80, - coolTime: 50, - SunNum: 0, - AudioArr: ["doomshroom"], - PicArr: [ - "images/Card/Plants/DoomShroom.png", - "images/Plants/DoomShroom/0.gif", - "images/Plants/DoomShroom/DoomShroom.gif", - "images/Plants/DoomShroom/Sleep.gif", - "images/Plants/DoomShroom/BeginBoom.gif", - "images/Plants/DoomShroom/crater10.png", - "images/Plants/DoomShroom/crater11.png", - "images/Plants/DoomShroom/crater20.png", - "images/Plants/DoomShroom/crater21.png", - "images/Plants/DoomShroom/crater30.png", - "images/Plants/DoomShroom/crater31.png", - "images/Plants/DoomShroom/Boom.png", - ], - Tooltip: "Destroys a large area, leaving a crater in its wake", - Produce: - '毁灭菇可以摧毁大范围的僵尸,并留下一个不
能种植物的大弹坑。

Harm:极高
Scope:大范围内的所有僵尸
用法:单独使用,立即生效
Features:留下一个弹坑
白天睡觉

“你很幸运,我是和你一伙的,”毁灭菇说,“
我能摧毁任何你所珍视的东西,小菜一碟。”', - InitTrigger: function () {}, - BirthStyle: function (c, d, b, a) { - oS.DKind - ? ((c.Sleep = 1), (b.childNodes[1].src = c.PicArr[c.SleepGif])) - : ((c.Sleep = 0), - (c.getHurt = function () {}), - (b.childNodes[1].src = - "images/Plants/DoomShroom/BeginBoom.gif"), - c.NormalAttack(d)); - EditEle( - b, - { - id: d, - }, - a, - EDPZ - ); - }, - WakeUP: function (a) { - var b = a.id; - a.Sleep = 0; - a.getHurt = function () {}; - $(b).childNodes[1].src = "images/Plants/DoomShroom/BeginBoom.gif"; - a.NormalAttack(b); - }, - NormalAttack: function (a) { - oSym.addTask( - 50, - function (c) { - PlayAudio("doomshroom"); - var d = $P[c], - q = c + "_Boom"; - if (d) { - var g = $(c), - l = d.R, - h = l > 3 ? l - 2 : 1, - f = Math.min(oS.R, l + 2), - n = d.pixelLeft - 240, - m = d.pixelRight + 240, - e, - k, - b = GetC(d.AttackedLX), - o, - r = l + "_" + b, - j = oGd.$; - do { - k = (e = oZ.getArZ(n, m, h)).length; - while (k--) { - e[k].getExplosion(); - } - } while (h++ < f); - d.Die(); - (o = j[r + "_" + 0]) && o.Die(); - (o = j[r + "_" + 2]) && o.Die(); - oGd.$Crater[r] = 2; - NewEle( - q, - "div", - "position:absolute;overflow:hidden;z-index:" + - (d.zIndex + 2) + - ";width:283px;height:324px;left:" + - (d.pixelLeft - 80) + - "px;top:" + - (d.pixelTop - 220) + - "px;background:url(images/Plants/DoomShroom/Boom.png) no-repeat", - 0, - EDPZ - ); - oSym.addTask( - 20, - function (i) { - ClearChild(i); - }, - [ - NewEle( - q, - "div", - "position:absolute;z-index:20;width:900px;height:600px;left:0;top:0;background:#FFF;*filter:alpha(opacity=50);opacity:.5", - 0, - EDPZ - ), - ] - ); - ImgSpriter( - q, - c, - [ - ["0 0", 10, 1], - ["-283px 0", 10, 2], - ["-566px 0", 10, 3], - ["-849px 0", 10, 4], - ["-1132px 0", 10, 5], - ["-1415px 0", 10, 6], - ["-1698px 0", 10, 7], - ["-1981px 0", 10, 8], - ["-2264px 0", 10, 9], - ["-2547px 0", 10, -1], - ], - 0, - function (i, p) { - ClearChild($(i)); - d.setCrater( - c + "_crater", - l, - b, - d.pixelLeft + 3, - d.pixelTop + 50 - ); - } - ); - } - }, - [a] - ); - }, - setCrater: function (f, b, d, e, c) { - var a; - switch (oGd.$LF[b]) { - case 1: - a = NewEle( - f, - "div", - "position:absolute;z-index:" + - (3 * b - 1) + - ";overflow:hidden;background:url(images/Plants/DoomShroom/crater1" + - oS.DKind + - ".png) no-repeat;width:90px;height:61px;left:" + - (e || GetX(d) - 45) + - "px;top:" + - (c || GetY(b) - 30) + - "px", - 0, - EDPZ - ); - break; - case 2: - a = NewEle( - f, - "div", - "position:absolute;z-index:" + - (3 * b - 1) + - ";overflow:hidden;background:url(images/Plants/DoomShroom/crater2" + - oS.DKind + - ".png) no-repeat;width:85px;height:53px;left:" + - (e || GetX(d) - 42) + - "px;top:" + - (c || GetY(b) - 26) + - "px", - 0, - EDPZ - ); - break; - case 3: - a = NewEle( - f, - "div", - "position:absolute;z-index:" + - (3 * b - 1) + - ";overflow:hidden;background:url(images/Plants/DoomShroom/crater31.png) no-repeat;width:75px;height:77px;left:" + - (e || GetX(d) - 37) + - "px;top:" + - (c || GetY(b) - 19) + - "px", - 0, - EDPZ - ); - break; - default: - } - oSym.addTask( - 9e3, - function (g) { - var h = b + "_" + d; - g.style.backgroundPosition = "100% 0"; - oGd.$Crater[h] = 1; - oSym.addTask( - 9e3, - function (i, j) { - ClearChild(i); - delete oGd.$Crater[j]; - }, - [g, h] - ); - }, - [a] - ); - }, - }), - oTangleKlep = InheritO(CPlants, { - EName: "oTangleKlep", - CName: "Tangle Kelp", - width: 90, - height: 72, - beAttackedPointL: 15, - beAttackedPointR: 80, - coolTime: 30, - SunNum: 25, - BookHandBack: 4.9, - GetDY: function (b, c, a) { - return 5; - }, - NormalGif: 1, - AudioArr: ["TangleKlep"], - PicArr: [ - "images/Card/Plants/TangleKlep.png", - "images/Plants/TangleKlep/0.gif", - "images/Plants/TangleKlep/Float.gif", - "images/Plants/TangleKlep/Grab.png", - "images/interface/splash.png", - ], - Tooltip: "Aquatic plant that pulls a zombie underwater", - Produce: - '缠绕水草是一种可以把接近他的僵尸拉进水中
的水生植物。

Harm:极高
用法:单独使用,接触后生效
Features:必须种在水中

“我是完全隐形的,”缠绕水草自己想,“我就
藏在水面下,没人会看到我。”他的朋友告诉他
,他们可以清楚地看到他。不过,缠绕水草似
乎不想改变自己的看法。', - CanGrow: function (c, b, d) { - var a = b + "_" + d; - return !( - oGd.$LF[b] != 2 || - d < 1 || - d > 9 || - oGd.$Crater[a] || - c[0] || - c[1] || - oGd.$Tombstones[a] - ); - }, - getShadow: function (a) { - return "display:none"; - }, - getTriggerRange: function (a, b, c) { - return [[b, c, 0]]; - }, - BirthStyle: function (c, d, b, a) { - b.childNodes[1].src = "images/Plants/TangleKlep/Float.gif"; - EditEle( - b, - { - id: d, - }, - a, - EDPZ - ); - }, - getHurt: function (d, b, a) { - var c = this; - b == 3 - ? (c.HP -= a) < 1 && c.Die() - : ((c.canTrigger = 0), c.NormalAttack(c, d)); - }, - TriggerCheck: function (b, a) { - b.AttackedLX < GetX(9) && - b.beAttacked && - ((this.canTrigger = 0), this.NormalAttack(this, b)); - }, - NormalAttack: function (a, b) { - a.getHurt = function () {}; - b.getHurt = function () {}; - b.beAttacked = 0; - b.isAttacking = 1; - NewImg( - 0, - "images/Plants/TangleKlep/Grab.png", - "left:" + - b.beAttackedPointL + - "px;top:" + - (b.height - 67) + - "px", - b.Ele - ); - oSym.addTask( - 50, - function (g, h) { - PlayAudio("TangleKlep"); - var e = g.id, - f = h.id, - d = e + "_splash", - c = f + "_splash"; - NewEle( - d, - "div", - "position:absolute;background:url(images/interface/splash.png);left:" + - (g.pixelLeft - 4) + - "px;top:" + - (g.pixelTop - 16) + - "px;width:97px;height:88px;over-flow:hidden", - 0, - EDPZ - ); - NewEle( - c, - "div", - "position:absolute;background:url(images/interface/splash.png);left:" + - (h.AttackedLX - 10) + - "px;top:" + - (h.pixelTop + h.height - 88) + - "px;width:97px;height:88px;over-flow:hidden", - 0, - EDPZ - ); - ImgSpriter( - d, - e, - [ - ["0 0", 9, 1], - ["-97px 0", 9, 2], - ["-194px 0", 9, 3], - ["-291px 0", 9, 4], - ["-388px 0", 9, 5], - ["-485px 0", 9, 6], - ["-582px 0", 9, 7], - ["-679px 0", 9, -1], - ], - 0, - function (i, j) { - ClearChild($(i)); - } - ); - ImgSpriter( - c, - f, - [ - ["0 0", 9, 1], - ["-97px 0", 9, 2], - ["-194px 0", 9, 3], - ["-291px 0", 9, 4], - ["-388px 0", 9, 5], - ["-485px 0", 9, 6], - ["-582px 0", 9, 7], - ["-679px 0", 9, -1], - ], - 0, - function (i, j) { - ClearChild($(i)); - } - ); - h.DisappearDie(); - g.Die(); - }, - [a, b] - ); - }, - }), - oSeedTangleKelp = InheritO(CPlants, { - EName: "oSeedTangleKelp", - CName: "Tangle Kelp", - width: 90, - height: 72, - beAttackedPointL: 15, - beAttackedPointR: 80, - coolTime: 30, - SunNum: 0, - BookHandBack: 4.9, - GetDY: function (b, c, a) { - return 5; - }, - NormalGif: 1, - AudioArr: ["TangleKlep"], - PicArr: [ - "images/Card/Plants/TangleKlep.png", - "images/Plants/TangleKlep/0.gif", - "images/Plants/TangleKlep/Float.gif", - "images/Plants/TangleKlep/Grab.png", - "images/interface/splash.png", - ], - Tooltip: "Aquatic plant that pulls a zombie underwater", - Produce: - '缠绕水草是一种可以把接近他的僵尸拉进水中
的水生植物。

Harm:极高
用法:单独使用,接触后生效
Features:必须种在水中

“我是完全隐形的,”缠绕水草自己想,“我就
藏在水面下,没人会看到我。”他的朋友告诉他
,他们可以清楚地看到他。不过,缠绕水草似
乎不想改变自己的看法。', - CanGrow: function (c, b, d) { - var a = b + "_" + d; - return !( - oGd.$LF[b] != 2 || - d < 1 || - d > 9 || - oGd.$Crater[a] || - c[0] || - c[1] || - oGd.$Tombstones[a] - ); - }, - getShadow: function (a) { - return "display:none"; - }, - getTriggerRange: function (a, b, c) { - return [[b, c, 0]]; - }, - BirthStyle: function (c, d, b, a) { - b.childNodes[1].src = "images/Plants/TangleKlep/Float.gif"; - EditEle( - b, - { - id: d, - }, - a, - EDPZ - ); - }, - getHurt: function (d, b, a) { - var c = this; - b == 3 - ? (c.HP -= a) < 1 && c.Die() - : ((c.canTrigger = 0), c.NormalAttack(c, d)); - }, - TriggerCheck: function (b, a) { - b.AttackedLX < GetX(9) && - b.beAttacked && - ((this.canTrigger = 0), this.NormalAttack(this, b)); - }, - NormalAttack: function (a, b) { - a.getHurt = function () {}; - b.getHurt = function () {}; - b.beAttacked = 0; - b.isAttacking = 1; - NewImg( - 0, - "images/Plants/TangleKlep/Grab.png", - "left:" + - b.beAttackedPointL + - "px;top:" + - (b.height - 67) + - "px", - b.Ele - ); - oSym.addTask( - 50, - function (g, h) { - PlayAudio("TangleKlep"); - var e = g.id, - f = h.id, - d = e + "_splash", - c = f + "_splash"; - NewEle( - d, - "div", - "position:absolute;background:url(images/interface/splash.png);left:" + - (g.pixelLeft - 4) + - "px;top:" + - (g.pixelTop - 16) + - "px;width:97px;height:88px;over-flow:hidden", - 0, - EDPZ - ); - NewEle( - c, - "div", - "position:absolute;background:url(images/interface/splash.png);left:" + - (h.AttackedLX - 10) + - "px;top:" + - (h.pixelTop + h.height - 88) + - "px;width:97px;height:88px;over-flow:hidden", - 0, - EDPZ - ); - ImgSpriter( - d, - e, - [ - ["0 0", 9, 1], - ["-97px 0", 9, 2], - ["-194px 0", 9, 3], - ["-291px 0", 9, 4], - ["-388px 0", 9, 5], - ["-485px 0", 9, 6], - ["-582px 0", 9, 7], - ["-679px 0", 9, -1], - ], - 0, - function (i, j) { - ClearChild($(i)); - } - ); - ImgSpriter( - c, - f, - [ - ["0 0", 9, 1], - ["-97px 0", 9, 2], - ["-194px 0", 9, 3], - ["-291px 0", 9, 4], - ["-388px 0", 9, 5], - ["-485px 0", 9, 6], - ["-582px 0", 9, 7], - ["-679px 0", 9, -1], - ], - 0, - function (i, j) { - ClearChild($(i)); - } - ); - h.DisappearDie(); - g.Die(); - }, - [a, b] - ); - }, - }), - oSeaShroom = InheritO(oPuffShroom, { - EName: "oSeaShroom", - CName: "Sea-shroom", - width: 48, - height: 99, - beAttackedPointL: 10, - beAttackedPointR: 40, - coolTime: 30, - BookHandBack: 4.9, - Sleep: 0, - getShadow: function (a) { - return "display:none"; - }, - PicArr: [ - "images/Card/Plants/SeaShroom.png", - "images/Plants/SeaShroom/0.gif", - "images/Plants/SeaShroom/SeaShroom.gif", - "images/Plants/SeaShroom/SeaShroomSleep.gif", - "images/Plants/ShroomBullet.gif", - "images/Plants/ShroomBulletHit.gif", - ], - CanGrow: function (c, b, d) { - var a = b + "_" + d; - return !( - d < 1 || - d > 9 || - oGd.$LF[b] - 2 || - c[0] || - c[1] || - oGd.$Crater[a] || - oGd.$Tombstones[a] - ); - }, - BirthStyle: function (c, d, b, a) { - EditEle( - b, - { - id: d, - }, - a, - EDPZ - ); - }, - Tooltip: "Aquatic plant that shoots short-ranged spores", - Produce: - '海蘑菇,能够发射短程孢子的水生植物。

Harm:普通
射程:
必须种在水上

海蘑菇从来没看到过大海,大海就在他的名字
里,他总听到关于大海的事。他只是没找到合适的
时间,总有一天……是的,他会见到海的。', - }); -oSeedSeaShroom = InheritO(oPuffShroom, { - EName: "oSeedSeaShroom", - CName: "Sea-shroom", - width: 48, - height: 99, - beAttackedPointL: 10, - beAttackedPointR: 40, - coolTime: 30, - BookHandBack: 4.9, - Sleep: 0, - getShadow: function (a) { - return "display:none"; - }, - PicArr: [ - "images/Card/Plants/SeaShroom.png", - "images/Plants/SeaShroom/0.gif", - "images/Plants/SeaShroom/SeaShroom.gif", - "images/Plants/SeaShroom/SeaShroomSleep.gif", - "images/Plants/ShroomBullet.gif", - "images/Plants/ShroomBulletHit.gif", - ], - CanGrow: function (c, b, d) { - var a = b + "_" + d; - return !( - d < 1 || - d > 9 || - oGd.$LF[b] - 2 || - c[0] || - c[1] || - oGd.$Crater[a] || - oGd.$Tombstones[a] - ); - }, - BirthStyle: function (c, d, b, a) { - EditEle( - b, - { - id: d, - }, - a, - EDPZ - ); - }, - Tooltip: "Aquatic plant that shoots short-ranged spores", - Produce: - '海蘑菇,能够发射短程孢子的水生植物。

Harm:普通
射程:
必须种在水上

海蘑菇从来没看到过大海,大海就在他的名字
里,他总听到关于大海的事。他只是没找到合适的
时间,总有一天……是的,他会见到海的。', -}); -(oCactus = InheritO(CPlants, { - EName: "oCactus", - CName: "Cactus", - width: 122, - height: 157, - SunNum: 125, - beAttackedPointL: 10, - beAttackedPointR: 80, - AudioArr: ["plantgrow"], - Status: 0, - PicArr: (function () { - return [ - "images/Card/Plants/Cactus.png", - "images/Plants/Cactus/0.gif", - "images/Plants/Cactus/Cactus.gif", - "images/Plants/Cactus/Cactus2.gif", - "images/Plants/Cactus/Attack.gif", - "images/Plants/Cactus/Attack2.gif", - "images/Plants/Cactus/Elongation.gif", - "images/Plants/Cactus/Shorten.gif", - "images/Plants/Cactus/Projectile32.png", - ]; - })(), - Tooltip: "Shoots spikes that can pop balloons", - Produce: - '仙人掌发射的穿刺弹可以用来打击地面和空中
目标

Harm:中等
Scope:地面和空中

确实,仙人掌非常“刺儿”,但是她的刺下,隐
藏着颗温柔的心,充满着爱和善良。她只是想拥
抱别人,和被别人拥抱。大多数人都做不到这点
,但是仙人掌她并不介意。她盯着一只铠甲鼠好
一阵子了,这次好像真的可以抱抱了。', - getShadow: function (a) { - return "left:3px;top:132px"; - }, - PrivateBirth: function (a) { - a.ES = a.Elongation; - }, - TriggerCheck: function (b, a) { - this.ES() && ((this.canTrigger = 0), this.CheckLoop(b.id, a)); - }, - CheckLoop: function (b, c) { - var a = this.id; - this.NormalAttack(b); - this.ES(); - this.Status == 0 && - oSym.addTask( - 140, - function (e, f, h) { - var g; - (g = $P[e]) && g.ES() && g.AttackCheck1(f, h); - }, - [a, b, c] - ); - }, - CheckLoop2: function (b, c) { - var a = this.id; - this.NormalAttack(b); - this.ES(); - this.Status && - oSym.addTask( - 150, - function (e, f, h) { - var g; - (g = $P[e]) && g.ES() && g.AttackCheck12(f, h); - }, - [a, b, c] - ); - }, - AttackCheck1: function (g, f) { - var b = this, - c = b.oTrigger, - a = $Z[g], - h, - e, - k, - j; - if (a && a.PZ && (h = c[a.R])) { - k = a.ZX; - e = h.length; - while (e--) { - j = h[e]; - if (j[0] <= k && j[1] >= k && a.Altitude > 0) { - b.CheckLoop(g, j[2]); - return; - } - } - } - b.canTrigger = 1; - }, - AttackCheck12: function (a, c) { - var b = this; - b.CheckLoop(a, c); - }, - Elongation: function () { - var a = this, - b = a.id; - if (!oGd.$Balloon[a.R] > 0) { - return true; - } else { - PlayAudio("plantgrow"); - a.canTrigger = 0; - a.Status = 1; - $(b).childNodes[1].src = "images/Plants/Cactus/Elongation.gif"; - oSym.addTask( - 1, - function (e) { - var d = $P[e], - c; - if (d) { - d.NormalGif = 3; - $(e).childNodes[1].src = - "images/Plants/Cactus/Cactus2.gif"; - c = d.CheckLoop; - d.CheckLoop = d.CheckLoop2; - d.CheckLoop2 = c; - c = d.NormalAttack; - d.NormalAttack = d.NormalAttack2; - d.NormalAttack2 = c; - d.ES = d.Shorten; - d.canTrigger = 1; - } - }, - [b] - ); - return false; - } - }, - Shorten: function () { - var a = this, - b = a.id; - if (oGd.$Balloon[a.R] > 0) { - return true; - } else { - a.canTrigger = 0; - a.Status = 0; - $(b).childNodes[1].src = "images/Plants/Cactus/Shorten.gif"; - oSym.addTask( - 1, - function (e) { - var d = $P[e], - c; - if (d) { - d.NormalGif = 2; - $(e).childNodes[1].src = - "images/Plants/Cactus/Cactus.gif"; - c = d.CheckLoop; - d.CheckLoop = d.CheckLoop2; - d.CheckLoop2 = c; - c = d.NormalAttack; - d.NormalAttack = d.NormalAttack2; - d.NormalAttack2 = c; - d.ES = d.Elongation; - d.canTrigger = 1; - } - }, - [b] - ); - return false; - } - }, - NormalAttack: function () { - var b = this, - c = "CB" + Math.random(), - a = b.id; - $(a).childNodes[1].src = "images/Plants/Cactus/Attack.gif"; - oSym.addTask( - 40, - function (e) { - var d = $(e); - d && (d.childNodes[1].src = "images/Plants/Cactus/Cactus.gif"); - }, - [a] - ); - NewImg( - c, - b.PicArr[8], - "left:" + - (b.AttackedRX + 25) + - "px;top:" + - (b.pixelTop + 103) + - "px;visibility:hidden;z-index:" + - (b.zIndex + 2), - EDPZ - ); - oSym.addTask( - 30, - function (e) { - var d = $(e); - d && SetVisible(d); - }, - [c] - ); - oSym.addTask( - 1, - function (g, i, d, k, h, l) { - var j, - f = GetC(k), - e = oZ["getZ" + d](k, h); - e && e.Altitude == 1 - ? (e.getPea(e, 30, d), ClearChild(i)) - : (k += j = !d ? 5 : -5) < oS.W && k > 100 - ? ((i.style.left = (l += j) + "px"), - oSym.addTask(1, arguments.callee, [g, i, d, k, h, l])) - : ClearChild(i); - }, - [c, $(c), 0, b.AttackedLX, b.R, b.AttackedLX - 40] - ); - }, - NormalAttack2: function () { - var b = this, - c = "CB" + Math.random(), - a = b.id; - $(a).childNodes[1].src = "images/Plants/Cactus/Attack2.gif"; - oSym.addTask( - 50, - function (e) { - var d = $(e); - d && (d.childNodes[1].src = "images/Plants/Cactus/Cactus2.gif"); - }, - [a] - ); - NewImg( - c, - b.PicArr[8], - "left:" + - (b.AttackedRX + 125) + - "px;top:" + - (b.pixelTop + 33) + - "px;visibility:hidden;z-index:" + - (b.zIndex + 2), - EDPZ - ); - oSym.addTask( - 20, - function (e) { - var d = $(e); - d && SetVisible(d); - }, - [c] - ); - oSym.addTask( - 1, - function (g, i, d, k, h, l) { - var j, - f = GetC(k), - e = oZ["getZ" + d](k, h); - e && e.Altitude == 3 - ? (e.getHit0(e, 20, d), e.Drop(), ClearChild(i)) - : (k += j = !d ? 5 : -5) < oS.W && k > 100 - ? ((i.style.left = (l += j) + "px"), - oSym.addTask(1, arguments.callee, [g, i, d, k, h, l])) - : ClearChild(i); - }, - [c, $(c), 0, b.AttackedLX, b.R, b.AttackedLX - 40] - ); - }, -})), - (oSeedCactus = InheritO(CPlants, { - EName: "oSeedCactus", - CName: "Cactus", - width: 122, - height: 157, - SunNum: 0, - beAttackedPointL: 10, - beAttackedPointR: 80, - AudioArr: ["plantgrow"], - Status: 0, - PicArr: (function () { - return [ - "images/Card/Plants/Cactus.png", - "images/Plants/Cactus/0.gif", - "images/Plants/Cactus/Cactus.gif", - "images/Plants/Cactus/Cactus2.gif", - "images/Plants/Cactus/Attack.gif", - "images/Plants/Cactus/Attack2.gif", - "images/Plants/Cactus/Elongation.gif", - "images/Plants/Cactus/Shorten.gif", - "images/Plants/Cactus/Projectile32.png", - ]; - })(), - Tooltip: "Shoots spikes that can pop balloons", - Produce: - '仙人掌发射的穿刺弹可以用来打击地面和空中
目标

Harm:中等
Scope:地面和空中

确实,仙人掌非常“刺儿”,但是她的刺下,隐
藏着颗温柔的心,充满着爱和善良。她只是想拥
抱别人,和被别人拥抱。大多数人都做不到这点
,但是仙人掌她并不介意。她盯着一只铠甲鼠好
一阵子了,这次好像真的可以抱抱了。', - getShadow: function (a) { - return "left:3px;top:132px"; - }, - PrivateBirth: function (a) { - a.ES = a.Elongation; - }, - TriggerCheck: function (b, a) { - this.ES() && ((this.canTrigger = 0), this.CheckLoop(b.id, a)); - }, - CheckLoop: function (b, c) { - var a = this.id; - this.NormalAttack(b); - this.ES(); - this.Status == 0 && - oSym.addTask( - 140, - function (e, f, h) { - var g; - (g = $P[e]) && g.ES() && g.AttackCheck1(f, h); - }, - [a, b, c] - ); - }, - CheckLoop2: function (b, c) { - var a = this.id; - this.NormalAttack(b); - this.ES(); - this.Status && - oSym.addTask( - 150, - function (e, f, h) { - var g; - (g = $P[e]) && g.ES() && g.AttackCheck12(f, h); - }, - [a, b, c] - ); - }, - AttackCheck1: function (g, f) { - var b = this, - c = b.oTrigger, - a = $Z[g], - h, - e, - k, - j; - if (a && a.PZ && (h = c[a.R])) { - k = a.ZX; - e = h.length; - while (e--) { - j = h[e]; - if (j[0] <= k && j[1] >= k && a.Altitude > 0) { - b.CheckLoop(g, j[2]); - return; - } - } - } - b.canTrigger = 1; - }, - AttackCheck12: function (a, c) { - var b = this; - b.CheckLoop(a, c); - }, - Elongation: function () { - var a = this, - b = a.id; - if (!oGd.$Balloon[a.R] > 0) { - return true; - } else { - PlayAudio("plantgrow"); - a.canTrigger = 0; - a.Status = 1; - $(b).childNodes[1].src = "images/Plants/Cactus/Elongation.gif"; - oSym.addTask( - 1, - function (e) { - var d = $P[e], - c; - if (d) { - d.NormalGif = 3; - $(e).childNodes[1].src = - "images/Plants/Cactus/Cactus2.gif"; - c = d.CheckLoop; - d.CheckLoop = d.CheckLoop2; - d.CheckLoop2 = c; - c = d.NormalAttack; - d.NormalAttack = d.NormalAttack2; - d.NormalAttack2 = c; - d.ES = d.Shorten; - d.canTrigger = 1; - } - }, - [b] - ); - return false; - } - }, - Shorten: function () { - var a = this, - b = a.id; - if (oGd.$Balloon[a.R] > 0) { - return true; - } else { - a.canTrigger = 0; - a.Status = 0; - $(b).childNodes[1].src = "images/Plants/Cactus/Shorten.gif"; - oSym.addTask( - 1, - function (e) { - var d = $P[e], - c; - if (d) { - d.NormalGif = 2; - $(e).childNodes[1].src = - "images/Plants/Cactus/Cactus.gif"; - c = d.CheckLoop; - d.CheckLoop = d.CheckLoop2; - d.CheckLoop2 = c; - c = d.NormalAttack; - d.NormalAttack = d.NormalAttack2; - d.NormalAttack2 = c; - d.ES = d.Elongation; - d.canTrigger = 1; - } - }, - [b] - ); - return false; - } - }, - NormalAttack: function () { - var b = this, - c = "CB" + Math.random(), - a = b.id; - $(a).childNodes[1].src = "images/Plants/Cactus/Attack.gif"; - oSym.addTask( - 40, - function (e) { - var d = $(e); - d && - (d.childNodes[1].src = - "images/Plants/Cactus/Cactus.gif"); - }, - [a] - ); - NewImg( - c, - b.PicArr[8], - "left:" + - (b.AttackedRX + 25) + - "px;top:" + - (b.pixelTop + 103) + - "px;visibility:hidden;z-index:" + - (b.zIndex + 2), - EDPZ - ); - oSym.addTask( - 30, - function (e) { - var d = $(e); - d && SetVisible(d); - }, - [c] - ); - oSym.addTask( - 1, - function (g, i, d, k, h, l) { - var j, - f = GetC(k), - e = oZ["getZ" + d](k, h); - e && e.Altitude == 1 - ? (e.getPea(e, 30, d), ClearChild(i)) - : (k += j = !d ? 5 : -5) < oS.W && k > 100 - ? ((i.style.left = (l += j) + "px"), - oSym.addTask(1, arguments.callee, [g, i, d, k, h, l])) - : ClearChild(i); - }, - [c, $(c), 0, b.AttackedLX, b.R, b.AttackedLX - 40] - ); - }, - NormalAttack2: function () { - var b = this, - c = "CB" + Math.random(), - a = b.id; - $(a).childNodes[1].src = "images/Plants/Cactus/Attack2.gif"; + NormalAttack: function (a) { oSym.addTask( 50, - function (e) { - var d = $(e); - d && - (d.childNodes[1].src = - "images/Plants/Cactus/Cactus2.gif"); + function (c) { + PlayAudio("doomshroom"); + var d = $P[c], + q = c + "_Boom"; + if (d) { + var g = $(c), + l = d.R, + h = l > 3 ? l - 2 : 1, + f = Math.min(oS.R, l + 2), + n = d.pixelLeft - 240, + m = d.pixelRight + 240, + e, + k, + b = GetC(d.AttackedLX), + o, + r = l + "_" + b, + j = oGd.$; + do { + k = (e = oZ.getArZ(n, m, h)).length; + while (k--) { + e[k].getExplosion(); + } + } while (h++ < f); + d.Die(); + (o = j[r + "_" + 0]) && o.Die(); + (o = j[r + "_" + 2]) && o.Die(); + oGd.$Crater[r] = 2; + NewEle( + q, + "div", + "position:absolute;overflow:hidden;z-index:" + + (d.zIndex + 2) + + ";width:283px;height:324px;left:" + + (d.pixelLeft - 80) + + "px;top:" + + (d.pixelTop - 220) + + "px;background:url(images/Plants/DoomShroom/Boom.png) no-repeat", + 0, + EDPZ + ); + oSym.addTask( + 20, + function (i) { + ClearChild(i); + }, + [ + NewEle( + q, + "div", + "position:absolute;z-index:20;width:900px;height:600px;left:0;top:0;background:#FFF;*filter:alpha(opacity=50);opacity:.5", + 0, + EDPZ + ), + ] + ); + ImgSpriter( + q, + c, + [ + ["0 0", 10, 1], + ["-283px 0", 10, 2], + ["-566px 0", 10, 3], + ["-849px 0", 10, 4], + ["-1132px 0", 10, 5], + ["-1415px 0", 10, 6], + ["-1698px 0", 10, 7], + ["-1981px 0", 10, 8], + ["-2264px 0", 10, 9], + ["-2547px 0", 10, -1], + ], + 0, + function (i, p) { + ClearChild($(i)); + d.setCrater( + c + "_crater", + l, + b, + d.pixelLeft + 3, + d.pixelTop + 50 + ); + } + ); + } }, [a] ); - NewImg( - c, - b.PicArr[8], - "left:" + - (b.AttackedRX + 125) + - "px;top:" + - (b.pixelTop + 33) + - "px;visibility:hidden;z-index:" + - (b.zIndex + 2), - EDPZ - ); - oSym.addTask( - 20, - function (e) { - var d = $(e); - d && SetVisible(d); - }, - [c] - ); - oSym.addTask( - 1, - function (g, i, d, k, h, l) { - var j, - f = GetC(k), - e = oZ["getZ" + d](k, h); - e && e.Altitude == 3 - ? (e.getHit0(e, 20, d), e.Drop(), ClearChild(i)) - : (k += j = !d ? 5 : -5) < oS.W && k > 100 - ? ((i.style.left = (l += j) + "px"), - oSym.addTask(1, arguments.callee, [g, i, d, k, h, l])) - : ClearChild(i); - }, - [c, $(c), 0, b.AttackedLX, b.R, b.AttackedLX - 40] - ); - }, - })), - (oBlover = InheritO(CPlants, { - EName: "oBlover", - CName: "Blover", - width: 132, - beAttackedPointR: 98, - height: 110, - SunNum: 100, - PicArr: [ - "images/Card/Plants/Blover.png", - "images/Plants/Blover/0.gif", - "images/Plants/Blover/Blover.gif", - ], - Tooltip: "Blows away all balloon zombies and fog", - Produce: - '三叶草,能吹走所有的气球僵尸,也可以把雾吹散。

使用方法:单独使用,立即生效
特点:吹走屏幕上所有的气球僵尸

当三叶草五岁生日的时候,他得到了一个闪亮的生日蛋糕。他许好愿,然后深吸一口气却只吹灭了60%的蜡烛。然而他没有放弃,小时候的那次失败促使他更加努力直到现在。', - AudioArr: ["blover"], - InitTrigger: function () {}, - PrivateBirth: function (o) { - // 种植后0.5秒开始吹风 - oSym.addTask( - 50, - function (id) { - PlayAudio("blover"), - ($(id).childNodes[1].src = - "images/Plants/Blover/BloverBlow.gif"), - $P[id].Dispel(); - }, - [o.id] - ); - }, - Dispel: function () { - // 吹风 - var id = this.id, - z, - oBalloon; - - for (z in $Z) - (oBalloon = $Z[z]), - oBalloon.EName == "oBalloonZombie" && - oBalloon.getDispelled(); //把气球吹跑 - - if (oS.HaveFog) { - // 如果场地上有雾,驱散 - oGd.MoveFogRight(); // 驱散雾 - oSym.addTask(2400 + 150, oGd.MoveFogLeft, []); // 24s后恢复 - } - - oSym.addTask( - 150, - function (id) { - var p = $P[id]; - p && p.Die(); - }, - [id] - ); - }, - })), - (oSeedBlover = InheritO(CPlants, { - EName: "oSeedBlover", - CName: "Blover", - width: 146, - beAttackedPointR: 98, - height: 110, - SunNum: 0, - PicArr: [ - "images/Card/Plants/Blover.png", - "images/Plants/Blover/0.gif", - "images/Plants/Blover/Blover.gif", - ], - Tooltip: "Blows away all balloon zombies and fog", - Produce: - '三叶草,能吹走所有的气球僵尸,也可以把雾吹散。

使用方法:单独使用,立即生效
特点:吹走屏幕上所有的气球僵尸

当三叶草五岁生日的时候,他得到了一个闪亮的生日蛋糕。他许好愿,然后深吸一口气却只吹灭了60%的蜡烛。然而他没有放弃,小时候的那次失败促使他更加努力直到现在。', - AudioArr: ["blover"], - InitTrigger: function () {}, - PrivateBirth: function (o) { - // 种植后0.5秒开始吹风 - oSym.addTask( - 50, - function (id) { - PlayAudio("blover"), - ($(id).childNodes[1].src = - "images/Plants/Blover/BloverBlow.gif"), - $P[id].Dispel(); - }, - [o.id] - ); }, - Dispel: function () { - // 吹风 - var id = this.id, - z, - oBalloon; - - for (z in $Z) - (oBalloon = $Z[z]), - oBalloon.EName == "oBalloonZombie" && - oBalloon.getDispelled(); //把气球吹跑 - - if (oS.HaveFog) { - // 如果场地上有雾,驱散 - oGd.MoveFogRight(); // 驱散雾 - oSym.addTask(2400 + 150, oGd.MoveFogLeft, []); // 24s后恢复 + setCrater: function (f, b, d, e, c) { + var a; + switch (oGd.$LF[b]) { + case 1: + a = NewEle( + f, + "div", + "position:absolute;z-index:" + + (3 * b - 1) + + ";overflow:hidden;background:url(images/Plants/DoomShroom/crater1" + + oS.DKind + + ".png) no-repeat;width:90px;height:61px;left:" + + (e || GetX(d) - 45) + + "px;top:" + + (c || GetY(b) - 30) + + "px", + 0, + EDPZ + ); + break; + case 2: + a = NewEle( + f, + "div", + "position:absolute;z-index:" + + (3 * b - 1) + + ";overflow:hidden;background:url(images/Plants/DoomShroom/crater2" + + oS.DKind + + ".png) no-repeat;width:85px;height:53px;left:" + + (e || GetX(d) - 42) + + "px;top:" + + (c || GetY(b) - 26) + + "px", + 0, + EDPZ + ); + break; + case 3: + a = NewEle( + f, + "div", + "position:absolute;z-index:" + + (3 * b - 1) + + ";overflow:hidden;background:url(images/Plants/DoomShroom/crater31.png) no-repeat;width:75px;height:77px;left:" + + (e || GetX(d) - 37) + + "px;top:" + + (c || GetY(b) - 19) + + "px", + 0, + EDPZ + ); + break; + default: } - oSym.addTask( - 150, - function (id) { - var p = $P[id]; - p && p.Die(); - }, - [id] - ); - }, - })), - (oOxygen = InheritO(CPlants, { - EName: "oOxygen", - CName: "Oxygen", - width: 115, - height: 102, - beAttackedPointR: 53, - SunNum: 25, - HP: 300, - BookHandBack: 3.5, - coolTime: 7.5, - PicArr: [ - "images/Card/Plants/Oxygen.png", - "images/Plants/Oxygen/0.gif", - "images/Plants/Oxygen/Oxygen.gif", - ], - Tooltip: "Oxygen provides algae to plants on the ground", - Produce: - '氧气藻可以提供氧气给地上的植物

Toughness:

Scope:3x3

噗咕……氧气藻默默地吐着气泡,倒不是他愿
意一直吐,只怪他昨天喝了太多汽水。不过有传
言说,他除了吐气泡就不会别的了。', - - CanGrow: function (e, d, f) { - var c = d + "_" + f, - b = oGd.$LF[d], - a = f < 1 || f > 9; - return b % 2 - ? b < 3 - ? !( - a || - e[1] || - e[2] || - e[0] || - oGd.$Crater[c] || - oGd.$Tombstones[c] - ) - : !(a || e[0] || oGd.$Crater[c]) - : 0; - }, - NormalAttack: function () {}, - PrivateBirth: function (a) { - var R = a.R, - C = a.C, - R1, - C1, - MaxR = oS.R, - MaxC = oS.C, - LF = oGd.$LF, - LFR, - _$ = oGd.$, - rc; - - for (R1 = R - 1; R1 <= R + 1; R1++) { - if (R1 > 0 && R1 <= MaxR) { - LFR = LF[R]; - for (C1 = C - 1; C1 <= C + 1; C1++) { - if (C1 > 0 && C1 <= MaxC && (LFR == 1 || LFR == 3)) { - rc = R1 + "_" + C1 + "_"; - !(_$[rc + 0] || _$[rc + 1] || _$[rc + 2]) && - CustomSpecial(oOG, R1, C1); - } - } - } - } - }, - })), - (oFlamesMushroom = InheritO(CPlants, { - EName: "oFlamesMushroom", - CName: "Fire-shroom", - width: 102, - height: 91, - beAttackedPointR: 80, - SunNum: 200, - HP: 4e3, - BookHandBack: 2.5, - coolTime: 30, - PicArr: [ - "images/Card/Plants/FlamesMushroom.png", - "images/Plants/FlamesMushroom/0.gif", - "images/Plants/FlamesMushroom/FlamesMushroom.gif", - "images/Plants/FlamesMushroom/FlamesMushroom1.gif", - "images/Plants/FlamesMushroom/FlamesMushroom2.gif", - ], - Tooltip: "烈焰菇可以召唤多个毁灭菇,嗨翻全场僵尸", - Produce: - '烈焰菇可以召唤多个毁灭菇,嗨翻全场僵尸

Toughness:

技能:在自身3x3范围内召唤8只毁灭菇

烈焰菇总是为自己的火焰感到反感,因为它们
总是伤害到自己的朋友。所以为了朋友,烈焰
菇到花园里找到了自己的归宿。', - getHurt: function (e, b, a) { - var c = this, - d = $(c.id).childNodes[1]; - !(b % 3) - ? (c.HP -= a) < 1 - ? c.Die() - : c.HP < 2667 - ? c.HurtStatus < 2 && - ((c.HurtStatus = 2), - (d.src = - "images/Plants/FlamesMushroom/FlamesMushroom2.gif")) - : c.HP < 5333 && - c.HurtStatus < 1 && - ((c.HurtStatus = 1), - (d.src = - "images/Plants/FlamesMushroom/FlamesMushroom1.gif")) - : c.Die(1); - }, - NormalAttack: function () {}, - PrivateBirth: function (a) { - var R = a.R, - C = a.C, - R1, - C1, - MaxR = oS.R, - MaxC = oS.C, - LF = oGd.$LF, - LFR, - _$ = oGd.$, - rc; - for (R1 = R - 1; R1 <= R + 1; R1++) { - if (R1 > 0 && R1 <= MaxR) { - LFR = LF[R]; - for (C1 = C - 1; C1 <= C + 1; C1++) { - if (C1 > 0 && C1 <= MaxC && (LFR == 1 || LFR == 3)) { - rc = R1 + "_" + C1 + "_"; - !(_$[rc + 0] || _$[rc + 1] || _$[rc + 2]) && - CustomSpecial(oDoomShroom, R1, C1); - } - } - } - } - }, - })), - (oOG = InheritO(CPlants, { - EName: "oOG", - CName: "Oxygen", - width: 72, - height: 68, - beAttackedPointR: 52, - SunNum: 0, - canEat: 0, - BookHandBack: 5, - PicArr: [ - "images/Card/Plants/Oxygen.png", - "images/Plants/Oxygen/0.gif", - "images/Plants/Oxygen/Oxygen1.gif", - ], - PKind: 0, - Stature: -1, - GetDY: function (b, c, a) { - return -15; - }, - getShadow: function (a) { - return "display:none"; - return ( - "left:" + - (a.width * 0.5 - 20) + - "px;top:" + - (a.height - 22) + - "px" - ); - }, - CanGrow: function (e, d, f) { - var c = d + "_" + f, - b = oGd.$LF[d], - a = f < 1 || f > 9; - return b % 2 - ? b < 3 - ? !( - a || - e[1] || - e[2] || - e[0] || - oGd.$Crater[c] || - oGd.$Tombstones[c] - ) - : !(a || e[0] || oGd.$Crater[c]) - : 0; - }, - Tooltip: "", - Produce: "", - InitTrigger: function () {}, - })), - (oPlantern = InheritO(CPlants, { - EName: "oPlantern", - CName: "Plantern", - width: 250, - height: 242, - beAttackedPointL: 105, - beAttackedPointR: 145, - canEat: 1, - BookHandBack: 2.5, - SunNum: 25, - PicArr: [ - "images/Card/Plants/Plantern.png", - "images/Plants/Plantern/0.gif", - "images/Plants/Plantern/Plantern.gif", - ], - Tooltip: "Lights up an area, letting you see through fog", - Produce: - '路灯花,能照亮一片区域,让你看清战场迷雾

Scope:一片圆形区域
Features:使你看清战场迷雾

灯笼草拒绝科学,他只会埋头苦干。其他植物
吃的是光,挤出的是氧气。灯笼草吃的是黑暗,
挤出的却是光。对于他如何能产生光这件事,灯
笼草持谨慎态度。“我不会说这是‘巫术’,我
也不会使用‘黑暗力量’,我只是……我想我说
得够多的了。”', - PrivateBirth: function (c) { - var a = c.R, - b = c.C; - oGd.$Plantern[a + "_" + b] = c.id; - NewImg( - "", - "images/Plants/Plantern/light.gif", - "filter:alpha(opacity=30);opacity:.3;left:0;top:0;z-index:" + - c.zIndex, - $(c.id) + 9e3, + function (g) { + var h = b + "_" + d; + g.style.backgroundPosition = "100% 0"; + oGd.$Crater[h] = 1; + oSym.addTask( + 9e3, + function (i, j) { + ClearChild(i); + delete oGd.$Crater[j]; + }, + [g, h] + ); + }, + [a] ); - oS.HaveFog && oGd.GatherFog(a, b, 2, 3, 0), - oFlowerVase.prototype.FreshXRay(); // 刷新场地上花瓶 XRAY - }, - InitTrigger: function () {}, - PrivateDie: function (c) { - var a = c.R, - b = c.C; - delete oGd.$Plantern[a + "_" + b]; - oS.HaveFog && oGd.GatherFog(a, b, 2, 3, 1), - oFlowerVase.prototype.FreshXRay(); // 刷新场地上花瓶 XRAY }, + }), + oTangleKlep = InheritO(CPlants, { + EName: "oTangleKlep", + CName: "Tangle Kelp", + width: 90, + height: 72, + beAttackedPointL: 15, + beAttackedPointR: 80, + coolTime: 30, + SunNum: 25, + BookHandBack: 4.9, GetDY: function (b, c, a) { - return a[0] ? 70 : 74; - }, - getShadow: function (a) { - return ( - "left:" + - (a.width * 0.5 - 43) + - "px;top:" + - (a.height - 100) + - "px" - ); + return 5; }, - })), - (oSeedPlantern = InheritO(CPlants, { - EName: "oSeedPlantern", - CName: "Plantern", - width: 250, - height: 237, - beAttackedPointL: 105, - beAttackedPointR: 145, - coolTime: 30, - BookHandBack: 2, - SunNum: 0, + NormalGif: 1, + AudioArr: ["TangleKlep"], PicArr: [ - "images/Card/Plants/Plantern.png", - "images/Plants/Plantern/0.gif", - "images/Plants/Plantern/Plantern.gif", - "images/Plants/Plantern/light.gif", + "images/Card/Plants/TangleKlep.png", + "images/Plants/TangleKlep/0.gif", + "images/Plants/TangleKlep/Float.gif", + "images/Plants/TangleKlep/Grab.png", + "images/interface/splash.png", ], - Tooltip: "照亮一片区域, 让玩家可以看穿战场迷雾", + Tooltip: "Aquatic plant that pulls a zombie underwater", Produce: - '灯笼草,能照亮一片区域,让你看清战场迷雾

范围:一片圆形区域
特点:使你看清战场迷雾

灯笼草拒绝科学,他只会埋头苦干。其他植物吃的是光,挤出的是氧气。灯笼草吃的是黑暗,挤出的却是光。对于他如何能产生光这件事,灯笼草持谨慎态度。“我不会说这是‘巫术’,我也不会使用‘黑暗力量’,我只是……我想我说得够多的了。”', - PrivateBirth: function (c) { - var a = c.R, - b = c.C; - oGd.$Plantern[a + "_" + b] = c.id; - NewImg( - "", - "images/Plants/Plantern/light.gif", - "filter:alpha(opacity=30);opacity:.3;left:0;top:0;z-index:" + - c.zIndex, - $(c.id) + '缠绕水草是一种可以把接近他的僵尸拉进水中
的水生植物。

Harm:极高
用法:单独使用,接触后生效
Features:必须种在水中

“我是完全隐形的,”缠绕水草自己想,“我就
藏在水面下,没人会看到我。”他的朋友告诉他
,他们可以清楚地看到他。不过,缠绕水草似
乎不想改变自己的看法。', + CanGrow: function (c, b, d) { + var a = b + "_" + d; + return !( + oGd.$LF[b] != 2 || + d < 1 || + d > 9 || + oGd.$Crater[a] || + c[0] || + c[1] || + oGd.$Tombstones[a] ); - oS.HaveFog && oGd.GatherFog(a, b, 2, 3, 0), - oFlowerVase.prototype.FreshXRay(); // 刷新场地上花瓶 XRAY - }, - InitTrigger: function () {}, - PrivateDie: function (c) { - var a = c.R, - b = c.C; - delete oGd.$Plantern[a + "_" + b]; - oS.HaveFog && oGd.GatherFog(a, b, 2, 3, 1), - oFlowerVase.prototype.FreshXRay(); // 刷新场地上花瓶 XRAY - }, - GetDY: function (b, c, a) { - return a[0] ? 70 : 74; }, getShadow: function (a) { - return ( - "left:" + - (a.width * 0.5 - 43) + - "px;top:" + - (a.height - 100) + - "px" - ); - }, - })), - (ostar = InheritO(CPlants, { - EName: "ostar", - CName: "Sea Starfruit", - width: 71, - height: 71, - beAttackedPointL: 10, - beAttackedPointR: 61, - SunNum: 75, - HP: 4e3, - canEat: 0, - BookHandBack: 3.5, - Tooltip: "Sea Starfruit rolls and destroys any obstacles in its way", - Produce: - '海星果的触手可以轻易掀翻僵尸并造成混乱

攻击:较大
路径:随机的撞击线

海星果永远保持着迷人的微笑,没人知道他那
么热爱转圈圈却不会头晕的秘密,有人说因为他
那双斗鸡眼只看一点才不会转晕。', - PicArr: [ - "images/Card/Plants/star.png", - "images/Plants/star/0.gif", - "images/Plants/star/starRoll.gif", - ], - AudioArr: ["bowling", "bowlingimpact", "bowlingimpact2"], - CanAttack: 1, - InitTrigger: function () {}, - getHurt: function () {}, - CanGrow: function (e, d, f) { - var c = d + "_" + f, - b = oGd.$LF[d], - a = f < 1 || f > 9; - return b % 2 - ? b < 3 - ? !( - a || - e[1] || - e[2] || - e[0] || - oGd.$Crater[c] || - oGd.$Tombstones[c] - ) - : !(a || e[0] || oGd.$Crater[c]) - : 0; - }, - NormalAttack: null, - PrivateBirth: function (c) { - var d = $(c.id); - PlayAudio("seastar_roll"); - (function (z, y, q, r, p, x, e, g, b) { - var a = z.R, - l = z.C, - A, - u, - s, - v = 0, - w, - i, - t = false; - if (z.CanAttack && (A = oZ.getZ0(r, a)) && A.getCrushed(z)) { - u = A.id; - // PlayAudio(["bowlingimpact", "bowlingimpact2"][Math.floor(Math.random() * 2)]); - switch (A.Ornaments) { - case 0: - A.NormalDie(); - break; - case 1: - A.getHit0(A, Math.min(A.OrnHP, 900), 0); - break; - default: - z.side - ? A.Normaldie() - : A.CheckOrnHP( - A, - u, - A.OrnHP, - 400, - A.PicArr, - 0, - 0, - 0 - ); - } - z.CanAttack = 0; - switch (a) { - case oS.R: - e = -1; - break; - case 1: - e = 1; - break; - default: - switch (e) { - case 1: - e = -1; - break; - case -1: - e = 1; - break; - default: - e = Math.random() > 0.5 ? 1 : -1; - } - } - oSym.addTask(1, arguments.callee, [ - z, - y, - z.AttackedLX + 20, - z.AttackedRX + 20, - z.pixelLeft + 20, - x, - e, - g, - b, - ]); - } else { - switch (e) { - case 1: - z.pixelBottom + 2 > b && (e = -1); - break; - case -1: - z.pixelBottom - 2 < g && (e = 1); - break; - } - q > y - ? z.Die() - : ((i = GetC((z.pixelRight += 2))), - (z.AttackedLX = q += 2), - (z.AttackedRX = r += 2), - (w = GetR((z.pixelBottom += e * 2))), - SetStyle(x, { - left: (z.pixelLeft = p += 2) + "px", - top: (z.pixelTop += e * 2) + "px", - }), - w != a && - ((z.R = w), - (t = true), - !z.CanAttack && (z.CanAttack = 1)), - i != l && ((z.C = i), (t = true)), - t && - (oGd.del({ - R: a, - C: l, - PKind: 1, - }), - oGd.add(z, w + "_" + i + "_1")), - oSym.addTask(1, arguments.callee, [ - z, - y, - z.AttackedLX, - z.AttackedRX, - z.pixelLeft, - x, - e, - g, - b, - ])); - } - })( - c, - oS.W, - c.AttackedLX, - c.AttackedRX, - c.pixelLeft, - d, - 0, - GetY1Y2(1)[0], - 600 - ); - }, - })), - (ostar1 = InheritO(oNutBowling, { - EName: "ostar1", - CName: "Sea Starfruitt", - width: 71, - height: 71, - beAttackedPointL: 10, - beAttackedPointR: 61, - SunNum: 75, - coolTime: 50, - HP: 0, - canEat: 0, - BookHandBack: 3, - Stature: 1, - PicArr: [ - "images/Card/Plants/star.png", - "images/Plants/star/0.gif", - "images/Plants/star/starRoll.gif", - ], - Tooltip: "", - Produce: "", - PrivateBirth: function (a) { - PlayAudio("bowling"); - (function (b, c, n, m, e, g) { - var d = oZ.getArZ(n, m, e), - f = d.length, - k, - j, - l = b.R, - h = b.C; - while (f--) { - (k = d[f]).getCrushed(b) && k.CrushDie(); - } - n > c - ? b.Die() - : ((j = GetC((b.pixelRight += 2))), - (b.AttackedLX = n += 2), - (b.AttackedRX = m += 2), - (g.style.left = (b.pixelLeft += 2) + "px"), - j != h && - ((b.C = j), - oGd.del({ - R: l, - C: h, - PKind: 1, - }), - oGd.add(b, l + "_" + j + "_1")), - oSym.addTask(1, arguments.callee, [b, c, n, m, e, g])); - })(a, oS.W, a.AttackedLX, a.AttackedRX, a.R, $(a.id)); - }, - })), - (oGun = InheritO(oPuffShroom, { - EName: "oGun", - CName: "Water Gun Grass", - Sleep: 0, - width: 100, - height: 100, - beAttackedPointL: 15, - beAttackedPointR: 25, - BookHandBack: 3.5, - SunNum: 25, - PicArr: [ - "images/Card/Plants/gun.png", - "images/Plants/gun/0.gif", - "images/Plants/gun/SeaShroom.gif", - "images/Plants/gun/SeaShroomSleep.gif", - "images/Plants/gun/ShroomBullet.gif", - "images/Plants/gun/ShroomBulletHit.gif", - ], - CanGrow: function (e, d, f) { - var c = d + "_" + f, - b = oGd.$LF[d], - a = f < 1 || f > 9; - return b % 2 - ? b < 3 - ? !( - a || - e[1] || - e[2] || - e[0] || - oGd.$Crater[c] || - oGd.$Tombstones[c] - ) - : !(a || e[0] || oGd.$Crater[c]) - : 0; + return "display:none"; }, - Tooltip: "轻型海底作战植物", - Produce: - '水枪草可以直接种在海底,但射程比较短。

Harm:
射程:

自从水枪草得到了绝世的吐纳秘籍之后一直在
不断地练习着,希望自己能够突破三米的射程。', - PrivateBirth: function (a) { - a.BulletEle = NewImg( - 0, - "images/Plants/gun/ShroomBullet.gif", - "left:" + - (a.AttackedLX - 46) + - "px;top:" + - (a.pixelTop + 40) + - "px;visibility:hidden;z-index:" + - (a.zIndex + 2) - ); + getTriggerRange: function (a, b, c) { + return [[b, c, 0]]; }, BirthStyle: function (c, d, b, a) { + b.childNodes[1].src = "images/Plants/TangleKlep/Float.gif"; EditEle( b, { @@ -9154,231 +7639,150 @@ oSeedSeaShroom = InheritO(oPuffShroom, { EDPZ ); }, - PrivateDie: function (a) { - a.BulletEle = null; - }, - NormalAttack: function () { - PlayAudio("puff"); - var k = this; - var b = this, - c = "PSB" + Math.random(), - a = b.AttackedLX; - (j = k.id), - (d = $(j)), - EditEle( - b.BulletEle.cloneNode(false), - { - id: c, - }, - 0, - EDPZ - ); - oSym.addTask( - 15, - function (e) { - var d = $(e); - d && SetVisible(d); - }, - [c] - ); - oSym.addTask( - 1, - function (j, d, e, f, g) { - var i = GetC(e), - h = oZ.getZ0(e, f); - h && h.Altitude == 1 - ? (h.getPea(h, 20, 0), - (SetStyle(d, { - left: g + 38 + "px", - }).src = "images/Plants/gun/ShroomBulletHit.gif"), - oSym.addTask(10, ClearChild, [d])) - : (e += 5) < oS.W - ? ((d.style.left = (g += 5) + "px"), - oSym.addTask(1, arguments.callee, [j, d, e, f, g])) - : ClearChild(d); - }, - [c, $(c), a, b.R, a - 46] - ); - d.childNodes[1].src = "images/Plants/gun/SeaShroomShoot.gif"; - setTimeout(() => { - d.childNodes[1].src = "images/Plants/gun/SeaShroom.gif"; - }, 750); - }, - })), - (oSeaAnemone = InheritO(oGloomShroom, { - EName: "oSeaAnemone", - CName: "Electric Anemone", - width: 83, - height: 119, - beAttackedPointR: 63, - SunNum: 300, - coolTime: 15, - BookHandBack: 3.5, - AudioArr: ["SeaAnemone"], - PicArr: [ - "images/Card/Plants/SeaAnemone.png", - "images/Plants/SeaAnemone/0.gif", - "images/Plants/SeaAnemone/GloomShroom.gif", - "images/Plants/SeaAnemone/GloomShroomSleep.gif", - "images/Plants/SeaAnemone/GloomShroomAttack.gif", - "images/Plants/SeaAnemone/GloomShroomBullet.gif", - ], - AudioArr: ["kernelpult", "kernelpult2"], - Tooltip: "Hurts zombies around it", - Produce: - "电海葵花可以对在他周围的僵尸造成巨大伤害

自信的电海葵花毫不畏惧任何困难,一头杀马
特式的发型是他引以为傲的事情,可他说这是上
次在村口找王师傅给剃的。", - BirthStyle: function (c, d, b, a) { - EditEle( - b, - { - id: d, - }, - a, - EDPZ - ); + getHurt: function (d, b, a) { + var c = this; + b == 3 + ? (c.HP -= a) < 1 && c.Die() + : ((c.canTrigger = 0), c.NormalAttack(c, d)); }, - CanGrow: function (e, d, f) { - var c = d + "_" + f, - b = oGd.$LF[d], - a = f < 1 || f > 9; - return b % 2 - ? b < 3 - ? !( - a || - e[1] || - e[2] || - e[0] || - oGd.$Crater[c] || - oGd.$Tombstones[c] - ) - : !(a || e[0] || oGd.$Crater[c]) - : 0; + TriggerCheck: function (b, a) { + b.AttackedLX < GetX(9) && + b.beAttacked && + ((this.canTrigger = 0), this.NormalAttack(this, b)); }, - PrivateBirth: function (b) { - var a = b.id; - NewEle( - a + "_Bullet", - "div", - "position:absolute;visibility:hidden;width:210px;height:200px;left:" + - (b.pixelLeft - 60) + - "px;top:" + - (b.pixelTop - 65) + - "px;background:url(images/Plants/SeaAnemone/GloomShroomBullet.gif);z-index:" + - (b.zIndex + 1), + NormalAttack: function (a, b) { + a.getHurt = function () {}; + b.getHurt = function () {}; + b.beAttacked = 0; + b.isAttacking = 1; + NewImg( 0, - EDPZ + "images/Plants/TangleKlep/Grab.png", + "left:" + + b.beAttackedPointL + + "px;top:" + + (b.height - 67) + + "px", + b.Ele ); - }, - NormalAttack: function () { - PlayAudio("SeaAnemone"); - var k = this, - g, - f = k.MaxR, - c = k.MinX, - b = k.MaxX, - e, - h, - a, - j = k.id, - d = $(j), - l = j + "_Bullet"; - for (g = k.MinR; g <= f; g++) { - e = oZ.getArZ(c, b, g); - for ( - h = e.length; - h--; - (a = e[h]).Altitude < 2 && a.getHit1(a, 130) - ) {} - } oSym.addTask( - 100, - function (i) { - PlayAudio( - ["kernelpult", "kernelpult2"][ - Math.floor(Math.random() * 2) - ] + 50, + function (g, h) { + PlayAudio("TangleKlep"); + var e = g.id, + f = h.id, + d = e + "_splash", + c = f + "_splash"; + NewEle( + d, + "div", + "position:absolute;background:url(images/interface/splash.png);left:" + + (g.pixelLeft - 4) + + "px;top:" + + (g.pixelTop - 16) + + "px;width:97px;height:88px;over-flow:hidden", + 0, + EDPZ + ); + NewEle( + c, + "div", + "position:absolute;background:url(images/interface/splash.png);left:" + + (h.AttackedLX - 10) + + "px;top:" + + (h.pixelTop + h.height - 88) + + "px;width:97px;height:88px;over-flow:hidden", + 0, + EDPZ + ); + ImgSpriter( + d, + e, + [ + ["0 0", 9, 1], + ["-97px 0", 9, 2], + ["-194px 0", 9, 3], + ["-291px 0", 9, 4], + ["-388px 0", 9, 5], + ["-485px 0", 9, 6], + ["-582px 0", 9, 7], + ["-679px 0", 9, -1], + ], + 0, + function (i, j) { + ClearChild($(i)); + } ); - --i && oSym.addTask(100, arguments.callee, [i]); + ImgSpriter( + c, + f, + [ + ["0 0", 9, 1], + ["-97px 0", 9, 2], + ["-194px 0", 9, 3], + ["-291px 0", 9, 4], + ["-388px 0", 9, 5], + ["-485px 0", 9, 6], + ["-582px 0", 9, 7], + ["-679px 0", 9, -1], + ], + 0, + function (i, j) { + ClearChild($(i)); + } + ); + h.DisappearDie(); + g.Die(); }, - [4] - ); - d.childNodes[1].src = - "images/Plants/SeaAnemone/GloomShroomAttack.gif"; - SetVisible($(l)); - ImgSpriter( - l, - j, - [ - ["0 0", 9, 1], - ["0 -200px", 9, 2], - ["0 -400px", 9, 3], - ["0 -600px", 9, 4], - ["0 -800px", 9, 5], - ["0 -1000px", 9, 6], - ["0 -1200px", 9, 7], - ["0 -1400px", 9, 8], - ["0 -1600px", 9, 9], - ["0 -1800px", 9, 10], - ["0 -2000px", 9, 11], - ["0 -2200px", 9, -1], - ], - 0, - function (m, n) { - var i = $(n); - $P[n] && - (i.childNodes[1].src = - "images/Plants/SeaAnemone/GloomShroom.gif"); - SetHidden($(m)); - } + [a, b] ); }, - })), - (oTTS = InheritO(CPlants, { - EName: "oTTS", - CName: "Thorn Seaweed", - width: 75, - height: 226, - beAttackedPointR: 55, + }), + oSeedTangleKelp = InheritO(CPlants, { + EName: "oSeedTangleKelp", + CName: "Tangle Kelp", + width: 90, + height: 72, + beAttackedPointL: 15, beAttackedPointR: 80, - SunNum: 50, - BookHandBack: 3.5, + coolTime: 30, + SunNum: 0, + BookHandBack: 4.9, GetDY: function (b, c, a) { return 5; }, NormalGif: 1, - AudioArr: ["TTS"], + AudioArr: ["TangleKlep"], PicArr: [ - "images/Card/Plants/TTS.png", - "images/Plants/TTS/0.gif", - "images/Plants/TTS/Float.gif", - "images/Plants/TTS/Grab.png", - "images/Plants/TTS/splash.png", + "images/Card/Plants/TangleKlep.png", + "images/Plants/TangleKlep/0.gif", + "images/Plants/TangleKlep/Float.gif", + "images/Plants/TangleKlep/Grab.png", + "images/interface/splash.png", ], - Tooltip: "Grabs zombies in front of it", + Tooltip: "Aquatic plant that pulls a zombie underwater", Produce: - '荆棘海草会用力抓住靠近他的任何东西并拖入
地下。

Harm:巨大
Scope:一格
Instructions:一次性使用。

荆棘海草最近一次的表白又被捷足先登了,这
使他很伤心。不过很快他就重新振作起来并吸取
教训。一定要抓住机会!但他似乎对这句话理解
有误:他无论碰到什么都会死死地抓住。', - CanGrow: function (e, d, f) { - var c = d + "_" + f, - b = oGd.$LF[d], - a = f < 1 || f > 9; - return b % 2 - ? b < 3 - ? !( - a || - e[1] || - e[2] || - e[0] || - oGd.$Crater[c] || - oGd.$Tombstones[c] - ) - : !(a || e[0] || oGd.$Crater[c]) - : 0; + '缠绕水草是一种可以把接近他的僵尸拉进水中
的水生植物。

Harm:极高
用法:单独使用,接触后生效
Features:必须种在水中

“我是完全隐形的,”缠绕水草自己想,“我就
藏在水面下,没人会看到我。”他的朋友告诉他
,他们可以清楚地看到他。不过,缠绕水草似
乎不想改变自己的看法。', + CanGrow: function (c, b, d) { + var a = b + "_" + d; + return !( + oGd.$LF[b] != 2 || + d < 1 || + d > 9 || + oGd.$Crater[a] || + c[0] || + c[1] || + oGd.$Tombstones[a] + ); + }, + getShadow: function (a) { + return "display:none"; }, getTriggerRange: function (a, b, c) { return [[b, c, 0]]; }, BirthStyle: function (c, d, b, a) { - b.childNodes[1].src = "images/Plants/TTS/Float.gif"; + b.childNodes[1].src = "images/Plants/TangleKlep/Float.gif"; EditEle( b, { @@ -9400,14 +7804,13 @@ oSeedSeaShroom = InheritO(oPuffShroom, { ((this.canTrigger = 0), this.NormalAttack(this, b)); }, NormalAttack: function (a, b) { - PlayAudio("TTS"); a.getHurt = function () {}; b.getHurt = function () {}; b.beAttacked = 0; b.isAttacking = 1; NewImg( 0, - "images/Plants/TTS/Grab.png", + "images/Plants/TangleKlep/Grab.png", "left:" + b.beAttackedPointL + "px;top:" + @@ -9418,14 +7821,26 @@ oSeedSeaShroom = InheritO(oPuffShroom, { oSym.addTask( 50, function (g, h) { + PlayAudio("TangleKlep"); var e = g.id, f = h.id, d = e + "_splash", c = f + "_splash"; + NewEle( + d, + "div", + "position:absolute;background:url(images/interface/splash.png);left:" + + (g.pixelLeft - 4) + + "px;top:" + + (g.pixelTop - 16) + + "px;width:97px;height:88px;over-flow:hidden", + 0, + EDPZ + ); NewEle( c, "div", - "position:absolute;background:url(images/Plants/TTS/splash.png);left:" + + "position:absolute;background:url(images/interface/splash.png);left:" + (h.AttackedLX - 10) + "px;top:" + (h.pixelTop + h.height - 88) + @@ -9475,569 +7890,4668 @@ oSeedSeaShroom = InheritO(oPuffShroom, { [a, b] ); }, - })), - (oMagneticmuShroom = InheritO(CPlants, { - EName: "oMagneticmuShroom", - CName: "Magnet-shroom", - width: 176, - height: 148, - beAttackedPointR: 50, - SunNum: 50, - BookHandBack: 2.5, - AudioArr: ["Magneticmu"], - PicArr: [ - "images/Card/Plants/MagneticmuShroom.png", - "images/Plants/MagneticmuShroom/0.gif", - "images/Plants/MagneticmuShroom/Shrubbery.gif", - "images/Plants/MagneticmuShroom/ShrubberyBoom.gif" + $Random, - ], - Tooltip: "Removes helmets and other metal objects from zombies。", - Produce: - '磁力菇可以吸走周围僵尸的护具

Scope:约一行
Instructions:安放即可使用(一次性)

磁力是一种强大的力量,非常强大,强大到有
时都吓到磁力菇自己了。能力越大,责任越大
,他不知道自己能否肩负得起这责任', - InitTrigger: function () {}, - getHurt: function () {}, - PrivateBirth: function (a) { - oSym.addTask( - 10, - function (j) { - var h = $P[j]; - if (h) { - PlayAudio("Magneticmu"); - var b = $(j), - f = h.R, - c = oZ.getArZ(100, oS.W, f), - e = c.length, - g = oGd.$Ice[f], - d = oGd.$Crater; - while (e--) { - if ( - c[e].EName == "oBucketheadZombie" || - c[e].EName == "oFootballZombie" || - c[e].EName == "oHeiFootballZombie" || - c[e].EName == "oCFootballZombie" || - c[e].EName == "oScreenDoorZombie" || - c[e].EName == "oDuckyTubeZombie3" || - c[e].EName == "oDuckyTubeZombie4" || - c[e].EName == "oSmallFootballZombie" || - c[e].EName == "oCBucketheadZombie" || - c[e].EName == "oTrashZombie" || - c[e].EName == "oCFootballZombie" || - c[e].EName == "oConeheadZombie" || - c[e].EName == "oCConeheadZombie" || - c[e].EName == "oJY" || - c[e].EName == "oBalloonZombie" || - c[e].EName == "oNewspaperZombie" || - c[e].EName == "oCNewspaperZombie" || - c[e].EName == "oDuckyTubeZombie2" - ) { - c[e].OrnHP = 0; - c[e].getHit0(c[e], 0, 0); - } - } - h.Die(1); - EditEle( - b.childNodes[1], - { - src: "images/Plants/MagneticmuShroom/ShrubberyBoom.gif", - }, - { - width: "176px", - height: "148px", - left: "-1px", - top: "-1px", - } - ); - oSym.addTask(220, ClearChild, [b]); - } - }, - [a.id] - ); - }, - })), - (oLaserBean = InheritO(CPlants, { - EName: "oLaserBean", - CName: "Laser Bean", - width: 80, - height: 80, - beAttackedPointR: 80, - SunNum: 75, - SunNum: 250, + }), + oSeaShroom = InheritO(oPuffShroom, { + EName: "oSeaShroom", + CName: "Sea-shroom", + width: 48, + height: 99, + beAttackedPointL: 10, + beAttackedPointR: 40, coolTime: 30, - HP: 4e3, - PicArr: [ - "images/Card/Plants/LaserBean.png", - "images/Plants/LaserPea/0.gif", - "images/Plants/LaserPea/LaserPea.gif", - "images/Plants/LaserPea/LaserPeaSleep.gif", - "images/Plants/LaserPea/LaserPeaAttack.gif", - "images/Plants/LaserPea/LaserPeaBullet.gif", - ], - AudioArr: ["LaserBean"], - Tooltip: "Fires a high-powered laser at an entire row of zombies", - Produce: - '激光蚕豆向一整排僵尸发射激光

Scope:一整排僵尸

本豆由上海宝开绘制


这位就是大名鼎鼎的激光豆。但是为什么他是
蚕豆?恐怕没人搞得清楚。', - CheckLoop: function (b, c) { - var a = this.id; - this.NormalAttack(b); - oSym.addTask( - 292, - function (e, f, h) { - var g; - (g = $P[e]) && g.AttackCheck1(f, h); - }, - [a, b, c] - ); - }, + BookHandBack: 4.9, + Sleep: 0, getShadow: function (a) { - return ( - "left:" + - (a.width * 0.5 - +20) + - "px;top:" + - (a.height - 22) + - "px" - ); - }, - GetDY: function (b, c, a) { - return a[0] ? -18 : -10; - }, - GetDX: function () { - return -68; + return "display:none"; }, - PrivateBirth: function (b) { - var a = b.id; - NewEle( - a + "_Bullet", - "div", - "position:absolute;visibility:hidden;width:343px;height:62px;left:" + - b.AttackedRX + - "px;top:" + - (b.pixelTop + 5) + - "px;background:url(images/Plants/LaserPea/LaserPeaBullet.gif);z-index:" + - (b.zIndex + 1), - 0, - EDPZ + PicArr: [ + "images/Card/Plants/SeaShroom.png", + "images/Plants/SeaShroom/0.gif", + "images/Plants/SeaShroom/SeaShroom.gif", + "images/Plants/SeaShroom/SeaShroomSleep.gif", + "images/Plants/ShroomBullet.gif", + "images/Plants/ShroomBulletHit.gif", + ], + CanGrow: function (c, b, d) { + var a = b + "_" + d; + return !( + d < 1 || + d > 9 || + oGd.$LF[b] - 2 || + c[0] || + c[1] || + oGd.$Crater[a] || + oGd.$Tombstones[a] ); }, - PrivateDie: function (a) { - ClearChild($(a.id + "_Bullet")); - }, - getTriggerRange: function (a, b, c) { - return [[b, Math.min(c + 686, oS.W), 0]]; - }, - NormalAttack: function () { - PlayAudio("LaserBean"); - var f = this, - d = oZ.getArZ( - f.AttackedLX, - Math.min(f.AttackedRX + 686, oS.W), - f.R - ), - e = d.length, - g, - c = f.id, - b = $(c), - a = c + "_Bullet"; - while (e--) { - (g = d[e]).Altitude < 2 && g.getHit1(g, 850); - } - b.childNodes[1].src = "images/Plants/LaserPea/LaserPeaAttack.gif"; - SetVisible($(a)); - ImgSpriter( + BirthStyle: function (c, d, b, a) { + EditEle( + b, + { + id: d, + }, a, - c, - [ - ["0 0", 4, 1], - ["0 -62px", 4, 2], - ["0 -124px", 5, 3], - ["0 -186px", 5, 4], - ["0 -248px", 5, 5], - ["0 -310px", 6, 6], - ["0 -372px", 6, 7], - ["0 -434px", 7, -1], - ], - 0, - function (i, j) { - var h = $(j); - $P[j] && - ((h.childNodes[1].src = - "images/Plants/LaserPea/LaserPea.gif"), - SetHidden($(i))); - } + EDPZ ); }, - })), - (oGoldenPrize = InheritO(CPlants, { - EName: "oGoldenPrize", - CName: "Sunflower Golden Trophy", - PicArr: ["images/interface/0.gif", "images/interface/0.gif"], - Tooltip: "Ta daa!", - })), - (oShovel = InheritO(CPlants, { - EName: "oShovel", - CName: "Shovel", - width: 130, - height: 114, - beAttackedPointR: 70, - PicArr: [ - "images/interface/Shovel/ShovelCard.png", - "images/interface/Shovel/0.gif", - ], - Tooltip: "Shovel up plants you dont want!", - })); + Tooltip: "Aquatic plant that shoots short-ranged spores", + Produce: + '海蘑菇,能够发射短程孢子的水生植物。

Harm:普通
射程:
必须种在水上

海蘑菇从来没看到过大海,大海就在他的名字
里,他总听到关于大海的事。他只是没找到合适的
时间,总有一天……是的,他会见到海的。', + }); +======= + NormalAttack: function (a, b) { + $(a).childNodes[1].src = + "images/Plants/BigChomper/ChomperAttack.gif" + + $Random + + Math.random(); + oSym.addTask( + 70, + function (c, d) { + PlayAudio("bigchomp"); + $P[c] && + oSym.addTask( + 9, + function (e, f) { + var g = $P[e], + h; + g && + ((h = $Z[f]) && h.beAttacked && h.PZ + ? ($(e).childNodes[1].src = h.getRaven( + e + ) + ? (oSym.addTask( + 2100, + function (i) { + var j = $P[i]; + j && + ((j.canTrigger = 1), + ($( + i + ).childNodes[1].src = + "images/Plants/BigChomper/Chomper.gif")); + }, + [e] + ), + "images/Plants/BigChomper/ChomperDigest.gif") + : ((g.canTrigger = 1), + "images/Plants/BigChomper/Chomper.gif")) + : oSym.addTask( + 9, + function (i) { + var j = $P[i]; + j && + ((j.canTrigger = 1), + ($( + i + ).childNodes[1].src = + "images/Plants/BigChomper/Chomper.gif")); + }, + [e] + )); + }, + [c, d] + ); + }, + [a, b] + ); + }, + }), + oFumeShroom = InheritO(CPlants, { + EName: "oFumeShroom", + CName: "Fume-shroom", + width: 100, + height: 88, + beAttackedPointR: 80, + SunNum: 75, + BookHandBack: 2.5, + SleepGif: 3, + night: true, + PicArr: [ + "images/Card/Plants/FumeShroom.png", + "images/Plants/FumeShroom/0.gif", + "images/Plants/FumeShroom/FumeShroom.gif", + "images/Plants/FumeShroom/FumeShroomSleep.gif", + "images/Plants/FumeShroom/FumeShroomAttack.gif", + "images/Plants/FumeShroom/FumeShroomBullet.gif", + ], + AudioArr: ["fume"], + Tooltip: "Shoots fumes that can pass through screen doors", + Produce: + '大喷菇喷出的臭气可以穿透铁丝网门。

Harm:普通,可穿透铁丝网门
Scope:臭气中的所有僵尸
白天睡觉

“我以前那份没前途的工作,是为一个面包房
生产酵母孢,”大喷菇说。“然后小喷菇,上帝
保佑它,告诉了我这个喷杀僵尸的机会。现在
我真觉得自己完全不同了。”', + GetDY: function (b, c, a) { + return a[0] ? -18 : -10; + }, + GetDX: function () { + return -45; + }, + BirthStyle: function (c, d, b, a) { + oS.DKind && + ((c.canTrigger = 0), + (c.Sleep = 1), + (b.childNodes[1].src = c.PicArr[c.SleepGif])); + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + PrivateBirth: function (b) { + var a = b.id; + NewEle( + a + "_Bullet", + "div", + "position:absolute;visibility:hidden;width:343px;height:62px;left:" + + b.AttackedRX + + "px;top:" + + (b.pixelTop + 5) + + "px;background:url(images/Plants/FumeShroom/FumeShroomBullet.gif);z-index:" + + (b.zIndex + 1), + 0, + EDPZ + ); + }, + PrivateDie: function (a) { + ClearChild($(a.id + "_Bullet")); + }, + getTriggerRange: function (a, b, c) { + return [[b, Math.min(c + 330, oS.W), 0]]; + }, + NormalAttack: function () { + PlayAudio("fume"); + var f = this, + d = oZ.getArZ( + f.AttackedLX, + Math.min(f.AttackedRX + 330, oS.W), + f.R + ), + e = d.length, + g, + c = f.id, + b = $(c), + a = c + "_Bullet"; + while (e--) { + (g = d[e]).Altitude < 2 && g.getHit1(g, 20); + } + b.childNodes[1].src = + "images/Plants/FumeShroom/FumeShroomAttack.gif"; + SetVisible($(a)); + ImgSpriter( + a, + c, + [ + ["0 0", 9, 1], + ["0 -62px", 9, 2], + ["0 -124px", 9, 3], + ["0 -186px", 9, 4], + ["0 -248px", 9, 5], + ["0 -310px", 9, 6], + ["0 -372px", 9, 7], + ["0 -434px", 9, -1], + ], + 0, + function (i, j) { + var h = $(j); + $P[j] && + ((h.childNodes[1].src = + "images/Plants/FumeShroom/FumeShroom.gif"), + SetHidden($(i))); + } + ); + }, + }), + oSeedFumeShroom = InheritO(CPlants, { + EName: "oSeedFumeShroom", + CName: "Fume-shroom", + width: 100, + height: 88, + beAttackedPointR: 80, + SunNum: 0, + BookHandBack: 2.5, + SleepGif: 3, + night: true, + PicArr: [ + "images/Card/Plants/FumeShroom.png", + "images/Plants/FumeShroom/0.gif", + "images/Plants/FumeShroom/FumeShroom.gif", + "images/Plants/FumeShroom/FumeShroomSleep.gif", + "images/Plants/FumeShroom/FumeShroomAttack.gif", + "images/Plants/FumeShroom/FumeShroomBullet.gif", + ], + AudioArr: ["fume"], + Tooltip: "Shoots fumes that can pass through screen doors", + Produce: + '大喷菇喷出的臭气可以穿透铁丝网门。

Harm:普通,可穿透铁丝网门
Scope:臭气中的所有僵尸
白天睡觉

“我以前那份没前途的工作,是为一个面包房
生产酵母孢,”大喷菇说。“然后小喷菇,上帝
保佑它,告诉了我这个喷杀僵尸的机会。现在
我真觉得自己完全不同了。”', + GetDY: function (b, c, a) { + return a[0] ? -18 : -10; + }, + GetDX: function () { + return -45; + }, + BirthStyle: function (c, d, b, a) { + oS.DKind && + ((c.canTrigger = 0), + (c.Sleep = 1), + (b.childNodes[1].src = c.PicArr[c.SleepGif])); + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + PrivateBirth: function (b) { + var a = b.id; + NewEle( + a + "_Bullet", + "div", + "position:absolute;visibility:hidden;width:343px;height:62px;left:" + + b.AttackedRX + + "px;top:" + + (b.pixelTop + 5) + + "px;background:url(images/Plants/FumeShroom/FumeShroomBullet.gif);z-index:" + + (b.zIndex + 1), + 0, + EDPZ + ); + }, + PrivateDie: function (a) { + ClearChild($(a.id + "_Bullet")); + }, + getTriggerRange: function (a, b, c) { + return [[b, Math.min(c + 330, oS.W), 0]]; + }, + NormalAttack: function () { + PlayAudio("fume"); + var f = this, + d = oZ.getArZ( + f.AttackedLX, + Math.min(f.AttackedRX + 330, oS.W), + f.R + ), + e = d.length, + g, + c = f.id, + b = $(c), + a = c + "_Bullet"; + while (e--) { + (g = d[e]).Altitude < 2 && g.getHit1(g, 20); + } + b.childNodes[1].src = + "images/Plants/FumeShroom/FumeShroomAttack.gif"; + SetVisible($(a)); + ImgSpriter( + a, + c, + [ + ["0 0", 9, 1], + ["0 -62px", 9, 2], + ["0 -124px", 9, 3], + ["0 -186px", 9, 4], + ["0 -248px", 9, 5], + ["0 -310px", 9, 6], + ["0 -372px", 9, 7], + ["0 -434px", 9, -1], + ], + 0, + function (i, j) { + var h = $(j); + $P[j] && + ((h.childNodes[1].src = + "images/Plants/FumeShroom/FumeShroom.gif"), + SetHidden($(i))); + } + ); + }, + }), + oIFumeShroom = InheritO(CPlants, { + EName: "oIFumeShroom", + CName: "Fume-shroom", + width: 100, + height: 88, + beAttackedPointR: 80, + SunNum: 75, + BookHandBack: 2.5, + SleepGif: 3, + NormalGif: 2, + night: true, + PicArr: [ + "images/Card/Plants/FumeShroom.png", + "images/Plants/FumeShroom/0.gif", + "images/Plants/FumeShroom/FumeShroom.gif", + "images/Plants/FumeShroom/FumeShroomSleep.gif", + "images/Plants/FumeShroom/FumeShroomAttack.gif", + "images/Plants/FumeShroom/FumeShroomBullet.gif", + ], + AudioArr: ["fume"], + Tooltip: "Shoots fumes that can pass through screen doors", + Produce: + '大喷菇喷出的臭气可以穿透铁丝网门。

Harm:普通,可穿透铁丝网门
Scope:臭气中的所有僵尸
白天睡觉

“我以前那份没前途的工作,是为一个面包房
生产酵母孢,”大喷菇说。“然后小喷菇,上帝
保佑它,告诉了我这个喷杀僵尸的机会。现在
我真觉得自己完全不同了。”', + GetDY: function (b, c, a) { + return a[0] ? -18 : -10; + }, + GetDX: function () { + return -45; + }, + BirthStyle: function (c, d, b, a) { + oS.DKind && + ((c.canTrigger = 1), + (c.Sleep = 0), + (b.childNodes[1].src = c.PicArr[c.NormalGif])); + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + PrivateBirth: function (b) { + var a = b.id; + NewEle( + a + "_Bullet", + "div", + "position:absolute;visibility:hidden;width:343px;height:62px;left:" + + b.AttackedRX + + "px;top:" + + (b.pixelTop + 5) + + "px;background:url(images/Plants/FumeShroom/FumeShroomBullet.gif);z-index:" + + (b.zIndex + 1), + 0, + EDPZ + ); + }, + PrivateDie: function (a) { + ClearChild($(a.id + "_Bullet")); + }, + getTriggerRange: function (a, b, c) { + return [[b, Math.min(c + 330, oS.W), 0]]; + }, + NormalAttack: function () { + PlayAudio("fume"); + var f = this, + d = oZ.getArZ( + f.AttackedLX, + Math.min(f.AttackedRX + 330, oS.W), + f.R + ), + e = d.length, + g, + c = f.id, + b = $(c), + a = c + "_Bullet"; + while (e--) { + (g = d[e]).Altitude < 2 && g.getHit1(g, 20); + } + b.childNodes[1].src = + "images/Plants/FumeShroom/FumeShroomAttack.gif"; + SetVisible($(a)); + ImgSpriter( + a, + c, + [ + ["0 0", 9, 1], + ["0 -62px", 9, 2], + ["0 -124px", 9, 3], + ["0 -186px", 9, 4], + ["0 -248px", 9, 5], + ["0 -310px", 9, 6], + ["0 -372px", 9, 7], + ["0 -434px", 9, -1], + ], + 0, + function (i, j) { + var h = $(j); + $P[j] && + ((h.childNodes[1].src = + "images/Plants/FumeShroom/FumeShroom.gif"), + SetHidden($(i))); + } + ); + }, + }), + oIceFumeShroom = InheritO(oFumeShroom, { + EName: "oIceFumeShroom", + CName: "Icy Fume-shroom", + SunNum: 200, + PicArr: [ + "images/Card/Plants/IcyFumeShroom.png", + "images/Plants/IcyFumeShroom/0.gif", + "images/Plants/IcyFumeShroom/FumeShroom.gif", + "images/Plants/IcyFumeShroom/FumeShroomSleep.gif", + "images/Plants/IcyFumeShroom/FumeShroomAttack.gif", + "images/Plants/IcyFumeShroom/FumeShroomBullet.gif", + ], + Tooltip: + 'Shoots icy fumes that can pass through screen doors

(requires fume-shroom)', + Produce: + '大喷菇喷出的臭气可以穿透铁丝网门。

Harm:普通,可穿透铁丝网门
Scope:臭气中的所有僵尸
白天睡觉

“我以前那份没前途的工作,是为一个面包房
生产酵母孢,”大喷菇说。“然后小喷菇,上帝
保佑它,告诉了我这个喷杀僵尸的机会。现在
我真觉得自己完全不同了。”', + PrivateBirth: function (b) { + var a = b.id; + NewEle( + a + "_Bullet", + "div", + "position:absolute;visibility:hidden;width:343px;height:62px;left:" + + b.AttackedRX + + "px;top:" + + (b.pixelTop + 5) + + "px;background:url(images/Plants/IcyFumeShroom/FumeShroomBullet.gif);z-index:" + + (b.zIndex + 1), + 0, + EDPZ + ); + }, + NormalAttack: function () { + PlayAudio("fume"); + var f = this, + d = oZ.getArZ( + f.AttackedLX, + Math.min(f.AttackedRX + 330, oS.W), + f.R + ), + e = d.length, + g, + c = f.id, + b = $(c), + a = c + "_Bullet"; + while (e--) { + (g = d[e]).Altitude < 2 && g.getSnowPea(g, 20); + } + b.childNodes[1].src = + "images/Plants/IcyFumeShroom/FumeShroomAttack.gif"; + SetVisible($(a)); + ImgSpriter( + a, + c, + [ + ["0 0", 9, 1], + ["0 -62px", 9, 2], + ["0 -124px", 9, 3], + ["0 -186px", 9, 4], + ["0 -248px", 9, 5], + ["0 -310px", 9, 6], + ["0 -372px", 9, 7], + ["0 -434px", 9, -1], + ], + 0, + function (i, j) { + var h = $(j); + $P[j] && + ((h.childNodes[1].src = + "images/Plants/IcyFumeShroom/FumeShroom.gif"), + SetHidden($(i))); + } + ); + }, + }), + oCoffeeBean = InheritO(CPlants, { + EName: "oCoffeeBean", + CName: "Coffee Bean", + width: 39, + height: 97, + beAttackedPointL: 10, + beAttackedPointR: 29, + SunNum: 75, + PKind: 3, + canEat: 0, + PicArr: [ + "images/Card/Plants/CoffeeBean.png", + "images/Plants/CoffeeBean/0.gif", + "images/Plants/CoffeeBean/CoffeeBean.gif", + "images/Plants/CoffeeBean/CoffeeBeanEat.gif" + $Random, + ], + AudioArr: ["coffee", "wakeup"], + Tooltip: "Plant it on a mushroom to wake it up", + Produce: + '咖啡豆,可以唤醒睡眠中的蘑菇们。

Instructions:单独使用,立即生效
Features:可以种在其他植物上,用来唤醒蘑菇们

咖啡豆:“嘿,伙计们!嘿,怎么回事?是谁?
嘿!你瞧见那个东西没?什么东西?哇!是狮子
!”嗯,咖啡豆确定,这样可以让自己很兴奋
。', + InitTrigger: function () {}, + GetDBottom: function () { + return 49; + }, + GetDY: function () { + return -30; + }, + CanGrow: function (a, b) { + return (b = a[1]) && b.Sleep && !a[3]; + }, + BirthStyle: function (c, d, b, a) { + b.childNodes[1].src = this.PicArr[3] + Math.random(); + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + PrivateBirth: function (a) { + SetHidden($(a.id).firstChild); + PlayAudio("coffee"); + oSym.addTask( + 240, + function (c) { + PlayAudio("wakeup"); + var d = oGd.$[c], + b; + d && + ((b = d.WakeUP), + !b + ? (($(d.id).childNodes[1].src = + d.PicArr[d.NormalGif]), + (d.canTrigger = 1), + (d.Sleep = 0)) + : b(d)); + a.Die(); + }, + [a.R + "_" + a.C + "_1"] + ); + }, + }), + oGloomShroom = InheritO(oFumeShroom, { + EName: "oGloomShroom", + CName: "Gloom-shroom", + width: 112, + height: 81, + beAttackedPointR: 92, + SunNum: 150, + PicArr: [ + "images/Card/Plants/GloomShroom.png", + "images/Plants/GloomShroom/0.gif", + "images/Plants/GloomShroom/GloomShroom.gif", + "images/Plants/GloomShroom/GloomShroomSleep.gif", + "images/Plants/GloomShroom/GloomShroomAttack.gif", + "images/Plants/GloomShroom/GloomShroomBullet.gif", + ], + AudioArr: ["kernelpult", "kernelpult2"], + Tooltip: + 'Releases heavy fumes in an area around itself

(requires fume-shroom)', + Produce: + '围绕自身释放大量孢子

可以种植在大喷菇上

“我喜欢喷射大量烟雾。”忧郁蘑菇说,“我
知道许多人不喜欢这样,他们说这又粗鲁啦烟
雾又很臭啦之类的,我只想说,你们想不想自
己的脑袋被僵尸吃掉?”', + CanGrow: function (b, a, d) { + var c = b[1]; + return c && c.EName == "oFumeShroom"; + }, + BirthStyle: function (c, d, b, a) { + oGd.$[c.R + "_" + c.C + "_1"] && + oGd.$[c.R + "_" + c.C + "_1"].Sleep && + ((c.canTrigger = 0), + (c.Sleep = 1), + (b.childNodes[1].src = c.PicArr[3])); + EditEle(b, { id: d }, a, EDPZ); + }, + GetDX: function () { + return -58; + }, + PrivateBirth: function (b) { + var a = b.id; + NewEle( + a + "_Bullet", + "div", + "position:absolute;visibility:hidden;width:210px;height:200px;left:" + + (b.pixelLeft - 60) + + "px;top:" + + (b.pixelTop - 65) + + "px;background:url(images/Plants/GloomShroom/GloomShroomBullet.gif);z-index:" + + (b.zIndex + 1), + 0, + EDPZ + ); + }, + PrivateDie: function (a) { + ClearChild($(a.id + "_Bullet")); + }, + getTriggerRange: function (c, d, e) { + var f = GetX(this.C), + b = (this.MinX = f - 120), + a = (this.MaxX = f + 120); + return [[b, a, 0]]; + }, + getTriggerR: function (c) { + var b = (this.MinR = c > 2 ? c - 1 : 1), + a = (this.MaxR = c < oS.R ? Number(c) + 1 : c); + return [b, a]; + }, + NormalAttack: function () { + var k = this, + g, + f = k.MaxR, + c = k.MinX, + b = k.MaxX, + e, + h, + a, + j = k.id, + d = $(j), + l = j + "_Bullet"; + for (g = k.MinR; g <= f; g++) { + e = oZ.getArZ(c, b, g); + for ( + h = e.length; + h--; + (a = e[h]).Altitude < 2 && a.getHit1(a, 80) + ) {} + } + oSym.addTask( + 100, + function (i) { + PlayAudio( + ["kernelpult", "kernelpult2"][ + Math.floor(Math.random() * 2) + ] + ); + --i && oSym.addTask(100, arguments.callee, [i]); + }, + [4] + ); + d.childNodes[1].src = + "images/Plants/GloomShroom/GloomShroomAttack.gif"; + SetVisible($(l)); + ImgSpriter( + l, + j, + [ + ["0 0", 9, 1], + ["0 -200px", 9, 2], + ["0 -400px", 9, 3], + ["0 -600px", 9, 4], + ["0 -800px", 9, 5], + ["0 -1000px", 9, 6], + ["0 -1200px", 9, 7], + ["0 -1400px", 9, 8], + ["0 -1600px", 9, 9], + ["0 -1800px", 9, 10], + ["0 -2000px", 9, 11], + ["0 -2200px", 9, -1], + ], + 0, + function (m, n) { + var i = $(n); + $P[n] && + (i.childNodes[1].src = + "images/Plants/GloomShroom/GloomShroom.gif"); + SetHidden($(m)); + } + ); + }, + }), + oSeedGloomShroom = InheritO(oSeedFumeShroom, { + EName: "oSeedGloomShroom", + CName: "Gloom-shroom", + width: 112, + height: 81, + beAttackedPointR: 92, + SunNum: 0, + PicArr: [ + "images/Card/Plants/GloomShroom.png", + "images/Plants/GloomShroom/0.gif", + "images/Plants/GloomShroom/GloomShroom.gif", + "images/Plants/GloomShroom/GloomShroomSleep.gif", + "images/Plants/GloomShroom/GloomShroomAttack.gif", + "images/Plants/GloomShroom/GloomShroomBullet.gif", + ], + AudioArr: ["kernelpult", "kernelpult2"], + Tooltip: + 'Releases heavy fumes in an area around itself

(requires fume-shroom)', + Produce: + '围绕自身释放大量孢子

可以种植在大喷菇上

“我喜欢喷射大量烟雾。”忧郁蘑菇说,“我
知道许多人不喜欢这样,他们说这又粗鲁啦烟
雾又很臭啦之类的,我只想说,你们想不想自
己的脑袋被僵尸吃掉?”', + CanGrow: function (b, a, d) { + var c = b[1]; + return c && c.EName == "oSeedFumeShroom"; + }, + BirthStyle: function (c, d, b, a) { + oGd.$[c.R + "_" + c.C + "_1"] && + oGd.$[c.R + "_" + c.C + "_1"].Sleep && + ((c.canTrigger = 0), + (c.Sleep = 1), + (b.childNodes[1].src = c.PicArr[3])); + EditEle(b, { id: d }, a, EDPZ); + }, + GetDX: function () { + return -58; + }, + PrivateBirth: function (b) { + var a = b.id; + NewEle( + a + "_Bullet", + "div", + "position:absolute;visibility:hidden;width:210px;height:200px;left:" + + (b.pixelLeft - 60) + + "px;top:" + + (b.pixelTop - 65) + + "px;background:url(images/Plants/GloomShroom/GloomShroomBullet.gif);z-index:" + + (b.zIndex + 1), + 0, + EDPZ + ); + }, + PrivateDie: function (a) { + ClearChild($(a.id + "_Bullet")); + }, + getTriggerRange: function (c, d, e) { + var f = GetX(this.C), + b = (this.MinX = f - 120), + a = (this.MaxX = f + 120); + return [[b, a, 0]]; + }, + getTriggerR: function (c) { + var b = (this.MinR = c > 2 ? c - 1 : 1), + a = (this.MaxR = c < oS.R ? Number(c) + 1 : c); + return [b, a]; + }, + NormalAttack: function () { + var k = this, + g, + f = k.MaxR, + c = k.MinX, + b = k.MaxX, + e, + h, + a, + j = k.id, + d = $(j), + l = j + "_Bullet"; + for (g = k.MinR; g <= f; g++) { + e = oZ.getArZ(c, b, g); + for ( + h = e.length; + h--; + (a = e[h]).Altitude < 2 && a.getHit1(a, 80) + ) {} + } + oSym.addTask( + 100, + function (i) { + PlayAudio( + ["kernelpult", "kernelpult2"][ + Math.floor(Math.random() * 2) + ] + ); + --i && oSym.addTask(100, arguments.callee, [i]); + }, + [4] + ); + d.childNodes[1].src = + "images/Plants/GloomShroom/GloomShroomAttack.gif"; + SetVisible($(l)); + ImgSpriter( + l, + j, + [ + ["0 0", 9, 1], + ["0 -200px", 9, 2], + ["0 -400px", 9, 3], + ["0 -600px", 9, 4], + ["0 -800px", 9, 5], + ["0 -1000px", 9, 6], + ["0 -1200px", 9, 7], + ["0 -1400px", 9, 8], + ["0 -1600px", 9, 9], + ["0 -1800px", 9, 10], + ["0 -2000px", 9, 11], + ["0 -2200px", 9, -1], + ], + 0, + function (m, n) { + var i = $(n); + $P[n] && + (i.childNodes[1].src = + "images/Plants/GloomShroom/GloomShroom.gif"); + SetHidden($(m)); + } + ); + }, + }), + oPuffShroom = InheritO(oFumeShroom, { + EName: "oPuffShroom", + CName: "Puff-shroom", + width: 40, + height: 66, + beAttackedPointL: 15, + beAttackedPointR: 25, + SunNum: 0, + Stature: -1, + PicArr: [ + "images/Card/Plants/PuffShroom.png", + "images/Plants/PuffShroom/0.gif", + "images/Plants/PuffShroom/PuffShroom.gif", + "images/Plants/PuffShroom/PuffShroomSleep.gif", + "images/Plants/ShroomBullet.gif", + "images/Plants/ShroomBulletHit.gif", + ], + AudioArr: ["puff"], + Tooltip: "Shoots short-ranged spores at the enemy", + Produce: + '小喷菇是免费的,不过射程很近。

Harm: 中等
Scope:
白天要睡觉

小喷菇:“我也是最近才知道僵尸的存在,和
很多蘑菇一样,我只是把他们想象成童话和电
影里的怪物。不过这次的经历已经让我大开眼
界了。', + GetDX: CPlants.prototype.GetDX, + getTriggerRange: function (a, b, c) { + return [[b, Math.min(c + 250, oS.W), 0]]; + }, + PrivateBirth: function (a) { + a.BulletEle = NewImg( + 0, + "images/Plants/ShroomBullet.gif", + "left:" + + (a.AttackedLX - 46) + + "px;top:" + + (a.pixelTop + 40) + + "px;visibility:hidden;z-index:" + + (a.zIndex + 2) + ); + }, + PrivateDie: function (a) { + a.BulletEle = null; + }, + NormalAttack: function () { + PlayAudio("puff"); + var b = this, + c = "PSB" + Math.random(), + a = b.AttackedLX; + EditEle( + b.BulletEle.cloneNode(false), + { + id: c, + }, + 0, + EDPZ + ); + oSym.addTask( + 15, + function (e) { + var d = $(e); + d && SetVisible(d); + }, + [c] + ); + oSym.addTask( + 1, + function (j, d, e, f, g) { + var i = GetC(e), + h = oZ.getZ0(e, f); + h && h.Altitude == 1 + ? (h.getPea(h, 20, 0), + (SetStyle(d, { + left: g + 38 + "px", + }).src = "images/Plants/ShroomBulletHit.gif"), + oSym.addTask(10, ClearChild, [d])) + : (e += 5) < oS.W + ? ((d.style.left = (g += 5) + "px"), + oSym.addTask(1, arguments.callee, [j, d, e, f, g])) + : ClearChild(d); + }, + [c, $(c), a, b.R, a - 46] + ); + }, + }), + oSeedPuffShroom = InheritO(oFumeShroom, { + EName: "oSeedPuffShroom", + CName: "Puff-shroom", + width: 40, + height: 66, + beAttackedPointL: 15, + beAttackedPointR: 25, + SunNum: 0, + Stature: -1, + PicArr: [ + "images/Card/Plants/PuffShroom.png", + "images/Plants/PuffShroom/0.gif", + "images/Plants/PuffShroom/PuffShroom.gif", + "images/Plants/PuffShroom/PuffShroomSleep.gif", + "images/Plants/ShroomBullet.gif", + "images/Plants/ShroomBulletHit.gif", + ], + AudioArr: ["puff"], + Tooltip: "Shoots short-ranged spores at the enemy", + Produce: + '小喷菇是免费的,不过射程很近。

Harm: 中等
Scope:
白天要睡觉

小喷菇:“我也是最近才知道僵尸的存在,和
很多蘑菇一样,我只是把他们想象成童话和电
影里的怪物。不过这次的经历已经让我大开眼
界了。', + GetDX: CPlants.prototype.GetDX, + getTriggerRange: function (a, b, c) { + return [[b, Math.min(c + 250, oS.W), 0]]; + }, + PrivateBirth: function (a) { + a.BulletEle = NewImg( + 0, + "images/Plants/ShroomBullet.gif", + "left:" + + (a.AttackedLX - 46) + + "px;top:" + + (a.pixelTop + 40) + + "px;visibility:hidden;z-index:" + + (a.zIndex + 2) + ); + }, + PrivateDie: function (a) { + a.BulletEle = null; + }, + NormalAttack: function () { + PlayAudio("puff"); + var b = this, + c = "PSB" + Math.random(), + a = b.AttackedLX; + EditEle( + b.BulletEle.cloneNode(false), + { + id: c, + }, + 0, + EDPZ + ); + oSym.addTask( + 15, + function (e) { + var d = $(e); + d && SetVisible(d); + }, + [c] + ); + oSym.addTask( + 1, + function (j, d, e, f, g) { + var i = GetC(e), + h = oZ.getZ0(e, f); + h && h.Altitude == 1 + ? (h.getPea(h, 20, 0), + (SetStyle(d, { + left: g + 38 + "px", + }).src = "images/Plants/ShroomBulletHit.gif"), + oSym.addTask(10, ClearChild, [d])) + : (e += 5) < oS.W + ? ((d.style.left = (g += 5) + "px"), + oSym.addTask(1, arguments.callee, [j, d, e, f, g])) + : ClearChild(d); + }, + [c, $(c), a, b.R, a - 46] + ); + }, + }), + oScaredyShroom = InheritO(oFumeShroom, { + EName: "oScaredyShroom", + CName: "Scaredy-shroom", + width: 57, + height: 81, + beAttackedPointR: 37, + SunNum: 25, + Cry: 0, + ArZ: [], + Attacking: 0, + PicArr: [ + "images/Card/Plants/ScaredyShroom.png", + "images/Plants/ScaredyShroom/0.gif", + "images/Plants/ScaredyShroom/ScaredyShroom.gif", + "images/Plants/ScaredyShroom/ScaredyShroomSleep.gif", + "images/Plants/ScaredyShroom/ScaredyShroomCry.gif", + "images/Plants/ShroomBullet.gif", + "images/Plants/ShroomBulletHit.gif", + ], + Tooltip: "Long-ranged shooter that hides when enemies get near it", + Produce: + '胆小菇是一种远程射手,敌人接近后会躲起来。

Harm:普通
Features:敌人接近后就停止攻击
白天睡觉

“谁在那?”胆小菇低声说,声音细微难辨。“
走开!我不想见任何人。除非……除非你是马
戏团的人。”', + GetDX: CPlants.prototype.GetDX, + getTriggerRange: CPlants.prototype.getTriggerRange, + getTriggerR: function (c) { + var b = (this.MinR = c > 2 ? c - 1 : 1), + a = (this.MaxR = c < oS.R ? Number(c) + 1 : c); + return [b, a]; + }, + TriggerCheck: function (e, c) { + var b = this, + a = b.id; + e.PZ && Math.abs(e.ZX - b.MX) < 121 && e.beAttacked + ? (b.ArZ.push(e.id), + !b.Cry && + ((b.Cry = 1), + ($(a).childNodes[1].src = + "images/Plants/ScaredyShroom/ScaredyShroomCry.gif"), + b.CryCheck(a))) + : e.R == b.R && + !b.Cry && + !b.Attacking && + e.Altitude > 0 && + e.Altitude < 3 && + b.NormalAttack(); + }, + PrivateBirth: function (c) { + var b = c.AttackedLX, + a = b - 46; + c.BulletClass = NewO({ + X: b, + R: c.R, + pixelLeft: a, + F: oGd.MB2, + }); + c.BulletEle = NewImg( + 0, + "images/Plants/ShroomBullet.gif", + "left:" + + a + + "px;top:" + + (c.pixelTop + 35) + + "px;visibility:hidden;z-index:" + + (c.zIndex + 2) + ); + c.MX = b + 9; + }, + PrivateDie: function (a) { + a.BulletEle = null; + }, + NormalAttack: function () { + var c = this, + a = c.id, + d = "SSB" + Math.random(), + b = c.AttackedLX; + EditEle( + c.BulletEle.cloneNode(false), + { + id: d, + }, + 0, + EDPZ + ); + oSym.addTask( + 1, + function (k, e, f, g, h) { + var j = GetC(f), + i = oZ.getZ0(f, g); + i && i.Altitude == 1 + ? (i.getPea(i, 20, 0), + (SetStyle(e, { + left: h + 38 + "px", + }).src = "images/Plants/ShroomBulletHit.gif"), + oSym.addTask(10, ClearChild, [e])) + : (f += 5) < oS.W + ? ((e.style.left = (h += 5) + "px"), + oSym.addTask(1, arguments.callee, [k, e, f, g, h])) + : ClearChild(e); + }, + [d, $(d), b, c.R, b - 46] + ); + c.Attacking = 1; + oSym.addTask( + 10, + function (g, e) { + var f = $(g); + f && SetVisible(f); + oSym.addTask( + 130, + function (h) { + var i = $P[h]; + i && (i.Attacking = 0); + }, + [e] + ); + }, + [d, a] + ); + }, + CryCheck: function (a) { + oSym.addTask( + 140, + function (b) { + var d = $P[b], + c, + f, + e; + if (d) { + c = (f = d.ArZ).length; + while (c--) { + (!(e = $Z[f[c]]) || + !e.PZ || + Math.abs(e.ZX - d.MX) > 120) && + f.splice(c, 1); + } + f.length + ? d.CryCheck(b) + : ((d.Cry = 0), + ($(b).childNodes[1].src = + "images/Plants/ScaredyShroom/ScaredyShroom.gif")); + } + }, + [a] + ); + }, + }), + oSeedScaredyShroom = InheritO(oFumeShroom, { + EName: "oSeedScaredyShroom", + CName: "Scaredy-shroom", + width: 57, + height: 81, + beAttackedPointR: 37, + SunNum: 0, + Cry: 0, + ArZ: [], + Attacking: 0, + PicArr: [ + "images/Card/Plants/ScaredyShroom.png", + "images/Plants/ScaredyShroom/0.gif", + "images/Plants/ScaredyShroom/ScaredyShroom.gif", + "images/Plants/ScaredyShroom/ScaredyShroomSleep.gif", + "images/Plants/ScaredyShroom/ScaredyShroomCry.gif", + "images/Plants/ShroomBullet.gif", + "images/Plants/ShroomBulletHit.gif", + ], + Tooltip: "Long-ranged shooter that hides when enemies get near it", + Produce: + '胆小菇是一种远程射手,敌人接近后会躲起来。

Harm:普通
Features:敌人接近后就停止攻击
白天睡觉

“谁在那?”胆小菇低声说,声音细微难辨。“
走开!我不想见任何人。除非……除非你是马
戏团的人。”', + GetDX: CPlants.prototype.GetDX, + getTriggerRange: CPlants.prototype.getTriggerRange, + getTriggerR: function (c) { + var b = (this.MinR = c > 2 ? c - 1 : 1), + a = (this.MaxR = c < oS.R ? Number(c) + 1 : c); + return [b, a]; + }, + TriggerCheck: function (e, c) { + var b = this, + a = b.id; + e.PZ && Math.abs(e.ZX - b.MX) < 121 && e.beAttacked + ? (b.ArZ.push(e.id), + !b.Cry && + ((b.Cry = 1), + ($(a).childNodes[1].src = + "images/Plants/ScaredyShroom/ScaredyShroomCry.gif"), + b.CryCheck(a))) + : e.R == b.R && + !b.Cry && + !b.Attacking && + e.Altitude > 0 && + e.Altitude < 3 && + b.NormalAttack(); + }, + PrivateBirth: function (c) { + var b = c.AttackedLX, + a = b - 46; + c.BulletClass = NewO({ + X: b, + R: c.R, + pixelLeft: a, + F: oGd.MB2, + }); + c.BulletEle = NewImg( + 0, + "images/Plants/ShroomBullet.gif", + "left:" + + a + + "px;top:" + + (c.pixelTop + 35) + + "px;visibility:hidden;z-index:" + + (c.zIndex + 2) + ); + c.MX = b + 9; + }, + PrivateDie: function (a) { + a.BulletEle = null; + }, + NormalAttack: function () { + var c = this, + a = c.id, + d = "SSB" + Math.random(), + b = c.AttackedLX; + EditEle( + c.BulletEle.cloneNode(false), + { + id: d, + }, + 0, + EDPZ + ); + oSym.addTask( + 1, + function (k, e, f, g, h) { + var j = GetC(f), + i = oZ.getZ0(f, g); + i && i.Altitude == 1 + ? (i.getPea(i, 20, 0), + (SetStyle(e, { + left: h + 38 + "px", + }).src = "images/Plants/ShroomBulletHit.gif"), + oSym.addTask(10, ClearChild, [e])) + : (f += 5) < oS.W + ? ((e.style.left = (h += 5) + "px"), + oSym.addTask(1, arguments.callee, [k, e, f, g, h])) + : ClearChild(e); + }, + [d, $(d), b, c.R, b - 46] + ); + c.Attacking = 1; + oSym.addTask( + 10, + function (g, e) { + var f = $(g); + f && SetVisible(f); + oSym.addTask( + 130, + function (h) { + var i = $P[h]; + i && (i.Attacking = 0); + }, + [e] + ); + }, + [d, a] + ); + }, + CryCheck: function (a) { + oSym.addTask( + 140, + function (b) { + var d = $P[b], + c, + f, + e; + if (d) { + c = (f = d.ArZ).length; + while (c--) { + (!(e = $Z[f[c]]) || + !e.PZ || + Math.abs(e.ZX - d.MX) > 120) && + f.splice(c, 1); + } + f.length + ? d.CryCheck(b) + : ((d.Cry = 0), + ($(b).childNodes[1].src = + "images/Plants/ScaredyShroom/ScaredyShroom.gif")); + } + }, + [a] + ); + }, + }), + oIScaredyShroom = InheritO(oIFumeShroom, { + EName: "oIScaredyShroom", + CName: "Scaredy-shroom", + width: 57, + height: 81, + beAttackedPointR: 37, + SunNum: 25, + Cry: 0, + ArZ: [], + Attacking: 0, + StandGif: 2, + PicArr: [ + "images/Card/Plants/ScaredyShroom.png", + "images/Plants/ScaredyShroom/0.gif", + "images/Plants/ScaredyShroom/ScaredyShroom.gif", + "images/Plants/ScaredyShroom/ScaredyShroomSleep.gif", + "images/Plants/ScaredyShroom/ScaredyShroomCry.gif", + "images/Plants/ShroomBullet.gif", + "images/Plants/ShroomBulletHit.gif", + ], + Tooltip: "Long-ranged shooter that hides when enemies get near it", + Produce: + '胆小菇是一种远程射手,敌人接近后会躲起来。

Harm:普通
Features:敌人接近后就停止攻击
白天睡觉

“谁在那?”胆小菇低声说,声音细微难辨。“
走开!我不想见任何人。除非……除非你是马
戏团的人。”', + GetDX: CPlants.prototype.GetDX, + getTriggerRange: CPlants.prototype.getTriggerRange, + getTriggerR: function (c) { + var b = (this.MinR = c > 2 ? c - 1 : 1), + a = (this.MaxR = c < oS.R ? Number(c) + 1 : c); + return [b, a]; + }, + TriggerCheck: function (e, c) { + var b = this, + a = b.id; + e.PZ && Math.abs(e.ZX - b.MX) < 121 && e.beAttacked + ? (b.ArZ.push(e.id), + !b.Cry && + ((b.Cry = 1), + ($(a).childNodes[1].src = + "images/Plants/ScaredyShroom/ScaredyShroomCry.gif"), + b.CryCheck(a))) + : e.R == b.R && + !b.Cry && + !b.Attacking && + e.Altitude > 0 && + e.Altitude < 3 && + b.NormalAttack(); + }, + PrivateBirth: function (c) { + var b = c.AttackedLX, + a = b - 46; + c.BulletClass = NewO({ + X: b, + R: c.R, + pixelLeft: a, + F: oGd.MB2, + }); + c.BulletEle = NewImg( + 0, + "images/Plants/ShroomBullet.gif", + "left:" + + a + + "px;top:" + + (c.pixelTop + 35) + + "px;visibility:hidden;z-index:" + + (c.zIndex + 2) + ); + c.MX = b + 9; + }, + PrivateDie: function (a) { + a.BulletEle = null; + }, + NormalAttack: function () { + var c = this, + a = c.id, + d = "SSB" + Math.random(), + b = c.AttackedLX; + EditEle( + c.BulletEle.cloneNode(false), + { + id: d, + }, + 0, + EDPZ + ); + oSym.addTask( + 1, + function (k, e, f, g, h) { + var j = GetC(f), + i = oZ.getZ0(f, g); + i && i.Altitude == 1 + ? (i.getPea(i, 20, 0), + (SetStyle(e, { + left: h + 38 + "px", + }).src = "images/Plants/ShroomBulletHit.gif"), + oSym.addTask(10, ClearChild, [e])) + : (f += 5) < oS.W + ? ((e.style.left = (h += 5) + "px"), + oSym.addTask(1, arguments.callee, [k, e, f, g, h])) + : ClearChild(e); + }, + [d, $(d), b, c.R, b - 46] + ); + c.Attacking = 1; + oSym.addTask( + 10, + function (g, e) { + var f = $(g); + f && SetVisible(f); + oSym.addTask( + 130, + function (h) { + var i = $P[h]; + i && (i.Attacking = 0); + }, + [e] + ); + }, + [d, a] + ); + }, + CryCheck: function (a) { + oSym.addTask( + 140, + function (b) { + var d = $P[b], + c, + f, + e; + if (d) { + c = (f = d.ArZ).length; + while (c--) { + (!(e = $Z[f[c]]) || + !e.PZ || + Math.abs(e.ZX - d.MX) > 120) && + f.splice(c, 1); + } + f.length + ? d.CryCheck(b) + : ((d.Cry = 0), + ($(b).childNodes[1].src = + "images/Plants/ScaredyShroom/ScaredyShroom.gif")); + } + }, + [a] + ); + }, + }), + oHypnoShroom = InheritO(oFumeShroom, { + EName: "oHypnoShroom", + CName: "Hypno-shroom", + width: 71, + height: 78, + beAttackedPointL: 10, + beAttackedPointR: 61, + SunNum: 75, + coolTime: 30, + HP: 0, + PicArr: [ + "images/Card/Plants/HypnoShroom.png", + "images/Plants/HypnoShroom/0.gif", + "images/Plants/HypnoShroom/HypnoShroom.gif", + "images/Plants/HypnoShroom/HypnoShroomSleep.gif", + ], + Tooltip: "Makes a zombie fight for you", + Produce: + '当僵尸吃下魅惑菇后,他将会掉转方向为你作
战。

Instructions:单独使用,接触生效
Features:让一只僵尸为你作战
白天睡觉

魅惑菇声称:“僵尸们是我们的朋友,他们被
严重误解了,僵尸们在我们的生态环境里扮演着
重要角色。我们可以也应当更努力地让他们学
会用我们的方式来思考。”', + InitTrigger: function () {}, + getHurt: function (d, b, a) { + var c = this; + switch (b) { + case 3: + (c.HP -= a) < 1 && c.Die(); + break; + case 0: + !c.Sleep && d.bedevil(d); + PlayAudio("mindcontrolled"); + c.Die(); + break; + default: + c.Die(1); + } + }, + }), + oSeedHypnoShroom = InheritO(oFumeShroom, { + EName: "oSeedHypnoShroom", + CName: "Hypno-shroom", + width: 71, + height: 78, + beAttackedPointL: 10, + beAttackedPointR: 61, + SunNum: 0, + coolTime: 30, + HP: 0, + PicArr: [ + "images/Card/Plants/HypnoShroom.png", + "images/Plants/HypnoShroom/0.gif", + "images/Plants/HypnoShroom/HypnoShroom.gif", + "images/Plants/HypnoShroom/HypnoShroomSleep.gif", + ], + Tooltip: "Makes a zombie fight for you", + Produce: + '当僵尸吃下魅惑菇后,他将会掉转方向为你作
战。

Instructions:单独使用,接触生效
Features:让一只僵尸为你作战
白天睡觉

魅惑菇声称:“僵尸们是我们的朋友,他们被
严重误解了,僵尸们在我们的生态环境里扮演着
重要角色。我们可以也应当更努力地让他们学
会用我们的方式来思考。”', + InitTrigger: function () {}, + getHurt: function (d, b, a) { + var c = this; + switch (b) { + case 3: + (c.HP -= a) < 1 && c.Die(); + break; + case 0: + !c.Sleep && d.bedevil(d); + PlayAudio("mindcontrolled"); + c.Die(); + break; + default: + c.Die(1); + } + }, + }), + oIHypnoShroom = InheritO(oIFumeShroom, { + EName: "oIHypnoShroom", + CName: "Hypno-shroom", + width: 71, + height: 78, + beAttackedPointL: 10, + beAttackedPointR: 61, + SunNum: 75, + coolTime: 30, + HP: 1, + PicArr: [ + "images/Card/Plants/HypnoShroom.png", + "images/Plants/HypnoShroom/0.gif", + "images/Plants/HypnoShroom/HypnoShroom.gif", + "images/Plants/HypnoShroom/HypnoShroomSleep.gif", + ], + Tooltip: "Makes a zombie fight for you", + Produce: + '当僵尸吃下魅惑菇后,他将会掉转方向为你作
战。

Instructions:单独使用,接触生效
Features:让一只僵尸为你作战
白天睡觉

魅惑菇声称:“僵尸们是我们的朋友,他们被
严重误解了,僵尸们在我们的生态环境里扮演着
重要角色。我们可以也应当更努力地让他们学
会用我们的方式来思考。”', + InitTrigger: function () {}, + getHurt: function (d, b, a) { + var c = this; + switch (b) { + case 3: + (c.HP -= a) < 1 && c.Die(); + break; + case 0: + !c.Sleep && d.bedevil(d); + PlayAudio("mindcontrolled"); + c.Die(); + break; + default: + c.Die(1); + } + }, + }), + oIceShroom = InheritO(oFumeShroom, { + EName: "oIceShroom", + CName: "Ice-shroom", + width: 83, + height: 75, + beAttackedPointR: 63, + SunNum: 75, + coolTime: 50, + PicArr: [ + "images/Card/Plants/IceShroom.png", + "images/Plants/IceShroom/0.gif", + "images/Plants/IceShroom/IceShroom.gif", + "images/Plants/IceShroom/IceShroomSleep.gif", + "images/Plants/IceShroom/Snow.gif", + "images/Plants/IceShroom/icetrap.gif", + ], + AudioArr: ["frozen", "wakeup"], + Tooltip: "Temporarily immobilizes all zombies on the screen", + Produce: + '寒冰菇,能短暂的冻结屏幕上所有僵尸。

Harm:非常低,冻结僵尸
Scope:屏幕上的所有僵尸
用法:单独使用,立即生效
白天睡觉

寒冰菇皱着眉头,倒不是因为它不高兴或不满
意,只是因为,它儿时因受创伤而
遗留下了面瘫。', + GetDX: CPlants.prototype.GetDX, + GetDY: CPlants.prototype.GetDY, + InitTrigger: function () {}, + PrivateDie: function (a) {}, + PrivateBirth: function (a) { + !oS.DKind + ? (a.NormalAttack(a.id), (a.getHurt = function (d, c, b) {})) + : (a.getHurt = CPlants.prototype.getHurt); + }, + WakeUP: function (a) { + var b = a.id; + a.Sleep = 0; + $(b).childNodes[1].src = "images/Plants/IceShroom/IceShroom.gif"; + a.NormalAttack(b); + }, + NormalAttack: function (a) { + oSym.addTask( + 100, + function (c) { + var f = $P[c]; + if (f) { + PlayAudio("frozen"); + var e, + d, + b = "Snow_" + Math.random(); + for (d in $Z) { + (e = $Z[d]).ZX < 901 && e.getFreeze(e, d); + } + oSym.addTask( + 40, + function (g) { + ClearChild(g); + }, + [ + NewEle( + b, + "div", + "position:absolute;left:0;top:0;width:900px;height:600px;z-index:10;filter:alpha(opacity=50);opacity:.5;background:#9CF url(images/Plants/IceShroom/Snow.gif) no-repeat scroll " + + (f.pixelLeft - 197) + + "px " + + (f.pixelTop - 80) + + "px", + 0, + EDPZ + ), + ] + ); + f.Die(); + } + }, + [a] + ); + }, + }), + oSeedIceShroom = InheritO(oSeedFumeShroom, { + EName: "oSeedIceShroom", + CName: "Ice-shroom", + width: 83, + height: 75, + beAttackedPointR: 63, + SunNum: 0, + coolTime: 50, + PicArr: [ + "images/Card/Plants/IceShroom.png", + "images/Plants/IceShroom/0.gif", + "images/Plants/IceShroom/IceShroom.gif", + "images/Plants/IceShroom/IceShroomSleep.gif", + "images/Plants/IceShroom/Snow.gif", + "images/Plants/IceShroom/icetrap.gif", + ], + AudioArr: ["frozen", "wakeup"], + Tooltip: "Temporarily immobilizes all zombies on the screen", + Produce: + '寒冰菇,能短暂的冻结屏幕上所有僵尸。

Harm:非常低,冻结僵尸
Scope:屏幕上的所有僵尸
用法:单独使用,立即生效
白天睡觉

寒冰菇皱着眉头,倒不是因为它不高兴或不满
意,只是因为,它儿时因受创伤而
遗留下了面瘫。', + GetDX: CPlants.prototype.GetDX, + GetDY: CPlants.prototype.GetDY, + InitTrigger: function () {}, + PrivateDie: function (a) {}, + PrivateBirth: function (a) { + !oS.DKind + ? (a.NormalAttack(a.id), (a.getHurt = function (d, c, b) {})) + : (a.getHurt = CPlants.prototype.getHurt); + }, + WakeUP: function (a) { + var b = a.id; + a.Sleep = 0; + $(b).childNodes[1].src = "images/Plants/IceShroom/IceShroom.gif"; + a.NormalAttack(b); + }, + NormalAttack: function (a) { + oSym.addTask( + 100, + function (c) { + var f = $P[c]; + if (f) { + PlayAudio("frozen"); + var e, + d, + b = "Snow_" + Math.random(); + for (d in $Z) { + (e = $Z[d]).ZX < 901 && e.getFreeze(e, d); + } + oSym.addTask( + 40, + function (g) { + ClearChild(g); + }, + [ + NewEle( + b, + "div", + "position:absolute;left:0;top:0;width:900px;height:600px;z-index:10;filter:alpha(opacity=50);opacity:.5;background:#9CF url(images/Plants/IceShroom/Snow.gif) no-repeat scroll " + + (f.pixelLeft - 197) + + "px " + + (f.pixelTop - 80) + + "px", + 0, + EDPZ + ), + ] + ); + f.Die(); + } + }, + [a] + ); + }, + }), + oSunShroom = InheritO(oFumeShroom, { + EName: "oSunShroom", + CName: "Sun-shroom", + width: 59, + height: 61, + beAttackedPointL: 15, + beAttackedPointR: 44, + SunNum: 25, + Stature: -1, + Status: 0, + PicArr: [ + "images/Card/Plants/SunShroom.png", + "images/Plants/SunShroom/0.gif", + "images/Plants/SunShroom/SunShroom2.gif", + "images/Plants/SunShroom/SunShroomSleep.gif", + "images/Plants/SunShroom/SunShroom.gif", + ], + Tooltip: "Gives small sun at first and normal sun later", + Produce: + '阳光菇开始提供少量阳光,稍后提供正常数量
阳光。

生产阳光:开始低,之后正常
白天睡觉

阳光菇讨厌阳光。恨到当它内部产生点阳光时
,就尽可能快的吐出来。它就是不能忍受这个
。对它来说,阳光令人厌恶。', + GetDX: CPlants.prototype.GetDX, + GetDY: CPlants.prototype.GetDY, + InitTrigger: function () {}, + PrivateDie: function (a) {}, + PrivateBirth: function () {}, + BirthStyle: function (c, d, b, a) { + oS.DKind + ? ((c.canTrigger = 0), + (c.Sleep = 1), + (b.childNodes[1].src = + "images/Plants/SunShroom/SunShroomSleep.gif")) + : (oSym.addTask( + 600, + function (h, g, f) { + var e = $P[h]; + e && e.ProduceSun(e, g, f); + }, + [d, GetX(c.C) - 40, GetY(c.R)] + ), + oSym.addTask( + 12e3, + function (f) { + var e = $P[f]; + e && + ((e.Sleep = 0), + ($(f).childNodes[1].src = + "images/Plants/SunShroom/SunShroom.gif"), + (e.Status = 1)); + }, + [d] + )); + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + ProduceSun: function (a, c, b) { + AppearSun( + Math.floor(c + Math.random() * 41), + b, + !a.Status ? 15 : 25, + 0 + ), + oSym.addTask( + 2400, + function (g, f, e) { + var d = $P[g]; + d && d.ProduceSun(d, f, e); + }, + [a.id, c, b] + ); + }, + WakeUP: function (a) { + var b = a.id; + a.ProduceSun(a, GetX(a.C) - 40, GetY(a.R)); + $(b).childNodes[1].src = "images/Plants/SunShroom/SunShroom2.gif"; + a.Sleep = 0; + oSym.addTask( + 12e3, + function (d) { + var c = $P[d]; + c && + (($(d).childNodes[1].src = + "images/Plants/SunShroom/SunShroom.gif"), + (c.Status = 1)); + }, + [b] + ); + }, + }), + oDoomShroom = InheritO(oFumeShroom, { + EName: "oDoomShroom", + CName: "Doom-shroom", + width: 102, + height: 91, + beAttackedPointR: 80, + coolTime: 50, + SunNum: 125, + AudioArr: ["doomshroom"], + PicArr: [ + "images/Card/Plants/DoomShroom.png", + "images/Plants/DoomShroom/0.gif", + "images/Plants/DoomShroom/DoomShroom.gif", + "images/Plants/DoomShroom/Sleep.gif", + "images/Plants/DoomShroom/BeginBoom.gif", + "images/Plants/DoomShroom/crater10.png", + "images/Plants/DoomShroom/crater11.png", + "images/Plants/DoomShroom/crater20.png", + "images/Plants/DoomShroom/crater21.png", + "images/Plants/DoomShroom/crater30.png", + "images/Plants/DoomShroom/crater31.png", + "images/Plants/DoomShroom/Boom.png", + ], + Tooltip: "Destroys a large area, leaving a crater in its wake", + Produce: + '毁灭菇可以摧毁大范围的僵尸,并留下一个不
能种植物的大弹坑。

Harm:极高
Scope:大范围内的所有僵尸
用法:单独使用,立即生效
Features:留下一个弹坑
白天睡觉

“你很幸运,我是和你一伙的,”毁灭菇说,“
我能摧毁任何你所珍视的东西,小菜一碟。”', + InitTrigger: function () {}, + BirthStyle: function (c, d, b, a) { + oS.DKind + ? ((c.Sleep = 1), (b.childNodes[1].src = c.PicArr[c.SleepGif])) + : ((c.Sleep = 0), + (c.getHurt = function () {}), + (b.childNodes[1].src = + "images/Plants/DoomShroom/BeginBoom.gif"), + c.NormalAttack(d)); + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + WakeUP: function (a) { + var b = a.id; + a.Sleep = 0; + a.getHurt = function () {}; + $(b).childNodes[1].src = "images/Plants/DoomShroom/BeginBoom.gif"; + a.NormalAttack(b); + }, + NormalAttack: function (a) { + oSym.addTask( + 50, + function (c) { + PlayAudio("doomshroom"); + var d = $P[c], + q = c + "_Boom"; + if (d) { + var g = $(c), + l = d.R, + h = l > 3 ? l - 2 : 1, + f = Math.min(oS.R, l + 2), + n = d.pixelLeft - 240, + m = d.pixelRight + 240, + e, + k, + b = GetC(d.AttackedLX), + o, + r = l + "_" + b, + j = oGd.$; + do { + k = (e = oZ.getArZ(n, m, h)).length; + while (k--) { + e[k].getExplosion(); + } + } while (h++ < f); + d.Die(); + (o = j[r + "_" + 0]) && o.Die(); + (o = j[r + "_" + 2]) && o.Die(); + oGd.$Crater[r] = 2; + NewEle( + q, + "div", + "position:absolute;overflow:hidden;z-index:" + + (d.zIndex + 2) + + ";width:283px;height:324px;left:" + + (d.pixelLeft - 80) + + "px;top:" + + (d.pixelTop - 220) + + "px;background:url(images/Plants/DoomShroom/Boom.png) no-repeat", + 0, + EDPZ + ); + oSym.addTask( + 20, + function (i) { + ClearChild(i); + }, + [ + NewEle( + q, + "div", + "position:absolute;z-index:20;width:900px;height:600px;left:0;top:0;background:#FFF;*filter:alpha(opacity=50);opacity:.5", + 0, + EDPZ + ), + ] + ); + ImgSpriter( + q, + c, + [ + ["0 0", 10, 1], + ["-283px 0", 10, 2], + ["-566px 0", 10, 3], + ["-849px 0", 10, 4], + ["-1132px 0", 10, 5], + ["-1415px 0", 10, 6], + ["-1698px 0", 10, 7], + ["-1981px 0", 10, 8], + ["-2264px 0", 10, 9], + ["-2547px 0", 10, -1], + ], + 0, + function (i, p) { + ClearChild($(i)); + d.setCrater( + c + "_crater", + l, + b, + d.pixelLeft + 3, + d.pixelTop + 50 + ); + } + ); + } + }, + [a] + ); + }, + setCrater: function (f, b, d, e, c) { + var a; + switch (oGd.$LF[b]) { + case 1: + a = NewEle( + f, + "div", + "position:absolute;z-index:" + + (3 * b - 1) + + ";overflow:hidden;background:url(images/Plants/DoomShroom/crater1" + + oS.DKind + + ".png) no-repeat;width:90px;height:61px;left:" + + (e || GetX(d) - 45) + + "px;top:" + + (c || GetY(b) - 30) + + "px", + 0, + EDPZ + ); + break; + case 2: + a = NewEle( + f, + "div", + "position:absolute;z-index:" + + (3 * b - 1) + + ";overflow:hidden;background:url(images/Plants/DoomShroom/crater2" + + oS.DKind + + ".png) no-repeat;width:85px;height:53px;left:" + + (e || GetX(d) - 42) + + "px;top:" + + (c || GetY(b) - 26) + + "px", + 0, + EDPZ + ); + break; + case 3: + a = NewEle( + f, + "div", + "position:absolute;z-index:" + + (3 * b - 1) + + ";overflow:hidden;background:url(images/Plants/DoomShroom/crater31.png) no-repeat;width:75px;height:77px;left:" + + (e || GetX(d) - 37) + + "px;top:" + + (c || GetY(b) - 19) + + "px", + 0, + EDPZ + ); + break; + default: + } + oSym.addTask( + 9e3, + function (g) { + var h = b + "_" + d; + g.style.backgroundPosition = "100% 0"; + oGd.$Crater[h] = 1; + oSym.addTask( + 9e3, + function (i, j) { + ClearChild(i); + delete oGd.$Crater[j]; + }, + [g, h] + ); + }, + [a] + ); + }, + }), + oSeedDoomShroom = InheritO(oFumeShroom, { + EName: "oSeedDoomShroom", + CName: "Doom-shroom", + width: 102, + height: 91, + beAttackedPointR: 80, + coolTime: 50, + SunNum: 0, + AudioArr: ["doomshroom"], + PicArr: [ + "images/Card/Plants/DoomShroom.png", + "images/Plants/DoomShroom/0.gif", + "images/Plants/DoomShroom/DoomShroom.gif", + "images/Plants/DoomShroom/Sleep.gif", + "images/Plants/DoomShroom/BeginBoom.gif", + "images/Plants/DoomShroom/crater10.png", + "images/Plants/DoomShroom/crater11.png", + "images/Plants/DoomShroom/crater20.png", + "images/Plants/DoomShroom/crater21.png", + "images/Plants/DoomShroom/crater30.png", + "images/Plants/DoomShroom/crater31.png", + "images/Plants/DoomShroom/Boom.png", + ], + Tooltip: "Destroys a large area, leaving a crater in its wake", + Produce: + '毁灭菇可以摧毁大范围的僵尸,并留下一个不
能种植物的大弹坑。

Harm:极高
Scope:大范围内的所有僵尸
用法:单独使用,立即生效
Features:留下一个弹坑
白天睡觉

“你很幸运,我是和你一伙的,”毁灭菇说,“
我能摧毁任何你所珍视的东西,小菜一碟。”', + InitTrigger: function () {}, + BirthStyle: function (c, d, b, a) { + oS.DKind + ? ((c.Sleep = 1), (b.childNodes[1].src = c.PicArr[c.SleepGif])) + : ((c.Sleep = 0), + (c.getHurt = function () {}), + (b.childNodes[1].src = + "images/Plants/DoomShroom/BeginBoom.gif"), + c.NormalAttack(d)); + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + WakeUP: function (a) { + var b = a.id; + a.Sleep = 0; + a.getHurt = function () {}; + $(b).childNodes[1].src = "images/Plants/DoomShroom/BeginBoom.gif"; + a.NormalAttack(b); + }, + NormalAttack: function (a) { + oSym.addTask( + 50, + function (c) { + PlayAudio("doomshroom"); + var d = $P[c], + q = c + "_Boom"; + if (d) { + var g = $(c), + l = d.R, + h = l > 3 ? l - 2 : 1, + f = Math.min(oS.R, l + 2), + n = d.pixelLeft - 240, + m = d.pixelRight + 240, + e, + k, + b = GetC(d.AttackedLX), + o, + r = l + "_" + b, + j = oGd.$; + do { + k = (e = oZ.getArZ(n, m, h)).length; + while (k--) { + e[k].getExplosion(); + } + } while (h++ < f); + d.Die(); + (o = j[r + "_" + 0]) && o.Die(); + (o = j[r + "_" + 2]) && o.Die(); + oGd.$Crater[r] = 2; + NewEle( + q, + "div", + "position:absolute;overflow:hidden;z-index:" + + (d.zIndex + 2) + + ";width:283px;height:324px;left:" + + (d.pixelLeft - 80) + + "px;top:" + + (d.pixelTop - 220) + + "px;background:url(images/Plants/DoomShroom/Boom.png) no-repeat", + 0, + EDPZ + ); + oSym.addTask( + 20, + function (i) { + ClearChild(i); + }, + [ + NewEle( + q, + "div", + "position:absolute;z-index:20;width:900px;height:600px;left:0;top:0;background:#FFF;*filter:alpha(opacity=50);opacity:.5", + 0, + EDPZ + ), + ] + ); + ImgSpriter( + q, + c, + [ + ["0 0", 10, 1], + ["-283px 0", 10, 2], + ["-566px 0", 10, 3], + ["-849px 0", 10, 4], + ["-1132px 0", 10, 5], + ["-1415px 0", 10, 6], + ["-1698px 0", 10, 7], + ["-1981px 0", 10, 8], + ["-2264px 0", 10, 9], + ["-2547px 0", 10, -1], + ], + 0, + function (i, p) { + ClearChild($(i)); + d.setCrater( + c + "_crater", + l, + b, + d.pixelLeft + 3, + d.pixelTop + 50 + ); + } + ); + } + }, + [a] + ); + }, + setCrater: function (f, b, d, e, c) { + var a; + switch (oGd.$LF[b]) { + case 1: + a = NewEle( + f, + "div", + "position:absolute;z-index:" + + (3 * b - 1) + + ";overflow:hidden;background:url(images/Plants/DoomShroom/crater1" + + oS.DKind + + ".png) no-repeat;width:90px;height:61px;left:" + + (e || GetX(d) - 45) + + "px;top:" + + (c || GetY(b) - 30) + + "px", + 0, + EDPZ + ); + break; + case 2: + a = NewEle( + f, + "div", + "position:absolute;z-index:" + + (3 * b - 1) + + ";overflow:hidden;background:url(images/Plants/DoomShroom/crater2" + + oS.DKind + + ".png) no-repeat;width:85px;height:53px;left:" + + (e || GetX(d) - 42) + + "px;top:" + + (c || GetY(b) - 26) + + "px", + 0, + EDPZ + ); + break; + case 3: + a = NewEle( + f, + "div", + "position:absolute;z-index:" + + (3 * b - 1) + + ";overflow:hidden;background:url(images/Plants/DoomShroom/crater31.png) no-repeat;width:75px;height:77px;left:" + + (e || GetX(d) - 37) + + "px;top:" + + (c || GetY(b) - 19) + + "px", + 0, + EDPZ + ); + break; + default: + } + oSym.addTask( + 9e3, + function (g) { + var h = b + "_" + d; + g.style.backgroundPosition = "100% 0"; + oGd.$Crater[h] = 1; + oSym.addTask( + 9e3, + function (i, j) { + ClearChild(i); + delete oGd.$Crater[j]; + }, + [g, h] + ); + }, + [a] + ); + }, + }), + oTangleKlep = InheritO(CPlants, { + EName: "oTangleKlep", + CName: "Tangle Kelp", + width: 90, + height: 72, + beAttackedPointL: 15, + beAttackedPointR: 80, + coolTime: 30, + SunNum: 25, + BookHandBack: 4.9, + GetDY: function (b, c, a) { + return 5; + }, + NormalGif: 1, + AudioArr: ["TangleKlep"], + PicArr: [ + "images/Card/Plants/TangleKlep.png", + "images/Plants/TangleKlep/0.gif", + "images/Plants/TangleKlep/Float.gif", + "images/Plants/TangleKlep/Grab.png", + "images/interface/splash.png", + ], + Tooltip: "Aquatic plant that pulls a zombie underwater", + Produce: + '缠绕水草是一种可以把接近他的僵尸拉进水中
的水生植物。

Harm:极高
用法:单独使用,接触后生效
Features:必须种在水中

“我是完全隐形的,”缠绕水草自己想,“我就
藏在水面下,没人会看到我。”他的朋友告诉他
,他们可以清楚地看到他。不过,缠绕水草似
乎不想改变自己的看法。', + CanGrow: function (c, b, d) { + var a = b + "_" + d; + return !( + oGd.$LF[b] != 2 || + d < 1 || + d > 9 || + oGd.$Crater[a] || + c[0] || + c[1] || + oGd.$Tombstones[a] + ); + }, + getShadow: function (a) { + return "display:none"; + }, + getTriggerRange: function (a, b, c) { + return [[b, c, 0]]; + }, + BirthStyle: function (c, d, b, a) { + b.childNodes[1].src = "images/Plants/TangleKlep/Float.gif"; + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + getHurt: function (d, b, a) { + var c = this; + b == 3 + ? (c.HP -= a) < 1 && c.Die() + : ((c.canTrigger = 0), c.NormalAttack(c, d)); + }, + TriggerCheck: function (b, a) { + b.AttackedLX < GetX(9) && + b.beAttacked && + ((this.canTrigger = 0), this.NormalAttack(this, b)); + }, + NormalAttack: function (a, b) { + a.getHurt = function () {}; + b.getHurt = function () {}; + b.beAttacked = 0; + b.isAttacking = 1; + NewImg( + 0, + "images/Plants/TangleKlep/Grab.png", + "left:" + + b.beAttackedPointL + + "px;top:" + + (b.height - 67) + + "px", + b.Ele + ); + oSym.addTask( + 50, + function (g, h) { + PlayAudio("TangleKlep"); + var e = g.id, + f = h.id, + d = e + "_splash", + c = f + "_splash"; + NewEle( + d, + "div", + "position:absolute;background:url(images/interface/splash.png);left:" + + (g.pixelLeft - 4) + + "px;top:" + + (g.pixelTop - 16) + + "px;width:97px;height:88px;over-flow:hidden", + 0, + EDPZ + ); + NewEle( + c, + "div", + "position:absolute;background:url(images/interface/splash.png);left:" + + (h.AttackedLX - 10) + + "px;top:" + + (h.pixelTop + h.height - 88) + + "px;width:97px;height:88px;over-flow:hidden", + 0, + EDPZ + ); + ImgSpriter( + d, + e, + [ + ["0 0", 9, 1], + ["-97px 0", 9, 2], + ["-194px 0", 9, 3], + ["-291px 0", 9, 4], + ["-388px 0", 9, 5], + ["-485px 0", 9, 6], + ["-582px 0", 9, 7], + ["-679px 0", 9, -1], + ], + 0, + function (i, j) { + ClearChild($(i)); + } + ); + ImgSpriter( + c, + f, + [ + ["0 0", 9, 1], + ["-97px 0", 9, 2], + ["-194px 0", 9, 3], + ["-291px 0", 9, 4], + ["-388px 0", 9, 5], + ["-485px 0", 9, 6], + ["-582px 0", 9, 7], + ["-679px 0", 9, -1], + ], + 0, + function (i, j) { + ClearChild($(i)); + } + ); + h.DisappearDie(); + g.Die(); + }, + [a, b] + ); + }, + }), + oSeedTangleKelp = InheritO(CPlants, { + EName: "oSeedTangleKelp", + CName: "Tangle Kelp", + width: 90, + height: 72, + beAttackedPointL: 15, + beAttackedPointR: 80, + coolTime: 30, + SunNum: 0, + BookHandBack: 4.9, + GetDY: function (b, c, a) { + return 5; + }, + NormalGif: 1, + AudioArr: ["TangleKlep"], + PicArr: [ + "images/Card/Plants/TangleKlep.png", + "images/Plants/TangleKlep/0.gif", + "images/Plants/TangleKlep/Float.gif", + "images/Plants/TangleKlep/Grab.png", + "images/interface/splash.png", + ], + Tooltip: "Aquatic plant that pulls a zombie underwater", + Produce: + '缠绕水草是一种可以把接近他的僵尸拉进水中
的水生植物。

Harm:极高
用法:单独使用,接触后生效
Features:必须种在水中

“我是完全隐形的,”缠绕水草自己想,“我就
藏在水面下,没人会看到我。”他的朋友告诉他
,他们可以清楚地看到他。不过,缠绕水草似
乎不想改变自己的看法。', + CanGrow: function (c, b, d) { + var a = b + "_" + d; + return !( + oGd.$LF[b] != 2 || + d < 1 || + d > 9 || + oGd.$Crater[a] || + c[0] || + c[1] || + oGd.$Tombstones[a] + ); + }, + getShadow: function (a) { + return "display:none"; + }, + getTriggerRange: function (a, b, c) { + return [[b, c, 0]]; + }, + BirthStyle: function (c, d, b, a) { + b.childNodes[1].src = "images/Plants/TangleKlep/Float.gif"; + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + getHurt: function (d, b, a) { + var c = this; + b == 3 + ? (c.HP -= a) < 1 && c.Die() + : ((c.canTrigger = 0), c.NormalAttack(c, d)); + }, + TriggerCheck: function (b, a) { + b.AttackedLX < GetX(9) && + b.beAttacked && + ((this.canTrigger = 0), this.NormalAttack(this, b)); + }, + NormalAttack: function (a, b) { + a.getHurt = function () {}; + b.getHurt = function () {}; + b.beAttacked = 0; + b.isAttacking = 1; + NewImg( + 0, + "images/Plants/TangleKlep/Grab.png", + "left:" + + b.beAttackedPointL + + "px;top:" + + (b.height - 67) + + "px", + b.Ele + ); + oSym.addTask( + 50, + function (g, h) { + PlayAudio("TangleKlep"); + var e = g.id, + f = h.id, + d = e + "_splash", + c = f + "_splash"; + NewEle( + d, + "div", + "position:absolute;background:url(images/interface/splash.png);left:" + + (g.pixelLeft - 4) + + "px;top:" + + (g.pixelTop - 16) + + "px;width:97px;height:88px;over-flow:hidden", + 0, + EDPZ + ); + NewEle( + c, + "div", + "position:absolute;background:url(images/interface/splash.png);left:" + + (h.AttackedLX - 10) + + "px;top:" + + (h.pixelTop + h.height - 88) + + "px;width:97px;height:88px;over-flow:hidden", + 0, + EDPZ + ); + ImgSpriter( + d, + e, + [ + ["0 0", 9, 1], + ["-97px 0", 9, 2], + ["-194px 0", 9, 3], + ["-291px 0", 9, 4], + ["-388px 0", 9, 5], + ["-485px 0", 9, 6], + ["-582px 0", 9, 7], + ["-679px 0", 9, -1], + ], + 0, + function (i, j) { + ClearChild($(i)); + } + ); + ImgSpriter( + c, + f, + [ + ["0 0", 9, 1], + ["-97px 0", 9, 2], + ["-194px 0", 9, 3], + ["-291px 0", 9, 4], + ["-388px 0", 9, 5], + ["-485px 0", 9, 6], + ["-582px 0", 9, 7], + ["-679px 0", 9, -1], + ], + 0, + function (i, j) { + ClearChild($(i)); + } + ); + h.DisappearDie(); + g.Die(); + }, + [a, b] + ); + }, + }), + oSeaShroom = InheritO(oPuffShroom, { + EName: "oSeaShroom", + CName: "Sea-shroom", + width: 48, + height: 99, + beAttackedPointL: 10, + beAttackedPointR: 40, + coolTime: 30, + BookHandBack: 4.9, + Sleep: 0, + getShadow: function (a) { + return "display:none"; + }, + PicArr: [ + "images/Card/Plants/SeaShroom.png", + "images/Plants/SeaShroom/0.gif", + "images/Plants/SeaShroom/SeaShroom.gif", + "images/Plants/SeaShroom/SeaShroomSleep.gif", + "images/Plants/ShroomBullet.gif", + "images/Plants/ShroomBulletHit.gif", + ], + CanGrow: function (c, b, d) { + var a = b + "_" + d; + return !( + d < 1 || + d > 9 || + oGd.$LF[b] - 2 || + c[0] || + c[1] || + oGd.$Crater[a] || + oGd.$Tombstones[a] + ); + }, + BirthStyle: function (c, d, b, a) { + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + Tooltip: "Aquatic plant that shoots short-ranged spores", + Produce: + '海蘑菇,能够发射短程孢子的水生植物。

Harm:普通
射程:
必须种在水上

海蘑菇从来没看到过大海,大海就在他的名字
里,他总听到关于大海的事。他只是没找到合适的
时间,总有一天……是的,他会见到海的。', + }); +>>>>>>> 2d4ea63a9dbaef1b40ae59ff2f5572122ce54cb3 +oSeedSeaShroom = InheritO(oPuffShroom, { + EName: "oSeedSeaShroom", + CName: "Sea-shroom", + width: 48, + height: 99, + beAttackedPointL: 10, + beAttackedPointR: 40, + coolTime: 30, + BookHandBack: 4.9, + Sleep: 0, + getShadow: function (a) { + return "display:none"; + }, + PicArr: [ + "images/Card/Plants/SeaShroom.png", + "images/Plants/SeaShroom/0.gif", + "images/Plants/SeaShroom/SeaShroom.gif", + "images/Plants/SeaShroom/SeaShroomSleep.gif", + "images/Plants/ShroomBullet.gif", + "images/Plants/ShroomBulletHit.gif", + ], + CanGrow: function (c, b, d) { + var a = b + "_" + d; + return !( + d < 1 || + d > 9 || + oGd.$LF[b] - 2 || + c[0] || + c[1] || + oGd.$Crater[a] || + oGd.$Tombstones[a] + ); + }, + BirthStyle: function (c, d, b, a) { + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + Tooltip: "Aquatic plant that shoots short-ranged spores", + Produce: + '海蘑菇,能够发射短程孢子的水生植物。

Harm:普通
射程:
必须种在水上

海蘑菇从来没看到过大海,大海就在他的名字
里,他总听到关于大海的事。他只是没找到合适的
时间,总有一天……是的,他会见到海的。', +}); +(oCactus = InheritO(CPlants, { + EName: "oCactus", + CName: "Cactus", + width: 122, + height: 157, + SunNum: 125, + beAttackedPointL: 10, + beAttackedPointR: 80, + AudioArr: ["plantgrow"], + Status: 0, + PicArr: (function () { + return [ + "images/Card/Plants/Cactus.png", + "images/Plants/Cactus/0.gif", + "images/Plants/Cactus/Cactus.gif", + "images/Plants/Cactus/Cactus2.gif", + "images/Plants/Cactus/Attack.gif", + "images/Plants/Cactus/Attack2.gif", + "images/Plants/Cactus/Elongation.gif", + "images/Plants/Cactus/Shorten.gif", + "images/Plants/Cactus/Projectile32.png", + ]; + })(), + Tooltip: "Shoots spikes that can pop balloons", + Produce: + '仙人掌发射的穿刺弹可以用来打击地面和空中
目标

Harm:中等
Scope:地面和空中

确实,仙人掌非常“刺儿”,但是她的刺下,隐
藏着颗温柔的心,充满着爱和善良。她只是想拥
抱别人,和被别人拥抱。大多数人都做不到这点
,但是仙人掌她并不介意。她盯着一只铠甲鼠好
一阵子了,这次好像真的可以抱抱了。', + getShadow: function (a) { + return "left:3px;top:132px"; + }, + PrivateBirth: function (a) { + a.ES = a.Elongation; + }, + TriggerCheck: function (b, a) { + this.ES() && ((this.canTrigger = 0), this.CheckLoop(b.id, a)); + }, + CheckLoop: function (b, c) { + var a = this.id; + this.NormalAttack(b); + this.ES(); + this.Status == 0 && + oSym.addTask( + 140, + function (e, f, h) { + var g; + (g = $P[e]) && g.ES() && g.AttackCheck1(f, h); + }, + [a, b, c] + ); + }, + CheckLoop2: function (b, c) { + var a = this.id; + this.NormalAttack(b); + this.ES(); + this.Status && + oSym.addTask( + 150, + function (e, f, h) { + var g; + (g = $P[e]) && g.ES() && g.AttackCheck12(f, h); + }, + [a, b, c] + ); + }, + AttackCheck1: function (g, f) { + var b = this, + c = b.oTrigger, + a = $Z[g], + h, + e, + k, + j; + if (a && a.PZ && (h = c[a.R])) { + k = a.ZX; + e = h.length; + while (e--) { + j = h[e]; + if (j[0] <= k && j[1] >= k && a.Altitude > 0) { + b.CheckLoop(g, j[2]); + return; + } + } + } + b.canTrigger = 1; + }, + AttackCheck12: function (a, c) { + var b = this; + b.CheckLoop(a, c); + }, + Elongation: function () { + var a = this, + b = a.id; + if (!oGd.$Balloon[a.R] > 0) { + return true; + } else { + PlayAudio("plantgrow"); + a.canTrigger = 0; + a.Status = 1; + $(b).childNodes[1].src = "images/Plants/Cactus/Elongation.gif"; + oSym.addTask( + 1, + function (e) { + var d = $P[e], + c; + if (d) { + d.NormalGif = 3; + $(e).childNodes[1].src = + "images/Plants/Cactus/Cactus2.gif"; + c = d.CheckLoop; + d.CheckLoop = d.CheckLoop2; + d.CheckLoop2 = c; + c = d.NormalAttack; + d.NormalAttack = d.NormalAttack2; + d.NormalAttack2 = c; + d.ES = d.Shorten; + d.canTrigger = 1; + } + }, + [b] + ); + return false; + } + }, + Shorten: function () { + var a = this, + b = a.id; + if (oGd.$Balloon[a.R] > 0) { + return true; + } else { + a.canTrigger = 0; + a.Status = 0; + $(b).childNodes[1].src = "images/Plants/Cactus/Shorten.gif"; + oSym.addTask( + 1, + function (e) { + var d = $P[e], + c; + if (d) { + d.NormalGif = 2; + $(e).childNodes[1].src = + "images/Plants/Cactus/Cactus.gif"; + c = d.CheckLoop; + d.CheckLoop = d.CheckLoop2; + d.CheckLoop2 = c; + c = d.NormalAttack; + d.NormalAttack = d.NormalAttack2; + d.NormalAttack2 = c; + d.ES = d.Elongation; + d.canTrigger = 1; + } + }, + [b] + ); + return false; + } + }, + NormalAttack: function () { + var b = this, + c = "CB" + Math.random(), + a = b.id; + $(a).childNodes[1].src = "images/Plants/Cactus/Attack.gif"; + oSym.addTask( + 40, + function (e) { + var d = $(e); + d && (d.childNodes[1].src = "images/Plants/Cactus/Cactus.gif"); + }, + [a] + ); + NewImg( + c, + b.PicArr[8], + "left:" + + (b.AttackedRX + 25) + + "px;top:" + + (b.pixelTop + 103) + + "px;visibility:hidden;z-index:" + + (b.zIndex + 2), + EDPZ + ); + oSym.addTask( + 30, + function (e) { + var d = $(e); + d && SetVisible(d); + }, + [c] + ); + oSym.addTask( + 1, + function (g, i, d, k, h, l) { + var j, + f = GetC(k), + e = oZ["getZ" + d](k, h); + e && e.Altitude == 1 + ? (e.getPea(e, 30, d), ClearChild(i)) + : (k += j = !d ? 5 : -5) < oS.W && k > 100 + ? ((i.style.left = (l += j) + "px"), + oSym.addTask(1, arguments.callee, [g, i, d, k, h, l])) + : ClearChild(i); + }, + [c, $(c), 0, b.AttackedLX, b.R, b.AttackedLX - 40] + ); + }, + NormalAttack2: function () { + var b = this, + c = "CB" + Math.random(), + a = b.id; + $(a).childNodes[1].src = "images/Plants/Cactus/Attack2.gif"; + oSym.addTask( + 50, + function (e) { + var d = $(e); + d && (d.childNodes[1].src = "images/Plants/Cactus/Cactus2.gif"); + }, + [a] + ); + NewImg( + c, + b.PicArr[8], + "left:" + + (b.AttackedRX + 125) + + "px;top:" + + (b.pixelTop + 33) + + "px;visibility:hidden;z-index:" + + (b.zIndex + 2), + EDPZ + ); + oSym.addTask( + 20, + function (e) { + var d = $(e); + d && SetVisible(d); + }, + [c] + ); + oSym.addTask( + 1, + function (g, i, d, k, h, l) { + var j, + f = GetC(k), + e = oZ["getZ" + d](k, h); + e && e.Altitude == 3 + ? (e.getHit0(e, 20, d), e.Drop(), ClearChild(i)) + : (k += j = !d ? 5 : -5) < oS.W && k > 100 + ? ((i.style.left = (l += j) + "px"), + oSym.addTask(1, arguments.callee, [g, i, d, k, h, l])) + : ClearChild(i); + }, + [c, $(c), 0, b.AttackedLX, b.R, b.AttackedLX - 40] + ); + }, +})), + (oSeedCactus = InheritO(CPlants, { + EName: "oSeedCactus", + CName: "Cactus", + width: 122, + height: 157, + SunNum: 0, + beAttackedPointL: 10, + beAttackedPointR: 80, + AudioArr: ["plantgrow"], + Status: 0, + PicArr: (function () { + return [ + "images/Card/Plants/Cactus.png", + "images/Plants/Cactus/0.gif", + "images/Plants/Cactus/Cactus.gif", + "images/Plants/Cactus/Cactus2.gif", + "images/Plants/Cactus/Attack.gif", + "images/Plants/Cactus/Attack2.gif", + "images/Plants/Cactus/Elongation.gif", + "images/Plants/Cactus/Shorten.gif", + "images/Plants/Cactus/Projectile32.png", + ]; + })(), + Tooltip: "Shoots spikes that can pop balloons", + Produce: + '仙人掌发射的穿刺弹可以用来打击地面和空中
目标

Harm:中等
Scope:地面和空中

确实,仙人掌非常“刺儿”,但是她的刺下,隐
藏着颗温柔的心,充满着爱和善良。她只是想拥
抱别人,和被别人拥抱。大多数人都做不到这点
,但是仙人掌她并不介意。她盯着一只铠甲鼠好
一阵子了,这次好像真的可以抱抱了。', + getShadow: function (a) { + return "left:3px;top:132px"; + }, + PrivateBirth: function (a) { + a.ES = a.Elongation; + }, + TriggerCheck: function (b, a) { + this.ES() && ((this.canTrigger = 0), this.CheckLoop(b.id, a)); + }, + CheckLoop: function (b, c) { + var a = this.id; + this.NormalAttack(b); + this.ES(); + this.Status == 0 && + oSym.addTask( + 140, + function (e, f, h) { + var g; + (g = $P[e]) && g.ES() && g.AttackCheck1(f, h); + }, + [a, b, c] + ); + }, + CheckLoop2: function (b, c) { + var a = this.id; + this.NormalAttack(b); + this.ES(); + this.Status && + oSym.addTask( + 150, + function (e, f, h) { + var g; + (g = $P[e]) && g.ES() && g.AttackCheck12(f, h); + }, + [a, b, c] + ); + }, + AttackCheck1: function (g, f) { + var b = this, + c = b.oTrigger, + a = $Z[g], + h, + e, + k, + j; + if (a && a.PZ && (h = c[a.R])) { + k = a.ZX; + e = h.length; + while (e--) { + j = h[e]; + if (j[0] <= k && j[1] >= k && a.Altitude > 0) { + b.CheckLoop(g, j[2]); + return; + } + } + } + b.canTrigger = 1; + }, + AttackCheck12: function (a, c) { + var b = this; + b.CheckLoop(a, c); + }, + Elongation: function () { + var a = this, + b = a.id; + if (!oGd.$Balloon[a.R] > 0) { + return true; + } else { + PlayAudio("plantgrow"); + a.canTrigger = 0; + a.Status = 1; + $(b).childNodes[1].src = "images/Plants/Cactus/Elongation.gif"; + oSym.addTask( + 1, + function (e) { + var d = $P[e], + c; + if (d) { + d.NormalGif = 3; + $(e).childNodes[1].src = + "images/Plants/Cactus/Cactus2.gif"; + c = d.CheckLoop; + d.CheckLoop = d.CheckLoop2; + d.CheckLoop2 = c; + c = d.NormalAttack; + d.NormalAttack = d.NormalAttack2; + d.NormalAttack2 = c; + d.ES = d.Shorten; + d.canTrigger = 1; + } + }, + [b] + ); + return false; + } + }, + Shorten: function () { + var a = this, + b = a.id; + if (oGd.$Balloon[a.R] > 0) { + return true; + } else { + a.canTrigger = 0; + a.Status = 0; + $(b).childNodes[1].src = "images/Plants/Cactus/Shorten.gif"; + oSym.addTask( + 1, + function (e) { + var d = $P[e], + c; + if (d) { + d.NormalGif = 2; + $(e).childNodes[1].src = + "images/Plants/Cactus/Cactus.gif"; + c = d.CheckLoop; + d.CheckLoop = d.CheckLoop2; + d.CheckLoop2 = c; + c = d.NormalAttack; + d.NormalAttack = d.NormalAttack2; + d.NormalAttack2 = c; + d.ES = d.Elongation; + d.canTrigger = 1; + } + }, + [b] + ); + return false; + } + }, + NormalAttack: function () { + var b = this, + c = "CB" + Math.random(), + a = b.id; + $(a).childNodes[1].src = "images/Plants/Cactus/Attack.gif"; + oSym.addTask( + 40, + function (e) { + var d = $(e); + d && + (d.childNodes[1].src = + "images/Plants/Cactus/Cactus.gif"); + }, + [a] + ); + NewImg( + c, + b.PicArr[8], + "left:" + + (b.AttackedRX + 25) + + "px;top:" + + (b.pixelTop + 103) + + "px;visibility:hidden;z-index:" + + (b.zIndex + 2), + EDPZ + ); + oSym.addTask( + 30, + function (e) { + var d = $(e); + d && SetVisible(d); + }, + [c] + ); + oSym.addTask( + 1, + function (g, i, d, k, h, l) { + var j, + f = GetC(k), + e = oZ["getZ" + d](k, h); + e && e.Altitude == 1 + ? (e.getPea(e, 30, d), ClearChild(i)) + : (k += j = !d ? 5 : -5) < oS.W && k > 100 + ? ((i.style.left = (l += j) + "px"), + oSym.addTask(1, arguments.callee, [g, i, d, k, h, l])) + : ClearChild(i); + }, + [c, $(c), 0, b.AttackedLX, b.R, b.AttackedLX - 40] + ); + }, + NormalAttack2: function () { + var b = this, + c = "CB" + Math.random(), + a = b.id; + $(a).childNodes[1].src = "images/Plants/Cactus/Attack2.gif"; + oSym.addTask( + 50, + function (e) { + var d = $(e); + d && + (d.childNodes[1].src = + "images/Plants/Cactus/Cactus2.gif"); + }, + [a] + ); + NewImg( + c, + b.PicArr[8], + "left:" + + (b.AttackedRX + 125) + + "px;top:" + + (b.pixelTop + 33) + + "px;visibility:hidden;z-index:" + + (b.zIndex + 2), + EDPZ + ); + oSym.addTask( + 20, + function (e) { + var d = $(e); + d && SetVisible(d); + }, + [c] + ); + oSym.addTask( + 1, + function (g, i, d, k, h, l) { + var j, + f = GetC(k), + e = oZ["getZ" + d](k, h); + e && e.Altitude == 3 + ? (e.getHit0(e, 20, d), e.Drop(), ClearChild(i)) + : (k += j = !d ? 5 : -5) < oS.W && k > 100 + ? ((i.style.left = (l += j) + "px"), + oSym.addTask(1, arguments.callee, [g, i, d, k, h, l])) + : ClearChild(i); + }, + [c, $(c), 0, b.AttackedLX, b.R, b.AttackedLX - 40] + ); + }, + })), + (oBlover = InheritO(CPlants, { + EName: "oBlover", + CName: "Blover", + width: 132, + beAttackedPointR: 98, + height: 110, + SunNum: 100, + PicArr: [ + "images/Card/Plants/Blover.png", + "images/Plants/Blover/0.gif", + "images/Plants/Blover/Blover.gif", + ], + Tooltip: "Blows away all balloon zombies and fog", + Produce: + '三叶草,能吹走所有的气球僵尸,也可以把雾吹散。

使用方法:单独使用,立即生效
特点:吹走屏幕上所有的气球僵尸

当三叶草五岁生日的时候,他得到了一个闪亮的生日蛋糕。他许好愿,然后深吸一口气却只吹灭了60%的蜡烛。然而他没有放弃,小时候的那次失败促使他更加努力直到现在。', + AudioArr: ["blover"], + InitTrigger: function () {}, + PrivateBirth: function (o) { + // 种植后0.5秒开始吹风 + oSym.addTask( + 50, + function (id) { + PlayAudio("blover"), + ($(id).childNodes[1].src = + "images/Plants/Blover/BloverBlow.gif"), + $P[id].Dispel(); + }, + [o.id] + ); + }, + Dispel: function () { + // 吹风 + var id = this.id, + z, + oBalloon; + + for (z in $Z) + (oBalloon = $Z[z]), + oBalloon.EName == "oBalloonZombie" && + oBalloon.getDispelled(); //把气球吹跑 + + if (oS.HaveFog) { + // 如果场地上有雾,驱散 + oGd.MoveFogRight(); // 驱散雾 + oSym.addTask(2400 + 150, oGd.MoveFogLeft, []); // 24s后恢复 + } + + oSym.addTask( + 150, + function (id) { + var p = $P[id]; + p && p.Die(); + }, + [id] + ); + }, + })), + (oSeedBlover = InheritO(CPlants, { + EName: "oSeedBlover", + CName: "Blover", + width: 146, + beAttackedPointR: 98, + height: 110, + SunNum: 0, + PicArr: [ + "images/Card/Plants/Blover.png", + "images/Plants/Blover/0.gif", + "images/Plants/Blover/Blover.gif", + ], + Tooltip: "Blows away all balloon zombies and fog", + Produce: + '三叶草,能吹走所有的气球僵尸,也可以把雾吹散。

使用方法:单独使用,立即生效
特点:吹走屏幕上所有的气球僵尸

当三叶草五岁生日的时候,他得到了一个闪亮的生日蛋糕。他许好愿,然后深吸一口气却只吹灭了60%的蜡烛。然而他没有放弃,小时候的那次失败促使他更加努力直到现在。', + AudioArr: ["blover"], + InitTrigger: function () {}, + PrivateBirth: function (o) { + // 种植后0.5秒开始吹风 + oSym.addTask( + 50, + function (id) { + PlayAudio("blover"), + ($(id).childNodes[1].src = + "images/Plants/Blover/BloverBlow.gif"), + $P[id].Dispel(); + }, + [o.id] + ); + }, + Dispel: function () { + // 吹风 + var id = this.id, + z, + oBalloon; + + for (z in $Z) + (oBalloon = $Z[z]), + oBalloon.EName == "oBalloonZombie" && + oBalloon.getDispelled(); //把气球吹跑 + + if (oS.HaveFog) { + // 如果场地上有雾,驱散 + oGd.MoveFogRight(); // 驱散雾 + oSym.addTask(2400 + 150, oGd.MoveFogLeft, []); // 24s后恢复 + } + + oSym.addTask( + 150, + function (id) { + var p = $P[id]; + p && p.Die(); + }, + [id] + ); + }, + })), + (oOxygen = InheritO(CPlants, { + EName: "oOxygen", + CName: "Oxygen", + width: 115, + height: 102, + beAttackedPointR: 53, + SunNum: 25, + HP: 300, + BookHandBack: 3.5, + coolTime: 7.5, + PicArr: [ + "images/Card/Plants/Oxygen.png", + "images/Plants/Oxygen/0.gif", + "images/Plants/Oxygen/Oxygen.gif", + ], + Tooltip: "Oxygen provides algae to plants on the ground", + Produce: + '氧气藻可以提供氧气给地上的植物

Toughness:

Scope:3x3

噗咕……氧气藻默默地吐着气泡,倒不是他愿
意一直吐,只怪他昨天喝了太多汽水。不过有传
言说,他除了吐气泡就不会别的了。', + + CanGrow: function (e, d, f) { + var c = d + "_" + f, + b = oGd.$LF[d], + a = f < 1 || f > 9; + return b % 2 + ? b < 3 + ? !( + a || + e[1] || + e[2] || + e[0] || + oGd.$Crater[c] || + oGd.$Tombstones[c] + ) + : !(a || e[0] || oGd.$Crater[c]) + : 0; + }, + NormalAttack: function () {}, + PrivateBirth: function (a) { + var R = a.R, + C = a.C, + R1, + C1, + MaxR = oS.R, + MaxC = oS.C, + LF = oGd.$LF, + LFR, + _$ = oGd.$, + rc; + + for (R1 = R - 1; R1 <= R + 1; R1++) { + if (R1 > 0 && R1 <= MaxR) { + LFR = LF[R]; + for (C1 = C - 1; C1 <= C + 1; C1++) { + if (C1 > 0 && C1 <= MaxC && (LFR == 1 || LFR == 3)) { + rc = R1 + "_" + C1 + "_"; + !(_$[rc + 0] || _$[rc + 1] || _$[rc + 2]) && + CustomSpecial(oOG, R1, C1); + } + } + } + } + }, + })), + (oFlamesMushroom = InheritO(CPlants, { + EName: "oFlamesMushroom", + CName: "Fire-shroom", + width: 102, + height: 91, + beAttackedPointR: 80, + SunNum: 200, + HP: 4e3, + BookHandBack: 2.5, + coolTime: 30, + PicArr: [ + "images/Card/Plants/FlamesMushroom.png", + "images/Plants/FlamesMushroom/0.gif", + "images/Plants/FlamesMushroom/FlamesMushroom.gif", + "images/Plants/FlamesMushroom/FlamesMushroom1.gif", + "images/Plants/FlamesMushroom/FlamesMushroom2.gif", + ], + Tooltip: "烈焰菇可以召唤多个毁灭菇,嗨翻全场僵尸", + Produce: + '烈焰菇可以召唤多个毁灭菇,嗨翻全场僵尸

Toughness:

技能:在自身3x3范围内召唤8只毁灭菇

烈焰菇总是为自己的火焰感到反感,因为它们
总是伤害到自己的朋友。所以为了朋友,烈焰
菇到花园里找到了自己的归宿。', + getHurt: function (e, b, a) { + var c = this, + d = $(c.id).childNodes[1]; + !(b % 3) + ? (c.HP -= a) < 1 + ? c.Die() + : c.HP < 2667 + ? c.HurtStatus < 2 && + ((c.HurtStatus = 2), + (d.src = + "images/Plants/FlamesMushroom/FlamesMushroom2.gif")) + : c.HP < 5333 && + c.HurtStatus < 1 && + ((c.HurtStatus = 1), + (d.src = + "images/Plants/FlamesMushroom/FlamesMushroom1.gif")) + : c.Die(1); + }, + NormalAttack: function () {}, + PrivateBirth: function (a) { + var R = a.R, + C = a.C, + R1, + C1, + MaxR = oS.R, + MaxC = oS.C, + LF = oGd.$LF, + LFR, + _$ = oGd.$, + rc; + for (R1 = R - 1; R1 <= R + 1; R1++) { + if (R1 > 0 && R1 <= MaxR) { + LFR = LF[R]; + for (C1 = C - 1; C1 <= C + 1; C1++) { + if (C1 > 0 && C1 <= MaxC && (LFR == 1 || LFR == 3)) { + rc = R1 + "_" + C1 + "_"; + !(_$[rc + 0] || _$[rc + 1] || _$[rc + 2]) && + CustomSpecial(oDoomShroom, R1, C1); + } + } + } + } + }, + })), + (oOG = InheritO(CPlants, { + EName: "oOG", + CName: "Oxygen", + width: 72, + height: 68, + beAttackedPointR: 52, + SunNum: 0, + canEat: 0, + BookHandBack: 5, + PicArr: [ + "images/Card/Plants/Oxygen.png", + "images/Plants/Oxygen/0.gif", + "images/Plants/Oxygen/Oxygen1.gif", + ], + PKind: 0, + Stature: -1, + GetDY: function (b, c, a) { + return -15; + }, + getShadow: function (a) { + return "display:none"; + return ( + "left:" + + (a.width * 0.5 - 20) + + "px;top:" + + (a.height - 22) + + "px" + ); + }, + CanGrow: function (e, d, f) { + var c = d + "_" + f, + b = oGd.$LF[d], + a = f < 1 || f > 9; + return b % 2 + ? b < 3 + ? !( + a || + e[1] || + e[2] || + e[0] || + oGd.$Crater[c] || + oGd.$Tombstones[c] + ) + : !(a || e[0] || oGd.$Crater[c]) + : 0; + }, + Tooltip: "", + Produce: "", + InitTrigger: function () {}, + })), + (oPlantern = InheritO(CPlants, { + EName: "oPlantern", + CName: "Plantern", + width: 250, + height: 242, + beAttackedPointL: 105, + beAttackedPointR: 145, + canEat: 1, + BookHandBack: 2.5, + SunNum: 25, + PicArr: [ + "images/Card/Plants/Plantern.png", + "images/Plants/Plantern/0.gif", + "images/Plants/Plantern/Plantern.gif", + ], + Tooltip: "Lights up an area, letting you see through fog", + Produce: + '路灯花,能照亮一片区域,让你看清战场迷雾

Scope:一片圆形区域
Features:使你看清战场迷雾

灯笼草拒绝科学,他只会埋头苦干。其他植物
吃的是光,挤出的是氧气。灯笼草吃的是黑暗,
挤出的却是光。对于他如何能产生光这件事,灯
笼草持谨慎态度。“我不会说这是‘巫术’,我
也不会使用‘黑暗力量’,我只是……我想我说
得够多的了。”', + PrivateBirth: function (c) { + var a = c.R, + b = c.C; + oGd.$Plantern[a + "_" + b] = c.id; + NewImg( + "", + "images/Plants/Plantern/light.gif", + "filter:alpha(opacity=30);opacity:.3;left:0;top:0;z-index:" + + c.zIndex, + $(c.id) + ); + oS.HaveFog && oGd.GatherFog(a, b, 2, 3, 0), + oFlowerVase.prototype.FreshXRay(); // 刷新场地上花瓶 XRAY + }, + InitTrigger: function () {}, + PrivateDie: function (c) { + var a = c.R, + b = c.C; + delete oGd.$Plantern[a + "_" + b]; + oS.HaveFog && oGd.GatherFog(a, b, 2, 3, 1), + oFlowerVase.prototype.FreshXRay(); // 刷新场地上花瓶 XRAY + }, + GetDY: function (b, c, a) { + return a[0] ? 70 : 74; + }, + getShadow: function (a) { + return ( + "left:" + + (a.width * 0.5 - 43) + + "px;top:" + + (a.height - 100) + + "px" + ); + }, + })), + (oSeedPlantern = InheritO(CPlants, { + EName: "oSeedPlantern", + CName: "Plantern", + width: 250, + height: 237, + beAttackedPointL: 105, + beAttackedPointR: 145, + coolTime: 30, + BookHandBack: 2, + SunNum: 0, + PicArr: [ + "images/Card/Plants/Plantern.png", + "images/Plants/Plantern/0.gif", + "images/Plants/Plantern/Plantern.gif", + "images/Plants/Plantern/light.gif", + ], + Tooltip: "照亮一片区域, 让玩家可以看穿战场迷雾", + Produce: + '灯笼草,能照亮一片区域,让你看清战场迷雾

范围:一片圆形区域
特点:使你看清战场迷雾

灯笼草拒绝科学,他只会埋头苦干。其他植物吃的是光,挤出的是氧气。灯笼草吃的是黑暗,挤出的却是光。对于他如何能产生光这件事,灯笼草持谨慎态度。“我不会说这是‘巫术’,我也不会使用‘黑暗力量’,我只是……我想我说得够多的了。”', + PrivateBirth: function (c) { + var a = c.R, + b = c.C; + oGd.$Plantern[a + "_" + b] = c.id; + NewImg( + "", + "images/Plants/Plantern/light.gif", + "filter:alpha(opacity=30);opacity:.3;left:0;top:0;z-index:" + + c.zIndex, + $(c.id) + ); + oS.HaveFog && oGd.GatherFog(a, b, 2, 3, 0), + oFlowerVase.prototype.FreshXRay(); // 刷新场地上花瓶 XRAY + }, + InitTrigger: function () {}, + PrivateDie: function (c) { + var a = c.R, + b = c.C; + delete oGd.$Plantern[a + "_" + b]; + oS.HaveFog && oGd.GatherFog(a, b, 2, 3, 1), + oFlowerVase.prototype.FreshXRay(); // 刷新场地上花瓶 XRAY + }, + GetDY: function (b, c, a) { + return a[0] ? 70 : 74; + }, + getShadow: function (a) { + return ( + "left:" + + (a.width * 0.5 - 43) + + "px;top:" + + (a.height - 100) + + "px" + ); + }, + })), + (ostar = InheritO(CPlants, { + EName: "ostar", + CName: "Sea Starfruit", + width: 71, + height: 71, + beAttackedPointL: 10, + beAttackedPointR: 61, + SunNum: 75, + HP: 4e3, + canEat: 0, + BookHandBack: 3.5, + Tooltip: "Sea Starfruit rolls and destroys any obstacles in its way", + Produce: + '海星果的触手可以轻易掀翻僵尸并造成混乱

攻击:较大
路径:随机的撞击线

海星果永远保持着迷人的微笑,没人知道他那
么热爱转圈圈却不会头晕的秘密,有人说因为他
那双斗鸡眼只看一点才不会转晕。', + PicArr: [ + "images/Card/Plants/star.png", + "images/Plants/star/0.gif", + "images/Plants/star/starRoll.gif", + ], + AudioArr: ["bowling", "bowlingimpact", "bowlingimpact2"], + CanAttack: 1, + InitTrigger: function () {}, + getHurt: function () {}, + CanGrow: function (e, d, f) { + var c = d + "_" + f, + b = oGd.$LF[d], + a = f < 1 || f > 9; + return b % 2 + ? b < 3 + ? !( + a || + e[1] || + e[2] || + e[0] || + oGd.$Crater[c] || + oGd.$Tombstones[c] + ) + : !(a || e[0] || oGd.$Crater[c]) + : 0; + }, + NormalAttack: null, + PrivateBirth: function (c) { + var d = $(c.id); + PlayAudio("seastar_roll"); + (function (z, y, q, r, p, x, e, g, b) { + var a = z.R, + l = z.C, + A, + u, + s, + v = 0, + w, + i, + t = false; + if (z.CanAttack && (A = oZ.getZ0(r, a)) && A.getCrushed(z)) { + u = A.id; + // PlayAudio(["bowlingimpact", "bowlingimpact2"][Math.floor(Math.random() * 2)]); + switch (A.Ornaments) { + case 0: + A.NormalDie(); + break; + case 1: + A.getHit0(A, Math.min(A.OrnHP, 900), 0); + break; + default: + z.side + ? A.Normaldie() + : A.CheckOrnHP( + A, + u, + A.OrnHP, + 400, + A.PicArr, + 0, + 0, + 0 + ); + } + z.CanAttack = 0; + switch (a) { + case oS.R: + e = -1; + break; + case 1: + e = 1; + break; + default: + switch (e) { + case 1: + e = -1; + break; + case -1: + e = 1; + break; + default: + e = Math.random() > 0.5 ? 1 : -1; + } + } + oSym.addTask(1, arguments.callee, [ + z, + y, + z.AttackedLX + 20, + z.AttackedRX + 20, + z.pixelLeft + 20, + x, + e, + g, + b, + ]); + } else { + switch (e) { + case 1: + z.pixelBottom + 2 > b && (e = -1); + break; + case -1: + z.pixelBottom - 2 < g && (e = 1); + break; + } + q > y + ? z.Die() + : ((i = GetC((z.pixelRight += 2))), + (z.AttackedLX = q += 2), + (z.AttackedRX = r += 2), + (w = GetR((z.pixelBottom += e * 2))), + SetStyle(x, { + left: (z.pixelLeft = p += 2) + "px", + top: (z.pixelTop += e * 2) + "px", + }), + w != a && + ((z.R = w), + (t = true), + !z.CanAttack && (z.CanAttack = 1)), + i != l && ((z.C = i), (t = true)), + t && + (oGd.del({ + R: a, + C: l, + PKind: 1, + }), + oGd.add(z, w + "_" + i + "_1")), + oSym.addTask(1, arguments.callee, [ + z, + y, + z.AttackedLX, + z.AttackedRX, + z.pixelLeft, + x, + e, + g, + b, + ])); + } + })( + c, + oS.W, + c.AttackedLX, + c.AttackedRX, + c.pixelLeft, + d, + 0, + GetY1Y2(1)[0], + 600 + ); + }, + })), + (ostar1 = InheritO(oNutBowling, { + EName: "ostar1", + CName: "Sea Starfruitt", + width: 71, + height: 71, + beAttackedPointL: 10, + beAttackedPointR: 61, + SunNum: 75, + coolTime: 50, + HP: 0, + canEat: 0, + BookHandBack: 3, + Stature: 1, + PicArr: [ + "images/Card/Plants/star.png", + "images/Plants/star/0.gif", + "images/Plants/star/starRoll.gif", + ], + Tooltip: "", + Produce: "", + PrivateBirth: function (a) { + PlayAudio("bowling"); + (function (b, c, n, m, e, g) { + var d = oZ.getArZ(n, m, e), + f = d.length, + k, + j, + l = b.R, + h = b.C; + while (f--) { + (k = d[f]).getCrushed(b) && k.CrushDie(); + } + n > c + ? b.Die() + : ((j = GetC((b.pixelRight += 2))), + (b.AttackedLX = n += 2), + (b.AttackedRX = m += 2), + (g.style.left = (b.pixelLeft += 2) + "px"), + j != h && + ((b.C = j), + oGd.del({ + R: l, + C: h, + PKind: 1, + }), + oGd.add(b, l + "_" + j + "_1")), + oSym.addTask(1, arguments.callee, [b, c, n, m, e, g])); + })(a, oS.W, a.AttackedLX, a.AttackedRX, a.R, $(a.id)); + }, + })), + (oGun = InheritO(oPuffShroom, { + EName: "oGun", + CName: "Water Gun Grass", + Sleep: 0, + width: 100, + height: 100, + beAttackedPointL: 15, + beAttackedPointR: 25, + BookHandBack: 3.5, + SunNum: 25, + PicArr: [ + "images/Card/Plants/gun.png", + "images/Plants/gun/0.gif", + "images/Plants/gun/SeaShroom.gif", + "images/Plants/gun/SeaShroomSleep.gif", + "images/Plants/gun/ShroomBullet.gif", + "images/Plants/gun/ShroomBulletHit.gif", + ], + CanGrow: function (e, d, f) { + var c = d + "_" + f, + b = oGd.$LF[d], + a = f < 1 || f > 9; + return b % 2 + ? b < 3 + ? !( + a || + e[1] || + e[2] || + e[0] || + oGd.$Crater[c] || + oGd.$Tombstones[c] + ) + : !(a || e[0] || oGd.$Crater[c]) + : 0; + }, + Tooltip: "轻型海底作战植物", + Produce: + '水枪草可以直接种在海底,但射程比较短。

Harm:
射程:

自从水枪草得到了绝世的吐纳秘籍之后一直在
不断地练习着,希望自己能够突破三米的射程。', + PrivateBirth: function (a) { + a.BulletEle = NewImg( + 0, + "images/Plants/gun/ShroomBullet.gif", + "left:" + + (a.AttackedLX - 46) + + "px;top:" + + (a.pixelTop + 40) + + "px;visibility:hidden;z-index:" + + (a.zIndex + 2) + ); + }, + BirthStyle: function (c, d, b, a) { + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + PrivateDie: function (a) { + a.BulletEle = null; + }, + NormalAttack: function () { + PlayAudio("puff"); + var k = this; + var b = this, + c = "PSB" + Math.random(), + a = b.AttackedLX; + (j = k.id), + (d = $(j)), + EditEle( + b.BulletEle.cloneNode(false), + { + id: c, + }, + 0, + EDPZ + ); + oSym.addTask( + 15, + function (e) { + var d = $(e); + d && SetVisible(d); + }, + [c] + ); + oSym.addTask( + 1, + function (j, d, e, f, g) { + var i = GetC(e), + h = oZ.getZ0(e, f); + h && h.Altitude == 1 + ? (h.getPea(h, 20, 0), + (SetStyle(d, { + left: g + 38 + "px", + }).src = "images/Plants/gun/ShroomBulletHit.gif"), + oSym.addTask(10, ClearChild, [d])) + : (e += 5) < oS.W + ? ((d.style.left = (g += 5) + "px"), + oSym.addTask(1, arguments.callee, [j, d, e, f, g])) + : ClearChild(d); + }, + [c, $(c), a, b.R, a - 46] + ); + d.childNodes[1].src = "images/Plants/gun/SeaShroomShoot.gif"; + setTimeout(() => { + d.childNodes[1].src = "images/Plants/gun/SeaShroom.gif"; + }, 750); + }, + })), + (oSeaAnemone = InheritO(oGloomShroom, { + EName: "oSeaAnemone", + CName: "Electric Anemone", + width: 83, + height: 119, + beAttackedPointR: 63, + SunNum: 300, + coolTime: 15, + BookHandBack: 3.5, + AudioArr: ["SeaAnemone"], + PicArr: [ + "images/Card/Plants/SeaAnemone.png", + "images/Plants/SeaAnemone/0.gif", + "images/Plants/SeaAnemone/GloomShroom.gif", + "images/Plants/SeaAnemone/GloomShroomSleep.gif", + "images/Plants/SeaAnemone/GloomShroomAttack.gif", + "images/Plants/SeaAnemone/GloomShroomBullet.gif", + ], + AudioArr: ["kernelpult", "kernelpult2"], + Tooltip: "Hurts zombies around it", + Produce: + "电海葵花可以对在他周围的僵尸造成巨大伤害

自信的电海葵花毫不畏惧任何困难,一头杀马
特式的发型是他引以为傲的事情,可他说这是上
次在村口找王师傅给剃的。", + BirthStyle: function (c, d, b, a) { + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + CanGrow: function (e, d, f) { + var c = d + "_" + f, + b = oGd.$LF[d], + a = f < 1 || f > 9; + return b % 2 + ? b < 3 + ? !( + a || + e[1] || + e[2] || + e[0] || + oGd.$Crater[c] || + oGd.$Tombstones[c] + ) + : !(a || e[0] || oGd.$Crater[c]) + : 0; + }, + PrivateBirth: function (b) { + var a = b.id; + NewEle( + a + "_Bullet", + "div", + "position:absolute;visibility:hidden;width:210px;height:200px;left:" + + (b.pixelLeft - 60) + + "px;top:" + + (b.pixelTop - 65) + + "px;background:url(images/Plants/SeaAnemone/GloomShroomBullet.gif);z-index:" + + (b.zIndex + 1), + 0, + EDPZ + ); + }, + NormalAttack: function () { + PlayAudio("SeaAnemone"); + var k = this, + g, + f = k.MaxR, + c = k.MinX, + b = k.MaxX, + e, + h, + a, + j = k.id, + d = $(j), + l = j + "_Bullet"; + for (g = k.MinR; g <= f; g++) { + e = oZ.getArZ(c, b, g); + for ( + h = e.length; + h--; + (a = e[h]).Altitude < 2 && a.getHit1(a, 130) + ) {} + } + oSym.addTask( + 100, + function (i) { + PlayAudio( + ["kernelpult", "kernelpult2"][ + Math.floor(Math.random() * 2) + ] + ); + --i && oSym.addTask(100, arguments.callee, [i]); + }, + [4] + ); + d.childNodes[1].src = + "images/Plants/SeaAnemone/GloomShroomAttack.gif"; + SetVisible($(l)); + ImgSpriter( + l, + j, + [ + ["0 0", 9, 1], + ["0 -200px", 9, 2], + ["0 -400px", 9, 3], + ["0 -600px", 9, 4], + ["0 -800px", 9, 5], + ["0 -1000px", 9, 6], + ["0 -1200px", 9, 7], + ["0 -1400px", 9, 8], + ["0 -1600px", 9, 9], + ["0 -1800px", 9, 10], + ["0 -2000px", 9, 11], + ["0 -2200px", 9, -1], + ], + 0, + function (m, n) { + var i = $(n); + $P[n] && + (i.childNodes[1].src = + "images/Plants/SeaAnemone/GloomShroom.gif"); + SetHidden($(m)); + } + ); + }, + })), + (oTTS = InheritO(CPlants, { + EName: "oTTS", + CName: "Thorn Seaweed", + width: 75, + height: 226, + beAttackedPointR: 55, + beAttackedPointR: 80, + SunNum: 50, + BookHandBack: 3.5, + GetDY: function (b, c, a) { + return 5; + }, + NormalGif: 1, + AudioArr: ["TTS"], + PicArr: [ + "images/Card/Plants/TTS.png", + "images/Plants/TTS/0.gif", + "images/Plants/TTS/Float.gif", + "images/Plants/TTS/Grab.png", + "images/Plants/TTS/splash.png", + ], + Tooltip: "Grabs zombies in front of it", + Produce: + '荆棘海草会用力抓住靠近他的任何东西并拖入
地下。

Harm:巨大
Scope:一格
Instructions:一次性使用。

荆棘海草最近一次的表白又被捷足先登了,这
使他很伤心。不过很快他就重新振作起来并吸取
教训。一定要抓住机会!但他似乎对这句话理解
有误:他无论碰到什么都会死死地抓住。', + CanGrow: function (e, d, f) { + var c = d + "_" + f, + b = oGd.$LF[d], + a = f < 1 || f > 9; + return b % 2 + ? b < 3 + ? !( + a || + e[1] || + e[2] || + e[0] || + oGd.$Crater[c] || + oGd.$Tombstones[c] + ) + : !(a || e[0] || oGd.$Crater[c]) + : 0; + }, + getTriggerRange: function (a, b, c) { + return [[b, c, 0]]; + }, + BirthStyle: function (c, d, b, a) { + b.childNodes[1].src = "images/Plants/TTS/Float.gif"; + EditEle( + b, + { + id: d, + }, + a, + EDPZ + ); + }, + getHurt: function (d, b, a) { + var c = this; + b == 3 + ? (c.HP -= a) < 1 && c.Die() + : ((c.canTrigger = 0), c.NormalAttack(c, d)); + }, + TriggerCheck: function (b, a) { + b.AttackedLX < GetX(9) && + b.beAttacked && + ((this.canTrigger = 0), this.NormalAttack(this, b)); + }, + NormalAttack: function (a, b) { + PlayAudio("TTS"); + a.getHurt = function () {}; + b.getHurt = function () {}; + b.beAttacked = 0; + b.isAttacking = 1; + NewImg( + 0, + "images/Plants/TTS/Grab.png", + "left:" + + b.beAttackedPointL + + "px;top:" + + (b.height - 67) + + "px", + b.Ele + ); + oSym.addTask( + 50, + function (g, h) { + var e = g.id, + f = h.id, + d = e + "_splash", + c = f + "_splash"; + NewEle( + c, + "div", + "position:absolute;background:url(images/Plants/TTS/splash.png);left:" + + (h.AttackedLX - 10) + + "px;top:" + + (h.pixelTop + h.height - 88) + + "px;width:97px;height:88px;over-flow:hidden", + 0, + EDPZ + ); + ImgSpriter( + d, + e, + [ + ["0 0", 9, 1], + ["-97px 0", 9, 2], + ["-194px 0", 9, 3], + ["-291px 0", 9, 4], + ["-388px 0", 9, 5], + ["-485px 0", 9, 6], + ["-582px 0", 9, 7], + ["-679px 0", 9, -1], + ], + 0, + function (i, j) { + ClearChild($(i)); + } + ); + ImgSpriter( + c, + f, + [ + ["0 0", 9, 1], + ["-97px 0", 9, 2], + ["-194px 0", 9, 3], + ["-291px 0", 9, 4], + ["-388px 0", 9, 5], + ["-485px 0", 9, 6], + ["-582px 0", 9, 7], + ["-679px 0", 9, -1], + ], + 0, + function (i, j) { + ClearChild($(i)); + } + ); + h.DisappearDie(); + g.Die(); + }, + [a, b] + ); + }, + })), + (oMagneticmuShroom = InheritO(CPlants, { + EName: "oMagneticmuShroom", + CName: "Magnet-shroom", + width: 176, + height: 148, + beAttackedPointR: 50, + SunNum: 50, + BookHandBack: 2.5, + AudioArr: ["Magneticmu"], + PicArr: [ + "images/Card/Plants/MagneticmuShroom.png", + "images/Plants/MagneticmuShroom/0.gif", + "images/Plants/MagneticmuShroom/Shrubbery.gif", + "images/Plants/MagneticmuShroom/ShrubberyBoom.gif" + $Random, + ], + Tooltip: "Removes helmets and other metal objects from zombies。", + Produce: + '磁力菇可以吸走周围僵尸的护具

Scope:约一行
Instructions:安放即可使用(一次性)

磁力是一种强大的力量,非常强大,强大到有
时都吓到磁力菇自己了。能力越大,责任越大
,他不知道自己能否肩负得起这责任', + InitTrigger: function () {}, + getHurt: function () {}, + PrivateBirth: function (a) { + oSym.addTask( + 10, + function (j) { + var h = $P[j]; + if (h) { + PlayAudio("Magneticmu"); + var b = $(j), + f = h.R, + c = oZ.getArZ(100, oS.W, f), + e = c.length, + g = oGd.$Ice[f], + d = oGd.$Crater; + while (e--) { + if ( + c[e].EName == "oBucketheadZombie" || + c[e].EName == "oFootballZombie" || + c[e].EName == "oHeiFootballZombie" || + c[e].EName == "oCFootballZombie" || + c[e].EName == "oScreenDoorZombie" || + c[e].EName == "oDuckyTubeZombie3" || + c[e].EName == "oDuckyTubeZombie4" || + c[e].EName == "oSmallFootballZombie" || + c[e].EName == "oCBucketheadZombie" || + c[e].EName == "oTrashZombie" || + c[e].EName == "oCFootballZombie" || + c[e].EName == "oConeheadZombie" || + c[e].EName == "oCConeheadZombie" || + c[e].EName == "oJY" || + c[e].EName == "oBalloonZombie" || + c[e].EName == "oNewspaperZombie" || + c[e].EName == "oCNewspaperZombie" || + c[e].EName == "oDuckyTubeZombie2" + ) { + c[e].OrnHP = 0; + c[e].getHit0(c[e], 0, 0); + } + } + h.Die(1); + EditEle( + b.childNodes[1], + { + src: "images/Plants/MagneticmuShroom/ShrubberyBoom.gif", + }, + { + width: "176px", + height: "148px", + left: "-1px", + top: "-1px", + } + ); + oSym.addTask(220, ClearChild, [b]); + } + }, + [a.id] + ); + }, + })), + (oLaserBean = InheritO(CPlants, { + EName: "oLaserBean", + CName: "Laser Bean", + width: 80, + height: 80, + beAttackedPointR: 80, + SunNum: 75, + SunNum: 250, + coolTime: 30, + HP: 4e3, + PicArr: [ + "images/Card/Plants/LaserBean.png", + "images/Plants/LaserPea/0.gif", + "images/Plants/LaserPea/LaserPea.gif", + "images/Plants/LaserPea/LaserPeaSleep.gif", + "images/Plants/LaserPea/LaserPeaAttack.gif", + "images/Plants/LaserPea/LaserPeaBullet.gif", + ], + AudioArr: ["LaserBean"], + Tooltip: "Fires a high-powered laser at an entire row of zombies", + Produce: + '激光蚕豆向一整排僵尸发射激光

Scope:一整排僵尸

本豆由上海宝开绘制


这位就是大名鼎鼎的激光豆。但是为什么他是
蚕豆?恐怕没人搞得清楚。', + CheckLoop: function (b, c) { + var a = this.id; + this.NormalAttack(b); + oSym.addTask( + 292, + function (e, f, h) { + var g; + (g = $P[e]) && g.AttackCheck1(f, h); + }, + [a, b, c] + ); + }, + getShadow: function (a) { + return ( + "left:" + + (a.width * 0.5 - +20) + + "px;top:" + + (a.height - 22) + + "px" + ); + }, + GetDY: function (b, c, a) { + return a[0] ? -18 : -10; + }, + GetDX: function () { + return -68; + }, + PrivateBirth: function (b) { + var a = b.id; + NewEle( + a + "_Bullet", + "div", + "position:absolute;visibility:hidden;width:343px;height:62px;left:" + + b.AttackedRX + + "px;top:" + + (b.pixelTop + 5) + + "px;background:url(images/Plants/LaserPea/LaserPeaBullet.gif);z-index:" + + (b.zIndex + 1), + 0, + EDPZ + ); + }, + PrivateDie: function (a) { + ClearChild($(a.id + "_Bullet")); + }, + getTriggerRange: function (a, b, c) { + return [[b, Math.min(c + 686, oS.W), 0]]; + }, + NormalAttack: function () { + PlayAudio("LaserBean"); + var f = this, + d = oZ.getArZ( + f.AttackedLX, + Math.min(f.AttackedRX + 686, oS.W), + f.R + ), + e = d.length, + g, + c = f.id, + b = $(c), + a = c + "_Bullet"; + while (e--) { + (g = d[e]).Altitude < 2 && g.getHit1(g, 850); + } + b.childNodes[1].src = "images/Plants/LaserPea/LaserPeaAttack.gif"; + SetVisible($(a)); + ImgSpriter( + a, + c, + [ + ["0 0", 4, 1], + ["0 -62px", 4, 2], + ["0 -124px", 5, 3], + ["0 -186px", 5, 4], + ["0 -248px", 5, 5], + ["0 -310px", 6, 6], + ["0 -372px", 6, 7], + ["0 -434px", 7, -1], + ], + 0, + function (i, j) { + var h = $(j); + $P[j] && + ((h.childNodes[1].src = + "images/Plants/LaserPea/LaserPea.gif"), + SetHidden($(i))); + } + ); + }, + })), + (oGoldenPrize = InheritO(CPlants, { + EName: "oGoldenPrize", + CName: "Sunflower Golden Trophy", + PicArr: ["images/interface/0.gif", "images/interface/0.gif"], + Tooltip: "Ta daa!", + })), + (oShovel = InheritO(CPlants, { + EName: "oShovel", + CName: "Shovel", + width: 130, + height: 114, + beAttackedPointR: 70, + PicArr: [ + "images/interface/Shovel/ShovelCard.png", + "images/interface/Shovel/0.gif", + ], + Tooltip: "Shovel up plants you dont want!", + })); oFlowerVase = InheritO(CPlants, { - EName: "oFlowerVase", - CName: "Vase", // ID 中文名 - SunNum: 0, - coolTime: 0, // 阳光 冷却时间 - canEat: 0, - Stature: -1, // 是否可以被吃 身高 - HP: 10, - width: 89, - height: 95, - beAttackedPointR: 53, // 血量 宽度 高度 判定点 + EName: "oFlowerVase", + CName: "Vase", // ID 中文名 + SunNum: 0, + coolTime: 0, // 阳光 冷却时间 + canEat: 0, + Stature: -1, // 是否可以被吃 身高 + HP: 10, + width: 89, + height: 95, + beAttackedPointR: 53, // 血量 宽度 高度 判定点 - PotSize: 0, - XRay: 0, - CardTime: 1500, // 花瓶种类 是否透视 卡片冷却时间 - Ele: null, - ImgEle: null, - EleBG: null, - EleCard: null, - EleClick: null, // 透视状态下背景Ele 透视状态下图片Ele - VaseValue: null, // 花瓶本身数据,格式: { "Type": "Plants | Zombie | SunNum", "Value": oSunFlower | oZombie | 300, } - AutoSetXRay: true, - AutoJoker: true, - AutoSummonBase: true, - BasePlant: null, // 是否自动改变XRay 小丑是否自爆 是否自动生成底座(如在河里生成睡莲)底座植物 + PotSize: 0, + XRay: 0, + CardTime: 1500, // 花瓶种类 是否透视 卡片冷却时间 + Ele: null, + ImgEle: null, + EleBG: null, + EleCard: null, + EleClick: null, // 透视状态下背景Ele 透视状态下图片Ele + VaseValue: null, // 花瓶本身数据,格式: { "Type": "Plants | Zombie | SunNum", "Value": oSunFlower | oZombie | 300, } + AutoSetXRay: true, + AutoJoker: true, + AutoSummonBase: true, + BasePlant: null, // 是否自动改变XRay 小丑是否自爆 是否自动生成底座(如在河里生成睡莲)底座植物 - AudioArr: [ - "VaseBreaking0", - "VaseBreaking1", - "VaseBreaking2", - "VaseBreaking3", - ], - PicArr: [ - "images/interface/Scary_Pot.png", - "images/interface/Scary_Pot.png", - "images/interface/Scary_Pot.png", - "images/interface/Scary_Pot.png", - ], - Tooltip: "Break me!", - Produce: "Beat me, hate me, you can never break me!", + AudioArr: [ + "VaseBreaking0", + "VaseBreaking1", + "VaseBreaking2", + "VaseBreaking3", + ], + PicArr: [ + "images/interface/Scary_Pot.png", + "images/interface/Scary_Pot.png", + "images/interface/Scary_Pot.png", + "images/interface/Scary_Pot.png", + ], + Tooltip: "Break me!", + Produce: "Beat me, hate me, you can never break me!", - SetStyle: function (Kind) { - // 设置花瓶皮肤 - var self = this, - XRay = self.XRay; // 获取基本信息 - var PLeft = Kind * 80, - PRight = PLeft + 80; // 计算裁剪 + SetStyle: function (Kind) { + // 设置花瓶皮肤 + var self = this, + XRay = self.XRay; // 获取基本信息 + var PLeft = Kind * 80, + PRight = PLeft + 80; // 计算裁剪 - self.PotSize = Kind; // 设置花盆类型 - SetStyle(self.ImgEle, { - // 花盆本体的图片 - clip: "rect(101px, " + PRight + "px, 202px, " + PLeft + "px)", - top: "-101px", - left: -80 * Kind + "px", - }); - SetStyle(self.EleBG, { - // 花盆透视时的图层 - clip: "rect(0px, " + PRight + "px, 101px, " + PLeft + "px)", - top: "0px", - left: -80 * Kind + "px", - }); + self.PotSize = Kind; // 设置花盆类型 + SetStyle(self.ImgEle, { + // 花盆本体的图片 + clip: "rect(101px, " + PRight + "px, 202px, " + PLeft + "px)", + top: "-101px", + left: -80 * Kind + "px", + }); + SetStyle(self.EleBG, { + // 花盆透视时的图层 + clip: "rect(0px, " + PRight + "px, 101px, " + PLeft + "px)", + top: "0px", + left: -80 * Kind + "px", + }); - self.SetXRay(XRay); // 设置透视功能 - }, + self.SetXRay(XRay); // 设置透视功能 + }, - SetXRay: function (TurnOn) { - // 设置花瓶透视 - var self = this, - XRay = !!TurnOn; // 获取基本信息 + SetXRay: function (TurnOn) { + // 设置花瓶透视 + var self = this, + XRay = !!TurnOn; // 获取基本信息 - self.XRay = XRay; // 设置 XRay - SetAlpha(self.EleBG, XRay * 100, XRay * 1); // 显示透视图层 - SetAlpha(self.EleCard, XRay * 100, XRay * 1); // 显示预览图层 - }, + self.XRay = XRay; // 设置 XRay + SetAlpha(self.EleBG, XRay * 100, XRay * 1); // 显示透视图层 + SetAlpha(self.EleCard, XRay * 100, XRay * 1); // 显示预览图层 + }, - InitImage: function (Kind, XRay) { - // 初始化图片 - var self = this, - ID = self.id, - Ele = self.Ele, - ImgEle = self.ImgEle, - EleBG = self.EleBG, - EleCard = self.EleCard; + InitImage: function (Kind, XRay) { + // 初始化图片 + var self = this, + ID = self.id, + Ele = self.Ele, + ImgEle = self.ImgEle, + EleBG = self.EleBG, + EleCard = self.EleCard; - if (!Ele) self.Ele = Ele = $(ID); // 初始化 Ele - if (!ImgEle) self.ImgEle = ImgEle = Ele.childNodes[1]; // 初始化 ImgEle - if (!EleBG) - (self.EleBG = EleBG = self.ImgEle.cloneNode(false)), - Ele.appendChild(EleBG); // 初始化 EleBG,克隆图片,并复制到自己的图片下 - if (!EleCard) self.EleCard = EleCard = NewEle("", "img", "", {}, Ele); // 初始化 EleCard 节点 - if (!XRay) XRay = self.XRay; - if (!Kind) Kind = self.PotSize; + if (!Ele) self.Ele = Ele = $(ID); // 初始化 Ele + if (!ImgEle) self.ImgEle = ImgEle = Ele.childNodes[1]; // 初始化 ImgEle + if (!EleBG) + (self.EleBG = EleBG = self.ImgEle.cloneNode(false)), + Ele.appendChild(EleBG); // 初始化 EleBG,克隆图片,并复制到自己的图片下 + if (!EleCard) self.EleCard = EleCard = NewEle("", "img", "", {}, Ele); // 初始化 EleCard 节点 + if (!XRay) XRay = self.XRay; + if (!Kind) Kind = self.PotSize; - var selfValue = self.VaseValue || {}, - VType = selfValue.Type || "Plants", - VValue = - selfValue.Value || - (VType == "SunNum" - ? 50 - : VType == "Plants" - ? oPeashooter - : oZombie); // 获取该花瓶的内部玩意 - switch (VType) { - case "Plants": // 植物类型 - EleCard.style = - "clip:rect(auto,auto,40px,auto);width:70px;height:80px;top:25px;left:5.5px;"; // 裁剪图片 - EleCard.src = VValue.prototype.PicArr[VValue.prototype.CardGif]; // 显示植物卡槽 - break; + var selfValue = self.VaseValue || {}, + VType = selfValue.Type || "Plants", + VValue = + selfValue.Value || + (VType == "SunNum" + ? 50 + : VType == "Plants" + ? oPeashooter + : oZombie); // 获取该花瓶的内部玩意 + switch (VType) { + case "Plants": // 植物类型 + EleCard.style = + "clip:rect(auto,auto,40px,auto);width:70px;height:80px;top:25px;left:5.5px;"; // 裁剪图片 + EleCard.src = VValue.prototype.PicArr[VValue.prototype.CardGif]; // 显示植物卡槽 + break; - case "Zombie": - if ($User.Client.Mobile) { - // 如果当前设备是移动端,为了移动端屏幕考虑,直接显示卡槽 - EleCard.style = - "clip:rect(auto,auto,40px,auto);width:70px;height:80px;top:25px;left:5.5px;"; // 裁剪图片 - EleCard.src = - VValue.prototype.PicArr[VValue.prototype.CardGif]; // 显示植物卡槽 - } else { - var PT = VValue.prototype, - ZWidth = PT.beAttackedPointR - PT.beAttackedPointL, - ZHeight = PT.height - PT.GetDTop; - var MaxW = 60, - MaxH = 75, - K = MaxW / MaxH, - EK; // 横款最大值、 横款比值 - var ELeft = 0, - ETop = 0, - LPoint = PT.beAttackedPointL; // 最终的相对位置 + case "Zombie": + if ($User.Client.Mobile) { + // 如果当前设备是移动端,为了移动端屏幕考虑,直接显示卡槽 + EleCard.style = + "clip:rect(auto,auto,40px,auto);width:70px;height:80px;top:25px;left:5.5px;"; // 裁剪图片 + EleCard.src = + VValue.prototype.PicArr[VValue.prototype.CardGif]; // 显示植物卡槽 + } else { + var PT = VValue.prototype, + ZWidth = PT.beAttackedPointR - PT.beAttackedPointL, + ZHeight = PT.height - PT.GetDTop; + var MaxW = 60, + MaxH = 75, + K = MaxW / MaxH, + EK; // 横款最大值、 横款比值 + var ELeft = 0, + ETop = 0, + LPoint = PT.beAttackedPointL; // 最终的相对位置 - if (ZWidth > ZHeight) - (EK = ZWidth / MaxW), (ZHeight /= EK), (ZWidth = MaxW); - // 等比缩放 - else if (ZHeight > ZWidth) - (EK = ZHeight / MaxH), (ZWidth /= EK), (ZHeight = MaxH); // 等比缩放 + if (ZWidth > ZHeight) + (EK = ZWidth / MaxW), (ZHeight /= EK), (ZWidth = MaxW); + // 等比缩放 + else if (ZHeight > ZWidth) + (EK = ZHeight / MaxH), (ZWidth /= EK), (ZHeight = MaxH); // 等比缩放 - (ELeft = 20 / 2 + -LPoint / EK + (MaxW - ZWidth) / 2), - (ETop = 15 / 2 + (MaxH - ZHeight) / 2); + (ELeft = 20 / 2 + -LPoint / EK + (MaxW - ZWidth) / 2), + (ETop = 15 / 2 + (MaxH - ZHeight) / 2); - EleCard.style = - "top:" + - ETop + - "px;left:" + - ELeft + - "px;width:" + - PT.width / EK + - "px;height:" + - PT.height / EK + - "px;"; // 确定位置 - EleCard.src = - VValue.prototype.PicArr[VValue.prototype.StaticGif]; // 显示僵尸站立图片 - } - break; + EleCard.style = + "top:" + + ETop + + "px;left:" + + ELeft + + "px;width:" + + PT.width / EK + + "px;height:" + + PT.height / EK + + "px;"; // 确定位置 + EleCard.src = + VValue.prototype.PicArr[VValue.prototype.StaticGif]; // 显示僵尸站立图片 + } + break; - case "SunNum": - EleCard.style = "left:10px;top:12.5px;width:64px;height:64px;"; - EleCard.src = "images/interface/Sun.gif"; - break; - } + case "SunNum": + EleCard.style = "left:10px;top:12.5px;width:64px;height:64px;"; + EleCard.src = "images/interface/Sun.gif"; + break; + } - self.SetStyle(Kind), self.SetXRay(XRay); // 初始化显示 - }, + self.SetStyle(Kind), self.SetXRay(XRay); // 初始化显示 + }, - BirthStyle: function (self, Id, Ele, Style) { - var Dom = Ele.childNodes[1]; // 获取植物实际图片 - (Dom.src = self.PicArr[self.NormalGif]), (Dom.style.height = "202px"); // 设置实际宽高 - (self.Ele = Ele), EditEle(Ele, { id: Id }, Style, EDPZ); // 修改 + BirthStyle: function (self, Id, Ele, Style) { + var Dom = Ele.childNodes[1]; // 获取植物实际图片 + (Dom.src = self.PicArr[self.NormalGif]), (Dom.style.height = "202px"); // 设置实际宽高 + (self.Ele = Ele), EditEle(Ele, { id: Id }, Style, EDPZ); // 修改 - self.InitImage(self.PotSize, self.XRay), self.FreshXRay(true); // 初始化图片等信息 - }, + self.InitImage(self.PotSize, self.XRay), self.FreshXRay(true); // 初始化图片等信息 + }, - PrivateBirth: function (self) { - var Id = self.id, - Ele = self.Ele; // 获取 + PrivateBirth: function (self) { + var Id = self.id, + Ele = self.Ele; // 获取 - // 定义鼠标事件相关 - var ClickEle = (self.EleClick = NewEle( - "dCheck_" + Id, - "div", - "left:" + - Ele.style.left + - ";top:" + - Ele.style.top + - ";position:absolute;width:80px;height:101px;background:#FFF;filter:alpha(opacity=0);opacity:0;z-index:150;cursor:pointer", - { - onclick: function () { - self.Die(); - }, - onmouseover: function () { - SetAlpha(Ele, 50, 0.5); - }, - onmouseout: function () { - SetAlpha(Ele, 100, 1); - }, - }, - EDAll - )); + // 定义鼠标事件相关 + var ClickEle = (self.EleClick = NewEle( + "dCheck_" + Id, + "div", + "left:" + + Ele.style.left + + ";top:" + + Ele.style.top + + ";position:absolute;width:80px;height:101px;background:#FFF;filter:alpha(opacity=0);opacity:0;z-index:150;cursor:pointer", + { + onclick: function () { + self.Die(); + }, + onmouseover: function () { + SetAlpha(Ele, 50, 0.5); + }, + onmouseout: function () { + SetAlpha(Ele, 100, 1); + }, + }, + EDAll + )); - self.ControlBase("Summon", "Auto"); // 生成底座 - self.VaseValue = self.VaseValue || { Type: "SunNum", Value: 50 }; // 如果没有信息,默认创建一个 50 阳光的罐子 - }, - getHurt: function (a, b, c) { - b != 2 && this.Die(); - }, // 受伤判定,目前是冰车不会破坏罐子,以后如果有巨人这里是需要修改的 - BoomDie: function () { - this.Die(null, false); - }, // 爆炸后,直接生成,不播放音效 - PrivateDie: function () {}, - InitTrigger: function () {}, // 特殊死亡 - Die: function (ImgSave, OnAudio) { - // 是否保留图片 是否播放音效 - var self = this, - ID = self.id; // 定义需要用到的变量 + self.ControlBase("Summon", "Auto"); // 生成底座 + self.VaseValue = self.VaseValue || { Type: "SunNum", Value: 50 }; // 如果没有信息,默认创建一个 50 阳光的罐子 + }, + getHurt: function (a, b, c) { + b != 2 && this.Die(); + }, // 受伤判定,目前是冰车不会破坏罐子,以后如果有巨人这里是需要修改的 + BoomDie: function () { + this.Die(null, false); + }, // 爆炸后,直接生成,不播放音效 + PrivateDie: function () {}, + InitTrigger: function () {}, // 特殊死亡 + Die: function (ImgSave, OnAudio) { + // 是否保留图片 是否播放音效 + var self = this, + ID = self.id; // 定义需要用到的变量 - self.oTrigger && oT.delP(self), (self.HP = 0); // 删除触发器 清空血量 - delete $P[ID], delete oGd.$[self.R + "_" + self.C + "_" + self.PKind]; // 删除本格数据 - $P.length -= 1; - !ImgSave && ClearChild(self.Ele); // 清除图片 + self.oTrigger && oT.delP(self), (self.HP = 0); // 删除触发器 清空血量 + delete $P[ID], delete oGd.$[self.R + "_" + self.C + "_" + self.PKind]; // 删除本格数据 + $P.length -= 1; + !ImgSave && ClearChild(self.Ele); // 清除图片 - if (OnAudio != false) - PlayAudio( - self.AudioArr[Math.floor(Math.random() * self.AudioArr.length)] - ); // 随机播放音效 + if (OnAudio != false) + PlayAudio( + self.AudioArr[Math.floor(Math.random() * self.AudioArr.length)] + ); // 随机播放音效 - self.ControlBase("Delete", "Auto"); // 删除底座 - ClearChild(self.EleClick), self.PlaceItem(); // 放置物品 - }, - PlaceItem: function () { - var self = this, - ID = self.id, - Val = self.VaseValue, - Type = Val.Type, - Value = Val.Value; // 解包 + self.ControlBase("Delete", "Auto"); // 删除底座 + ClearChild(self.EleClick), self.PlaceItem(); // 放置物品 + }, + PlaceItem: function () { + var self = this, + ID = self.id, + Val = self.VaseValue, + Type = Val.Type, + Value = Val.Value; // 解包 - switch ( - Type // 根据内容生成 - ) { - case "Plants": // 丢出植物卡片 - AppearCard( - GetX(self.C) - self.width / 2, - GetY(self.R) - 30, - Value, - 0, - self.CardTime - ); - break; + switch ( + Type // 根据内容生成 + ) { + case "Plants": // 丢出植物卡片 + AppearCard( + GetX(self.C) - self.width / 2, + GetY(self.R) - 30, + Value, + 0, + self.CardTime + ); + break; - case "Zombie": // 生成僵尸 - (Value = new Value()), ++oP.NumZombies; // 创建僵尸对象 增加僵尸数量 + case "Zombie": // 生成僵尸 + (Value = new Value()), ++oP.NumZombies; // 创建僵尸对象 增加僵尸数量 - // 生成僵尸 - asyncInnerHTML( - Value.CustomBirth(self.R, self.C, 0, "auto"), - function (n, m) { - EDPZ.appendChild(n), m.Birth(); - if (m.EName == "oJackinTheBoxZombie" && self.AutoJoker) - m.OpenBox(m.id); // 如果是小丑僵尸,直接引爆爆炸 - }, - Value - ); - break; + // 生成僵尸 + asyncInnerHTML( + Value.CustomBirth(self.R, self.C, 0, "auto"), + function (n, m) { + EDPZ.appendChild(n), m.Birth(); + if (m.EName == "oJackinTheBoxZombie" && self.AutoJoker) + m.OpenBox(m.id); // 如果是小丑僵尸,直接引爆爆炸 + }, + Value + ); + break; - case "SunNum": // 生成阳光 - if (Value > 500) - AppearSun( - GetX(self.C) - self.width / 2, - GetY(self.R) - 30, - Value - 500, - 0 - ), - (Value = 500); // 大于五百的阳光直接生成一个大的 - while (Value > 25) - AppearSun( - GetX(self.C) - self.width / 2, - GetY(self.R) - 30, - 25, - 0 - ), - (Value -= 25); // 500 以内的,一个一个生成 - AppearSun( - GetX(self.C) - self.width / 2, - GetY(self.R) - 30, - Value, - 0 - ), - (Value = 0); // 余下的单独生成 - break; - } - }, - ControlBase: function (Type, Ticket) { - // 生成底座 - var BaseList = [oFlowerPot, oLilyPad], - LastBase = null, - self = this; // 底座 + case "SunNum": // 生成阳光 + if (Value > 500) + AppearSun( + GetX(self.C) - self.width / 2, + GetY(self.R) - 30, + Value - 500, + 0 + ), + (Value = 500); // 大于五百的阳光直接生成一个大的 + while (Value > 25) + AppearSun( + GetX(self.C) - self.width / 2, + GetY(self.R) - 30, + 25, + 0 + ), + (Value -= 25); // 500 以内的,一个一个生成 + AppearSun( + GetX(self.C) - self.width / 2, + GetY(self.R) - 30, + Value, + 0 + ), + (Value = 0); // 余下的单独生成 + break; + } + }, + ControlBase: function (Type, Ticket) { + // 生成底座 + var BaseList = [oFlowerPot, oLilyPad], + LastBase = null, + self = this; // 底座 - if (self.BasePlant && $P[self.BasePlant.id]) - self.BasePlant.canEat = true; // 默认先解除 canEat 状态 - if (Ticket == "Auto" && !self.AutoSummonBase) return; // 如果是尝试自动生成的话,直接返回 + if (self.BasePlant && $P[self.BasePlant.id]) + self.BasePlant.canEat = true; // 默认先解除 canEat 状态 + if (Ticket == "Auto" && !self.AutoSummonBase) return; // 如果是尝试自动生成的话,直接返回 - switch (Type) { - case "Summon": // 生成底座 - self.ControlBase("Delete", "Auto"); // 先尝试删除原绑定的底座 + switch (Type) { + case "Summon": // 生成底座 + self.ControlBase("Delete", "Auto"); // 先尝试删除原绑定的底座 - if (self.CanGrow([], self.R, self.C)) break; // 如果可以直接种植,则直接返回 + if (self.CanGrow([], self.R, self.C)) break; // 如果可以直接种植,则直接返回 - for (var Index in BaseList) { - // 尝试生成所有种类的底座 - if (BaseList[Index].prototype.CanGrow([], self.R, self.C)) - LastBase = BaseList[Index]; - } + for (var Index in BaseList) { + // 尝试生成所有种类的底座 + if (BaseList[Index].prototype.CanGrow([], self.R, self.C)) + LastBase = BaseList[Index]; + } - if (LastBase) { - // 如果可以生成 - CustomSpecial(LastBase, self.R, self.C); // 生成种类 - self.BasePlant = LastBase = - oGd.$[self.R + "_" + self.C + "_" + 0]; // 获取底座 - LastBase.canEat = false; // 默认底座是不能被吃的 - } - break; + if (LastBase) { + // 如果可以生成 + CustomSpecial(LastBase, self.R, self.C); // 生成种类 + self.BasePlant = LastBase = + oGd.$[self.R + "_" + self.C + "_" + 0]; // 获取底座 + LastBase.canEat = false; // 默认底座是不能被吃的 + } + break; - case "Delete": // 删除绑定的底座 - if (!self.BasePlant || !$P[self.BasePlant.id]) break; // 如果底座根本不存在,直接返回 + case "Delete": // 删除绑定的底座 + if (!self.BasePlant || !$P[self.BasePlant.id]) break; // 如果底座根本不存在,直接返回 - self.BasePlant.Die(); // 顺带删除底座 + self.BasePlant.Die(); // 顺带删除底座 - break; - } - }, - FreshXRay: function (OnlySelf) { - // 全局属性,为场上所有花瓶设置 XRAY - var self = this, - Ground = oGd.$, - R = self.R - 1, - C = self.C - 1, - Arr = [0, 1, 2], - Str, - Pla = oGd.$Plantern; + break; + } + }, + FreshXRay: function (OnlySelf) { + // 全局属性,为场上所有花瓶设置 XRAY + var self = this, + Ground = oGd.$, + R = self.R - 1, + C = self.C - 1, + Arr = [0, 1, 2], + Str, + Pla = oGd.$Plantern; - if (OnlySelf) { - // 只检查自己 - if (self.AutoSetXRay == false) return; // 不允许改变 - self.SetXRay(false); // 默认关闭,查找周围是否有再开启 - for (var RQ in Arr) - for (var CQ in Arr) - if (Pla[1 * RQ + R + "_" + (1 * CQ + C)]) - self.SetXRay(true); // 设置透视 - } else { - for (var Q in Ground) { - // 遍历每一个花瓶,如果是花瓶则自我检查 - if (Ground[Q] && Ground[Q].EName == "oFlowerVase") - Ground[Q].FreshXRay(true); - } - } - }, + if (OnlySelf) { + // 只检查自己 + if (self.AutoSetXRay == false) return; // 不允许改变 + self.SetXRay(false); // 默认关闭,查找周围是否有再开启 + for (var RQ in Arr) + for (var CQ in Arr) + if (Pla[1 * RQ + R + "_" + (1 * CQ + C)]) + self.SetXRay(true); // 设置透视 + } else { + for (var Q in Ground) { + // 遍历每一个花瓶,如果是花瓶则自我检查 + if (Ground[Q] && Ground[Q].EName == "oFlowerVase") + Ground[Q].FreshXRay(true); + } + } + }, - /* + /* 函数介绍: 直接在 (R, C) 位置根据你的信息生成一个罐子,此属性会创建一个新的罐子 使用说明: SetR: 行, SetC: 列 @@ -10046,25 +12560,25 @@ oFlowerVase = InheritO(CPlants, { SpecialFunc: 生成前调用的函数(可选) 执行成功后会返回该花瓶的信息。 */ - SpecialBirth: function (SetR, SetC, VaseColor, VaseValue, SpecialFunc) { - var Obj = new oFlowerVase(); + SpecialBirth: function (SetR, SetC, VaseColor, VaseValue, SpecialFunc) { + var Obj = new oFlowerVase(); - (Obj.PotSize = VaseColor), (Obj.VaseValue = VaseValue); // 基本信息 + (Obj.PotSize = VaseColor), (Obj.VaseValue = VaseValue); // 基本信息 - if (SpecialFunc) SpecialFunc(Obj); // 让调用者自己操作花瓶信息 + if (SpecialFunc) SpecialFunc(Obj); // 让调用者自己操作花瓶信息 - Obj.Birth(GetX(SetC), GetY(SetR), SetR, SetC, [], null); + Obj.Birth(GetX(SetC), GetY(SetR), SetR, SetC, [], null); - return Obj; - }, + return Obj; + }, - /* + /* 函数介绍: 判断场上是否满足普通砸罐子关卡通关条件 通关条件: 场地上没有罐子、且场地上没有僵尸 */ - GetLevelStatus: function () { - for (var O in $P) if ($P[O].EName == "oFlowerVase") return false; // 如果有花瓶,直接返回 - for (var O in $Z) if ($Z[O].PZ != 0) return false; // 如果有非魅惑的僵尸,直接返回 - return true; - }, + GetLevelStatus: function () { + for (var O in $P) if ($P[O].EName == "oFlowerVase") return false; // 如果有花瓶,直接返回 + for (var O in $Z) if ($Z[O].PZ != 0) return false; // 如果有非魅惑的僵尸,直接返回 + return true; + }, }); diff --git a/game/js/CZombie.js b/game/js/CZombie.js index 9d38700c..8f35ee2f 100644 --- a/game/js/CZombie.js +++ b/game/js/CZombie.js @@ -1,13925 +1,14055 @@ var CZombies = (function (b, a) { - return ( - ((a = function () {}).prototype = { - name: "Zombies", - HP: 270, - Lvl: 1, - NormalGif: 2, - CardGif: 0, - StaticGif: 1, - BookHandBack: 0, - AudioArr: [], - CanSelect: 1, - CanDisplay: 1, - BookHandPosition: "50% 70%", - AttackGif: 3, - LostHeadGif: 4, - LostHeadAttackGif: 5, - HeadGif: 6, - DieGif: 7, - BoomDieGif: 8, - width: 166, - height: 144, - beAttackedPointL: 82, - beAttackedPointR: 156, - BreakPoint: 90, - SunNum: 50, - coolTime: 0, - Ornaments: 0, - OrnHP: 0, - OSpeed: 1.6, - Speed: 1.6, - FangXiang: "GoLeft", - isGoingDie: 0, - DeltaDirectionSpeed: { - GoLeft: 1, - GoRight: -1, - GoUp: 0, - GoDown: 0, - }, - CSS_fliph: "", - CSS_alpha: "", - AKind: 0, - beAttacked: 1, - isAttacking: 0, - Attack: 100, - WalkDirection: 0, - LivingArea: 1, - Altitude: 1, - FreeSetbodyTime: 0, - FreeFreezeTime: 0, - FreeSlowTime: 0, - AudioArr: ["zombie_falling_1"], - HeadPosition: [ - { - x: 62, - y: 16, - width: 40, - height: 40, - }, - { - x: 62, - y: 16, - width: 40, - height: 40, - }, - ], - Ifgc: 0, - getButter( - self, - time = 400, - img = null, - wh = [1, 1], - delta = [0, 0] - ) { - if (!$Z[self.id] || self.HP < self.BreakPoint) { - return; - } - if (img === null) { - img = "images/Plants/KernelPult/butter.png"; - } - var body = self._TMP_ELEBODY - ? self._TMP_ELEBODY - : self.EleBody; - var bodyStyle = body.style; - var oOpacity = bodyStyle.opacity; - var canvas, ctx; - if (!self.FreeSetbodyTime) { - canvas = NewEle( - "Buttered_Zombie_" + Math.random(), - "canvas", - bodyStyle.cssText, - { - height: body.offsetHeight, - width: body.offsetWidth, - }, - self.Ele - ); - ctx = canvas.getContext("2d"); - ctx.drawImage( - self.EleBody, - 0, - 0, - body.offsetWidth, - body.offsetHeight - ); - self._TMP_ELEBODY = self.EleBody; - self.EleBody.style.opacity = 0; - self.Speed = 0; - self.EleBody = canvas; - for ( - var i = 0; - i < self._TMP_ELEBODY.attributes.length; - i++ - ) { - var name = self._TMP_ELEBODY.attributes[i].nodeName; - if (!/id|width|height|style/.test(name)) { - self.EleBody.setAttribute( - name, - self._TMP_ELEBODY.attributes[i].nodeValue - ); - } - } - oSym.addTask(1, function CheckSPC(last = null) { - if (!$Z[self.id] || self.HP < self.BreakPoint) { - if (self._FREESetBody_) { - self._FREESetBody_(); - } - } else if ($Z[self.id] && self.FreeSetbodyTime) { - if (canvas.src) { - self._TMP_ELEBODY.src = canvas.src; - canvas.src = ""; - } - if (last != self._TMP_ELEBODY.src) { - ctx.clearRect( - 0, - 0, - body.offsetWidth * 2, - body.offsetHeight * 2 - ); - ctx.drawImage( - self._TMP_ELEBODY, - 0, - 0, - body.offsetWidth, - body.offsetHeight - ); - last = self._TMP_ELEBODY.src; - } - var position = - self.HeadPosition.length > self.isAttacking - ? self.HeadPosition[self.isAttacking] - : self.HeadPosition[0]; - for (var i of self._Butter_Img_) { - if ( - position.x != - Number.parseInt(i.style.left) || - position.y != - Number.parseInt(i.style.top) - ) { - i.style.left = - position.x + delta[0] + "px"; - i.style.top = - position.y + delta[1] + "px"; - } - } - oSym.addTask(1, CheckSPC, [last]); - } - }); - self._FREESetBody_ = function () { - self.FreeSetbodyTime = 0; - self.EleBody = self._TMP_ELEBODY; - if (self.EleBody) { - self.EleBody.style.opacity = oOpacity; - for ( - var i = 0; - i < canvas.attributes.length; - i++ - ) { - var name = canvas.attributes[i].nodeName; - if (!/id|width|height/.test(name)) { - self.EleBody.setAttribute( - name, - canvas.attributes[i].nodeValue - ); - } - } - canvas.src && (self.EleBody.src = canvas.src); - } - ClearChild(canvas); - delete self._TMP_ELEBODY; - for ( - var i = self._Butter_Img_.length - 1; - i >= 0; - i-- - ) { - ClearChild(self._Butter_Img_[i]); - } - delete self._Butter_Img_; - if (!self.FreeFreezeTime) { - self.Speed = self.FreeSlowTime - ? self.OSpeed / 2 - : self.OSpeed; - self.isAttacking && self.JudgeAttack(); - } - delete self._FREESetBody_; - }; - } else { - canvas = self.EleBody; - ctx = canvas.getContext("2d"); - } - if (!$("butter" + self.id + img)) { - !self._Butter_Img_ && (self._Butter_Img_ = []); - var position = - self.HeadPosition.length > self.isAttacking - ? self.HeadPosition[self.isAttacking] - : self.HeadPosition[0]; - self._Butter_Img_.push( - NewImg( - "butter_" + self.id + img, - img, - (self.FangXiang == "GoRight" - ? "transform:rotateY(180deg);" - : "") + - `position:absolute;left:${ - position.x + delta[0] - }px;top:${position.y + delta[1]}px;width:${ - position.width * wh[0] - }px;height:${position.height * wh[1]}px;`, - self.Ele - ) - ); - } - oSym.addTask( - time, - (expectedFSBT) => { - if ( - $Z[self.id] && - self.FreeSetbodyTime === expectedFSBT && - self._FREESetBody_ - ) { - self._FREESetBody_(); - } - }, - [(self.FreeSetbodyTime = oSym.Now + time)] - ); - }, - CanPass: function (d, c) { - return c && c != 2; - }, - CanGrow: function (d, c, e) { - return this.CanPass(c, oGd.$LF[c]) && e > oS.ArP.ArC[1]; - }, - ChkActs: function (h, f, j, e) { - var d, c, g; - !(h.FreeFreezeTime || h.FreeSetbodyTime) - ? (h.beAttacked && !h.isAttacking && h.JudgeAttack(), - !h.isAttacking - ? (c = h.AttackedRX -= d = h.Speed) < -50 - ? (j.splice(e, 1), h.DisappearDie(), (g = 0)) - : (c < 100 && - !h.PointZombie && - ((h.PointZombie = 1), - !oS.CardKind && - (StopMusic(), - PlayAudio("losemusic", false)), - h.ChangeR({ - R: f, - ar: [oS.R - 1], - CustomTop: - 400 - h.height + h.GetDY(), - })), - (h.ZX = h.AttackedLX -= d), - (h.Ele.style.left = - Math.floor((h.X -= d)) + "px"), - (g = 1)) - : (g = 1)) - : (g = 1); - return g; - }, - ChkActs1: function (g, e, h, d) { - var c, f; - !(g.FreeFreezeTime || g.FreeSetbodyTime) - ? (g.beAttacked && !g.isAttacking && g.JudgeAttack(), - !g.isAttacking - ? (g.AttackedLX += c = g.Speed) > oS.W - ? (h.splice(d, 1), g.DisappearDie(), (f = 0)) - : ((g.ZX = g.AttackedRX += c), - (g.Ele.style.left = - Math.ceil((g.X += c)) + "px"), - (f = 1)) - : (f = 1)) - : (f = 1); - return f; - }, - GetDX: function () { - return -110; - }, - GetDY: function () { - return -10; - }, - GetDTop: 0, - ChangeR: function (e) { - var h = e.R, - g = e.ar || [], - j = e.CustomTop, - d = this, - q = h - 1, - l, - k = d.id, - m = -1, - f = d.Ele, - n = d.EleBody, - i = oGd.$LF, - c; - !g.length && - (d.CanPass(q, i[q]) && (g[++m] = q), - d.CanPass((q += 2), i[q]) && (g[++m] = q)); - g.length - ? ((l = !d.WalkDirection ? -5 : 5), - (d.ZX += l), - (d.AttackedLX += l), - (d.AttackedRX += l), - (d.X += l), - (q = g[Math.floor(Math.random() * g.length)]), - SetStyle(f, { - left: d.X + "px", - top: - (d.pixelTop = - j == undefined - ? GetY(q) - d.height + d.GetDY() - : j) + "px", - zIndex: (d.zIndex = 3 * q + 1), - }), - d.isAttacking && (n.src = d.PicArr[d.NormalGif]), - oZ.moveTo(k, h, q)) - : (n.src = d.PicArr[d.NormalGif]); - d.isAttacking = 0; - }, - getShadow: function (c) { - return ( - "left:" + - (c.beAttackedPointL - 10) + - "px;top:" + - (c.height - 22) + - "px" - ); - }, - Init: function (g, i, e, d) { - var c = 0, - h = this, - f = []; - i.AttackedRX = - (i.X = (i.ZX = i.AttackedLX = g) - i.beAttackedPointL) + - i.beAttackedPointR; - while (--d) { - i.CanPass(d, e[d]) && (f[c++] = d); - } - i.ArR = f; - i.ArHTML = [ - '

', - ]; - }, - getHTML: function (d, g, i, h, f, k, j, c) { - var e = this.ArHTML; - return ( - e[0] + - d + - e[1] + - f + - e[2] + - g + - e[3] + - i + - e[4] + - h + - e[5] + - k + - e[6] + - j + - e[7] + - c + - e[8] - ); - }, - prepareBirth: function (f) { - var h = this, - e = h.ArR, - d = e[Math.floor(Math.random() * e.length)], - g = GetY(d) + h.GetDY(), - c = g - h.height, - j = 3 * d + 1, - i = (h.id = "Z_" + Math.random()); - h.R = d; - h.pixelTop = c; - h.zIndex = j; - (h.delayT = f) && (h.FreeSetbodyTime = oSym.Now); - return h.getHTML( - i, - h.X, - c, - j, - "none", - "auto", - h.GetDTop, - h.PicArr[h.NormalGif] - ); - }, - CustomBirth: function (i, c, d, m) { - var g = this, - f = GetY(i) + g.GetDY(), - h = f - g.height, - k = 3 * i + 1, - e = (g.id = "Z_" + Math.random()), - l = g.beAttackedPointL, - j = g.beAttackedPointR; - g.AttackedRX = - (g.X = - (g.ZX = g.AttackedLX = GetX(c) - (j - l) * 0.5) - - l) + j; - g.R = i; - g.pixelTop = h; - g.zIndex = k; - (g.delayT = d) && (g.FreeSetbodyTime = oSym.Now); - return g.getHTML( - e, - g.X, - h, - k, - "none", - m || 0, - g.GetDTop, - g.PicArr[g.NormalGif] - ); - }, - BirthCallBack: function (f) { - var e = f.delayT, - d = f.id, - c = (f.Ele = $(d)); - f.EleShadow = c.firstChild; - f.EleBody = c.childNodes[1]; - e - ? oSym.addTask( - e, - function (h, g) { - var i = $Z[h]; - i && ((i.FreeSetbodyTime = 0), SetBlock(g)); - }, - [d, c] - ) - : SetBlock(c); - }, - Birth: function () { - var c = this; - $Z[c.id] = c; - oZ.add(c); - c.BirthCallBack(c); - }, - getCrushed: function (c) { - return true; - }, - getRaven: function () { - return this.DisappearDie(), 1; - }, - getExplosion: function () { - this.ExplosionDie(); - }, - getThump: function () { - this.DisappearDie(); - }, - PlayNormalballAudio: function () { - PlayAudio("splat" + Math.floor(1 + Math.random() * 3)); - }, - PlayFireballAudio: function () { - PlayAudio( - ["ignite", "ignite2"][Math.floor(Math.random() * 2)] - ); - }, - PlaySlowballAudio: function () { - PlayAudio("frozen"); - }, - getFireball: function (h, e, g) { - h.FreeSlowTime = 0; - h.Attack = 100; - h.FreeFreezeTime || h.FreeSetbodyTime - ? (h.PlayNormalballAudio(), (h.Speed = h.OSpeed)) - : h.PlayFireballAudio(); - var f = h.AttackedLX, - j = h.AttackedRX, - c = !g - ? oZ.getArZ(f, f + 40, h.R) - : oZ.getArZ(j - 40, j, h.R), - d = c.length; - while (d--) { - c[d].getSputtering(); - } - }, - getSputtering: function (c) { - this.getHit2(this, c || 13, 0); - }, - getSlow: function (h, f, g) { - var d = oSym.Now + g, - e = h.FreeSlowTime, - c = 0; - switch (true) { - case !e: - !(h.FreeFreezeTime || h.FreeSetbodyTime) && - (h.Speed = 0.5 * h.OSpeed); - h.Attack = 50; - h.PlaySlowballAudio(); - h.FreeSlowTime = d; - c = 1; - break; - case e < d: - h.FreeSlowTime = d; - h.PlayNormalballAudio(); - c = 1; - } - c && - oSym.addTask( - g, - function (j, i) { - var k = $Z[j]; - k && - k.FreeSlowTime == i && - ((k.FreeSlowTime = 0), - (k.Attack = 100), - k.Speed && (k.Speed = k.OSpeed)); - }, - [f, d] - ); - }, - getFreeze: function (d, c) { - d.beAttacked && d.getHit0(d, 20, 0); - d.Speed = 0; - oSym.addTask( - 400, - function (g, f, e) { - ClearChild(e); - var h = $Z[g]; - h && - h.FreeFreezeTime == f && - ((h.FreeFreezeTime = 0), - (h.Attack = 50), - !h.FreeSetbodyTime && - ((h.Speed = 0.5 * h.OSpeed), - h.isAttacking && h.JudgeAttack()), - oSym.addTask( - 1500, - function (j, i) { - var k = $Z[j]; - k && - k.FreeSlowTime == i && - ((k.FreeSlowTime = 0), - (k.Attack = 100), - !k.FreeSetbodyTime && - (k.Speed = k.OSpeed)); - }, - [g, (h.FreeSlowTime = oSym.Now + 1500)] - )); - }, - [ - c, - (d.FreeFreezeTime = oSym.Now + 400), - NewImg( - "icetrap_" + Math.random(), - "images/Plants/IceShroom/icetrap.gif", - d.getShadow(d), - d.Ele - ), - ] - ); - }, - NormalDie: function () { - var c = this; - PlayAudio("zombie_falling_1"); - c.EleBody.src = c.PicArr[c.DieGif] + Math.random(); - oSym.addTask(250, ClearChild, [c.Ele]); - c.HP = 0; - delete $Z[c.id]; - c.PZ && oP.MonPrgs(); - }, - ExplosionDie: function () { - var c = this; - c.EleBody.src = c.PicArr[c.BoomDieGif] + Math.random(); - oSym.addTask(300, ClearChild, [c.Ele]); - c.HP = 0; - delete $Z[c.id]; - c.PZ && oP.MonPrgs(); - }, - DisappearDie: function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - var c = this; - c.GoingDieHead(c.id, c.PicArr, c); - ClearChild(c.Ele); - c.HP = 0; - delete $Z[c.id]; - c.PZ && oP.MonPrgs(); - }, - GoingDieHead: function (e, c, d) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - c[d.HeadGif] + Math.random(), - "left:" + - d.AttackedLX + - "px;top:" + - (d.pixelTop - 20) + - "px;z-index:" + - d.zIndex, - EDPZ - ), - ]); - }, - GoingDie: function (d) { - var c = this, - e = c.id; - c.EleBody.src = d; - c.GoingDieHead(e, c.PicArr, c); - c.beAttacked = 0; - c.FreeFreezeTime = c.FreeSetbodyTime = c.FreeSlowTime = 0; - c.AutoReduceHP(e); - }, - AutoReduceHP: function (c) { - oSym.addTask( - 100, - function (e) { - var d = $Z[e]; - d && - ((d.HP -= 60) < 1 - ? d.NormalDie() - : d.AutoReduceHP(e)); - }, - [c] - ); - }, - JudgeAttack: function () { - var g = this, - d = g.ZX, - e = g.R + "_", - f = GetC(d), - h = oGd.$, - c; - (c = g.JudgeLR(g, e, f, d, h) || g.JudgeSR(g, e, f, d, h)) - ? (!g.isAttacking && - ((g.isAttacking = 1), - (g.EleBody.src = g.PicArr[g.AttackGif])), - g.NormalAttack(c[0], c[1])) - : g.isAttacking && - ((g.isAttacking = 0), - (g.EleBody.src = g.PicArr[g.NormalGif])); - }, - JudgeLR: function (f, d, e, c, g) { - return e > 10 || e < 1 - ? false - : (function () { - d += --e + "_"; - var h = 3, - i; - while (h--) { - if ((i = g[d + h]) && i.canEat) { - return i.AttackedRX >= c && - i.AttackedLX <= c - ? [f.id, i.id] - : false; - } - } - })(); - }, - JudgeSR: function (f, d, e, c, g) { - return e > 9 - ? false - : (function () { - d += e + "_"; - var h = 3, - i; - while (h--) { - if ((i = g[d + h]) && i.canEat) { - return i.AttackedRX >= c && - i.AttackedLX <= c - ? [f.id, i.id] - : false; - } - } - })(); - }, - JudgeAttackH1: function () { - var e = this, - d = oZ.getZ0(e.ZX, e.R), - c = e.id; - d && - d.beAttacked && - d.AttackedLX < 900 && - d.Altitude == 1 && - (e.AttackZombie(d.id), - !d.isAttacking && d.AttackZombie(c)); - }, - JudgeAttackH: function () { - var e = this, - d = oZ.getZ0(e.ZX, e.R), - f = e.id, - c; - d && d.beAttacked && d.AttackedLX < oS.W && d.Altitude == 1 - ? !e.isAttacking - ? ((e.isAttacking = 1), - (e.EleBody.src = e.PicArr[e.AttackGif]), - e.AttackZombie(f, (c = d.id)), - !d.isAttacking && d.AttackZombie2(d, c, f)) - : e.AttackZombie(f, d.id, 1) - : e.isAttacking && - ((e.isAttacking = 0), - (e.EleBody.src = e.PicArr[e.NormalGif])); - }, - AttackZombie: function (d, c) { - oSym.addTask( - 10, - function (f, e) { - var h = $Z[f], - g; - h && - h.beAttacked && - !h.FreeFreezeTime && - !h.FreeSetbodyTime && - ((g = $Z[e]) && g.getHit0(g, 10, 0), - h.JudgeAttackH()); - }, - [d, c] - ); - }, - AttackZombie2: function (e, d, c) { - e.isAttacking = 1; - e.EleBody.src = e.PicArr[e.AttackGif]; - oSym.addTask( - 10, - function (g, f) { - var i = $Z[g], - h; - i && - i.beAttacked && - !i.FreeFreezeTime && - !i.FreeSetbodyTime && - ((h = $Z[f]) - ? (h.getHit0(h, 10, 0), - oSym.addTask(10, arguments.callee, [ - g, - f, - ])) - : ((i.isAttacking = 0), - (i.EleBody.src = i.PicArr[i.NormalGif]))); - }, - [d, c] - ); - }, - NormalAttack: function (d, c) { - PlayAudio( - ["chomp", "chompsoft"][Math.floor(Math.random() * 2)] - ); - oSym.addTask( - 50, - function (e) { - $Z[e] && - PlayAudio( - ["chomp", "chompsoft"][ - Math.floor(Math.random() * 2) - ] - ); - }, - [d] - ); - oSym.addTask( - 100, - function (f, e) { - var h = $Z[f], - g; - h && - h.beAttacked && - !h.FreeFreezeTime && - !h.FreeSetbodyTime && - ((g = $P[e]) && g.getHurt(h, h.AKind, h.Attack), - h.JudgeAttack()); - }, - [d, c] - ); - }, - PZ: 1, - ExchangeLR: function (f, d) { - var e = f.width, - h = f.beAttackedPointL, - c = f.beAttackedPointR, - g = f.Ele; - g.style.left = - (f.X = f.AttackedLX - (f.beAttackedPointL = e - c)) + - "px"; - f.beAttackedPointR = e - h; - f.EleShadow.style.cssText = f.getShadow(f); - f.ExchangeLR2(f, f.EleBody, d); - }, - ExchangeLR2: $User.Browser.IE - ? function (e, c, d) { - c.style.filter = - e.CSS_alpha + (e.CSS_fliph = d ? " fliph" : ""); - } - : function (e, c, d) { - c.className = d ? "fliph" : ""; - }, - bedevil: function (c) { - c.ExchangeLR(c, 1); - c.JudgeAttack = c.JudgeAttackH; - c.PZ = 0; - c.WalkDirection = 1; - c.ZX = c.AttackedRX; - c.ChkActs = c.ChkActs1; - oP.MonPrgs(); - }, - SetAlpha: $User.Browser.IE - ? function (f, d, e, c) { - d.style.filter = - (f.CSS_alpha = "alpha(opacity=" + e + ")") + - f.CSS_fliph; - } - : function (f, d, e, c) { - d.style.opacity = c; - }, - }), - a - ); - })(), - OrnNoneZombies = (function () { - var a = function (c, b) { - if ((c.HP -= b) < c.BreakPoint) { - c.GoingDie( - c.PicArr[ - [c.LostHeadGif, c.LostHeadAttackGif][c.isAttacking] - ] - ); - c.getHit0 = c.getHit1 = c.getHit2 = c.getHit3 = function () {}; - return; - } - c.SetAlpha(c, c.EleBody, 50, 0.5); - oSym.addTask( - 10, - function (e, d) { - (d = $Z[e]) && d.SetAlpha(d, d.EleBody, 100, 1); - }, - [c.id] - ); - }; + return ( + ((a = function () {}).prototype = { + name: "Zombies", + HP: 270, + Lvl: 1, + NormalGif: 2, + CardGif: 0, + StaticGif: 1, + BookHandBack: 0, + AudioArr: [], + CanSelect: 1, + CanDisplay: 1, + BookHandPosition: "50% 70%", + AttackGif: 3, + LostHeadGif: 4, + LostHeadAttackGif: 5, + HeadGif: 6, + DieGif: 7, + BoomDieGif: 8, + width: 166, + height: 144, + beAttackedPointL: 82, + beAttackedPointR: 156, + BreakPoint: 90, + SunNum: 50, + coolTime: 0, + Ornaments: 0, + OrnHP: 0, + OSpeed: 1.6, + Speed: 1.6, + FangXiang: "GoLeft", + isGoingDie: 0, + DeltaDirectionSpeed: { + GoLeft: 1, + GoRight: -1, + GoUp: 0, + GoDown: 0, + }, + CSS_fliph: "", + CSS_alpha: "", + AKind: 0, + beAttacked: 1, + isAttacking: 0, + Attack: 100, + WalkDirection: 0, + LivingArea: 1, + Altitude: 1, + FreeSetbodyTime: 0, + FreeFreezeTime: 0, + FreeSlowTime: 0, + AudioArr: ["zombie_falling_1"], + HeadPosition: [ + { + x: 62, + y: 16, + width: 40, + height: 40, + }, + { + x: 62, + y: 16, + width: 40, + height: 40, + }, + ], + Ifgc: 0, + getButter( + self, + time = 400, + img = null, + wh = [1, 1], + delta = [0, 0] + ) { + if (!$Z[self.id] || self.HP < self.BreakPoint) { + return; + } + if (img === null) { + img = "images/Plants/KernelPult/butter.png"; + } + var body = self._TMP_ELEBODY + ? self._TMP_ELEBODY + : self.EleBody; + var bodyStyle = body.style; + var oOpacity = bodyStyle.opacity; + var canvas, ctx; + if (!self.FreeSetbodyTime) { + canvas = NewEle( + "Buttered_Zombie_" + Math.random(), + "canvas", + bodyStyle.cssText, + { + height: body.offsetHeight, + width: body.offsetWidth, + }, + self.Ele + ); + ctx = canvas.getContext("2d"); + ctx.drawImage( + self.EleBody, + 0, + 0, + body.offsetWidth, + body.offsetHeight + ); + self._TMP_ELEBODY = self.EleBody; + self.EleBody.style.opacity = 0; + self.Speed = 0; + self.EleBody = canvas; + for ( + var i = 0; + i < self._TMP_ELEBODY.attributes.length; + i++ + ) { + var name = self._TMP_ELEBODY.attributes[i].nodeName; + if (!/id|width|height|style/.test(name)) { + self.EleBody.setAttribute( + name, + self._TMP_ELEBODY.attributes[i].nodeValue + ); + } + } + oSym.addTask(1, function CheckSPC(last = null) { + if (!$Z[self.id] || self.HP < self.BreakPoint) { + if (self._FREESetBody_) { + self._FREESetBody_(); + } + } else if ($Z[self.id] && self.FreeSetbodyTime) { + if (canvas.src) { + self._TMP_ELEBODY.src = canvas.src; + canvas.src = ""; + } + if (last != self._TMP_ELEBODY.src) { + ctx.clearRect( + 0, + 0, + body.offsetWidth * 2, + body.offsetHeight * 2 + ); + ctx.drawImage( + self._TMP_ELEBODY, + 0, + 0, + body.offsetWidth, + body.offsetHeight + ); + last = self._TMP_ELEBODY.src; + } + var position = + self.HeadPosition.length > self.isAttacking + ? self.HeadPosition[self.isAttacking] + : self.HeadPosition[0]; + for (var i of self._Butter_Img_) { + if ( + position.x != + Number.parseInt(i.style.left) || + position.y != + Number.parseInt(i.style.top) + ) { + i.style.left = + position.x + delta[0] + "px"; + i.style.top = + position.y + delta[1] + "px"; + } + } + oSym.addTask(1, CheckSPC, [last]); + } + }); + self._FREESetBody_ = function () { + self.FreeSetbodyTime = 0; + self.EleBody = self._TMP_ELEBODY; + if (self.EleBody) { + self.EleBody.style.opacity = oOpacity; + for ( + var i = 0; + i < canvas.attributes.length; + i++ + ) { + var name = canvas.attributes[i].nodeName; + if (!/id|width|height/.test(name)) { + self.EleBody.setAttribute( + name, + canvas.attributes[i].nodeValue + ); + } + } + canvas.src && (self.EleBody.src = canvas.src); + } + ClearChild(canvas); + delete self._TMP_ELEBODY; + for ( + var i = self._Butter_Img_.length - 1; + i >= 0; + i-- + ) { + ClearChild(self._Butter_Img_[i]); + } + delete self._Butter_Img_; + if (!self.FreeFreezeTime) { + self.Speed = self.FreeSlowTime + ? self.OSpeed / 2 + : self.OSpeed; + self.isAttacking && self.JudgeAttack(); + } + delete self._FREESetBody_; + }; + } else { + canvas = self.EleBody; + ctx = canvas.getContext("2d"); + } + if (!$("butter" + self.id + img)) { + !self._Butter_Img_ && (self._Butter_Img_ = []); + var position = + self.HeadPosition.length > self.isAttacking + ? self.HeadPosition[self.isAttacking] + : self.HeadPosition[0]; + self._Butter_Img_.push( + NewImg( + "butter_" + self.id + img, + img, + (self.FangXiang == "GoRight" + ? "transform:rotateY(180deg);" + : "") + + `position:absolute;left:${ + position.x + delta[0] + }px;top:${position.y + delta[1]}px;width:${ + position.width * wh[0] + }px;height:${position.height * wh[1]}px;`, + self.Ele + ) + ); + } + oSym.addTask( + time, + (expectedFSBT) => { + if ( + $Z[self.id] && + self.FreeSetbodyTime === expectedFSBT && + self._FREESetBody_ + ) { + self._FREESetBody_(); + } + }, + [(self.FreeSetbodyTime = oSym.Now + time)] + ); + }, + CanPass: function (d, c) { + return c && c != 2; + }, + CanGrow: function (d, c, e) { + return this.CanPass(c, oGd.$LF[c]) && e > oS.ArP.ArC[1]; + }, + ChkActs: function (h, f, j, e) { + var d, c, g; + !(h.FreeFreezeTime || h.FreeSetbodyTime) + ? (h.beAttacked && !h.isAttacking && h.JudgeAttack(), + !h.isAttacking + ? (c = h.AttackedRX -= d = h.Speed) < -50 + ? (j.splice(e, 1), + h.DisappearDie(), + (g = 0)) + : (c < 100 && + !h.PointZombie && + ((h.PointZombie = 1), + !oS.CardKind && + (StopMusic(), + PlayAudio("losemusic", false)), + h.ChangeR({ + R: f, + ar: [oS.R - 1], + CustomTop: + 400 - h.height + h.GetDY(), + })), + (h.ZX = h.AttackedLX -= d), + (h.Ele.style.left = + Math.floor((h.X -= d)) + "px"), + (g = 1)) + : (g = 1)) + : (g = 1); + return g; + }, + ChkActs1: function (g, e, h, d) { + var c, f; + !(g.FreeFreezeTime || g.FreeSetbodyTime) + ? (g.beAttacked && !g.isAttacking && g.JudgeAttack(), + !g.isAttacking + ? (g.AttackedLX += c = g.Speed) > oS.W + ? (h.splice(d, 1), + g.DisappearDie(), + (f = 0)) + : ((g.ZX = g.AttackedRX += c), + (g.Ele.style.left = + Math.ceil((g.X += c)) + "px"), + (f = 1)) + : (f = 1)) + : (f = 1); + return f; + }, + GetDX: function () { + return -110; + }, + GetDY: function () { + return -10; + }, + GetDTop: 0, + ChangeR: function (e) { + var h = e.R, + g = e.ar || [], + j = e.CustomTop, + d = this, + q = h - 1, + l, + k = d.id, + m = -1, + f = d.Ele, + n = d.EleBody, + i = oGd.$LF, + c; + !g.length && + (d.CanPass(q, i[q]) && (g[++m] = q), + d.CanPass((q += 2), i[q]) && (g[++m] = q)); + g.length + ? ((l = !d.WalkDirection ? -5 : 5), + (d.ZX += l), + (d.AttackedLX += l), + (d.AttackedRX += l), + (d.X += l), + (q = g[Math.floor(Math.random() * g.length)]), + SetStyle(f, { + left: d.X + "px", + top: + (d.pixelTop = + j == undefined + ? GetY(q) - d.height + d.GetDY() + : j) + "px", + zIndex: (d.zIndex = 3 * q + 1), + }), + d.isAttacking && (n.src = d.PicArr[d.NormalGif]), + oZ.moveTo(k, h, q)) + : (n.src = d.PicArr[d.NormalGif]); + d.isAttacking = 0; + }, + getShadow: function (c) { + return ( + "left:" + + (c.beAttackedPointL - 10) + + "px;top:" + + (c.height - 22) + + "px" + ); + }, + Init: function (g, i, e, d) { + var c = 0, + h = this, + f = []; + i.AttackedRX = + (i.X = (i.ZX = i.AttackedLX = g) - i.beAttackedPointL) + + i.beAttackedPointR; + while (--d) { + i.CanPass(d, e[d]) && (f[c++] = d); + } + i.ArR = f; + i.ArHTML = [ + '
', + ]; + }, + getHTML: function (d, g, i, h, f, k, j, c) { + var e = this.ArHTML; + return ( + e[0] + + d + + e[1] + + f + + e[2] + + g + + e[3] + + i + + e[4] + + h + + e[5] + + k + + e[6] + + j + + e[7] + + c + + e[8] + ); + }, + prepareBirth: function (f) { + var h = this, + e = h.ArR, + d = e[Math.floor(Math.random() * e.length)], + g = GetY(d) + h.GetDY(), + c = g - h.height, + j = 3 * d + 1, + i = (h.id = "Z_" + Math.random()); + h.R = d; + h.pixelTop = c; + h.zIndex = j; + (h.delayT = f) && (h.FreeSetbodyTime = oSym.Now); + return h.getHTML( + i, + h.X, + c, + j, + "none", + "auto", + h.GetDTop, + h.PicArr[h.NormalGif] + ); + }, + CustomBirth: function (i, c, d, m) { + var g = this, + f = GetY(i) + g.GetDY(), + h = f - g.height, + k = 3 * i + 1, + e = (g.id = "Z_" + Math.random()), + l = g.beAttackedPointL, + j = g.beAttackedPointR; + g.AttackedRX = + (g.X = + (g.ZX = g.AttackedLX = GetX(c) - (j - l) * 0.5) - + l) + j; + g.R = i; + g.pixelTop = h; + g.zIndex = k; + (g.delayT = d) && (g.FreeSetbodyTime = oSym.Now); + return g.getHTML( + e, + g.X, + h, + k, + "none", + m || 0, + g.GetDTop, + g.PicArr[g.NormalGif] + ); + }, + BirthCallBack: function (f) { + var e = f.delayT, + d = f.id, + c = (f.Ele = $(d)); + f.EleShadow = c.firstChild; + f.EleBody = c.childNodes[1]; + e + ? oSym.addTask( + e, + function (h, g) { + var i = $Z[h]; + i && ((i.FreeSetbodyTime = 0), SetBlock(g)); + }, + [d, c] + ) + : SetBlock(c); + }, + Birth: function () { + var c = this; + $Z[c.id] = c; + oZ.add(c); + c.BirthCallBack(c); + }, + getCrushed: function (c) { + return true; + }, + getRaven: function () { + return this.DisappearDie(), 1; + }, + getExplosion: function () { + this.ExplosionDie(); + }, + getThump: function () { + this.DisappearDie(); + }, + PlayNormalballAudio: function () { + PlayAudio("splat" + Math.floor(1 + Math.random() * 3)); + }, + PlayFireballAudio: function () { + PlayAudio( + ["ignite", "ignite2"][Math.floor(Math.random() * 2)] + ); + }, + PlaySlowballAudio: function () { + PlayAudio("frozen"); + }, + getFireball: function (h, e, g) { + h.FreeSlowTime = 0; + h.Attack = 100; + h.FreeFreezeTime || h.FreeSetbodyTime + ? (h.PlayNormalballAudio(), (h.Speed = h.OSpeed)) + : h.PlayFireballAudio(); + var f = h.AttackedLX, + j = h.AttackedRX, + c = !g + ? oZ.getArZ(f, f + 40, h.R) + : oZ.getArZ(j - 40, j, h.R), + d = c.length; + while (d--) { + c[d].getSputtering(); + } + }, + getSputtering: function (c) { + this.getHit2(this, c || 13, 0); + }, + getSlow: function (h, f, g) { + var d = oSym.Now + g, + e = h.FreeSlowTime, + c = 0; + switch (true) { + case !e: + !(h.FreeFreezeTime || h.FreeSetbodyTime) && + (h.Speed = 0.5 * h.OSpeed); + h.Attack = 50; + h.PlaySlowballAudio(); + h.FreeSlowTime = d; + c = 1; + break; + case e < d: + h.FreeSlowTime = d; + h.PlayNormalballAudio(); + c = 1; + } + c && + oSym.addTask( + g, + function (j, i) { + var k = $Z[j]; + k && + k.FreeSlowTime == i && + ((k.FreeSlowTime = 0), + (k.Attack = 100), + k.Speed && (k.Speed = k.OSpeed)); + }, + [f, d] + ); + }, + getFreeze: function (d, c) { + d.beAttacked && d.getHit0(d, 20, 0); + d.Speed = 0; + oSym.addTask( + 400, + function (g, f, e) { + ClearChild(e); + var h = $Z[g]; + h && + h.FreeFreezeTime == f && + ((h.FreeFreezeTime = 0), + (h.Attack = 50), + !h.FreeSetbodyTime && + ((h.Speed = 0.5 * h.OSpeed), + h.isAttacking && h.JudgeAttack()), + oSym.addTask( + 1500, + function (j, i) { + var k = $Z[j]; + k && + k.FreeSlowTime == i && + ((k.FreeSlowTime = 0), + (k.Attack = 100), + !k.FreeSetbodyTime && + (k.Speed = k.OSpeed)); + }, + [g, (h.FreeSlowTime = oSym.Now + 1500)] + )); + }, + [ + c, + (d.FreeFreezeTime = oSym.Now + 400), + NewImg( + "icetrap_" + Math.random(), + "images/Plants/IceShroom/icetrap.gif", + d.getShadow(d), + d.Ele + ), + ] + ); + }, + NormalDie: function () { + var c = this; + PlayAudio("zombie_falling_1"); + c.EleBody.src = c.PicArr[c.DieGif] + Math.random(); + oSym.addTask(250, ClearChild, [c.Ele]); + c.HP = 0; + delete $Z[c.id]; + c.PZ && oP.MonPrgs(); + }, + ExplosionDie: function () { + var c = this; + c.EleBody.src = c.PicArr[c.BoomDieGif] + Math.random(); + oSym.addTask(300, ClearChild, [c.Ele]); + c.HP = 0; + delete $Z[c.id]; + c.PZ && oP.MonPrgs(); + }, + DisappearDie: function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + var c = this; + c.GoingDieHead(c.id, c.PicArr, c); + ClearChild(c.Ele); + c.HP = 0; + delete $Z[c.id]; + c.PZ && oP.MonPrgs(); + }, + GoingDieHead: function (e, c, d) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + c[d.HeadGif] + Math.random(), + "left:" + + d.AttackedLX + + "px;top:" + + (d.pixelTop - 20) + + "px;z-index:" + + d.zIndex, + EDPZ + ), + ]); + }, + GoingDie: function (d) { + var c = this, + e = c.id; + c.EleBody.src = d; + c.GoingDieHead(e, c.PicArr, c); + c.beAttacked = 0; + c.FreeFreezeTime = c.FreeSetbodyTime = c.FreeSlowTime = 0; + c.AutoReduceHP(e); + }, + AutoReduceHP: function (c) { + oSym.addTask( + 100, + function (e) { + var d = $Z[e]; + d && + ((d.HP -= 60) < 1 + ? d.NormalDie() + : d.AutoReduceHP(e)); + }, + [c] + ); + }, + JudgeAttack: function () { + var g = this, + d = g.ZX, + e = g.R + "_", + f = GetC(d), + h = oGd.$, + c; + (c = g.JudgeLR(g, e, f, d, h) || g.JudgeSR(g, e, f, d, h)) + ? (!g.isAttacking && + ((g.isAttacking = 1), + (g.EleBody.src = g.PicArr[g.AttackGif])), + g.NormalAttack(c[0], c[1])) + : g.isAttacking && + ((g.isAttacking = 0), + (g.EleBody.src = g.PicArr[g.NormalGif])); + }, + JudgeLR: function (f, d, e, c, g) { + return e > 10 || e < 1 + ? false + : (function () { + d += --e + "_"; + var h = 3, + i; + while (h--) { + if ((i = g[d + h]) && i.canEat) { + return i.AttackedRX >= c && + i.AttackedLX <= c + ? [f.id, i.id] + : false; + } + } + })(); + }, + JudgeSR: function (f, d, e, c, g) { + return e > 9 + ? false + : (function () { + d += e + "_"; + var h = 3, + i; + while (h--) { + if ((i = g[d + h]) && i.canEat) { + return i.AttackedRX >= c && + i.AttackedLX <= c + ? [f.id, i.id] + : false; + } + } + })(); + }, + JudgeAttackH1: function () { + var e = this, + d = oZ.getZ0(e.ZX, e.R), + c = e.id; + d && + d.beAttacked && + d.AttackedLX < 900 && + d.Altitude == 1 && + (e.AttackZombie(d.id), + !d.isAttacking && d.AttackZombie(c)); + }, + JudgeAttackH: function () { + var e = this, + d = oZ.getZ0(e.ZX, e.R), + f = e.id, + c; + d && d.beAttacked && d.AttackedLX < oS.W && d.Altitude == 1 + ? !e.isAttacking + ? ((e.isAttacking = 1), + (e.EleBody.src = e.PicArr[e.AttackGif]), + e.AttackZombie(f, (c = d.id)), + !d.isAttacking && d.AttackZombie2(d, c, f)) + : e.AttackZombie(f, d.id, 1) + : e.isAttacking && + ((e.isAttacking = 0), + (e.EleBody.src = e.PicArr[e.NormalGif])); + }, + AttackZombie: function (d, c) { + oSym.addTask( + 10, + function (f, e) { + var h = $Z[f], + g; + h && + h.beAttacked && + !h.FreeFreezeTime && + !h.FreeSetbodyTime && + ((g = $Z[e]) && g.getHit0(g, 10, 0), + h.JudgeAttackH()); + }, + [d, c] + ); + }, + AttackZombie2: function (e, d, c) { + e.isAttacking = 1; + e.EleBody.src = e.PicArr[e.AttackGif]; + oSym.addTask( + 10, + function (g, f) { + var i = $Z[g], + h; + i && + i.beAttacked && + !i.FreeFreezeTime && + !i.FreeSetbodyTime && + ((h = $Z[f]) + ? (h.getHit0(h, 10, 0), + oSym.addTask(10, arguments.callee, [ + g, + f, + ])) + : ((i.isAttacking = 0), + (i.EleBody.src = i.PicArr[i.NormalGif]))); + }, + [d, c] + ); + }, + NormalAttack: function (d, c) { + PlayAudio( + ["chomp", "chompsoft"][Math.floor(Math.random() * 2)] + ); + oSym.addTask( + 50, + function (e) { + $Z[e] && + PlayAudio( + ["chomp", "chompsoft"][ + Math.floor(Math.random() * 2) + ] + ); + }, + [d] + ); + oSym.addTask( + 100, + function (f, e) { + var h = $Z[f], + g; + h && + h.beAttacked && + !h.FreeFreezeTime && + !h.FreeSetbodyTime && + ((g = $P[e]) && g.getHurt(h, h.AKind, h.Attack), + h.JudgeAttack()); + }, + [d, c] + ); + }, + PZ: 1, + ExchangeLR: function (f, d) { + var e = f.width, + h = f.beAttackedPointL, + c = f.beAttackedPointR, + g = f.Ele; + g.style.left = + (f.X = f.AttackedLX - (f.beAttackedPointL = e - c)) + + "px"; + f.beAttackedPointR = e - h; + f.EleShadow.style.cssText = f.getShadow(f); + f.ExchangeLR2(f, f.EleBody, d); + }, + ExchangeLR2: $User.Browser.IE + ? function (e, c, d) { + c.style.filter = + e.CSS_alpha + (e.CSS_fliph = d ? " fliph" : ""); + } + : function (e, c, d) { + c.className = d ? "fliph" : ""; + }, + bedevil: function (c) { + c.ExchangeLR(c, 1); + c.JudgeAttack = c.JudgeAttackH; + c.PZ = 0; + c.WalkDirection = 1; + c.ZX = c.AttackedRX; + c.ChkActs = c.ChkActs1; + oP.MonPrgs(); + }, + SetAlpha: $User.Browser.IE + ? function (f, d, e, c) { + d.style.filter = + (f.CSS_alpha = "alpha(opacity=" + e + ")") + + f.CSS_fliph; + } + : function (f, d, e, c) { + d.style.opacity = c; + }, + }), + a + ); + })(), + OrnNoneZombies = (function () { + var a = function (c, b) { + if ((c.HP -= b) < c.BreakPoint) { + c.GoingDie( + c.PicArr[ + [c.LostHeadGif, c.LostHeadAttackGif][c.isAttacking] + ] + ); + c.getHit0 = c.getHit1 = c.getHit2 = c.getHit3 = function () {}; + return; + } + c.SetAlpha(c, c.EleBody, 50, 0.5); + oSym.addTask( + 10, + function (e, d) { + (d = $Z[e]) && d.SetAlpha(d, d.EleBody, 100, 1); + }, + [c.id] + ); + }; - return InheritO(CZombies, { - getHit: a, - getHit0: a, - getHit1: a, - getHit2: a, - getHit3: a, - getPea: function (e, b, c) { - e.PlayNormalballAudio(); - e.getHit0(e, b, c); - }, - getFirePea: function (g, c, j) { - g.PlayFireballAudio(); - (g.FreeSlowTime || g.FreeFreezeTime) && - ((g.Speed = g.OSpeed), - (g.FreeSlowTime = 0), - (g.FreeFreezeTime = 0)); - g.Attack = 100; - var f = g.AttackedLX, - h = g.AttackedRX, - b = oZ.getArZ(f, f + 40, g.R), - e = b.length; - while (e--) { - b[e].getFirePeaSputtering(); - } - g.getHit0(g, c, j); - }, - getFirePeaSputtering: function () { - this.getHit0(this, 13); - }, - getSnowPea: function (f, c, g) { - var e = f.FreeSlowTime, - b = oSym.Now + 1e3; - e == 0 - ? (f.PlaySlowballAudio(), - (f.Speed = 0.5 * f.OSpeed), - (f.Attack = 50)) - : f.PlayNormalballAudio(); - e < b && - ((f.FreeSlowTime = b), - oSym.addTask( - 1e3, - function (h, d) { - var i = $Z[h]; - i && - i.FreeSlowTime == d && - ((i.FreeSlowTime = 0), - (i.Attack = 100), - i.Speed && (i.Speed = i.OSpeed)); - }, - [f.id, b] - )); - f.getHit0(f, c, g); - }, - }); - })(), - oBackupDancer = InheritO(OrnNoneZombies, { - EName: "oBackupDancer", - CName: "Backup Dancer", - OSpeed: 3.5, - Speed: 3.5, - Lvl: 1, - StandGif: 9, - CanSelect: 0, - width: 126, - height: 152, - beAttackedPointL: 50, - beAttackedPointR: 95, - Speed: 3.5, - OSpeed: 3.5, - PicArr: (function () { - var a = "images/Zombies/BackupDancer/"; - return [ - "images/Card/Zombies/BackupDancer.png", - a + "0.gif", - a + "BackupDancer.gif", - a + "Attack.gif", - a + "LostHead.gif", - a + "LostHeadAttack.gif", - a + "Head.gif" + $Random, - a + "Die.gif" + $Random, - a + "BoomDie.gif" + $Random, - a + "Dancing.gif" + $Random, - a + "LostHeadDancing.gif" + $Random, - a + "Mound.gif" + $Random, - ]; - })(), - bedevil: function (a) { - a.ExchangeLR(a, 1); - a.JudgeAttack = a.JudgeAttackH; - a.PZ = 0; - a.WalkDirection = 1; - a.ZX = a.AttackedRX; - a.ChkActs = a.ChkActs1; - a.Speed = 3.5; - a.ChangeChkActsTo1(a, a.id, a.EleBody); - oP.MonPrgs(); - }, - getSlow: function (f, d, e) { - var b = oSym.Now + e, - c = f.FreeSlowTime, - a = 0; - switch (true) { - case !c: - f.PlaySlowballAudio(); - f.Attack = 50; - f.FreeSlowTime = b; - a = 1; - break; - case c < b: - f.PlayNormalballAudio(); - f.FreeSlowTime = b; - a = 1; - } - a && - oSym.addTask( - e, - function (h, g) { - var i = $Z[h]; - i && - i.FreeSlowTime == g && - ((i.FreeSlowTime = 0), (i.Attack = 100)); - }, - [d, b] - ); - }, - getFreeze: function (b, a) { - b.beAttacked && b.getHit0(b, 20, 0); - oSym.addTask( - 400, - function (e, d, c) { - ClearChild(c); - var f = $Z[e]; - f && - f.FreeFreezeTime == d && - ((f.FreeFreezeTime = 0), - (f.Attack = 50), - !f.FreeSetbodyTime && f.isAttacking && f.JudgeAttack(), - oSym.addTask( - 1500, - function (h, g) { - var i = $Z[h]; - i && - i.FreeSlowTime == g && - ((i.FreeSlowTime = 0), (i.Attack = 100)); - }, - [e, (f.FreeSlowTime = oSym.Now + 1500)] - )); - }, - [ - a, - (b.FreeFreezeTime = oSym.Now + 400), - NewImg( - "icetrap_" + Math.random(), - "images/Plants/IceShroom/icetrap.gif", - b.getShadow(b), - b.Ele - ), - ] - ); - }, - CustomBirth: function (g, d, a, b, j) { - var e = this, - c = GetY(g) + e.GetDY(), - f = c - e.height, - i = e.beAttackedPointL, - h = e.beAttackedPointR; - e.AttackedRX = - (e.X = (e.ZX = e.AttackedLX = d - (h - i) * 0.5) - i) + h; - e.R = g; - (e.delayT = a) && (e.FreeSetbodyTime = oSym.Now); - return e.getHTML( - (e.id = b), - e.X, - (e.pixelTop = f), - (e.zIndex = 3 * g + 1), - "none", - j || 0, - e.height + "px", - e.PicArr[e.StandGif] - ); - }, - Produce: - '当舞王僵尸摇摆时,这种僵尸四个结伙出现。

韧性:
伴舞僵尸曾在位于僵尸纽约城的“咀利牙”表演艺术学院钻研过六年的舞技。', - BirthCallBack: function (e) { - var d = e.delayT, - c = e.id, - b = (e.Ele = $(c)), - a = (e.EleBody = b.childNodes[1]); - e.EleShadow = b.firstChild; - oSym.addTask( - d, - function (g, f) { - var h = $Z[g]; - h && ((h.FreeSetbodyTime = 0), SetBlock(f)); - }, - [c, b] - ); - }, - ChangeChkActsTo0: function (c, b, a) { - if (!c.PZ) { - c.ChangeChkActsTo1(c, b, a); - return; - } - c.LostHeadGif = 10; - c.NormalGif = 9; - !c.isAttacking && (a.src = c.PicArr[9]); - c.Speed = c.DZStep = 0; - oSym.addTask( - 200, - function (e, d) { - var f = $Z[e]; - f && f.beAttacked && f.ChangeChkActsTo1(f, e, d); - }, - [b, a] - ); - }, - ChangeChkActsTo1: function (c, b, a) { - c.LostHeadGif = 4; - c.NormalGif = 2; - c.DZStep = 1; - !c.isAttacking && (a.src = c.PicArr[2]); - c.PZ && - oSym.addTask( - 220, - function (e, d) { - var f = $Z[e]; - f && f.beAttacked && f.ChangeChkActsTo0(f, e, d); - }, - [b, a] - ); - }, - ChkActs: function (g, d, h, c) { - var e, b, a, f; - !(g.FreeFreezeTime || g.FreeSetbodyTime) - ? (g.beAttacked && !g.isAttacking && g.JudgeAttack(), - (e = g.id), - !g.isAttacking - ? (a = g.AttackedRX -= b = g.Speed) < -50 - ? (h.splice(c, 1), g.DisappearDie(), (f = 0)) - : (a < 100 && - !g.PointZombie && - ((g.PointZombie = 1), - !oS.CardKind && - (StopMusic(), - PlayAudio("losemusic", false)), - g.ChangeR({ - R: d, - ar: [oS.R - 1], - CustomTop: 400 - g.height + g.GetDY(), - })), - (g.ZX = g.AttackedLX -= b), - (g.Ele.style.left = Math.floor((g.X -= b)) + "px"), - (f = 1)) - : (f = 1)) - : (f = 1); - g.ChkSpeed(g); - return f; - }, - ChkSpeed: function (b) { - if (!b.DZStep) { - return; - } - var a = b.Speed; - switch (true) { - case (b.FreeFreezeTime || b.FreeSetbodyTime) == 1: - a && (b.Speed = 0); - break; - case b.FreeSlowTime > 0: - a != 1.75 && (b.Speed = 1.75); - break; - default: - a != 3.5 && (b.Speed = 3.5); - } - }, - }), - oDancingZombie = InheritO(OrnNoneZombies, { - EName: "oDancingZombie", - CName: "Dancing Zombie ", - HP: 500, - BreakPoint: 166, - Lvl: 3, - StandGif: 9, - SunNum: 350, - beAttackedPointL: 40, - beAttackedPointR: 85, - width: 184, - height: 176, - BookHandPosition: "70% 70%", - AudioArr: ["dancer"], - OSpeed: 7.2, - Speed: 7.2, - NormalGif: 9, - GetDTop: 5, - getShadow: function (a) { - return "left:30px;top:146px"; - }, - GetDX: function () { - return -50; - }, - GetDY: function () { - return -5; - }, - LostHeadGif: 14, - addSpotlight: (function () { - var a, b; - $User.Browser.IE6 - ? ((a = "_8"), (b = "filter:alpha(opacity=30)")) - : (a = b = ""); - return function (d, f, c) { - var g = $Z[d], - e; - NewEle( - d + "_spotlightCon", - "div", - "position:absolute;left:-30px;top:-400px;width:184px;height:600px;overflow:hidden", - 0, - c - ).appendChild( - (g.spotlight = NewImg( - d + "_spotlight", - "images/Zombies/DancingZombie/spotlight" + a + ".png", - "left:0;top:0;width:920px;height:600px;" + b - )) - ); - e = NewEle( - d + "_spotlight2Con", - "div", - "position:absolute;left:-25px;top:135px;width:184px;height:60px;overflow:hidden", - 0 - ); - c.insertBefore(e, f.EleShadow); - e.appendChild( - (g.spotlight2 = NewImg( - d + "_spotlight2", - "images/Zombies/DancingZombie/spotlight2" + a + ".png", - "left:0;top:0;width:920px;height:60px;" + b - )) - ); - }; - })(), - PicArr: (function () { - var d = "images/Zombies/DancingZombie/", - c = $User.Browser.IE6 ? "_8" : "", - a = d + "spotlight" + c + ".png" + $Random, - b = d + "spotlight2" + c + ".png" + $Random; - return [ - "images/Card/Zombies/DancingZombie.png", - d + "0.gif", - d + "DancingZombie.gif", - d + "Attack.gif", - d + "LostHead.gif", - d + "LostHeadAttack.gif", - d + "Head.gif" + $Random, - d + "Die.gif" + $Random, - d + "BoomDie.gif" + $Random, - d + "SlidingStep.gif" + $Random, - d + "Dancing.gif" + $Random, - d + "Summon1.gif", - d + "Summon2.gif", - d + "Summon3.gif", - d + "LostHeadSlidingStep.gif" + $Random, - d + "LostHeadDancing.gif" + $Random, - d + "LostHeadSummon.gif" + $Random, - a, - b, - ]; - })(), - Produce: - '舞王僵尸和人类(在世或者死去的)如有雷同,纯属巧合。

韧性:
特点:召唤伴舞僵尸

舞王僵尸的最新唱片“抓住脑子啃啊啃”在僵尸界的人气正急速飙升。', - getSnowPea: function () { - this.PlaySlowballAudio(); - }, - NormalDie: function () { - var a = this; - a.ResetBackupDancer(a); - a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); - oSym.addTask(250, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - ExplosionDie: function () { - var a = this; - a.ResetBackupDancer(a); - a.EleBody.src = a.PicArr[a.BoomDieGif] + Math.random(); - oSym.addTask(300, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - DisappearDie: function () { - this.ResetBackupDancer(this); - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - var a = this; - a.ResetBackupDancer(a); - a.GoingDieHead(a.id, a.PicArr, a); - ClearChild(a.Ele); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - bedevil: function (b) { - var a = b.id; - b.ExchangeLR(b, 1); - b.JudgeAttack = b.JudgeAttackH; - b.PZ = 0; - b.WalkDirection = 1; - b.ZX = b.AttackedRX; - b.ChkActs = b.ChkActs1; - b.ChangeChkActsTo1(b, a, b.EleBody); - b.ResetBackupDancer(b); - ($(a + "_spotlightCon").style.left = "20px"), - ($(a + "_spotlight2Con").style.left = "25px"); - oP.MonPrgs(); - }, - ResetBackupDancer: function (f) { - var g = f.ArDZ, - d = g.length, - c, - b, - e, - a = f.DZStep; - while (d--) { - if ((c = g[d]) && (b = c[0]) && (e = $Z[b]) && e.beAttacked) { - if (a > 0) { - switch (true) { - case (e.FreeFreezeTime || e.FreeSetbodyTime) == 1: - e.Speed = 0; - break; - case e.FreeSlowTime > 0: - e.Speed = 1.75; - break; - default: - e.Speed = 3.5; - } - } - } - } - a > -1 && - oSym.addTask( - f.DZStepT - oSym.Now, - function (o, j) { - var m = 4, - l, - k, - n, - h = "ChangeChkActsTo" + j; - while (m--) { - (l = o[m]) && - (k = l[0]) && - (n = $Z[k]) && - n.beAttacked && - ((n.DZStep = j), n[h](n, k, n.EleBody)); - } - }, - [g, [1, 0][a]] - ); - }, - BirthCallBack: function (d) { - var b = d.delayT, - l = d.id, - a = (d.Ele = $(l)), - c = 320, - i = oGd.$LF, - g = d.R, - s = g - 1, - n = g + 1, - e, - r, - q = LX - 60, - m = LX + 100, - k = LX - 130, - j = LX - 70, - h = LX + 30, - f = (d.ArDZ = [0, 0, 0, 0]); - d.EleShadow = a.firstChild; - d.EleBody = a.childNodes[1]; - s > 0 && - (e = i[s]) && - e != 2 && - (f[0] = [ - "", - s, - function (o) { - return o; - }, - 3 * s + 2, - function (o) { - return o - 70; - }, - GetY(s) - 155, - ]); - n <= oS.R && - (e = i[n]) && - e != 2 && - (f[2] = [ - "", - n, - function (o) { - return o; - }, - 3 * n + 2, - function (o) { - return o - 70; - }, - GetY(n) - 155, - ]); - e = 3 * g + 2; - r = GetY(g) - 155; - f[3] = [ - "", - g, - function (o) { - return o - 60; - }, - e, - function (o) { - return o - 130; - }, - r, - ]; - f[1] = [ - "", - g, - function (o) { - return o + 100; - }, - e, - function (o) { - return o + 30; - }, - r, - ]; - func = function (t, o) { - var u = $Z[t]; - u && - (u.ExchangeLR(d, 1), - (u.DZMSpeed = 7.2), - (u.DZStep = -1), - (u.DZStepT = oSym.Now + 220), - (u.FreeSetbodyTime = 0), - SetBlock(o)); - }; - b ? (oSym.addTask(b, func, [l, a]), (c += b)) : func(l, a); - oSym.addTask( - c, - function (o) { - var t = $Z[o]; - t && t.beAttacked && !t.isAttacking && t.NormalAttack(o); - }, - [d.id] - ); - }, - ChkActs1: function (e, b, f, a) { - var c, d; - !(e.FreeFreezeTime || e.FreeSetbodyTime) - ? (e.beAttacked && !e.isAttacking && e.JudgeAttack(), - (c = e.id), - !e.isAttacking - ? (e.AttackedLX += 3.5) > oS.W - ? (f.splice(a, 1), e.DisappearDie(), (d = 0)) - : ((e.ZX = e.AttackedRX += 3.5), - (e.Ele.style.left = Math.ceil((e.X += 3.5)) + "px"), - (d = 1)) - : (d = 1)) - : (d = 1); - return d; - }, - ChkTmp: function (c, b, d, a) { - c.ChkSpeed(c); - return 0; - }, - ChkActs: function (g, d, h, c) { - var e, b, a, f; - !(g.FreeFreezeTime || g.FreeSetbodyTime) - ? (g.beAttacked && !g.isAttacking && g.JudgeAttack(), - (e = g.id), - !g.isAttacking - ? (a = g.AttackedRX -= b = g.Speed) < -50 - ? (h.splice(c, 1), g.DisappearDie(), (f = 0)) - : (a < 100 && - !g.PointZombie && - ((g.PointZombie = 1), - !oS.CardKind && - (StopMusic(), - PlayAudio("losemusic", false)), - g.ChangeR({ - R: d, - ar: [oS.R - 1], - CustomTop: 400 - g.height + g.GetDY(), - })), - (g.ZX = g.AttackedLX -= b), - (g.Ele.style.left = Math.floor((g.X -= b)) + "px"), - (f = 1)) - : (f = 1)) - : (f = 1); - g.ChkSpeed(g); - return f; - }, - ChkSpeed: function (g) { - if (!g.DZStep) { - return; - } - var h = g.ArDZ, - d = 4, - c, - b, - e, - a = g.OSpeed, - f = []; - switch (true) { - case (g.isAttacking || g.FreeFreezeTime || g.FreeSetbodyTime) == - 1: - a = 0; - break; - case g.FreeSlowTime > 0: - a != 1.75 && (a = 1.75); - } - while (d--) { - if ((c = h[d]) && (b = c[0]) && (e = $Z[b]) && e.beAttacked) { - f.push(e); - switch (true) { - case (e.isAttacking || - e.FreeFreezeTime || - e.FreeSetbodyTime) == 1: - a = 0; - break; - case e.FreeSlowTime > 0: - a != 1.75 && (a = 1.75); - } - } - } - if (a != g.DZMSpeed) { - g.DZMSpeed = a; - d = f.length; - while (d--) { - (e = f[d]).Speed != a && (e.Speed = a); - } - g.Speed != a && (g.Speed = a); - } - }, - AttackZombie: function (a) { - this.ExchangeLR(this, 0); - var b = this.id; - this.isAttacking = 1; - this.EleBody.src = this.PicArr[this.AttackGif]; - oSym.addTask( - 10, - function (d, c) { - var f = $Z[d], - e; - f && - f.beAttacked && - !f.FreeFreezeTime && - !f.FreeSetbodyTime && - ((e = $Z[c]) - ? (e.getHit0(e, 10, 0), - oSym.addTask(10, arguments.callee, [d, c])) - : ((f.isAttacking = 0), - (f.EleBody.src = f.PicArr[f.NormalGif]), - f.TurnLeft(f))); - }, - [b, a] - ); - }, - ChkBackupDancer: function (h, g, f) { - if (!h.PZ) { - h.ChangeChkActsTo1(h, g, f); - return; - } - var b = h.ArDZ, - d = 4, - j = 1, - c, - e, - a; - while (d--) { - (e = b[d]) && - (!(c = e[0]) || - !(a = $Z[c]) || - (a.PZ ? false : ((e[0] = ""), true))) && - (d = j = 0); - } - !h.isAttacking && j ? (f.src = h.PicArr[10]) : h.Summon(h, g); - h.ChangeChkActsTo0(h, g, f); - }, - ChangeChkActsTo0: function (g, e, a) { - if (!g.PZ) { - g.ChangeChkActsTo1(g, e, a); - return; - } - var d = 4, - h = g.ArDZ, - c, - b, - f; - while (d--) { - (b = h[d]) && - (c = b[0]) && - (f = $Z[c]) && - f.beAttacked && - ((f.LostHeadGif = 10), - (f.NormalGif = 9), - !f.isAttacking && (f.EleBody.src = f.PicArr[9]), - (f.Speed = 0)); - } - g.LostHeadGif = 15; - g.NormalGif = 10; - g.Speed = g.DZMSpeed = g.DZStep = 0; - g.DZStepT = oSym.Now + 200; - oSym.addTask( - 200, - function (j, i) { - var k = $Z[j]; - k && k.beAttacked && k.ChangeChkActsTo1(k, j, i); - }, - [e, a] - ); - }, - ChangeChkActsTo1: function (g, e, a) { - var d = 4, - h = g.ArDZ, - c, - b, - f; - while (d--) { - (b = h[d]) && - (c = b[0]) && - (f = $Z[c]) && - f.beAttacked && - ((f.LostHeadGif = 4), - (f.NormalGif = 2), - !f.isAttacking && (f.EleBody.src = f.PicArr[2])); - } - g.LostHeadGif = 4; - g.NormalGif = 2; - g.DZStep = 1; - g.DZStepT = oSym.Now + 220; - !g.isAttacking && (a.src = g.PicArr[2]); - g.PZ && - oSym.addTask( - 220, - function (j, i) { - var k = $Z[j]; - k && k.beAttacked && k.ChkBackupDancer(k, j, i); - }, - [e, a] - ); - }, - TurnLeft: function (c) { - var a = CZombies.prototype, - b = c.id; - c.AttackZombie = a.AttackZombie; - c.NormalAttack = a.NormalAttack; - c.OSpeed = 3.5; - !(c.FreeSlowTime || c.FreeFreezeTime || c.FreeSetbodyTime) && - (c.Speed = 3.5); - c.getSnowPea = OrnNoneZombies.prototype.getSnowPea; - c.getFreeze = CZombies.prototype.getFreeze; - oSym.addTask( - 20, - function (d, e) { - $Z[d] && - e.beAttacked && - (e.addSpotlight(d, e, e.Ele), - oSym.addTask( - 200, - function (g, f, i, h, k) { - var j = $Z[g]; - j && - (h > -736 ? (h -= 184) : (h = 0), - (f.style.left = h + "px"), - k > -736 ? (k -= 184) : (k = 0), - (i.style.left = k + "px"), - oSym.addTask(100, arguments.callee, [ - g, - f, - i, - h, - k, - ])); - }, - [d, e.spotlight, e.spotlight2, 0, 0] - ), - oSym.addTask( - 200, - function (h, g) { - var f; - $Z[g] && - h.beAttacked && - ((f = h.EleBody), - !h.isAttacking - ? (f.src = h.PicArr[10]) - : (h.isAttacking = 0), - h.ChangeChkActsTo0(h, g, f)); - }, - [e, d] - )); - }, - [b, c] - ); - c.Summon(c, b); - }, - NormalAttack: function (a) { - var b = $Z[a]; - b.ExchangeLR(b, 0); - b.TurnLeft(b); - }, - Summon: function (d, c) { - d.LostHeadGif = 16; - var a = d.EleBody, - b = d.ChkActs; - d.ChkActs = d.ChkTmp; - d.ChkTmp = b; - a.src = "images/Zombies/DancingZombie/Summon1.gif"; - PlayAudio("dancer"); - oSym.addTask( - 10, - function (f, e) { - var g = $Z[f]; - g && - g.beAttacked && - ((e.src = "images/Zombies/DancingZombie/Summon2.gif"), - oSym.addTask( - 10, - function (t, s, x) { - var h = $Z[t], - v = h.ZX, - m = h.ArDZ, - n = [], - k = - "images/Zombies/BackupDancer/Mound.gif" + - $Random + - Math.random(), - r = 4, - w = [], - u = [], - o = 0, - q, - l; - if (h && h.beAttacked) { - s.src = - "images/Zombies/DancingZombie/Summon3.gif"; - while (r--) { - (q = m[r]) && - (!(l = q[0]) || !$Z[l]) && - ((u[o] = (w[o] = - new oBackupDancer()).CustomBirth( - q[1], - q[2](v), - 100, - (q[0] = "Z_" + Math.random()) - )), - n.push( - NewImg( - "", - k, - "z-index:" + - q[3] + - ";left:" + - q[4](v) + - "px;top:" + - q[5] + - "px", - EDPZ - ) - ), - ++o); - } - oSym.addTask( - 220, - function () { - var i = arguments.length; - while (i--) { - ClearChild(arguments[i]); - } - }, - n - ); - oSym.addTask( - 110, - function (A, y, z, i) { - var B = $Z[A]; - B && - B.beAttacked && - (oP.AppearUP(y, z, i), - oSym.addTask( - 100, - function (D, C) { - var E = $Z[D]; - if (E && E.beAttacked) { - return; - } - var j = C.length, - E; - while (j--) { - (E = - C[ - j - ]).ChangeChkActsTo0( - E, - E.id, - E.EleBody - ); - } - }, - [A, z] - )); - }, - [t, u, w, o] - ); - oSym.addTask( - 200, - function (y, i) { - var z = $Z[y], - j; - z && - z.beAttacked && - ((j = z.ChkActs), - (z.ChkActs = z.ChkTmp), - (z.ChkTmp = j)); - }, - [t, s] - ); - } - }, - [f, e] - )); - }, - [c, a] - ); - }, - }), - oIDancingZombie = InheritO(OrnNoneZombies, { - EName: "oIDancingZombie", - CName: "Dancing Zombie", - HP: 500, - BreakPoint: 166, - Lvl: 3, - StandGif: 9, - SunNum: 350, - beAttackedPointL: 40, - beAttackedPointR: 85, - width: 184, - height: 176, - BookHandPosition: "70% 70%", - AudioArr: ["dancer"], - OSpeed: 7.2, - Speed: 7.2, - NormalGif: 9, - GetDTop: 5, - getShadow: function (a) { - return "left:30px;top:146px"; - }, - GetDX: function () { - return -50; - }, - GetDY: function () { - return -5; - }, - LostHeadGif: 14, - addSpotlight: (function () { - var a, b; - $User.Browser.IE6 - ? ((a = "_8"), (b = "filter:alpha(opacity=30)")) - : (a = b = ""); - return function (d, f, c) { - var g = $Z[d], - e; - NewEle( - d + "_spotlightCon", - "div", - "position:absolute;left:-30px;top:-400px;width:184px;height:600px;overflow:hidden", - 0, - c - ).appendChild( - (g.spotlight = NewImg( - d + "_spotlight", - "images/Zombies/DancingZombie/spotlight" + a + ".png", - "left:0;top:0;width:920px;height:600px;" + b - )) - ); - e = NewEle( - d + "_spotlight2Con", - "div", - "position:absolute;left:-25px;top:135px;width:184px;height:60px;overflow:hidden", - 0 - ); - c.insertBefore(e, f.EleShadow); - e.appendChild( - (g.spotlight2 = NewImg( - d + "_spotlight2", - "images/Zombies/DancingZombie/spotlight2" + a + ".png", - "left:0;top:0;width:920px;height:60px;" + b - )) - ); - }; - })(), - PicArr: (function () { - var d = "images/Zombies/DancingZombie/", - c = $User.Browser.IE6 ? "_8" : "", - a = d + "spotlight" + c + ".png" + $Random, - b = d + "spotlight2" + c + ".png" + $Random; - return [ - "images/Card/Zombies/IDancingZombie.png", - d + "0.gif", - d + "DancingZombie.gif", - d + "Attack.gif", - d + "LostHead.gif", - d + "LostHeadAttack.gif", - d + "Head.gif" + $Random, - d + "Die.gif" + $Random, - d + "BoomDie.gif" + $Random, - d + "SlidingStep.gif" + $Random, - d + "Dancing.gif" + $Random, - d + "Summon1.gif", - d + "Summon2.gif", - d + "Summon3.gif", - d + "LostHeadSlidingStep.gif" + $Random, - d + "LostHeadDancing.gif" + $Random, - d + "LostHeadSummon.gif" + $Random, - a, - b, - ]; - })(), - Produce: - '舞王僵尸和人类(在世或者死去的)如有雷同,纯属巧合。

韧性:
特点:召唤伴舞僵尸

舞王僵尸的最新唱片“抓住脑子啃啊啃”在僵尸界的人气正急速飙升。', - getSnowPea: function () { - this.PlaySlowballAudio(); - }, - NormalDie: function () { - var a = this; - a.ResetBackupDancer(a); - a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); - oSym.addTask(250, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - ExplosionDie: function () { - var a = this; - a.ResetBackupDancer(a); - a.EleBody.src = a.PicArr[a.BoomDieGif] + Math.random(); - oSym.addTask(300, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - DisappearDie: function () { - this.ResetBackupDancer(this); - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - var a = this; - a.ResetBackupDancer(a); - a.GoingDieHead(a.id, a.PicArr, a); - ClearChild(a.Ele); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - bedevil: function (b) { - var a = b.id; - b.ExchangeLR(b, 1); - b.JudgeAttack = b.JudgeAttackH; - b.PZ = 0; - b.WalkDirection = 1; - b.ZX = b.AttackedRX; - b.ChkActs = b.ChkActs1; - b.ChangeChkActsTo1(b, a, b.EleBody); - b.ResetBackupDancer(b); - ($(a + "_spotlightCon").style.left = "20px"), - ($(a + "_spotlight2Con").style.left = "25px"); - oP.MonPrgs(); - }, - ResetBackupDancer: function (f) { - var g = f.ArDZ, - d = g.length, - c, - b, - e, - a = f.DZStep; - while (d--) { - if ((c = g[d]) && (b = c[0]) && (e = $Z[b]) && e.beAttacked) { - if (a > 0) { - switch (true) { - case (e.FreeFreezeTime || e.FreeSetbodyTime) == 1: - e.Speed = 0; - break; - case e.FreeSlowTime > 0: - e.Speed = 1.75; - break; - default: - e.Speed = 3.5; - } - } - } - } - a > -1 && - oSym.addTask( - f.DZStepT - oSym.Now, - function (o, j) { - var m = 4, - l, - k, - n, - h = "ChangeChkActsTo" + j; - while (m--) { - (l = o[m]) && - (k = l[0]) && - (n = $Z[k]) && - n.beAttacked && - ((n.DZStep = j), n[h](n, k, n.EleBody)); - } - }, - [g, [1, 0][a]] - ); - }, - BirthCallBack: function (d) { - var b = d.delayT, - l = d.id, - a = (d.Ele = $(l)), - c = 320, - i = oGd.$LF, - g = d.R, - s = g - 1, - n = g + 1, - e, - r, - q = LX - 60, - m = LX + 100, - k = LX - 130, - j = LX - 70, - h = LX + 30, - f = (d.ArDZ = [0, 0, 0, 0]); - d.EleShadow = a.firstChild; - d.EleBody = a.childNodes[1]; - s > 0 && - (e = i[s]) && - e != 2 && - (f[0] = [ - "", - s, - function (o) { - return o; - }, - 3 * s + 2, - function (o) { - return o - 70; - }, - GetY(s) - 155, - ]); - n <= oS.R && - (e = i[n]) && - e != 2 && - (f[2] = [ - "", - n, - function (o) { - return o; - }, - 3 * n + 2, - function (o) { - return o - 70; - }, - GetY(n) - 155, - ]); - e = 3 * g + 2; - r = GetY(g) - 155; - f[3] = [ - "", - g, - function (o) { - return o - 60; - }, - e, - function (o) { - return o - 130; - }, - r, - ]; - f[1] = [ - "", - g, - function (o) { - return o + 100; - }, - e, - function (o) { - return o + 30; - }, - r, - ]; - func = function (t, o) { - var u = $Z[t]; - u && - (u.ExchangeLR(d, 1), - (u.DZMSpeed = 7.2), - (u.DZStep = -1), - (u.DZStepT = oSym.Now + 220), - (u.FreeSetbodyTime = 0), - SetBlock(o)); - }; - b ? (oSym.addTask(b, func, [l, a]), (c += b)) : func(l, a); - oSym.addTask( - c, - function (o) { - var t = $Z[o]; - t && t.beAttacked && !t.isAttacking && t.NormalAttack(o); - }, - [d.id] - ); - }, - ChkActs1: function (e, b, f, a) { - var c, d; - !(e.FreeFreezeTime || e.FreeSetbodyTime) - ? (e.beAttacked && !e.isAttacking && e.JudgeAttack(), - (c = e.id), - !e.isAttacking - ? (e.AttackedLX += 3.5) > oS.W - ? (f.splice(a, 1), e.DisappearDie(), (d = 0)) - : ((e.ZX = e.AttackedRX += 3.5), - (e.Ele.style.left = Math.ceil((e.X += 3.5)) + "px"), - (d = 1)) - : (d = 1)) - : (d = 1); - return d; - }, - ChkTmp: function (c, b, d, a) { - c.ChkSpeed(c); - return 0; - }, - ChkActs: function (g, d, h, c) { - var e, b, a, f; - !(g.FreeFreezeTime || g.FreeSetbodyTime) - ? (g.beAttacked && !g.isAttacking && g.JudgeAttack(), - (e = g.id), - !g.isAttacking - ? (a = g.AttackedRX -= b = g.Speed) < -50 - ? (h.splice(c, 1), g.DisappearDie(), (f = 0)) - : (a < 100 && - !g.PointZombie && - ((g.PointZombie = 1), - !oS.CardKind && - (StopMusic(), - PlayAudio("losemusic", false)), - g.ChangeR({ - R: d, - ar: [oS.R - 1], - CustomTop: 400 - g.height + g.GetDY(), - })), - (g.ZX = g.AttackedLX -= b), - (g.Ele.style.left = Math.floor((g.X -= b)) + "px"), - (f = 1)) - : (f = 1)) - : (f = 1); - g.ChkSpeed(g); - return f; - }, - ChkSpeed: function (g) { - if (!g.DZStep) { - return; - } - var h = g.ArDZ, - d = 4, - c, - b, - e, - a = g.OSpeed, - f = []; - switch (true) { - case (g.isAttacking || g.FreeFreezeTime || g.FreeSetbodyTime) == - 1: - a = 0; - break; - case g.FreeSlowTime > 0: - a != 1.75 && (a = 1.75); - } - while (d--) { - if ((c = h[d]) && (b = c[0]) && (e = $Z[b]) && e.beAttacked) { - f.push(e); - switch (true) { - case (e.isAttacking || - e.FreeFreezeTime || - e.FreeSetbodyTime) == 1: - a = 0; - break; - case e.FreeSlowTime > 0: - a != 1.75 && (a = 1.75); - } - } - } - if (a != g.DZMSpeed) { - g.DZMSpeed = a; - d = f.length; - while (d--) { - (e = f[d]).Speed != a && (e.Speed = a); - } - g.Speed != a && (g.Speed = a); - } - }, - AttackZombie: function (a) { - this.ExchangeLR(this, 0); - var b = this.id; - this.isAttacking = 1; - this.EleBody.src = this.PicArr[this.AttackGif]; - oSym.addTask( - 10, - function (d, c) { - var f = $Z[d], - e; - f && - f.beAttacked && - !f.FreeFreezeTime && - !f.FreeSetbodyTime && - ((e = $Z[c]) - ? (e.getHit0(e, 10, 0), - oSym.addTask(10, arguments.callee, [d, c])) - : ((f.isAttacking = 0), - (f.EleBody.src = f.PicArr[f.NormalGif]), - f.TurnLeft(f))); - }, - [b, a] - ); - }, - ChkBackupDancer: function (h, g, f) { - if (!h.PZ) { - h.ChangeChkActsTo1(h, g, f); - return; - } - var b = h.ArDZ, - d = 4, - j = 1, - c, - e, - a; - while (d--) { - (e = b[d]) && - (!(c = e[0]) || - !(a = $Z[c]) || - (a.PZ ? false : ((e[0] = ""), true))) && - (d = j = 0); - } - !h.isAttacking && j ? (f.src = h.PicArr[10]) : h.Summon(h, g); - h.ChangeChkActsTo0(h, g, f); - }, - ChangeChkActsTo0: function (g, e, a) { - if (!g.PZ) { - g.ChangeChkActsTo1(g, e, a); - return; - } - var d = 4, - h = g.ArDZ, - c, - b, - f; - while (d--) { - (b = h[d]) && - (c = b[0]) && - (f = $Z[c]) && - f.beAttacked && - ((f.LostHeadGif = 10), - (f.NormalGif = 9), - !f.isAttacking && (f.EleBody.src = f.PicArr[9]), - (f.Speed = 0)); - } - g.LostHeadGif = 15; - g.NormalGif = 10; - g.Speed = g.DZMSpeed = g.DZStep = 0; - g.DZStepT = oSym.Now + 200; - oSym.addTask( - 200, - function (j, i) { - var k = $Z[j]; - k && k.beAttacked && k.ChangeChkActsTo1(k, j, i); - }, - [e, a] - ); - }, - ChangeChkActsTo1: function (g, e, a) { - var d = 4, - h = g.ArDZ, - c, - b, - f; - while (d--) { - (b = h[d]) && - (c = b[0]) && - (f = $Z[c]) && - f.beAttacked && - ((f.LostHeadGif = 4), - (f.NormalGif = 2), - !f.isAttacking && (f.EleBody.src = f.PicArr[2])); - } - g.LostHeadGif = 4; - g.NormalGif = 2; - g.DZStep = 1; - g.DZStepT = oSym.Now + 220; - !g.isAttacking && (a.src = g.PicArr[2]); - g.PZ && - oSym.addTask( - 220, - function (j, i) { - var k = $Z[j]; - k && k.beAttacked && k.ChkBackupDancer(k, j, i); - }, - [e, a] - ); - }, - TurnLeft: function (c) { - var a = CZombies.prototype, - b = c.id; - c.AttackZombie = a.AttackZombie; - c.NormalAttack = a.NormalAttack; - c.OSpeed = 3.5; - !(c.FreeSlowTime || c.FreeFreezeTime || c.FreeSetbodyTime) && - (c.Speed = 3.5); - c.getSnowPea = OrnNoneZombies.prototype.getSnowPea; - c.getFreeze = CZombies.prototype.getFreeze; - oSym.addTask( - 20, - function (d, e) { - $Z[d] && - e.beAttacked && - (e.addSpotlight(d, e, e.Ele), - oSym.addTask( - 200, - function (g, f, i, h, k) { - var j = $Z[g]; - j && - (h > -736 ? (h -= 184) : (h = 0), - (f.style.left = h + "px"), - k > -736 ? (k -= 184) : (k = 0), - (i.style.left = k + "px"), - oSym.addTask(100, arguments.callee, [ - g, - f, - i, - h, - k, - ])); - }, - [d, e.spotlight, e.spotlight2, 0, 0] - ), - oSym.addTask( - 200, - function (h, g) { - var f; - $Z[g] && - h.beAttacked && - ((f = h.EleBody), - !h.isAttacking - ? (f.src = h.PicArr[10]) - : (h.isAttacking = 0), - h.ChangeChkActsTo0(h, g, f)); - }, - [e, d] - )); - }, - [b, c] - ); - c.Summon(c, b); - }, - NormalAttack: function (a) { - var b = $Z[a]; - b.ExchangeLR(b, 0); - b.TurnLeft(b); - }, - Summon: function (d, c) { - d.LostHeadGif = 16; - var a = d.EleBody, - b = d.ChkActs; - d.ChkActs = d.ChkTmp; - d.ChkTmp = b; - a.src = "images/Zombies/DancingZombie/Summon1.gif"; - PlayAudio("dancer"); - oSym.addTask( - 10, - function (f, e) { - var g = $Z[f]; - g && - g.beAttacked && - ((e.src = "images/Zombies/DancingZombie/Summon2.gif"), - oSym.addTask( - 10, - function (t, s, x) { - var h = $Z[t], - v = h.ZX, - m = h.ArDZ, - n = [], - k = - "images/Zombies/BackupDancer/Mound.gif" + - $Random + - Math.random(), - r = 4, - w = [], - u = [], - o = 0, - q, - l; - if (h && h.beAttacked) { - s.src = - "images/Zombies/DancingZombie/Summon3.gif"; - while (r--) { - (q = m[r]) && - (!(l = q[0]) || !$Z[l]) && - ((u[o] = (w[o] = - new oBackupDancer()).CustomBirth( - q[1], - q[2](v), - 100, - (q[0] = "Z_" + Math.random()) - )), - n.push( - NewImg( - "", - k, - "z-index:" + - q[3] + - ";left:" + - q[4](v) + - "px;top:" + - q[5] + - "px", - EDPZ - ) - ), - ++o); - } - oSym.addTask( - 220, - function () { - var i = arguments.length; - while (i--) { - ClearChild(arguments[i]); - } - }, - n - ); - oSym.addTask( - 110, - function (A, y, z, i) { - var B = $Z[A]; - B && - B.beAttacked && - (oP.AppearUP(y, z, i), - oSym.addTask( - 100, - function (D, C) { - var E = $Z[D]; - if (E && E.beAttacked) { - return; - } - var j = C.length, - E; - while (j--) { - (E = - C[ - j - ]).ChangeChkActsTo0( - E, - E.id, - E.EleBody - ); - } - }, - [A, z] - )); - }, - [t, u, w, o] - ); - oSym.addTask( - 200, - function (y, i) { - var z = $Z[y], - j; - z && - z.beAttacked && - ((j = z.ChkActs), - (z.ChkActs = z.ChkTmp), - (z.ChkTmp = j)); - }, - [t, s] - ); - } - }, - [f, e] - )); - }, - [c, a] - ); - }, - }), - oZombie = InheritO(OrnNoneZombies, { - EName: "oZombie", - CName: "Zombie", - StandGif: 9, - HeadPosition: [ - { - x: 82, - y: 30, - width: 40, - height: 40, - }, - { - x: 82, - y: 30, - width: 40, - height: 40, - }, - ], - PicArr: (function () { - var a = "images/Zombies/Zombie/"; - return [ - "images/Card/Zombies/Zombie.png", - a + "0.gif", - a + "Zombie.gif", - a + "ZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - Produce: - '韧性:

这种僵尸喜爱脑髓,贪婪而不知足。脑髓,脑髓,脑髓,夜以继日地追求着。老而臭的脑髓?腐烂的脑髓?都没关系。僵尸需要它们。', - }), - oIZombie = InheritO(OrnNoneZombies, { - EName: "oIZombie", - CName: "Zombie", - StandGif: 9, - PicArr: (function () { - var a = "images/Zombies/Zombie/"; - return [ - "images/Card/Zombies/IZombie.png", - a + "0.gif", - a + "Zombie.gif", - a + "ZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - Produce: - '韧性:

这种僵尸喜爱脑髓,贪婪而不知足。脑髓,脑髓,脑髓,夜以继日地追求着。老而臭的脑髓?腐烂的脑髓?都没关系。僵尸需要它们。', - }), - oZombie2 = InheritO(oZombie, { EName: "oZombie2" }), - oZombie3 = InheritO(oZombie, { EName: "oZombie3" }), - oMustacheZombie = InheritO(oZombie, { - EName: "oMustacheZombie", - CName: "Mustache Zombie", - HP: 540, - Produce: - '出没于常青之塔的神秘僵尸。

韧性:

姜还是老的辣,僵尸界也有这种说法。于是,一些老僵尸也上战场了。', - PicArr: (function () { - var a = "images/Zombies/Zombie/"; - var b = "images/Zombies/MustacheZombie/"; - return [ - "images/Card/Zombies/MustacheZombie.png", - b + "0.gif", - b + "Zombie.gif", - b + "ZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - b + "1.gif", - ]; - })(), - }), - oFlagZombie = InheritO(oZombie, { - PicArr: (function () { - var a = "images/Zombies/FlagZombie/"; - return [ - "images/Card/Zombies/FlagZombie.png", - a + "0.gif", - a + "FlagZombie.gif", - a + "FlagZombieAttack.gif", - a + "FlagZombieLostHead.gif", - a + "FlagZombieLostHeadAttack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + $Random, - "images/Zombies/Zombie/ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - EName: "oFlagZombie", - CName: "Flag Zombie", - OSpeed: 2.2, - Speed: 2.2, - beAttackedPointR: 101, - Produce: - '旗帜僵尸标志着即将来袭的一大堆僵尸"流"。

韧性:

毫无疑问,摇旗僵尸喜爱脑髓。但在私下里他也迷恋旗帜。也许是因为旗帜上也画有脑子吧,这很难说。', - }), - OrnIZombies = (function () { - var a = function (f, b) { - var d = f.OrnHP, - c = f.HP, - e = OrnNoneZombies.prototype; - (d = f.OrnHP -= b) < 1 && - ((f.HP += d), - (f.Ornaments = 0), - (f.EleBody.src = - f.PicArr[ - [ - (f.NormalGif = f.OrnLostNormalGif), - (f.AttackGif = f.OrnLostAttackGif), - ][f.isAttacking] - ]), - (f.PlayNormalballAudio = e.PlayNormalballAudio), - (f.PlayFireballAudio = e.PlayFireballAudio), - (f.PlaySlowballAudio = e.PlaySlowballAudio), - (f.getHit = - f.getHit0 = - f.getHit1 = - f.getHit2 = - f.getHit3 = - e.getHit)); - f.SetAlpha(f, f.EleBody, 50, 0.5); - oSym.addTask( - 10, - function (h, g) { - (g = $Z[h]) && g.SetAlpha(g, g.EleBody, 100, 1); - }, - [f.id] - ); - }; - return InheritO(OrnNoneZombies, { - Ornaments: 1, - OrnLostNormalGif: 9, - OrnLostAttackGif: 10, - getHit: a, - getHit0: a, - getHit1: a, - getHit2: a, - getHit3: a, - }); - })(), - oConeheadZombie = InheritO(OrnIZombies, { - EName: "oConeheadZombie", - CName: "Conehead Zombie", - OrnHP: 370, - Lvl: 2, - SunNum: 75, - StandGif: 11, - HeadPosition: [ - { - x: 82, - y: 30, - width: 40, - height: 40, - }, - { - x: 82, - y: 30, - width: 40, - height: 40, - }, - ], - PicArr: (function () { - var b = "images/Zombies/ConeheadZombie/", - a = "images/Zombies/Zombie/"; - return [ - "images/Card/Zombies/ConeheadZombie.png", - b + "0.gif", - b + "ConeheadZombie.gif", - b + "ConeheadZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "Zombie.gif", - a + "ZombieAttack.gif", - b + "1.gif", - ]; - })(), - AudioArr: ["plastichit"], - PlayNormalballAudio: function () { - PlayAudio("plastichit"); - }, - Produce: - '他的路障头盔,使他两倍坚韧于普通僵尸。

韧性:

和其他僵尸一样,路障头僵尸盲目地向前。但某些事物却使他停下脚步,捡起一个交通路障,并固实在自己的脑袋上。是的,他很喜欢参加聚会。', - }), - oIConeheadZombie = InheritO(OrnIZombies, { - EName: "oIConeheadZombie", - CName: "Conehead Zombie", - OrnHP: 370, - Lvl: 2, - SunNum: 75, - StandGif: 11, - HeadPosition: [ - { - x: 82, - y: 30, - width: 40, - height: 40, - }, - { - x: 82, - y: 30, - width: 40, - height: 40, - }, - ], - PicArr: (function () { - var b = "images/Zombies/ConeheadZombie/", - a = "images/Zombies/Zombie/"; - return [ - "images/Card/Zombies/IConeheadZombie.png", - b + "0.gif", - b + "ConeheadZombie.gif", - b + "ConeheadZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "Zombie.gif", - a + "ZombieAttack.gif", - b + "1.gif", - ]; - })(), - AudioArr: ["plastichit"], - PlayNormalballAudio: function () { - PlayAudio("plastichit"); - }, - Produce: - '他的路障头盔,使他两倍坚韧于普通僵尸。

韧性:

和其他僵尸一样,路障头僵尸盲目地向前。但某些事物却使他停下脚步,捡起一个交通路障,并固实在自己的脑袋上。是的,他很喜欢参加聚会。', - }), - oLionDanceZombie = InheritO(oConeheadZombie, { - EName: "oLionDanceZombie", - CName: "Lion Dancer Zombie", - HP: 370, - OrnHP: 1100, - Speed: 4.8, - Attack: 550, - width: 216, - height: 164, - beAttackedPointL: 60, - beAttackedPointR: 130, - HeadPosition: [ - { - x: 82, - y: 30, - width: 40, - height: 40, - }, - { - x: 82, - y: 30, - width: 40, - height: 40, - }, - ], - PicArr: (function () { - var b = "images/Zombies/LionDanceZombie/", - a = "images/Zombies/LionDanceZombie/"; - return [ - "images/Card/Zombies/LionDanceZombie.png", - b + "0.gif", - b + "ConeheadZombie.gif", - b + "ConeheadZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "Zombie.gif", - a + "ZombieAttack.gif", - b + "1.gif", - ]; - })(), - Produce: - '只出现于常青之塔101层。僵尸设计来自rdrz。

韧性:

舞狮是优秀的民间艺术。每逢佳节庆典,民间都以舞狮来助兴,南方以广东的舞狮表演最为有名。狮子是由彩布条制作而成的。每头狮子有两个人合作表演,一人舞头,一人舞尾。表演者在锣鼓音乐下,装扮成狮子的样子,做出狮子的各种形态动作。在表演过程中,舞狮者要以各种招式来表现南派武功,非常富有阳刚之气。', - }), - oBucketheadZombie = InheritO( - oConeheadZombie, - { - EName: "oBucketheadZombie", - CName: "Buckethead Zombie", - OrnHP: 1100, - Lvl: 3, - SunNum: 125, - HeadPosition: [ - { - x: 82, - y: 30, - width: 40, - height: 40, - }, - { - x: 82, - y: 30, - width: 40, - height: 40, - }, - ], - PlayNormalballAudio: function () { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - }, - Produce: - '他的铁桶头盔,能极大程度的承受伤害。

韧性:
弱点:土豆雷

铁桶头僵尸经常戴着水桶,在冷漠的世界里显得独一无二。但事实上,他只是忘记了,那铁桶还在他头上而已。', - }, - { - PicArr: { - 0: "images/Card/Zombies/BucketheadZombie.png", - 1: "images/Zombies/BucketheadZombie/0.gif", - 2: "images/Zombies/BucketheadZombie/BucketheadZombie.gif", - 3: "images/Zombies/BucketheadZombie/BucketheadZombieAttack.gif", - 9: "images/Zombies/Zombie/Zombie.gif", - 11: "images/Zombies/BucketheadZombie/1.gif", - }, - } - ), - oIBucketheadZombie = InheritO( - oConeheadZombie, - { - EName: "oIBucketheadZombie", - CName: "Buckethead Zombie", - OrnHP: 1100, - Lvl: 3, - SunNum: 125, - PlayNormalballAudio: function () { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - }, - Produce: - '他的铁桶头盔,能极大程度的承受伤害。

韧性:
弱点:土豆雷

铁桶头僵尸经常戴着水桶,在冷漠的世界里显得独一无二。但事实上,他只是忘记了,那铁桶还在他头上而已。', - }, - { - PicArr: { - 0: "images/Card/Zombies/IBucketheadZombie.png", - 1: "images/Zombies/BucketheadZombie/0.gif", - 2: "images/Zombies/BucketheadZombie/BucketheadZombie.gif", - 3: "images/Zombies/BucketheadZombie/BucketheadZombieAttack.gif", - 9: "images/Zombies/Zombie/Zombie.gif", - 11: "images/Zombies/BucketheadZombie/1.gif", - }, - } - ), - oFootballZombie = InheritO(oConeheadZombie, { - EName: "oFootballZombie", - CName: "Football Zombie", - OrnHP: 1400, - Lvl: 3, - SunNum: 175, - StandGif: 11, - width: 154, - height: 160, - OSpeed: 3.2, - Speed: 3.2, - beAttackedPointL: 40, - beAttackedPointR: 134, - PlayNormalballAudio: function () { - PlayAudio("plastichit"); - }, - PicArr: (function () { - var a = "images/Zombies/FootballZombie/"; - return [ - "images/Card/Zombies/FootballZombie.png", - a + "0.gif", - a + "FootballZombie.gif", - a + "Attack.gif", - a + "LostHead.gif", - a + "LostHeadAttack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + $Random, - a + "Die.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "OrnLost.gif", - a + "OrnLostAttack.gif", - a + "1.gif", - ]; - })(), - getShadow: function (a) { - return ( - "left:" + - (a.beAttackedPointL + 15) + - "px;top:" + - (a.height - 22) + - "px" - ); - }, - Produce: - '橄榄球僵尸的表演秀。

韧性:极高
速度:

在球场上,橄榄球僵尸表现出110%的激情,他进攻防守样样在行。虽然他完全不知道橄榄球是什么。', - }), - oIFootballZombie = InheritO(oConeheadZombie, { - EName: "oIFootballZombie", - CName: "Football Zombie", - OrnHP: 1400, - Lvl: 3, - SunNum: 175, - StandGif: 11, - width: 154, - height: 160, - OSpeed: 3.2, - Speed: 3.2, - beAttackedPointL: 40, - beAttackedPointR: 134, - PlayNormalballAudio: function () { - PlayAudio("plastichit"); - }, - PicArr: (function () { - var a = "images/Zombies/FootballZombie/"; - return [ - "images/Card/Zombies/IFootballZombie.png", - a + "0.gif", - a + "FootballZombie.gif", - a + "Attack.gif", - a + "LostHead.gif", - a + "LostHeadAttack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + $Random, - a + "Die.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "OrnLost.gif", - a + "OrnLostAttack.gif", - a + "1.gif", - ]; - })(), - getShadow: function (a) { - return ( - "left:" + - (a.beAttackedPointL + 15) + - "px;top:" + - (a.height - 22) + - "px" - ); - }, - Produce: - '橄榄球僵尸的表演秀。

韧性:极高
速度:

在球场上,橄榄球僵尸表现出110%的激情,他进攻防守样样在行。虽然他完全不知道橄榄球是什么。', - }), - oHeiFootballZombie = InheritO(oFootballZombie, { - EName: "oHeiFootballZombie", - CName: "Giga-Football Zombie", - OrnHP: 2800, - Lvl: 3, - StandGif: 11, - width: 154, - height: 160, - OSpeed: 3.3, - Speed: 3.3, - beAttackedPointL: 40, - beAttackedPointR: 134, - PicArr: (function () { - var a = "images/Zombies/HeiFootballZombie/"; - return [ - "images/Card/Zombies/HeiFootballZombie.png", - a + "0.gif", - a + "FootballZombie.gif", - a + "Attack.gif", - a + "LostHead.gif", - a + "LostHeadAttack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + $Random, - a + "Die.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "OrnLost.gif", - a + "OrnLostAttack.gif", - a + "1.gif", - ]; - })(), - Produce: - '黑暗橄榄球僵尸的表演秀。

韧性:极高
速度:

他着装低调深沉,他是僵尸橄榄球界的领军人物,拥有更强的防御能力,虽然他也完全不知道橄榄球是什么。', - }), - oCFootballZombie = InheritO(oFootballZombie, { - EName: "oCFootballZombie", - CName: "元帅僵尸", - PicArr: (function () { - var a = "images/Zombies/wall/FootballZombie/"; - return [ - "images/Card/Zombies/FootballZombie.png", - a + "0.gif", - a + "FootballZombie.gif", - a + "Attack.gif", - a + "LostHead.gif", - a + "LostHeadAttack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + $Random, - a + "Die.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "OrnLost.gif", - a + "OrnLostAttack.gif", - a + "1.gif", - ]; - })(), - Produce: "", - }), - oPoleVaultingZombie = InheritO(OrnNoneZombies, { - EName: "oPoleVaultingZombie", - CName: "Pole Vaulting Zombie", - HP: 270, - width: 348, - height: 218, - OSpeed: 3.2, - Speed: 3.2, - beAttackedPointL: 215, - beAttackedPointR: 260, - StandGif: 13, - GetDX: function () { - return -238; - }, - GetDY: function () { - return 2; - }, - Lvl: 2, - SunNum: 75, - PicArr: (function () { - var a = "images/Zombies/PoleVaultingZombie/"; - return [ - "images/Card/Zombies/PoleVaultingZombie.png", - a + "0.gif", - a + "PoleVaultingZombie.gif", - a + "PoleVaultingZombieAttack.gif", - a + "PoleVaultingZombieLostHead.gif", - a + "PoleVaultingZombieLostHeadAttack.gif", - a + "PoleVaultingZombieHead.gif" + $Random, - a + "PoleVaultingZombieDie.gif" + $Random, - a + "BoomDie.gif" + $Random, - a + "PoleVaultingZombieWalk.gif", - a + "PoleVaultingZombieLostHeadWalk.gif", - a + "PoleVaultingZombieJump.gif", - a + "PoleVaultingZombieJump2.gif", - a + "1.gif", - ]; - })(), - AudioArr: ["polevault", "grassstep"], - Produce: - '撑杆僵尸运用标杆高高地跃过障碍物。

韧性:
速度:快,而后慢(跳跃后)
特点:跃过他所碰到的第一筑植物

一些僵尸渴望走得更远、得到更多,这也促使他们由普通成为非凡。那就是撑杆僵尸。', - getShadow: function (a) { - return ( - "left:" + - (a.beAttackedPointL - 20) + - "px;top:" + - (a.height - 35) + - "px" - ); - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "left:" + - b.X + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - JudgeAttack: function () { - var g = this, - b = g.ZX, - d = g.R + "_", - c = GetC(b), - h = oGd.$, - f, - a, - e = b - 74; - for (f = c - 2; f <= c; f++) { - if (f > 9) { - continue; - } - for ( - a = 2; - a > -1; - (p = h[d + f + "_" + a--]) && - (p.EName != "oBrains" - ? p.AttackedRX >= e && - p.AttackedLX < b && - p.canEat && - ((a = -1), - (g.JudgeAttack = CZombies.prototype.JudgeAttack), - g.NormalAttack(g.id, p.id, p.AttackedLX)) - : p.AttackedRX >= b && - p.AttackedLX < b && - ((a = -1), - (g.JudgeAttack = CZombies.prototype.JudgeAttack), - (g.NormalAttack = CZombies.prototype.NormalAttack)( - g.id, - p.id - ))) - ) {} - } - }, - getCrushed: function (a) { - this.NormalAttack(this.id, a.id, a.AttackedLX); - this.getCrushed = function () { - return false; - }; - a.Stature > 0 && - oSym.addTask( - 50, - function (c) { - var b = $Z[c]; - b && b.CrushDie(); - }, - [this.id] - ); - return false; - }, - getRaven: function (a) { - return ( - !this.isAttacking && - this.NormalAttack(this.id, a, $P[a].AttackedLX), - 0 - ); - }, - NormalAttack: function (d, b, g) { - var f = $Z[d], - a = f.Ele, - c = f.EleShadow, - e = f.EleBody; - e.src = - "images/Zombies/PoleVaultingZombie/PoleVaultingZombieJump.gif" + - $Random + - Math.random(); - PlayAudio("grassstep"); - SetHidden(c); - f.isAttacking = 1; - f.Altitude = 2; - f.getFreeze = function () { - f.getSnowPea(f, 20); - }; - oSym.addTask( - 50, - function (h) { - $Z[h] && PlayAudio("polevault"); - }, - [d] - ); - oSym.addTask( - 100, - function (m, j, i, l, n) { - var h = $Z[m], - k, - q, - r; - h && - ((k = $P[j]) && k.Stature > 0 - ? ((h.AttackedRX = - (h.X = - (h.AttackedLX = h.ZX = q = k.AttackedRX) - - h.beAttackedPointL) + h.beAttackedPointR), - SetStyle(i, { left: h.X + "px" }), - (n.src = - "images/Zombies/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), - SetVisible(l), - (h.isAttacking = 0), - (h.Altitude = 1), - (h.OSpeed = h.Speed = 1.6), - (h.NormalGif = 9), - (h.LostHeadGif = 10), - (h.NormalAttack = (r = - CZombies.prototype).NormalAttack), - (h.getCrushed = r.getCrushed), - (h.getFreeze = r.getFreeze), - (h.getRaven = r.getRaven)) - : ((h.ZX = h.AttackedLX = - (h.X = - (h.AttackedRX = g) - h.beAttackedPointR) + - h.beAttackedPointL), - SetStyle(i, { left: h.X + "px" }), - (n.src = - "images/Zombies/PoleVaultingZombie/PoleVaultingZombieJump2.gif" + - $Random + - Math.random()), - SetVisible(l), - oSym.addTask( - 80, - function (s, v) { - var u = $Z[s], - t; - u && - ((v.src = - "images/Zombies/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), - (u.isAttacking = 0), - (u.Altitude = 1), - (u.OSpeed = u.Speed = 1.6), - (u.NormalGif = 9), - (u.LostHeadGif = 10), - (u.NormalAttack = (t = - CZombies.prototype).NormalAttack), - (u.getCrushed = t.getCrushed), - (u.getFreeze = t.getFreeze), - (u.getRaven = t.getRaven)); - }, - [m, n] - ))); - }, - [d, b, a, c, e] - ); - }, - }), - oIPoleVaultingZombie = InheritO(OrnNoneZombies, { - EName: "oIPoleVaultingZombie", - CName: "Pole Vaulting Zombie", - HP: 270, - width: 348, - height: 218, - OSpeed: 3.2, - Speed: 3.2, - beAttackedPointL: 215, - beAttackedPointR: 260, - StandGif: 13, - GetDX: function () { - return -238; - }, - GetDY: function () { - return 2; - }, - Lvl: 2, - SunNum: 75, - PicArr: (function () { - var a = "images/Zombies/PoleVaultingZombie/"; - return [ - "images/Card/Zombies/IPoleVaultingZombie.png", - a + "0.gif", - a + "PoleVaultingZombie.gif", - a + "PoleVaultingZombieAttack.gif", - a + "PoleVaultingZombieLostHead.gif", - a + "PoleVaultingZombieLostHeadAttack.gif", - a + "PoleVaultingZombieHead.gif" + $Random, - a + "PoleVaultingZombieDie.gif" + $Random, - a + "BoomDie.gif" + $Random, - a + "PoleVaultingZombieWalk.gif", - a + "PoleVaultingZombieLostHeadWalk.gif", - a + "PoleVaultingZombieJump.gif", - a + "PoleVaultingZombieJump2.gif", - a + "1.gif", - ]; - })(), - AudioArr: ["polevault", "grassstep"], - Produce: - '撑杆僵尸运用标杆高高地跃过障碍物。

韧性:
速度:快,而后慢(跳跃后)
特点:跃过他所碰到的第一筑植物

一些僵尸渴望走得更远、得到更多,这也促使他们由普通成为非凡。那就是撑杆僵尸。', - getShadow: function (a) { - return ( - "left:" + - (a.beAttackedPointL - 20) + - "px;top:" + - (a.height - 35) + - "px" - ); - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "left:" + - b.X + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - JudgeAttack: function () { - var g = this, - b = g.ZX, - d = g.R + "_", - c = GetC(b), - h = oGd.$, - f, - a, - e = b - 74; - for (f = c - 2; f <= c; f++) { - if (f > 9) { - continue; - } - for ( - a = 2; - a > -1; - (p = h[d + f + "_" + a--]) && - (p.EName != "oBrains" - ? p.AttackedRX >= e && - p.AttackedLX < b && - p.canEat && - ((a = -1), - (g.JudgeAttack = CZombies.prototype.JudgeAttack), - g.NormalAttack(g.id, p.id, p.AttackedLX)) - : p.AttackedRX >= b && - p.AttackedLX < b && - ((a = -1), - (g.JudgeAttack = CZombies.prototype.JudgeAttack), - (g.NormalAttack = CZombies.prototype.NormalAttack)( - g.id, - p.id - ))) - ) {} - } - }, - getCrushed: function (a) { - this.NormalAttack(this.id, a.id, a.AttackedLX); - this.getCrushed = function () { - return false; - }; - a.Stature > 0 && - oSym.addTask( - 50, - function (c) { - var b = $Z[c]; - b && b.CrushDie(); - }, - [this.id] - ); - return false; - }, - getRaven: function (a) { - return ( - !this.isAttacking && - this.NormalAttack(this.id, a, $P[a].AttackedLX), - 0 - ); - }, - NormalAttack: function (d, b, g) { - var f = $Z[d], - a = f.Ele, - c = f.EleShadow, - e = f.EleBody; - e.src = - "images/Zombies/PoleVaultingZombie/PoleVaultingZombieJump.gif" + - $Random + - Math.random(); - PlayAudio("grassstep"); - SetHidden(c); - f.isAttacking = 1; - f.Altitude = 2; - f.getFreeze = function () { - f.getSnowPea(f, 20); - }; - oSym.addTask( - 50, - function (h) { - $Z[h] && PlayAudio("polevault"); - }, - [d] - ); - oSym.addTask( - 100, - function (m, j, i, l, n) { - var h = $Z[m], - k, - q, - r; - h && - ((k = $P[j]) && k.Stature > 0 - ? ((h.AttackedRX = - (h.X = - (h.AttackedLX = h.ZX = q = k.AttackedRX) - - h.beAttackedPointL) + h.beAttackedPointR), - SetStyle(i, { left: h.X + "px" }), - (n.src = - "images/Zombies/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), - SetVisible(l), - (h.isAttacking = 0), - (h.Altitude = 1), - (h.OSpeed = h.Speed = 1.6), - (h.NormalGif = 9), - (h.LostHeadGif = 10), - (h.NormalAttack = (r = - CZombies.prototype).NormalAttack), - (h.getCrushed = r.getCrushed), - (h.getFreeze = r.getFreeze), - (h.getRaven = r.getRaven)) - : ((h.ZX = h.AttackedLX = - (h.X = - (h.AttackedRX = g) - h.beAttackedPointR) + - h.beAttackedPointL), - SetStyle(i, { left: h.X + "px" }), - (n.src = - "images/Zombies/PoleVaultingZombie/PoleVaultingZombieJump2.gif" + - $Random + - Math.random()), - SetVisible(l), - oSym.addTask( - 80, - function (s, v) { - var u = $Z[s], - t; - u && - ((v.src = - "images/Zombies/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), - (u.isAttacking = 0), - (u.Altitude = 1), - (u.OSpeed = u.Speed = 1.6), - (u.NormalGif = 9), - (u.LostHeadGif = 10), - (u.NormalAttack = (t = - CZombies.prototype).NormalAttack), - (u.getCrushed = t.getCrushed), - (u.getFreeze = t.getFreeze), - (u.getRaven = t.getRaven)); - }, - [m, n] - ))); - }, - [d, b, a, c, e] - ); - }, - }), - oCPoleVaultingZombie = InheritO(oPoleVaultingZombie, { - EName: "oCPoleVaultingZombie", - CName: "棒子僵尸", - PicArr: (function () { - var b = "images/Zombies/PoleVaultingZombie/"; - var a = "images/Zombies/wall/PoleVaultingZombie/"; - return [ - "images/Card/Zombies/PoleVaultingZombie.png", - a + "0.gif", - a + "PoleVaultingZombie.gif", - a + "PoleVaultingZombieAttack.gif", - a + "PoleVaultingZombieLostHead.gif", - a + "PoleVaultingZombieLostHeadAttack.gif", - a + "PoleVaultingZombieHead.gif" + $Random, - a + "PoleVaultingZombieDie.gif" + $Random, - b + "BoomDie.gif" + $Random, - a + "PoleVaultingZombieWalk.gif", - a + "PoleVaultingZombieLostHeadWalk.gif", - a + "PoleVaultingZombieJump.gif", - a + "PoleVaultingZombieJump2.gif", - a + "1.gif", - ]; - })(), - NormalAttack: function (d, b, g) { - var f = $Z[d], - a = f.Ele, - c = f.EleShadow, - e = f.EleBody; - e.src = - "images/Zombies/wall/PoleVaultingZombie/PoleVaultingZombieJump.gif" + - $Random + - Math.random(); - PlayAudio("grassstep"); - SetHidden(c); - f.isAttacking = 1; - f.Altitude = 2; - f.getFreeze = function () { - f.getSnowPea(f, 20); - }; - oSym.addTask( - 50, - function (h) { - $Z[h] && PlayAudio("polevault"); - }, - [d] - ); - oSym.addTask( - 100, - function (m, j, i, l, n) { - var h = $Z[m], - k, - q, - r; - h && - ((k = $P[j]) && k.Stature > 0 - ? ((h.AttackedRX = - (h.X = - (h.AttackedLX = h.ZX = q = k.AttackedRX) - - h.beAttackedPointL) + h.beAttackedPointR), - SetStyle(i, { left: h.X + "px" }), - (n.src = - "images/Zombies/wall/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), - SetVisible(l), - (h.isAttacking = 0), - (h.Altitude = 1), - (h.OSpeed = h.Speed = 1.6), - (h.NormalGif = 9), - (h.LostHeadGif = 10), - (h.NormalAttack = (r = - CZombies.prototype).NormalAttack), - (h.getCrushed = r.getCrushed), - (h.getFreeze = r.getFreeze), - (h.getRaven = r.getRaven)) - : ((h.ZX = h.AttackedLX = - (h.X = - (h.AttackedRX = g) - h.beAttackedPointR) + - h.beAttackedPointL), - SetStyle(i, { left: h.X + "px" }), - (n.src = - "images/Zombies/wall/PoleVaultingZombie/PoleVaultingZombieJump2.gif" + - $Random + - Math.random()), - SetVisible(l), - oSym.addTask( - 80, - function (s, v) { - var u = $Z[s], - t; - u && - ((v.src = - "images/Zombies/wall/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), - (u.isAttacking = 0), - (u.Altitude = 1), - (u.OSpeed = u.Speed = 1.6), - (u.NormalGif = 9), - (u.LostHeadGif = 10), - (u.NormalAttack = (t = - CZombies.prototype).NormalAttack), - (u.getCrushed = t.getCrushed), - (u.getFreeze = t.getFreeze), - (u.getRaven = t.getRaven)); - }, - [m, n] - ))); - }, - [d, b, a, c, e] - ); - }, - }), - OrnIIZombies = InheritO(OrnNoneZombies, { - Ornaments: 2, - BreakPoint: 91, - NormalGif: 2, - AttackGif: 3, - LostHeadGif: 4, - LostHeadAttackGif: 5, - OrnLostNormalGif: 6, - OrnLostAttackGif: 7, - OrnLostHeadNormalGif: 8, - OrnLostHeadAttackGif: 9, - HeadGif: 10, - DieGif: 11, - BoomDieGif: 12, - }), - oNewspaperZombie = InheritO(OrnIIZombies, { - EName: "oNewspaperZombie", - CName: "Newspaper Zombie", - OrnHP: 150, - Lvl: 2, - LostPaperGif: 13, - StandGif: 14, - width: 216, - height: 164, - beAttackedPointL: 60, - beAttackedPointR: 130, - LostPaperSpeed: 4.8, - PicArr: (function () { - var a = "images/Zombies/NewspaperZombie/"; - return [ - "images/Card/Zombies/NewspaperZombie.png", - a + "0.gif", - a + "HeadWalk1.gif", - a + "HeadAttack1.gif", - a + "LostHeadWalk1.gif", - a + "LostHeadAttack1.gif", - a + "HeadWalk0.gif", - a + "HeadAttack0.gif", - a + "LostHeadWalk0.gif", - a + "LostHeadAttack0.gif", - a + "Head.gif" + $Random, - a + "Die.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "LostNewspaper.gif", - a + "1.gif", - ]; - })(), - AudioArr: ["newspaper_rarrgh2"], - Produce: - '他的报纸只能提供有限的防御。

韧性:
报纸韧性:
速度:正常,而后快(失去报纸后)

读报僵尸,他正痴迷于完成他的数独难题。难怪他这么反常。', - getShadow: function (a) { - return "left:75px;top:" + (a.height - 25) + "px"; - }, - GoingDie: function (b) { - var a = this, - c = a.id; - a.EleBody.src = b; - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a.PicArr[a.HeadGif] + Math.random(), - "left:" + - a.AttackedLX + - "px;top:" + - (a.pixelTop - 20) + - "px;z-index:" + - a.zIndex, - EDPZ - ), - ]); - a.beAttacked = 0; - a.FreeFreezeTime = a.FreeSetbodyTime = a.FreeSlowTime = 0; - a.AutoReduceHP(c); - }, - getHurtOrnLost: function (j, a, g, m, c, l, k, i) { - var e = this; - if (!e.beAttacked) { - k && e.DisappearDie(); - return; - } - var b = e.id, - h = e.HP, - d = e.PicArr, - f = e.isAttacking; - switch (true) { - case (h -= g) < 1: - e.HP = 0; - e.NormalDie(); - return; - case h < 91: - e.HP = h; - e.GoingDie( - d[[e.OrnLostHeadNormalGif, e.OrnLostHeadAttackGif][f]] - ); - return; - } - e.HP = h; - switch (m) { - case -1: - e.getSlow(e, b, 1e3); - break; - case 1: - e.getFireball(e, b, a); - break; - default: - !i && j == -1 && e.PlayNormalballAudio(); - } - SetAlpha(e.EleBody, 50, 0.5); - oSym.addTask( - 10, - function (q) { - var n = $Z[q]; - n && SetAlpha(n.EleBody, 100, 1); - }, - [b] - ); - }, - getSnowPea: function (c, a, b) { - PlayAudio("splat" + Math.floor(1 + Math.random() * 3)); - c.getHit0(c, a, b); - }, - getFirePea: function (f, b, e) { - f.PlayFireballAudio(); - (f.FreeSlowTime || f.FreeFreezeTime) && - ((f.Speed = f.OSpeed), - (f.FreeSlowTime = 0), - (f.FreeFreezeTime = 0)); - f.Attack = 100; - var d = f.AttackedLX, - g = f.AttackedRX, - a = oZ.getArZ(d, d + 40, f.R), - c = a.length, - h; - while (c--) { - (h = a[c]) != this && h.getFirePeaSputtering(); - } - (f.HP -= b) < f.BreakPoint - ? ((f.getFirePea = OrnNoneZombies.prototype.getFirePea), - f.GoingDie( - f.PicArr[ - [f.LostHeadGif, f.LostHeadAttackGif][f.isAttacking] - ] - ), - (f.getHit = - f.getHit0 = - f.getHit1 = - f.getHit2 = - f.getHit3 = - function () {})) - : (f.CheckOrnHP( - f, - f.id, - f.OrnHP, - b, - f.PicArr, - f.isAttacking, - 0 - ), - f.SetAlpha(f, f.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (j, i) { - (i = $Z[j]) && i.SetAlpha(i, i.EleBody, 100, 1); - }, - [f.id] - )); - }, - getHit0: function (c, a, b) { - b == c.WalkDirection - ? (c.CheckOrnHP( - c, - c.id, - c.OrnHP, - a, - c.PicArr, - c.isAttacking, - 1 - ), - c.SetAlpha(c, c.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (e, d) { - (d = $Z[e]) && d.SetAlpha(d, d.EleBody, 100, 1); - }, - [c.id] - )) - : (c.HP -= a) < c.BreakPoint && - (c.GoingDie( - c.PicArr[ - [c.LostHeadGif, c.LostHeadAttackGif][c.isAttacking] - ] - ), - (c.getFirePea = OrnNoneZombies.prototype.getFirePea), - (c.getSnowPea = OrnNoneZombies.prototype.getSnowPea), - (c.getHit = - c.getHit0 = - c.getHit1 = - c.getHit2 = - c.getHit3 = - function () {})); - }, - getHit1: function (b, a) { - (b.HP -= a) < b.BreakPoint - ? (b.GoingDie( - b.PicArr[ - [b.LostHeadGif, b.LostHeadAttackGif][b.isAttacking] - ] - ), - (b.getFirePea = OrnNoneZombies.prototype.getFirePea), - (b.getSnowPea = OrnNoneZombies.prototype.getSnowPea), - (b.getHit = - b.getHit0 = - b.getHit1 = - b.getHit2 = - b.getHit3 = - function () {})) - : (b.CheckOrnHP( - b, - b.id, - b.OrnHP, - a, - b.PicArr, - b.isAttacking, - 0 - ), - b.SetAlpha(b, b.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (d, c) { - (c = $Z[d]) && c.SetAlpha(c, c.EleBody, 100, 1); - }, - [b.id] - )); - }, - getHit2: function (b, a) { - (b.HP -= a) < b.BreakPoint - ? (b.GoingDie( - b.PicArr[ - [b.LostHeadGif, b.LostHeadAttackGif][b.isAttacking] - ] - ), - (b.getFirePea = OrnNoneZombies.prototype.getFirePea), - (b.getSnowPea = OrnNoneZombies.prototype.getSnowPea), - (b.getHit = - b.getHit0 = - b.getHit1 = - b.getHit2 = - b.getHit3 = - function () {})) - : (b.SetAlpha(b, b.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (d, c) { - (c = $Z[d]) && c.SetAlpha(c, c.EleBody, 100, 1); - }, - [b.id] - )); - }, - getHit3: function (b, a) { - (b.HP -= a) < b.BreakPoint - ? (b.GoingDie( - b.PicArr[ - [b.LostHeadGif, b.LostHeadAttackGif][b.isAttacking] - ] - ), - (b.getFirePea = OrnNoneZombies.prototype.getFirePea), - (b.getSnowPea = OrnNoneZombies.prototype.getSnowPea), - (b.getHit = - b.getHit0 = - b.getHit1 = - b.getHit2 = - b.getHit3 = - function () {})) - : (b.CheckOrnHP( - b, - b.id, - b.OrnHP, - a, - b.PicArr, - b.isAttacking, - 0 - ), - b.SetAlpha(b, b.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (d, c) { - (c = $Z[d]) && c.SetAlpha(c, c.EleBody, 100, 1); - }, - [b.id] - )); - }, - CheckOrnHP: function (g, h, d, c, f, b, a) { - var e = OrnNoneZombies.prototype; - (g.OrnHP = d -= c) < 1 && - (a && (g.HP += d), - (g.ChkActs = function () { - return 1; - }), - (g.ChkActs1 = function () { - return 1; - }), - (g.EleBody.src = f[g.LostPaperGif] + $Random + Math.random()), - (g.Ornaments = 0), - (g.LostHeadGif = 8), - (g.LostHeadAttackGif = 9), - (g.getFirePea = e.getFirePea), - (g.getSnowPea = e.getSnowPea), - (g.getHit = - g.getHit0 = - g.getHit1 = - g.getHit2 = - g.getHit3 = - e.getHit), - oSym.addTask( - 150, - function (m, l) { - var k = $Z[m]; - if (!k) { - return; - } - var j = CZombies.prototype, - i = (k.OSpeed = k.LostPaperSpeed); - k.ChkActs = j.ChkActs; - k.ChkActs1 = j.ChkActs1; - k.Speed && (k.Speed = !k.FreeSlowTime ? i : 0.5 * i); - if (!k.beAttacked) { - return; - } - PlayAudio("newspaper_rarrgh2"); - k.EleBody.src = l; - k.JudgeAttack(); - }, - [ - h, - f[ - [ - (g.NormalGif = g.OrnLostNormalGif), - (g.AttackGif = g.OrnLostAttackGif), - ][b] - ], - ] - )); - }, - }), - oCNewspaperZombie = InheritO(oNewspaperZombie, { - EName: "oCNewspaperZombie", - }), - oScreenDoorZombie = InheritO(oNewspaperZombie, { - EName: "oScreenDoorZombie", - CName: "Screen Door Zombie", - OrnHP: 1100, - Lvl: 3, - SunNum: 100, - StandGif: 13, - width: 166, - height: 144, - beAttackedPointL: 60, - beAttackedPointR: 116, - PicArr: (function () { - var a = "images/Zombies/ScreenDoorZombie/", - b = "images/Zombies/Zombie/"; - return [ - "images/Card/Zombies/ScreenDoorZombie.png", - a + "0.gif", - a + "HeadWalk1.gif", - a + "HeadAttack1.gif", - a + "LostHeadWalk1.gif", - a + "LostHeadAttack1.gif", - b + "Zombie.gif", - b + "ZombieAttack.gif", - b + "ZombieLostHead.gif", - b + "ZombieLostHeadAttack.gif", - b + "ZombieHead.gif" + $Random, - b + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - PlayNormalballAudio: function () { - PlayAudio("splat" + Math.floor(1 + Math.random() * 3)); - }, - Produce: - '他的铁栅门是有效的盾牌。

韧性:
铁栅门韧性:
弱点:大喷菇和磁力菇

门板僵尸上次拜访过的房主防守并不专业,在吃掉房主的脑子后拿走了他家的铁栅门。', - GoingDie: CZombies.prototype.GoingDie, - getFirePea: function (c, a, b) { - PlayAudio( - b == c.WalkDirection - ? ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - : "splat" + Math.floor(1 + Math.random() * 3) - ); - c.getHit0(c, a, b); - }, - getFirePeaSputtering: function () {}, - getSnowPea: function (c, a, b) { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - c.getHit0(c, a, b); - }, - getPea: function (c, a, b) { - PlayAudio( - b == c.WalkDirection - ? ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - : "splat" + Math.floor(1 + Math.random() * 3) - ); - c.getHit0(c, a, b); - }, - getHit0: function (c, a, b) { - b == c.WalkDirection - ? (c.CheckOrnHP( - c, - c.id, - c.OrnHP, - a, - c.PicArr, - c.isAttacking, - 1 - ), - c.SetAlpha(c, c.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (e, d) { - (d = $Z[e]) && d.SetAlpha(d, d.EleBody, 100, 1); - }, - [c.id] - )) - : (c.HP -= a) < c.BreakPoint && - (c.GoingDie( - c.PicArr[ - [c.LostHeadGif, c.LostHeadAttackGif][c.isAttacking] - ] - ), - (c.getHit = - c.getHit0 = - c.getHit1 = - c.getHit2 = - c.getHit3 = - function () {})); - }, - CheckOrnHP: function (g, h, d, c, f, b, a) { - var e = OrnNoneZombies.prototype; - (g.OrnHP = d -= c) < 1 && - (a && (g.HP += d), - (g.Ornaments = 0), - (g.EleBody.src = - f[ - [ - (g.NormalGif = g.OrnLostNormalGif), - (g.AttackGif = g.OrnLostAttackGif), - ][b] - ]), - (g.LostHeadGif = 8), - (g.LostHeadAttackGif = 9), - (g.getPea = e.getPea), - (g.getFirePea = e.getFirePea), - (g.getFirePeaSputtering = e.getFirePeaSputtering), - (g.getSnowPea = g.getSnowPea), - (g.PlayNormalballAudio = e.PlayNormalballAudio), - (g.PlayFireballAudio = e.PlayFireballAudio), - (g.PlaySlowballAudio = e.PlaySlowballAudio), - (g.getHit = - g.getHit0 = - g.getHit1 = - g.getHit2 = - g.getHit3 = - e.getHit)); - }, - getFireball: function (c, a, b) { - b != c.WalkDirection - ? ((c.FreeSlowTime = 0), - (c.Attack = 100), - c.Speed != c.OSpeed - ? (c.PlayNormalballAudio(), (c.Speed = c.OSpeed)) - : c.PlayFireballAudio()) - : c.PlayNormalballAudio(); - }, - getSputtering: function () {}, - getSlow: function (d, a, c, b, e) { - b != d.WalkDirection || e != -1 - ? CZombies.prototype.getSlow(d, a, c) - : d.PlayNormalballAudio(); - }, - }), - oIScreenDoorZombie = InheritO(oNewspaperZombie, { - EName: "oIScreenDoorZombie", - CName: "Screen Door Zombie", - OrnHP: 1100, - Lvl: 3, - SunNum: 100, - StandGif: 13, - width: 166, - height: 144, - beAttackedPointL: 60, - beAttackedPointR: 116, - PicArr: (function () { - var a = "images/Zombies/ScreenDoorZombie/", - b = "images/Zombies/Zombie/"; - return [ - "images/Card/Zombies/IScreenDoorZombie.png", - a + "0.gif", - a + "HeadWalk1.gif", - a + "HeadAttack1.gif", - a + "LostHeadWalk1.gif", - a + "LostHeadAttack1.gif", - b + "Zombie.gif", - b + "ZombieAttack.gif", - b + "ZombieLostHead.gif", - b + "ZombieLostHeadAttack.gif", - b + "ZombieHead.gif" + $Random, - b + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - PlayNormalballAudio: function () { - PlayAudio("splat" + Math.floor(1 + Math.random() * 3)); - }, - Produce: - '他的铁栅门是有效的盾牌。

韧性:
铁栅门韧性:
弱点:大喷菇和磁力菇

门板僵尸上次拜访过的房主防守并不专业,在吃掉房主的脑子后拿走了他家的铁栅门。', - GoingDie: CZombies.prototype.GoingDie, - getFirePea: function (c, a, b) { - PlayAudio( - b == c.WalkDirection - ? ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - : "splat" + Math.floor(1 + Math.random() * 3) - ); - c.getHit0(c, a, b); - }, - getFirePeaSputtering: function () {}, - getSnowPea: function (c, a, b) { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - c.getHit0(c, a, b); - }, - getPea: function (c, a, b) { - PlayAudio( - b == c.WalkDirection - ? ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - : "splat" + Math.floor(1 + Math.random() * 3) - ); - c.getHit0(c, a, b); - }, - getHit0: function (c, a, b) { - b == c.WalkDirection - ? (c.CheckOrnHP( - c, - c.id, - c.OrnHP, - a, - c.PicArr, - c.isAttacking, - 1 - ), - c.SetAlpha(c, c.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (e, d) { - (d = $Z[e]) && d.SetAlpha(d, d.EleBody, 100, 1); - }, - [c.id] - )) - : (c.HP -= a) < c.BreakPoint && - (c.GoingDie( - c.PicArr[ - [c.LostHeadGif, c.LostHeadAttackGif][c.isAttacking] - ] - ), - (c.getHit = - c.getHit0 = - c.getHit1 = - c.getHit2 = - c.getHit3 = - function () {})); - }, - CheckOrnHP: function (g, h, d, c, f, b, a) { - var e = OrnNoneZombies.prototype; - (g.OrnHP = d -= c) < 1 && - (a && (g.HP += d), - (g.Ornaments = 0), - (g.EleBody.src = - f[ - [ - (g.NormalGif = g.OrnLostNormalGif), - (g.AttackGif = g.OrnLostAttackGif), - ][b] - ]), - (g.LostHeadGif = 8), - (g.LostHeadAttackGif = 9), - (g.getPea = e.getPea), - (g.getFirePea = e.getFirePea), - (g.getFirePeaSputtering = e.getFirePeaSputtering), - (g.getSnowPea = g.getSnowPea), - (g.PlayNormalballAudio = e.PlayNormalballAudio), - (g.PlayFireballAudio = e.PlayFireballAudio), - (g.PlaySlowballAudio = e.PlaySlowballAudio), - (g.getHit = - g.getHit0 = - g.getHit1 = - g.getHit2 = - g.getHit3 = - e.getHit)); - }, - getFireball: function (c, a, b) { - b != c.WalkDirection - ? ((c.FreeSlowTime = 0), - (c.Attack = 100), - c.Speed != c.OSpeed - ? (c.PlayNormalballAudio(), (c.Speed = c.OSpeed)) - : c.PlayFireballAudio()) - : c.PlayNormalballAudio(); - }, - getSputtering: function () {}, - getSlow: function (d, a, c, b, e) { - b != d.WalkDirection || e != -1 - ? CZombies.prototype.getSlow(d, a, c) - : d.PlayNormalballAudio(); - }, - }), - oTrashZombie = InheritO(oScreenDoorZombie, { - EName: "oTrashZombie", - CName: "Trash Can Zombie", - PicArr: (function () { - var a = "images/Zombies/TrashZombie/", - b = "images/Zombies/Zombie/"; - return [ - "images/Card/Zombies/TrashZombie.png", - a + "0.gif", - a + "HeadWalk1.gif", - a + "HeadAttack1.gif", - a + "LostHeadWalk1.gif", - a + "LostHeadAttack1.gif", - b + "Zombie.gif", - b + "ZombieAttack.gif", - b + "ZombieLostHead.gif", - b + "ZombieLostHeadAttack.gif", - b + "ZombieHead.gif" + $Random, - b + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - Produce: - "出没于常青之塔的神秘僵尸。

有这样一个故事:老人买了房子,不久便有、个年轻人在附近踢垃圾桶玩。 老人受不了这些噪音,于是和年轻人说“你每天都来踢垃圾桶,我给你一块钱。”年轻人很高兴,踹起了垃圾桶。三天后,老人说:“因为通货膨胀,明天起我只能给你5毛钱。“年轻人不大开心,但还是接受了。下午,他继续去踹垃圾桶。五天后,老人对他说:“最近没有收到养老金,只能给两毛了。”“两毛钱?”年轻人发起了火,之后便再没来踹垃圾桶了 ", - }), - oAquaticZombie = InheritO(OrnNoneZombies, { - StandGif: 4, - AttackGif: 5, - HeadGif: 6, - DieGif: 7, - WalkGif0: 2, - WalkGif1: 3, - CanPass: function (b, a) { - return a == 2; - }, - BirthCallBack: function (g) { - var e = g.delayT, - c = g.id, - b = (g.Ele = $(c)), - d = g.AttackedLX, - f, - a, - h; - f = g.EleShadow = b.firstChild; - g.EleBody = b.childNodes[1]; - switch (true) { - case d > GetX(9): - g.ChkActs = g.ChkActsL1; - g.WalkStatus = 0; - break; - case d < GetX(0): - g.ChkActs = g.ChkActsL3; - g.WalkStatus = 0; - break; - default: - g.ChkActs = g.ChkActsL2; - g.WalkStatus = 1; - g.EleBody.src = g.PicArr[(g.NormalGif = g.WalkGif1)]; - SetHidden(f); - NewEle( - (a = c + "_splash"), - "div", - "position:absolute;background:url(images/interface/splash.png);left:61px;top:" + - (g.height - 88) + - "px;width:97px;height:88px;over-flow:hidden", - 0, - b - ); - ImgSpriter( - a, - c, - [ - ["0 0", 9, 1], - ["-97px 0", 9, 2], - ["-194px 0", 9, 3], - ["-291px 0", 9, 4], - ["-388px 0", 9, 5], - ["-485px 0", 9, 6], - ["-582px 0", 9, 7], - ["-679px 0", 9, -1], - ], - 0, - function (i, j) { - ClearChild($(i)); - } - ); - } - e - ? oSym.addTask( - e, - function (j, i) { - var k = $Z[j]; - k && ((k.FreeSetbodyTime = 0), SetBlock(i)); - }, - [c, b] - ) - : SetBlock(b); - }, - ChkActsL1: function (f, e, g, d) { - var c, - a, - b = f.id; - !(f.FreeFreezeTime || f.FreeSetbodyTime) && - ((f.AttackedRX -= c = f.Speed), - (LX = f.ZX = f.AttackedLX -= c), - (f.Ele.style.left = Math.floor((f.X -= c)) + "px")); - f.AttackedLX < GetX(9) && - (PlayAudio("zombie_entering_water"), - (f.WalkStatus = 1), - (f.EleBody.src = f.PicArr[(f.NormalGif = f.WalkGif1)]), - SetHidden(f.EleShadow), - NewEle( - (a = b + "_splash"), - "div", - "position:absolute;background:url(images/interface/splash.png);left:61px;top:" + - (f.height - 88) + - "px;width:97px;height:88px;over-flow:hidden", - 0, - f.Ele - ), - (f.ChkActs = f.ChkActsL2), - ImgSpriter( - a, - b, - [ - ["0 0", 9, 1], - ["-97px 0", 9, 2], - ["-194px 0", 9, 3], - ["-291px 0", 9, 4], - ["-388px 0", 9, 5], - ["-485px 0", 9, 6], - ["-582px 0", 9, 7], - ["-679px 0", 9, -1], - ], - 0, - function (h, i) { - ClearChild($(h)); - } - )); - return 1; - }, - ChkActsL2: function (d, c, e, b) { - var a; - !(d.FreeFreezeTime || d.FreeSetbodyTime) && - (d.beAttacked && !d.isAttacking && d.JudgeAttack(), - !d.isAttacking && - ((d.AttackedRX -= a = d.Speed), - (d.ZX = d.AttackedLX -= a), - (d.Ele.style.left = Math.floor((d.X -= a)) + "px"))); - d.AttackedLX < GetX(0) && - ((d.WalkStatus = 0), - (d.EleBody.src = d.PicArr[(d.NormalGif = d.WalkGif0)]), - SetVisible(d.EleShadow), - (d.ChkActs = d.ChkActsL3)); - return 1; - }, - ChkActsL3: CZombies.prototype.ChkActs, - ChkActs1: function (d, c, e, b) { - var a; - !(d.FreeFreezeTime || d.FreeSetbodyTime) && - (d.beAttacked && !d.isAttacking && d.JudgeAttack(), - !d.isAttacking && - ((d.AttackedLX += a = d.Speed), - (d.ZX = d.AttackedRX += a), - (d.Ele.style.left = Math.ceil((d.X += a)) + "px"))); - d.AttackedLX > GetX(9) && - ((d.WalkStatus = 0), - (d.EleBody.src = d.PicArr[(d.NormalGif = d.WalkGif0)]), - SetVisible(d.EleShadow), - (d.ChkActs = d.ChkActs2)); - return 1; - }, - ChkActs2: function (e, c, f, b) { - var a, d; - !(e.FreeFreezeTime || e.FreeSetbodyTime) - ? (e.beAttacked && !e.isAttacking && e.JudgeAttack(), - !e.isAttacking - ? (e.AttackedLX += a = e.Speed) > oS.W - ? (f.splice(b, 1), e.DisappearDie(), (d = 0)) - : ((e.ZX = e.AttackedRX += a), - (e.Ele.style.left = Math.ceil((e.X += a)) + "px"), - (d = 1)) - : (d = 1)) - : (d = 1); - return d; - }, - ExchangeLR: function (d, b) { - var c = d.width, - f = d.beAttackedPointL, - a = d.beAttackedPointR, - e = d.Ele; - e.style.left = - (d.X = d.AttackedLX - (d.beAttackedPointL = c - a)) + "px"; - d.beAttackedPointR = c - f; - d.EleShadow.style.cssText = - "visibility:hidden;left:" + - (d.beAttackedPointL - 10) + - "px;top:" + - (d.height - 22) + - "px"; - d.ExchangeLR2(d, d.EleBody, b); - }, - GoingDie: function () { - var b = this, - c = b.id, - a = b.PicArr; - b.EleBody.src = a[7] + Math.random(); - b.GoingDieHead(c, a, b); - b.beAttacked = 0; - b.FreeFreezeTime = b.FreeSetbodyTime = b.FreeSlowTime = 0; - b.AutoReduceHP(c); - }, - AutoReduceHP: function (a) { - oSym.addTask( - 100, - function (c) { - var b = $Z[c]; - b && - ((b.HP -= 60) < 1 - ? (b.NormalDie(), - oSym.addTask(50, ClearChild, [b.Ele])) - : oSym.addTask(100, arguments.callee, [c])); - }, - [a] - ); - }, - ExplosionDie: function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - DisappearDie: function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - NormalDie: function () { - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - }), - oDuckyTubeZombie1 = InheritO(oAquaticZombie, { - EName: "oDuckyTubeZombie1", - CName: "Ducky Tube Zombie", - beAttackedPointR: 130, - GetDY: function () { - return 5; - }, - Produce: - '鸭子救生圈能让僵尸能浮在水面上。

韧性:
只在水池Level出现

只有特定的僵尸才能成为救生圈僵尸。并不是每个僵尸都能胜任的。有些救生圈有点漏气,但他们没能注意到,所以他们离开并放弃了对脑子的渴求。', - PicArr: (function () { - var a = "images/Zombies/DuckyTubeZombie1/"; - return [ - "images/Card/Zombies/DuckyTubeZombie1.png", - a + "0.gif", - a + "Walk1.gif", - a + "Walk2.gif", - a + "1.gif", - a + "Attack.gif", - a + "ZombieHead.gif" + $Random, - a + "Die.gif" + $Random, - ]; - })(), - AudioArr: ["zombie_entering_water"], - }), - oIDuckyTubeZombie1 = InheritO(oAquaticZombie, { - EName: "oIDuckyTubeZombie1", - CName: "Ducky Tube Zombie", - beAttackedPointR: 130, - GetDY: function () { - return 5; - }, - Produce: - '鸭子救生圈能让僵尸能浮在水面上。

韧性:
只在水池Level出现

只有特定的僵尸才能成为救生圈僵尸。并不是每个僵尸都能胜任的。有些救生圈有点漏气,但他们没能注意到,所以他们离开并放弃了对脑子的渴求。', - PicArr: (function () { - var a = "images/Zombies/DuckyTubeZombie1/"; - return [ - "images/Card/Zombies/IDuckyTubeZombie1.png", - a + "Walk2.gif", - a + "Walk1.gif", - a + "Walk2.gif", - a + "Walk2.gif", - a + "Attack.gif", - a + "ZombieHead.gif" + $Random, - a + "Die.gif" + $Random, - ]; - })(), - AudioArr: ["zombie_entering_water"], - }), - oWarshipsZombie = InheritO(oDuckyTubeZombie1, { - EName: "oWarshipsZombie", - CName: "Warships Zombie", - HP: "5000", - OSpeed: 0.1, - Speed: 0.1, - width: 464, - height: 364, - beAttackedPointL: 140, - beAttackedPointR: 290, - Attack: 550, - BookHandBack: 4.9, - getShadow: function (a) { - return "display:none"; - }, - Produce: - '通常在最后一波时出现于池塘里。

韧性:极高
只在水池Level出现

你一定很好奇军舰上的三只僵尸藏在水里是什么滋味,他们眼睁睁看着一只只同伴坠入海水生出,不过这些都不重要:“脑子!”。', - PicArr: (function () { - var a = "images/Zombies/WarshipsZombie/"; - return [ - "images/Card/Zombies/WarshipsZombie.png", - a + "0.gif", - a + "Walk1.gif", - a + "Walk2.gif", - a + "1.gif", - a + "Attack.gif", - a + "ZombieHead.gif" + $Random, - a + "Die.gif" + $Random, - ]; - })(), - }), - oDuckyTubeZombie2 = InheritO(oDuckyTubeZombie1, { - EName: "oDuckyTubeZombie2", - CName: "Ducky Tube Conehead Zombie", - OrnHP: 370, - Lvl: 2, - SunNum: 75, - CanDisplay: 0, - OrnLostNormalGif: 9, - OrnLostAttackGif: 10, - PlayNormalballAudio: function () { - PlayAudio("plastichit"); - }, - PicArr: (function () { - var b = "images/Zombies/DuckyTubeZombie2/", - a = "images/Zombies/DuckyTubeZombie1/"; - return [ - "images/Card/Zombies/DuckyTubeZombie1.png", - b + "0.gif", - b + "Walk1.gif", - b + "Walk2.gif", - b + "1.gif", - b + "Attack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + $Random, - a + "Die.gif" + $Random, - a + "Walk1.gif", - a + "Walk2.gif", - a + "Attack.gif", - ]; - })(), - AudioArr: ["plastichit", "zombie_entering_water"], - getHit: OrnIZombies.prototype.getHit, - getHit0: OrnIZombies.prototype.getHit0, - getHit1: OrnIZombies.prototype.getHit1, - getHit2: OrnIZombies.prototype.getHit2, - getHit3: OrnIZombies.prototype.getHit3, - }), - oIDuckyTubeZombie2 = InheritO(oDuckyTubeZombie1, { - EName: "oIDuckyTubeZombie2", - CName: "Ducky Tube Conehead Zombie", - OrnHP: 370, - Lvl: 2, - SunNum: 75, - CanDisplay: 0, - OrnLostNormalGif: 9, - OrnLostAttackGif: 10, - PlayNormalballAudio: function () { - PlayAudio("plastichit"); - }, - PicArr: (function () { - var b = "images/Zombies/DuckyTubeZombie2/", - a = "images/Zombies/DuckyTubeZombie1/"; - return [ - "images/Card/Zombies/IDuckyTubeZombie2.png", - b + "Walk2.gif", - b + "Walk1.gif", - b + "Walk2.gif", - b + "Walk2.gif", - b + "Attack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + $Random, - a + "Die.gif" + $Random, - a + "Walk1.gif", - a + "Walk2.gif", - a + "Attack.gif", - ]; - })(), - AudioArr: ["plastichit", "zombie_entering_water"], - getHit: OrnIZombies.prototype.getHit, - getHit0: OrnIZombies.prototype.getHit0, - getHit1: OrnIZombies.prototype.getHit1, - getHit2: OrnIZombies.prototype.getHit2, - getHit3: OrnIZombies.prototype.getHit3, - }), - oDuckyTubeZombie3 = InheritO(oDuckyTubeZombie2, { - EName: "oDuckyTubeZombie3", - CName: "Ducky Tube Buckethead Zombie", - OrnHP: 1100, - Lvl: 3, - SunNum: 125, - PlayNormalballAudio: function () { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - }, - AudioArr: ["shieldhit", "shieldhit2", "zombie_entering_water"], - PicArr: (function () { - var b = "images/Zombies/DuckyTubeZombie3/", - a = "images/Zombies/DuckyTubeZombie1/"; - return [ - "images/Card/Zombies/DuckyTubeZombie1.png", - b + "0.gif", - b + "Walk1.gif", - b + "Walk2.gif", - b + "1.gif", - b + "Attack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + $Random, - a + "Die.gif" + $Random, - a + "Walk1.gif", - a + "Walk2.gif", - a + "Attack.gif", - ]; - })(), - }), - oIDuckyTubeZombie3 = InheritO(oDuckyTubeZombie2, { - EName: "oIDuckyTubeZombie3", - CName: "Ducky Tube Buckethead Zombie", - OrnHP: 1100, - Lvl: 3, - SunNum: 125, - PlayNormalballAudio: function () { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - }, - AudioArr: ["shieldhit", "shieldhit2", "zombie_entering_water"], - PicArr: (function () { - var b = "images/Zombies/DuckyTubeZombie3/", - a = "images/Zombies/DuckyTubeZombie1/"; - return [ - "images/Card/Zombies/IDuckyTubeZombie3.png", - b + "Walk2.gif", - b + "Walk1.gif", - b + "Walk2.gif", - b + "Walk2.gif", - b + "Attack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + $Random, - a + "Die.gif" + $Random, - a + "Walk1.gif", - a + "Walk2.gif", - a + "Attack.gif", - ]; - })(), - }), - oDuckyTubeZombie4 = InheritO(oDuckyTubeZombie3, { - EName: "oDuckyTubeZombie4", - CName: "Ducky Tube Screen Door Zombie", - PicArr: (function () { - var b = "images/Zombies/DuckyTubeZombie4/", - a = "images/Zombies/DuckyTubeZombie1/"; - return [ - "images/Card/Zombies/DuckyTubeZombie1.png", - b + "0.gif", - b + "Walk1.gif", - b + "Walk2.gif", - b + "1.gif", - b + "Attack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + $Random, - a + "Die.gif" + $Random, - a + "Walk1.gif", - a + "Walk2.gif", - a + "Attack.gif", - ]; - })(), - getHit: OrnIIZombies.prototype.getHit, - getHit0: oScreenDoorZombie.prototype.getHit0, - getHit1: OrnIIZombies.prototype.getHit1, - getHit2: OrnIIZombies.prototype.getHit2, - getHit3: OrnIIZombies.prototype.getHit3, - getSnowPea: oScreenDoorZombie.prototype.getSnowPea, - CheckOrnHP: oScreenDoorZombie.prototype.CheckOrnHP, - }), - oAquaticZombie = InheritO(OrnNoneZombies, { - StandGif: 4, - AttackGif: 5, - HeadGif: 6, - DieGif: 7, - WalkGif0: 2, - WalkGif1: 3, - CanPass: function (b, a) { - return a == 2; - }, - BirthCallBack: function (g) { - var e = g.delayT, - c = g.id, - b = (g.Ele = $(c)), - d = g.AttackedLX, - f, - a, - h; - f = g.EleShadow = b.firstChild; - g.EleBody = b.childNodes[1]; - switch (true) { - case d > GetX(9): - g.ChkActs = g.ChkActsL1; - g.WalkStatus = 0; - break; - case d < GetX(0): - g.ChkActs = g.ChkActsL3; - g.WalkStatus = 0; - break; - default: - g.ChkActs = g.ChkActsL2; - g.WalkStatus = 1; - g.EleBody.src = g.PicArr[(g.NormalGif = g.WalkGif1)]; - SetHidden(f); - NewEle( - (a = c + "_splash"), - "div", - "position:absolute;background:url(images/interface/splash.png);left:61px;top:" + - (g.height - 88) + - "px;width:97px;height:88px;over-flow:hidden", - 0, - b - ); - ImgSpriter( - a, - c, - [ - ["0 0", 9, 1], - ["-97px 0", 9, 2], - ["-194px 0", 9, 3], - ["-291px 0", 9, 4], - ["-388px 0", 9, 5], - ["-485px 0", 9, 6], - ["-582px 0", 9, 7], - ["-679px 0", 9, -1], - ], - 0, - function (i, j) { - ClearChild($(i)); - } - ); - } - e - ? oSym.addTask( - e, - function (j, i) { - var k = $Z[j]; - k && ((k.FreeSetbodyTime = 0), SetBlock(i)); - }, - [c, b] - ) - : SetBlock(b); - }, - ChkActsL1: function (f, e, g, d) { - var c, - a, - b = f.id; - !(f.FreeFreezeTime || f.FreeSetbodyTime) && - ((f.AttackedRX -= c = f.Speed), - (LX = f.ZX = f.AttackedLX -= c), - (f.Ele.style.left = Math.floor((f.X -= c)) + "px")); - f.AttackedLX < GetX(9) && - (PlayAudio("zombie_entering_water"), - (f.WalkStatus = 1), - (f.EleBody.src = f.PicArr[(f.NormalGif = f.WalkGif1)]), - SetHidden(f.EleShadow), - NewEle( - (a = b + "_splash"), - "div", - "position:absolute;background:url(images/interface/splash.png);left:61px;top:" + - (f.height - 88) + - "px;width:97px;height:88px;over-flow:hidden", - 0, - f.Ele - ), - (f.ChkActs = f.ChkActsL2), - ImgSpriter( - a, - b, - [ - ["0 0", 9, 1], - ["-97px 0", 9, 2], - ["-194px 0", 9, 3], - ["-291px 0", 9, 4], - ["-388px 0", 9, 5], - ["-485px 0", 9, 6], - ["-582px 0", 9, 7], - ["-679px 0", 9, -1], - ], - 0, - function (h, i) { - ClearChild($(h)); - } - )); - return 1; - }, - ChkActsL2: function (d, c, e, b) { - var a; - !(d.FreeFreezeTime || d.FreeSetbodyTime) && - (d.beAttacked && !d.isAttacking && d.JudgeAttack(), - !d.isAttacking && - ((d.AttackedRX -= a = d.Speed), - (d.ZX = d.AttackedLX -= a), - (d.Ele.style.left = Math.floor((d.X -= a)) + "px"))); - d.AttackedLX < GetX(0) && - ((d.WalkStatus = 0), - (d.EleBody.src = d.PicArr[(d.NormalGif = d.WalkGif0)]), - SetVisible(d.EleShadow), - (d.ChkActs = d.ChkActsL3)); - return 1; - }, - ChkActsL3: CZombies.prototype.ChkActs, - ChkActs1: function (d, c, e, b) { - var a; - !(d.FreeFreezeTime || d.FreeSetbodyTime) && - (d.beAttacked && !d.isAttacking && d.JudgeAttack(), - !d.isAttacking && - ((d.AttackedLX += a = d.Speed), - (d.ZX = d.AttackedRX += a), - (d.Ele.style.left = Math.ceil((d.X += a)) + "px"))); - d.AttackedLX > GetX(9) && - ((d.WalkStatus = 0), - (d.EleBody.src = d.PicArr[(d.NormalGif = d.WalkGif0)]), - SetVisible(d.EleShadow), - (d.ChkActs = d.ChkActs2)); - return 1; - }, - ChkActs2: function (e, c, f, b) { - var a, d; - !(e.FreeFreezeTime || e.FreeSetbodyTime) - ? (e.beAttacked && !e.isAttacking && e.JudgeAttack(), - !e.isAttacking - ? (e.AttackedLX += a = e.Speed) > oS.W - ? (f.splice(b, 1), e.DisappearDie(), (d = 0)) - : ((e.ZX = e.AttackedRX += a), - (e.Ele.style.left = Math.ceil((e.X += a)) + "px"), - (d = 1)) - : (d = 1)) - : (d = 1); - return d; - }, - ExchangeLR: function (d, b) { - var c = d.width, - f = d.beAttackedPointL, - a = d.beAttackedPointR, - e = d.Ele; - e.style.left = - (d.X = d.AttackedLX - (d.beAttackedPointL = c - a)) + "px"; - d.beAttackedPointR = c - f; - d.EleShadow.style.cssText = - "visibility:hidden;left:" + - (d.beAttackedPointL - 10) + - "px;top:" + - (d.height - 22) + - "px"; - d.ExchangeLR2(d, d.EleBody, b); - }, - GoingDie: function () { - var b = this, - c = b.id, - a = b.PicArr; - b.EleBody.src = a[7] + Math.random(); - b.GoingDieHead(c, a, b); - b.beAttacked = 0; - b.FreeFreezeTime = b.FreeSetbodyTime = b.FreeSlowTime = 0; - b.AutoReduceHP(c); - }, - AutoReduceHP: function (a) { - oSym.addTask( - 100, - function (c) { - var b = $Z[c]; - b && - ((b.HP -= 60) < 1 - ? (b.NormalDie(), - oSym.addTask(50, ClearChild, [b.Ele])) - : oSym.addTask(100, arguments.callee, [c])); - }, - [a] - ); - }, - ExplosionDie: function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - DisappearDie: function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - NormalDie: function () { - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - }), - oSnorkelZombie = InheritO(oDuckyTubeZombie1, { - EName: "oSnorkelZombie", - CName: "Snorkel Zombie", - Lvl: 1, - SunNum: 75, - width: 143, - height: 200, - beAttackedPointL: 40, - beAttackedPointR: 100, - OSpeed: 3.2, - Speed: 3.2, - Altitude: 1, - BirthCallBack: function (g) { - var e = g.delayT, - c = g.id, - b = (g.Ele = $(c)), - d = g.AttackedLX, - f, - a, - h; - f = g.EleShadow = b.firstChild; - g.EleBody = b.childNodes[1]; - switch (true) { - case d > GetX(9): - g.ChkActs = g.ChkActsL1; - g.WalkStatus = 0; - break; - case d < GetX(0): - g.ChkActs = g.ChkActsL3; - g.WalkStatus = 0; - break; - default: - g.ChkActs = g.ChkActsL2; - g.WalkStatus = 1; - g.EleBody.src = g.PicArr[(g.NormalGif = g.WalkGif1)]; - SetHidden(f); - NewEle( - (a = c + "_splash"), - "div", - "position:absolute;background:url(images/interface/splash.png);left:61px;top:" + - (g.height - 88) + - "px;width:97px;height:88px;over-flow:hidden", - 0, - b - ); - ImgSpriter( - a, - c, - [ - ["0 0", 9, 1], - ["-97px 0", 9, 2], - ["-194px 0", 9, 3], - ["-291px 0", 9, 4], - ["-388px 0", 9, 5], - ["-485px 0", 9, 6], - ["-582px 0", 9, 7], - ["-679px 0", 9, -1], - ], - 0, - function (i, j) { - ClearChild($(i)); - } - ); - } - e - ? oSym.addTask( - e, - function (j, i) { - var k = $Z[j]; - k && ((k.FreeSetbodyTime = 0), SetBlock(i)); - }, - [c, b] - ) - : SetBlock(b); - }, - Produce: - '潜水僵尸可以在水下前行。

韧性:
特点:潜泳以避免遭到攻击
只在水池Level出现

僵尸不呼吸。他们不需要空气。那么为什么潜水僵尸需要一套潜水装置来潜水呢?
答案:同行的压力。', - JumpTime: 40, - getShadow: function (a) { - return ( - "left:" + - a.beAttackedPointL + - "px;top:" + - (a.height - 45) + - "px" - ); - }, - PicArr: (function () { - var a = "images/Zombies/SnorkelZombie/"; - return [ - "images/Card/Zombies/SnorkelZombie.png", - a + "0.gif", - a + "Walk1.gif", - a + "Walk2.gif", - a + "1.gif", - a + "Attack.gif", - a + "Head.gif" + $Random, - a + "Die.gif" + $Random, - a + "Jump.gif" + $Random, - a + "Risk.gif" + $Random, - a + "Sink.gif" + $Random, - ]; - })(), - AudioArr: ["zombie_entering_water"], - Jump: function (a) { - a.beAttacked && - (PlayAudio("zombie_entering_water"), - (a.Altitude = 2), - SetHidden(a.EleShadow), - (a.EleBody.src = a.PicArr[8] + Math.random()), - oSym.addTask( - 160, - function (c, b) { - $Z[c] && - b.beAttacked && - ((b.WalkStatus = 1), - (b.Altitude = 0), - (b.OSpeed = b.Speed = 2), - (b.EleBody.src = - b.PicArr[(b.NormalGif = b.WalkGif1)]), - (b.ChkActs = b.ChkActsL2)); - }, - [a.id, a] - ), - (a.ChkActs = function () { - return 1; - })); - }, - ChkActsL1: function (d, c, e, b) { - if (d.JumpTime <= 0) { - d.Jump(d); - return 1; - } - var a; - !(d.FreeFreezeTime || d.FreeSetbodyTime) && - ((d.AttackedRX -= a = d.Speed), - (LX = d.ZX = d.AttackedLX -= a), - (d.Ele.style.left = Math.floor((d.X -= a)) + "px"), - --d.JumpTime); - return 1; - }, - ChkActsL2: function (d, c, e, b) { - var a; - !(d.FreeFreezeTime || d.FreeSetbodyTime) && - (d.AttackedLX > GetX(0) - ? (d.beAttacked && !d.isAttacking && d.JudgeAttack(), - !d.isAttacking && - ((d.AttackedRX -= a = d.Speed), - (d.ZX = d.AttackedLX -= a), - (d.Ele.style.left = Math.floor((d.X -= a)) + "px"))) - : d.beAttacked && - ((d.WalkStatus = 0), - (d.Altitude = 1), - (d.EleBody.src = d.PicArr[(d.NormalGif = d.WalkGif0)]), - SetVisible(d.EleShadow), - (d.ChkActs = d.ChkActsL3))); - return 1; - }, - JudgeAttack: function () { - var e = this, - b = e.ZX, - c = e.R + "_", - d = GetC(b), - g = oGd.$, - a, - f = e.id; - (a = e.JudgeLR(e, c, d, b, g) || e.JudgeSR(e, c, d, b, g)) - ? !e.isAttacking - ? ((e.isAttacking = 1), - (e.EleBody.src = e.PicArr[9] + Math.random()), - oSym.addTask( - 50, - function (i, h) { - $Z[i] && - h.beAttacked && - ((h.EleBody.src = h.PicArr[h.AttackGif]), - (h.Altitude = 1), - h.NormalAttack(a[0], a[1])); - }, - [f, e] - )) - : e.NormalAttack(a[0], a[1]) - : e.isAttacking && - ((e.EleBody.src = e.PicArr[10] + Math.random()), - (e.Altitude = 0), - oSym.addTask( - 70, - function (i, h) { - $Z[i] && - h.beAttacked && - ((h.isAttacking = 0), - (h.EleBody.src = h.PicArr[h.NormalGif])); - }, - [f, e] - )); - }, - NormalAttack: function (b, a) { - oSym.addTask( - 100, - function (d, c) { - var f = $Z[d], - e; - f && - f.beAttacked && - !f.FreeFreezeTime && - !f.FreeSetbodyTime && - ((e = $P[c]) && e.getHurt(f, 0, 100), f.JudgeAttack()); - }, - [b, a] - ); - }, - JudgeAttackH: function () { - var c = this, - b = oZ.getZ0(c.ZX, c.R), - d = c.id, - a; - b && b.beAttacked && b.AttackedLX < 900 && b.Altitude < 2 - ? !c.isAttacking - ? ((c.isAttacking = 1), - (c.EleBody.src = c.PicArr[9] + Math.random()), - (a = b.id), - !b.isAttacking && b.AttackZombie2(b, a, d), - oSym.addTask( - 50, - function (g, h, f, e) { - $Z[h] && - g.beAttacked && - ($Z[e] && f.beAttacked - ? ((g.EleBody.src = - g.PicArr[g.AttackGif]), - (g.Altitude = 1), - g.AttackZombie(h, e)) - : g.JudgeAttackH()); - }, - [c, d, b, a] - )) - : c.AttackZombie(d, a) - : c.isAttacking && - ((c.EleBody.src = c.PicArr[10] + Math.random()), - (c.Altitude = 0), - oSym.addTask( - 70, - function (f, e) { - $Z[f] && - e.beAttacked && - ((e.isAttacking = 0), - (e.EleBody.src = e.PicArr[e.NormalGif])); - }, - [d, c] - )); - }, - AttackZombie2: function (c, b, a) { - c.isAttacking = 1; - c.EleBody.src = c.PicArr[9] + Math.random(); - oSym.addTask( - 50, - function (g, e, d, f) { - $Z[e] && - g.beAttacked && - ((f = $Z[d]) && f.beAttacked - ? ((g.EleBody.src = g.PicArr[g.AttackGif]), - (g.Altitude = 1), - oSym.addTask( - 10, - function (k, i, j, h) { - $Z[i] && - k.beAttacked && - !k.FreeFreezeTime && - !k.FreeSetbodyTime && - ($Z[h] && j.beAttacked - ? (j.getHit0(j, 10, 0), - oSym.addTask( - 10, - arguments.callee, - [k, i, j, h] - )) - : ((k.EleBody.src = - k.PicArr[10] + - Math.random()), - (k.Altitude = 0), - oSym.addTask( - 70, - function (l, m) { - $Z[l] && - m.beAttacked && - ((m.isAttacking = 0), - (m.EleBody.src = - m.PicArr[ - m.NormalGif - ])); - }, - [i, k] - ))); - }, - [g, e, f, d] - )) - : ((g.EleBody.src = g.PicArr[10] + Math.random()), - (g.Altitude = 0), - oSym.addTask( - 70, - function (h, i) { - $Z[h] && - i.beAttacked && - ((i.isAttacking = 0), - (i.EleBody.src = - i.PicArr[i.NormalGif])); - }, - [e, g] - ))); - }, - [c, b, a] - ); - }, - AutoReduceHP: function (a) { - oSym.addTask( - 100, - function (c) { - var b = $Z[c]; - b && - ((b.HP -= 60) < 1 - ? (b.NormalDie(), - oSym.addTask(200, ClearChild, [b.Ele])) - : oSym.addTask(100, arguments.callee, [c])); - }, - [a] - ); - }, - }), - oCSnorkelZombie = InheritO(oSnorkelZombie, {}), - oSubZombie = InheritO(oSnorkelZombie, { - EName: "oSubZombie", - CName: "Submarine Zombie", - HP: "450", - OSpeed: 0.9, - Speed: 0.9, - width: 464, - height: 364, - beAttackedPointL: 140, - beAttackedPointR: 290, - BookHandBack: 4.9, - Produce: - '强劲有力的机械潜水艇,可以在水中躲过大多数攻击。

韧性:极高
特点:潜入水底以避免遭到攻击
只在水池Level出现

这是由作者僵尸亲自打造的无敌潜水艇,不要妄想击碎他,他的猛烈进攻,只会让你的植物死得更快!。', - PicArr: (function () { - var a = "images/Zombies/SubZombie/"; - return [ - "images/Card/Zombies/SubZombie.png", - a + "0.gif", - a + "Walk1.gif", - a + "Walk2.gif", - a + "1.gif", - a + "Attack.gif", - a + "Head.gif" + $Random, - a + "Die.gif" + $Random, - a + "Jump.gif" + $Random, - a + "Risk.gif" + $Random, - a + "Sink.gif" + $Random, - ]; - })(), - }), - oSmallZombie = InheritO(oZombie, { - EName: "oSmallZombie", - CName: "Small Zombie", - HP: 67, - width: 83, - height: 72, - beAttackedPointL: 41, - beAttackedPointR: 78, - BreakPoint: 25, - Init: function (e, g, c, b) { - var a = 0, - f = this, - d = []; - g.AttackedRX = - (g.X = (g.ZX = g.AttackedLX = e) - g.beAttackedPointL) + - g.beAttackedPointR; - while (--b) { - g.CanPass(b, c[b]) && (d[a++] = b); - } - g.ArR = d; - g.ArHTML = [ - '
', - ]; - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "width:75px;height:93px;left:" + - b.AttackedLX + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - getShadow: function (a) { - return ( - "width:43px;height:18px;left:" + - (a.beAttackedPointL - 5) + - "px;top:" + - (a.height - 15) + - "px" - ); - }, - }), - oSmallFlagZombie = InheritO(oFlagZombie, { - EName: "oSmallFlagZombie", - CName: "Small Flag Zombie", - HP: 67, - width: 83, - height: 72, - beAttackedPointL: 41, - beAttackedPointR: 78, - BreakPoint: 25, - Init: function (e, g, c, b) { - var a = 0, - f = this, - d = []; - g.AttackedRX = - (g.X = (g.ZX = g.AttackedLX = e) - g.beAttackedPointL) + - g.beAttackedPointR; - while (--b) { - g.CanPass(b, c[b]) && (d[a++] = b); - } - g.ArR = d; - g.ArHTML = [ - '
', - ]; - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "width:75px;height:93px;left:" + - b.AttackedLX + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - getShadow: function (a) { - return ( - "width:43px;height:18px;left:" + - (a.beAttackedPointL - 5) + - "px;top:" + - (a.height - 15) + - "px" - ); - }, - }), - oSmallDuckyTubeZombie1 = InheritO(oDuckyTubeZombie1, { - EName: "oSmallDuckyTubeZombie1", - CName: "小鸭子救生圈僵尸", - HP: 67, - width: 83, - height: 72, - beAttackedPointL: 41, - beAttackedPointR: 73, - BreakPoint: 25, - Init: function (e, g, c, b) { - var a = 0, - f = this, - d = []; - g.AttackedRX = - (g.X = (g.ZX = g.AttackedLX = e) - g.beAttackedPointL) + - g.beAttackedPointR; - while (--b) { - g.CanPass(b, c[b]) && (d[a++] = b); - } - g.ArR = d; - g.ArHTML = [ - '
', - ]; - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "width:75px;height:93px;left:" + - b.AttackedLX + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - getShadow: function (a) { - return ( - "width:43px;height:18px;left:" + - (a.beAttackedPointL - 5) + - "px;top:" + - (a.height - 15) + - "px" - ); - }, - }), - oSmallConeheadZombie = InheritO(oConeheadZombie, { - EName: "oSmallConeheadZombie", - CName: "Small Conehead Zombie", - OrnHP: 92, - HP: 67, - width: 83, - height: 72, - beAttackedPointL: 41, - beAttackedPointR: 78, - BreakPoint: 25, - Init: function (e, g, c, b) { - var a = 0, - f = this, - d = []; - g.AttackedRX = - (g.X = (g.ZX = g.AttackedLX = e) - g.beAttackedPointL) + - g.beAttackedPointR; - while (--b) { - g.CanPass(b, c[b]) && (d[a++] = b); - } - g.ArR = d; - g.ArHTML = [ - '
', - ]; - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "width:75px;height:93px;left:" + - b.AttackedLX + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - getShadow: function (a) { - return ( - "width:43px;height:18px;left:" + - (a.beAttackedPointL - 5) + - "px;top:" + - (a.height - 15) + - "px" - ); - }, - }), - oSmallFootballZombie = InheritO(oFootballZombie, { - EName: "oSmallFootballZombie", - CName: "小橄榄球僵尸", - OrnHP: 350, - HP: 67, - width: 77, - height: 80, - beAttackedPointL: 20, - beAttackedPointR: 77, - BreakPoint: 25, - Init: function (e, g, c, b) { - var a = 0, - f = this, - d = []; - g.AttackedRX = - (g.X = (g.ZX = g.AttackedLX = e) - g.beAttackedPointL) + - g.beAttackedPointR; - while (--b) { - g.CanPass(b, c[b]) && (d[a++] = b); - } - g.ArR = d; - g.ArHTML = [ - '
', - ]; - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "width:75px;height:93px;left:" + - b.AttackedLX + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - getShadow: function (a) { - return ( - "width:43px;height:18px;left:" + - (a.beAttackedPointL + 15) + - "px;top:" + - (a.height - 22) + - "px" - ); - }, - }), - oSmallSnorkelZombie = InheritO(oSnorkelZombie, { - EName: "oSmallSnorkelZombie", - CName: "小潜水僵尸", - HP: 67, - width: 71, - height: 100, - beAttackedPointL: 20, - beAttackedPointR: 50, - BreakPoint: 25, - Init: function (e, g, c, b) { - var a = 0, - f = this, - d = []; - g.AttackedRX = - (g.X = (g.ZX = g.AttackedLX = e) - g.beAttackedPointL) + - g.beAttackedPointR; - while (--b) { - g.CanPass(b, c[b]) && (d[a++] = b); - } - g.ArR = d; - g.ArHTML = [ - '
', - ]; - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "width:71px;height:105px;left:" + - b.AttackedLX + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - getShadow: function (a) { - return ( - "width:43px;height:18px;left:" + - a.beAttackedPointL + - "px;top:" + - (a.height - 45) + - "px" - ); - }, - }), - oZomboni = (function () { - var a = function (d, b) { - var c = d.HP; - switch (true) { - case (d.HP = c -= b) < 200: - d.GoingDie(); - d.getHit0 = - d.getHit1 = - d.getHit2 = - d.getHit3 = - function () {}; - return; - case c < 391: - d.EleBody.src = "images/Zombies/Zomboni/3.gif"; - break; - case c < 871: - d.EleBody.src = "images/Zombies/Zomboni/2.gif"; - } - d.SetAlpha(d, d.EleBody, 50, 0.5); - oSym.addTask( - 10, - function (f, e) { - (e = $Z[f]) && e.SetAlpha(e, e.EleBody, 100, 1); - }, - [d.id] - ); - }; - return InheritO(OrnNoneZombies, { - EName: "oZomboni", - CName: "Zomboni", - HP: 1350, - Lvl: 3, - StandGif: 2, - DieGif: 6, - BoomDieGif: 7, - BookHandPosition: "40% 35%", - width: 464, - height: 364, - GetDTop: 104, - beAttackedPointL: 140, - beAttackedPointR: 290, - BreakPoint: 200, - SunNum: 350, - GetDY: function () { - return 0; - }, - OSpeed: 2.5, - Speed: 2.5, - AKind: 2, - Attack: 50, - Produce: - '冰车僵尸运用冰雪,碾过你的植物。

韧性:
特点:碾压植物,留下条冰道

经常被误以为是在驾驶着冰车的僵尸,但事实上冰车僵尸是种完全不同的生物形式,他与太空兽人联系更紧密而不是僵尸。', - PicArr: (function () { - var b = "images/Zombies/Zomboni/"; - return [ - "images/Card/Zombies/Zomboni.png", - b + "0.gif", - b + "1.gif", - b + "2.gif", - b + "3.gif", - b + "4.gif", - b + "5.gif" + $Random, - b + "BoomDie.gif" + $Random, - b + "ice.png", - b + "ice_cap.png", - ]; - })(), - AudioArr: ["zamboni", "explosion"], - BirthCallBack: function (h) { - var g = h.delayT, - e = h.id, - c = (h.Ele = $(e)), - d = h.R, - f, - b = oGd.$Ice; - h.EleShadow = c.firstChild; - h.EleBody = c.childNodes[1]; - !b[d] - ? ((f = NewEle( - "dIceCar" + d, - "div", - "position:absolute;z-index:1;left:145px;top:" + - (GetY(d) - 65) + - "px;width:800px;height:72px", - 0, - EDPZ - )), - NewImg( - "", - "images/interface/blank.png", - "position:absolute;clip:rect(0,auto,auto,800px);width:800px;height:72px;left:5px;background:url(images/Zombies/Zomboni/ice.png) repeat-x", - f - ), - NewImg( - "", - "images/Zombies/Zomboni/ice_cap.png", - "position:absolute;display:none;left:0", - f - ), - (b[d] = [1, 11, h.AttackedLX])) - : ++b[d][0]; - g - ? oSym.addTask( - g, - function (j, i) { - var k = $Z[j]; - k && - ((k.FreeSetbodyTime = 0), - SetBlock(i), - PlayAudio("zamboni")); - }, - [e, c] - ) - : (SetBlock(c), PlayAudio("zamboni")); - }, - ChkActs: function (e, j, q, k) { - var b, - r, - m, - g, - n = oGd.$Ice[j], - d, - h, - f, - c, - l = $("dIceCar" + j); - e.JudgeAttack(); - (r = e.AttackedRX -= b = e.Speed) < -50 - ? (q.splice(k, 1), e.DisappearDie(), (m = 0)) - : (r < 100 && - !e.PointZombie && - ((e.PointZombie = 1), - !oS.CardKind && - (StopMusic(), PlayAudio("losemusic", false)), - e.ChangeR({ - R: j, - ar: [oS.R - 1], - CustomTop: 400 - e.height + e.GetDY(), - })), - (e.ZX = e.AttackedLX -= b), - (e.Ele.style.left = Math.floor((e.X -= b)) + "px"), - (m = 1)); - d = e.X; - h = d + 250; - f = d + 100; - c = GetC(h); - c > -1 && - c < n[1] && - ((oGd.$Crater[j + "_" + c] = 1), (n[1] = c)); - h > 120 && - h < n[2] && - ((n[2] = h), - (l.firstChild.style.clip = "rect(0,auto,auto," + f + "px)"), - (l.childNodes[1].style.left = Math.max(0, f) + "px")); - GetC(e.AttackedLX) > 5 && (e.OSpeed = e.Speed -= 0.005); - return m; - }, - ChkActs1: function (f, d, g, c) { - var b, e; - f.JudgeAttack(); - (f.AttackedLX += b = f.Speed) > oS.W - ? (g.splice(c, 1), f.DisappearDie(), (e = 0)) - : ((f.ZX = f.AttackedRX += b), - (f.Ele.style.left = Math.ceil((f.X += b)) + "px"), - (e = 1)); - return e; - }, - getPea: function (c, b) { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - c.getHit0(c, b); - }, - getFirePea: function (c, b) { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - c.getHit0(c, b); - }, - getSnowPea: function (c, b) { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - c.getHit0(c, b); - }, - getFirePeaSputtering: function () {}, - getFreeze: function (c, b) { - c.getHit0(c, 20); - }, - getShadow: function (b) { - return ( - "left:" + - (b.beAttackedPointL - 10) + - "px;top:" + - (b.height - 22) + - "px" - ); - }, - getHit: a, - getHit0: a, - getHit1: a, - getHit2: a, - getHit3: a, - GoingDie: function () { - var b = this; - b.beAttacked = 0; - b.AutoReduceHP(b.id); - }, - NormalDie: function () { - var b = this; - PlayAudio("explosion"); - b.EleBody.src = b.PicArr[b.DieGif] + Math.random(); - oSym.addTask(70, ClearChild, [b.Ele]); - b.HP = 0; - delete $Z[b.id]; - b.JudgeIce(); - b.PZ && oP.MonPrgs(); - }, - DisappearDie: function () { - var b = this; - ClearChild(b.Ele); - b.HP = 0; - delete $Z[b.id]; - b.JudgeIce(); - b.PZ && oP.MonPrgs(); - }, - ExplosionDie: function () { - var b = this; - b.EleBody.src = b.PicArr[b.BoomDieGif] + Math.random(); - oSym.addTask(300, ClearChild, [b.Ele]); - b.HP = 0; - delete $Z[b.id]; - b.JudgeIce(); - b.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - this.NormalDie(); - }, - JudgeIce: function () { - var d = this, - b = d.R, - e = $("dIceCar" + b), - c = oGd.$Ice[b]; - e && e.childNodes[1] && SetBlock(e.childNodes[1]); - --c[0] <= 0 && - oSym.addTask( - 3e3, - function (k, h) { - var j = oGd.$Ice[h], - g, - f = oGd.$Crater; - if (j && j[0] <= 0 && k) { - ClearChild(k); - g = j[1]; - while (g < 11) { - delete f[h + "_" + g++]; - delete oGd.$Ice[h]; - } - } - }, - [e, b] - ); - }, - flatTire: function () { - var b = this; - b.EleBody.src = "images/Zombies/Zomboni/4.gif"; - b.beAttacked = 0; - b.HP = 0; - b.getHit0 = b.getHit1 = b.getHit2 = b.getHit3 = function () {}; - b.ChkActs = b.ChkActs1 = function () {}; - oSym.addTask( - 290, - function (e, c) { - var d = $Z[e]; - d && d.NormalDie(); - }, - [b.id, b.EleBody] - ); - }, - JudgeAttack: function () { - var f = this, - c = f.ZX, - d = f.R + "_", - e = GetC(c), - g = oGd.$, - b; - (b = f.JudgeLR(f, d, e, c, g) || f.JudgeSR(f, d, e, c, g)) && - f.NormalAttack(b[0], b[1]); - }, - JudgeLR: function (e, c, d, b, f) { - return d > 10 || d < 1 - ? false - : (function () { - c += --d + "_"; - var g = 3, - h; - while (g--) { - if ((h = f[c + g])) { - return h.AttackedRX >= b && h.AttackedLX <= b - ? [e.id, h.id] - : false; - } - } - })(); - }, - JudgeSR: function (e, c, d, b, f) { - return d > 9 - ? false - : (function () { - c += d + "_"; - var g = 3, - h; - while (g--) { - if ((h = f[c + g])) { - return h.AttackedRX >= b && h.AttackedLX <= b - ? [e.id, h.id] - : false; - } - } - })(); - }, - NormalAttack: function (c, b) { - var d = $Z[c]; - $P[b].getHurt(d, 2, d.Attack); - }, - getThump: function () { - this.NormalDie(); - }, - }); - })(), - oCZomboni = (function () { - var a = function (d, b) { - var c = d.HP; - switch (true) { - case (d.HP = c -= b) < 200: - d.GoingDie(); - d.getHit0 = - d.getHit1 = - d.getHit2 = - d.getHit3 = - function () {}; - return; - case c < 391: - d.EleBody.src = "images/Zombies/wall/Zomboni/3.gif"; - break; - case c < 871: - d.EleBody.src = "images/Zombies/wall/Zomboni/2.gif"; - } - d.SetAlpha(d, d.EleBody, 50, 0.5); - oSym.addTask( - 10, - function (f, e) { - (e = $Z[f]) && e.SetAlpha(e, e.EleBody, 100, 1); - }, - [d.id] - ); - }; - return InheritO(oZomboni, { - EName: "oCZomboni", - CName: "油车僵尸", - HP: 1350, - Lvl: 3, - StandGif: 2, - DieGif: 6, - BoomDieGif: 7, - BookHandPosition: "40% 35%", - width: 464, - height: 364, - GetDTop: 104, - beAttackedPointL: 140, - beAttackedPointR: 290, - BreakPoint: 200, - SunNum: 350, - GetDY: function () { - return 0; - }, - OSpeed: 2.5, - Speed: 2.5, - AKind: 2, - Attack: 50, - PicArr: (function () { - var b = "images/Zombies/wall/Zomboni/"; - return [ - "images/Card/Zombies/Zomboni.png", - b + "0.gif", - b + "1.gif", - b + "2.gif", - b + "3.gif", - b + "4.gif", - b + "5.gif" + $Random, - b + "BoomDie.gif" + $Random, - b + "ice.png", - b + "ice_cap.png", - ]; - })(), - AudioArr: ["zamboni", "explosion"], - BirthCallBack: function (h) { - var g = h.delayT, - e = h.id, - c = (h.Ele = $(e)), - d = h.R, - f, - b = oGd.$Ice; - h.EleShadow = c.firstChild; - h.EleBody = c.childNodes[1]; - !b[d] - ? ((f = NewEle( - "dIceCar" + d, - "div", - "position:absolute;z-index:1;left:145px;top:" + - (GetY(d) - 65) + - "px;width:800px;height:72px", - 0, - EDPZ - )), - NewImg( - "", - "images/interface/blank.png", - "position:absolute;clip:rect(0,auto,auto,800px);width:800px;height:72px;left:5px;background:url(images/Zombies/wall/Zomboni/ice.png) repeat-x", - f - ), - NewImg( - "", - "images/Zombies/wall/Zomboni/ice_cap.png", - "position:absolute;display:none;left:0", - f - ), - (b[d] = [1, 11, h.AttackedLX])) - : ++b[d][0]; - g - ? oSym.addTask( - g, - function (j, i) { - var k = $Z[j]; - k && - ((k.FreeSetbodyTime = 0), - SetBlock(i), - PlayAudio("zamboni")); - }, - [e, c] - ) - : (SetBlock(c), PlayAudio("zamboni")); - }, - ChkActs: function (e, j, q, k) { - var b, - r, - m, - g, - n = oGd.$Ice[j], - d, - h, - f, - c, - l = $("dIceCar" + j); - e.JudgeAttack(); - (r = e.AttackedRX -= b = e.Speed) < -50 - ? (q.splice(k, 1), e.DisappearDie(), (m = 0)) - : (r < 100 && - !e.PointZombie && - ((e.PointZombie = 1), - !oS.CardKind && - (StopMusic(), PlayAudio("losemusic", false)), - e.ChangeR({ - R: j, - ar: [oS.R - 1], - CustomTop: 400 - e.height + e.GetDY(), - })), - (e.ZX = e.AttackedLX -= b), - (e.Ele.style.left = Math.floor((e.X -= b)) + "px"), - (m = 1)); - d = e.X; - h = d + 250; - f = d + 100; - c = GetC(h); - c > -1 && - c < n[1] && - ((oGd.$Crater[j + "_" + c] = 1), (n[1] = c)); - h > 120 && - h < n[2] && - ((n[2] = h), - (l.firstChild.style.clip = "rect(0,auto,auto," + f + "px)"), - (l.childNodes[1].style.left = Math.max(0, f) + "px")); - GetC(e.AttackedLX) > 5 && (e.OSpeed = e.Speed -= 0.005); - return m; - }, - ChkActs1: function (f, d, g, c) { - var b, e; - f.JudgeAttack(); - (f.AttackedLX += b = f.Speed) > oS.W - ? (g.splice(c, 1), f.DisappearDie(), (e = 0)) - : ((f.ZX = f.AttackedRX += b), - (f.Ele.style.left = Math.ceil((f.X += b)) + "px"), - (e = 1)); - return e; - }, - getPea: function (c, b) { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - c.getHit0(c, b); - }, - getFirePea: function (c, b) { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - c.getHit0(c, b); - }, - getSnowPea: function (c, b) { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - c.getHit0(c, b); - }, - getFirePeaSputtering: function () {}, - getFreeze: function (c, b) { - c.getHit0(c, 20); - }, - getShadow: function (b) { - return ( - "left:" + - (b.beAttackedPointL - 10) + - "px;top:" + - (b.height - 22) + - "px" - ); - }, - getHit: a, - getHit0: a, - getHit1: a, - getHit2: a, - getHit3: a, - GoingDie: function () { - var b = this; - b.beAttacked = 0; - b.AutoReduceHP(b.id); - }, - NormalDie: function () { - var b = this; - PlayAudio("explosion"); - b.EleBody.src = b.PicArr[b.DieGif] + Math.random(); - oSym.addTask(70, ClearChild, [b.Ele]); - b.HP = 0; - delete $Z[b.id]; - b.JudgeIce(); - b.PZ && oP.MonPrgs(); - }, - DisappearDie: function () { - var b = this; - ClearChild(b.Ele); - b.HP = 0; - delete $Z[b.id]; - b.JudgeIce(); - b.PZ && oP.MonPrgs(); - }, - ExplosionDie: function () { - var b = this; - b.EleBody.src = b.PicArr[b.BoomDieGif] + Math.random(); - oSym.addTask(300, ClearChild, [b.Ele]); - b.HP = 0; - delete $Z[b.id]; - b.JudgeIce(); - b.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - this.NormalDie(); - }, - JudgeIce: function () { - var d = this, - b = d.R, - e = $("dIceCar" + b), - c = oGd.$Ice[b]; - e && e.childNodes[1] && SetBlock(e.childNodes[1]); - --c[0] <= 0 && - oSym.addTask( - 3e3, - function (k, h) { - var j = oGd.$Ice[h], - g, - f = oGd.$Crater; - if (j && j[0] <= 0 && k) { - ClearChild(k); - g = j[1]; - while (g < 11) { - delete f[h + "_" + g++]; - delete oGd.$Ice[h]; - } - } - }, - [e, b] - ); - }, - flatTire: function () { - var b = this; - b.EleBody.src = "images/Zombies/wall/Zomboni/4.gif"; - b.beAttacked = 0; - b.HP = 0; - b.getHit0 = b.getHit1 = b.getHit2 = b.getHit3 = function () {}; - b.ChkActs = b.ChkActs1 = function () {}; - oSym.addTask( - 290, - function (e, c) { - var d = $Z[e]; - d && d.NormalDie(); - }, - [b.id, b.EleBody] - ); - }, - JudgeAttack: function () { - var f = this, - c = f.ZX, - d = f.R + "_", - e = GetC(c), - g = oGd.$, - b; - (b = f.JudgeLR(f, d, e, c, g) || f.JudgeSR(f, d, e, c, g)) && - f.NormalAttack(b[0], b[1]); - }, - JudgeLR: function (e, c, d, b, f) { - return d > 10 || d < 1 - ? false - : (function () { - c += --d + "_"; - var g = 3, - h; - while (g--) { - if ((h = f[c + g])) { - return h.AttackedRX >= b && h.AttackedLX <= b - ? [e.id, h.id] - : false; - } - } - })(); - }, - JudgeSR: function (e, c, d, b, f) { - return d > 9 - ? false - : (function () { - c += d + "_"; - var g = 3, - h; - while (g--) { - if ((h = f[c + g])) { - return h.AttackedRX >= b && h.AttackedLX <= b - ? [e.id, h.id] - : false; - } - } - })(); - }, - NormalAttack: function (c, b) { - var d = $Z[c]; - $P[b].getHurt(d, 2, d.Attack); - }, - getThump: function () { - this.NormalDie(); - }, - }); - })(), - oDolphinRiderZombie = InheritO(oAquaticZombie, { - EName: "oDolphinRiderZombie", - CName: "Dolphin Rider Zombie", - HP: 270, - Lvl: 2, - BreakPoint: 167, - width: 282, - height: 210, - Lvl: 2, - getShadow: function (a) { - return "left:105px;top:175px"; - }, - GetDX: function () { - return -137; - }, - GetDY: function () { - return 0; - }, - GetDTop: 0, - Altitude: 1, - haveDolphin: 1, - JumpTime: 45, - beAttackedPointL: 110, - beAttackedPointR: 190, - SunNum: 350, - OSpeed: 3.2, - Speed: 3.2, - PicArr: (function () { - var a = "images/Zombies/DolphinRiderZombie/"; - return [ - "images/Card/Zombies/DolphinRiderZombie.png", - a + "0.gif", - a + "Walk1.gif", - a + "Walk2.gif", - a + "1.gif", - a + "Attack.gif", - a + "Head.gif" + $Random, - a + "Die.gif" + $Random, - a + "Jump.gif" + $Random, - a + "Jump2.gif" + $Random, - a + "Walk3.gif", - a + "Walk4.gif", - a + "Die2.gif" + $Random, - a + "Jump3.gif" + $Random, - ]; - })(), - AudioArr: [ - "dolphin_before_jumping", - "dolphin_appears", - "zombie_entering_water", - ], - Produce: - '海豚骑士僵尸善于利用你水池防御的弱点。

韧性:
速度:快,慢(跳越后)
特点:跃过他所遇到的第一株植物
只在水池Level出现

那海豚其实也是个僵尸。', - BirthCallBack: function (a) { - PlayAudio("dolphin_appears"); - oAquaticZombie.prototype.BirthCallBack(a); - }, - Jump: function (a) { - a.beAttacked && - (PlayAudio("zombie_entering_water"), - (a.Altitude = 2), - SetHidden(a.EleShadow), - (a.EleBody.src = a.PicArr[8] + Math.random()), - oSym.addTask( - 240, - function (d, b) { - var c; - $Z[d] && - b.beAttacked && - ((b.WalkStatus = 1), - (b.Altitude = 1), - (b.OSpeed = b.Speed = 10.8), - SetStyle(b.Ele, { left: (c = b.X -= 140) + "px" }), - (b.AttackedLX = c + (b.beAttackedPointL = 185)), - (b.AttackedRX = c + (b.beAttackedPointR = 265)), - (b.EleBody.src = - b.PicArr[(b.NormalGif = b.WalkGif1)]), - (b.ChkActs = b.ChkActsL2)); - }, - [a.id, a] - ), - (a.ChkActs = function () { - return 1; - })); - }, - ChkActsL1: function (d, c, e, b) { - if (d.JumpTime <= 0) { - d.Jump(d); - return 1; - } - var a; - !(d.FreeFreezeTime || d.FreeSetbodyTime) && - ((d.AttackedRX -= a = d.Speed), - (LX = d.ZX = d.AttackedLX -= a), - (d.Ele.style.left = Math.floor((d.X -= a)) + "px"), - --d.JumpTime); - return 1; - }, - getCrushed: function (a) { - this.NormalAttack(this.id, a.id, a.AttackedLX); - this.getCrushed = function () { - return false; - }; - a.Stature > 0 && - oSym.addTask( - 50, - function (c) { - var b = $Z[c]; - b && b.CrushDie(); - }, - [this.id] - ); - return false; - }, - getRaven: function (a) { - return ( - !this.isAttacking && - this.NormalAttack(this.id, a, $P[a].AttackedLX), - 0 - ); - }, - JudgeAttack: function () { - var f = this, - b = f.ZX, - d = f.R + "_", - c = GetC(b), - g = oGd.$, - e, - a; - for (e = c - 2; e <= c; e++) { - if (e > 9) { - continue; - } - for ( - a = 2; - a > -1; - (p = g[d + e + "_" + a--]) && - (p.EName != "oBrains" - ? p.AttackedRX >= b && - p.AttackedLX < b && - ((a = -1), - (f.JudgeAttack = CZombies.prototype.JudgeAttack), - f.NormalAttack(f.id, p.id, p.AttackedLX)) - : p.AttackedRX >= b && - p.AttackedLX < b && - ((a = -1), - (f.JudgeAttack = CZombies.prototype.JudgeAttack), - (f.NormalAttack = CZombies.prototype.NormalAttack)( - f.id, - p.id - ))) - ) {} - } - }, - AttackZombie2: function (c, b, a) { - c.NormalAttack(b, a, $Z[a].AttackedLX); - }, - NormalAttack: function (d, b, g) { - var f = $Z[d], - a = f.Ele, - c = f.EleShadow, - e = f.EleBody; - e.src = f.PicArr[9] + Math.random(); - SetHidden(c); - f.isAttacking = 1; - f.Altitude = 2; - f.haveDolphin = 0; - PlayAudio("dolphin_before_jumping"); - f.getFreeze = function () { - f.getSnow(f, 20, 0); - }; - oSym.addTask( - 50, - function (m, j, i, l, q) { - var h = $Z[m], - k, - r, - s, - n = function () { - q.src = h.PicArr[10]; - h.isAttacking = 0; - h.Altitude = 1; - h.OSpeed = h.Speed = 1.6; - h.WalkGif0 = 11; - h.NormalGif = h.WalkGif1 = 10; - h.LostHeadGif = h.DieGif = 12; - h.NormalAttack = (s = - CZombies.prototype).NormalAttack; - h.getCrushed = s.getCrushed; - h.getFreeze = s.getFreeze; - h.getRaven = s.getRaven; - h.AttackZombie2 = s.AttackZombie2; - }; - h && - ((k = $P[j]) && k.Stature > 0 - ? ((h.AttackedRX = - (h.X = - (h.AttackedLX = h.ZX = r = k.AttackedRX) - - (h.beAttackedPointL = 45)) + - (h.beAttackedPointR = 100)), - SetStyle(i, { left: h.X + "px" }), - (h.EleShadow.style.left = "45px"), - n()) - : ((h.ZX = h.AttackedLX = - (h.X = - (h.AttackedRX = g) - - (h.beAttackedPointR = 100)) + - (h.beAttackedPointL = 45)), - SetStyle(i, { left: h.X + "px" }), - (h.EleShadow.style.left = "45px"), - (q.src = h.PicArr[13] + Math.random()), - oSym.addTask( - 170, - function (t, w) { - var v = $Z[t], - u; - v && n(); - }, - [m, q] - ))); - }, - [d, b, a, c, e] - ); - }, - GoingDie: function () { - var b = this, - c = b.id, - a = b.PicArr; - b.EleBody.src = a[b.haveDolphin ? 7 : 12] + Math.random(); - b.GoingDieHead(c, a, b); - b.beAttacked = 0; - b.FreeFreezeTime = b.FreeSetbodyTime = b.FreeSlowTime = 0; - b.AutoReduceHP(c); - }, - }), - oCDolphinRiderZombie = InheritO(oDolphinRiderZombie, {}), - oImp = InheritO(OrnNoneZombies, { - EName: "oImp", - CName: "Imp", - HP: 270, - Lvl: 4, - StandGif: 9, - OSpeed: 1.4, - Speed: 1.4, - PicArr: (function () { - var a = "images/Zombies/Imp/"; - return [ - "images/Card/Zombies/Imp.png", - a + "0.gif", - a + "Zombie.gif", - a + "ZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - Produce: - '小鬼僵尸会快速突破你的防线。

韧性:
其实小鬼僵尸天生就能跑的很快,一些懒惰的小鬼僵尸喜欢粘着巨人僵尸,但是一些勤奋的,就会经常出门成群的跑马拉松。', - }), - oIImp = InheritO(OrnNoneZombies, { - EName: "oIImp", - CName: "Imp", - HP: 270, - Lvl: 4, - StandGif: 9, - OSpeed: 1.64, - Speed: 1.4, - PicArr: (function () { - var a = "images/Zombies/Imp/"; - return [ - "images/Card/Zombies/IImp.png", - a + "0.gif", - a + "Zombie.gif", - a + "ZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - Produce: - '小鬼僵尸会快速突破你的防线。

韧性:
其实小鬼僵尸天生就能跑的很快,一些懒惰的小鬼僵尸喜欢粘着巨人僵尸,但是一些勤奋的,就会经常出门成群的跑马拉松。', - }), - oJX = InheritO(OrnNoneZombies, { - EName: "oJX", - CName: "Crab Imp", - HP: 275, - Lvl: 4, - StandGif: 9, - OSpeed: 1.2, - Speed: 1.4, - Attack: 120, - PicArr: (function () { - var a = "images/Zombies/JX/"; - return [ - "images/Card/Zombies/JX.png", - a + "0.gif", - a + "Zombie.gif", - a + "ZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - Produce: - '小鬼僵尸的亲戚,攻击似乎提升了不少。

韧性:
矮小的他喜欢这副捡来的蟹壳,V字型的蟹钳更是让他感到兴奋,以至忘掉了身高上的劣势。', - }), - oJackinTheBoxZombie = InheritO(OrnNoneZombies, { - EName: "oJackinTheBoxZombie", - CName: "Jack-in-the-Box Zombie", - SunNum: 100, - HP: 270, - BreakPoint: 167, - Lvl: 3, - Status: 1, - BookHandPosition: "30% 70%", - width: 196, - height: 181, - beAttackedPointL: 120, - beAttackedPointR: 170, - StandGif: 5, - NormalGif: 6, - DieGif: 3, - BoomDieGif: 4, - HeadGif: 11, - LostHeadGif: 9, - LostHeadAttackGif: 10, - AttackGif: 2, - OSpeed: 3.6, - Speed: 3.6, - Produce: - '这种僵尸带着个会爆炸的潘多拉盒子。

韧性:
速度:
特点:打开玩偶匣会爆炸
弱点:磁力菇
这种僵尸令人不寒而栗,不是因为他的冰冷身躯而是因为他的疯狂。', - AudioArr: ["jackinthebox", "explosion"], - PicArr: (function () { - var a = "images/Zombies/JackinTheBoxZombie/"; - return [ - "images/Card/Zombies/JackboxZombie.png", - a + "0.gif", - a + "Attack.gif", - a + "Die.gif" + $Random, - a + "BoomDie.gif" + $Random, - a + "1.gif", - a + "Walk.gif", - a + "OpenBox.gif", - a + "Boom.gif" + $Random, - a + "LostHead.gif", - a + "LostHeadAttack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + $Random, - ]; - })(), - RandomOpenBox: function (a) { - oSym.addTask( - Math.floor(Math.random() * 100) > 4 - ? Math.floor(1325 + Math.random() * 976) - : Math.floor(450 + Math.random() * 301), - function (c) { - var b = $Z[c]; - b && b.beAttacked && b.OpenBox(c); - }, - [a] - ); - }, - OpenBox: function (b) { - var a = $Z[b]; - a.EleBody.src = a.PicArr[7]; - a.ChkActs = a.ChkActs1 = function () { - return 1; - }; - a.JudgeAttack = function () { - var g = this, - d = g.ZX, - e = g.R + "_", - f = GetC(d), - h = oGd.$, - c; - (c = g.JudgeLR(g, e, f, d, h) || g.JudgeSR(g, e, f, d, h)) - ? (!g.isAttacking && - ((g.isAttacking = 1), - (g.EleBody.src = g.PicArr[g.AttackGif])), - g.NormalAttack(c[0], c[1])) - : g.isAttacking && (g.isAttacking = 0); - }; - a.JudgeAttackH = function () { - var e = this, - d = oZ.getZ0(e.ZX, e.R), - f = e.id, - c; - d && d.beAttacked && d.AttackedLX < oS.W && d.Altitude == 1 - ? !e.isAttacking - ? ((e.isAttacking = 1), - (e.EleBody.src = e.PicArr[e.AttackGif]), - e.AttackZombie(f, (c = d.id)), - !d.isAttacking && d.AttackZombie2(d, c, f)) - : e.AttackZombie(f, d.id, 1) - : e.isAttacking && (e.isAttacking = 0); - }; - a.getPea = - a.getSnowPea = - a.getFirePeaSputtering = - a.getFirePea = - a.getHit = - a.getHit0 = - a.getHit1 = - a.getHit2 = - a.getHit3 = - a.ChangeR = - a.bedevil = - function () {}; - oSym.addTask( - 50, - function (c) { - $Z[c] && - ((a.Status = 0), - !--oGd.$JackinTheBox && StopAudio("jackinthebox"), - PlayAudio("jackinthebox"), - oSym.addTask( - 90, - function (f) { - var e = $Z[f], - d; - e && - ((d = NewImg( - "", - "", - "width:306px;height:300px;left:" + - (e.X - 16) + - "px;top:" + - (e.pixelTop - 90) + - "px;z-index:20" - )), - PlayAudio("explosion"), - (d.src = e.PicArr[8] + Math.random()), - EDPZ.appendChild(d), - oSym.addTask(70, ClearChild, [d]), - e.PZ - ? (function (k, g) { - var q = Math.max(1, k - 1), - o = Math.min(oS.R, k + 1), - n = Math.max(1, g - 1), - h = Math.min(oS.C, g + 1), - r = oGd.$, - l, - j = "", - m; - do { - g = n; - do { - j = q + "_" + g + "_"; - for (l = 0; l < 4; l++) { - (m = r[j + l]) && - m.BoomDie(); - } - } while (g++ < h); - } while (q++ < o); - })(e.R, GetC(e.ZX)) - : (function (j, l) { - var m = j - 120, - o = j + 120, - h = Math.min(1, l - 1), - g = Math.max(oS.R, l + 1), - n, - k; - do { - k = (n = oZ.getArZ(m, o, h)) - .length; - while (k--) { - n[k].ExplosionDie(); - } - } while (h++ < g); - })(e.ZX, e.R), - e.DisappearDie()); - }, - [c] - )); - }, - [b] - ); - }, - getShadow: function (a) { - return ( - "left:" + - (a.beAttackedPointL - 8) + - "px;top:" + - (a.height - 32) + - "px" - ); - }, - BirthCallBack: function (d) { - var c = d.delayT, - b = d.id, - a = (d.Ele = $(b)); - d.EleShadow = a.firstChild; - d.EleBody = a.childNodes[1]; - c - ? oSym.addTask( - c, - function (f, e) { - var g = $Z[f]; - g && - (PlayAudio("jackinthebox", true), - ++oGd.$JackinTheBox, - (g.FreeSetbodyTime = 0), - SetBlock(e), - g.RandomOpenBox(f)); - }, - [b, a] - ) - : (PlayAudio("jackinthebox", true), - ++oGd.$JackinTheBox, - SetBlock(a), - d.RandomOpenBox(b)); - }, - NormalDie: function () { - var a = this; - a.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); - a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); - oSym.addTask(250, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - ExplosionDie: function () { - var a = this; - a.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); - a.EleBody.src = a.PicArr[a.BoomDieGif] + Math.random(); - oSym.addTask(300, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - DisappearDie: function () { - this.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - var a = this; - a.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); - a.GoingDieHead(a.id, a.PicArr, a); - ClearChild(a.Ele); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - }), - oIJackinTheBoxZombie = InheritO(OrnNoneZombies, { - EName: "oIJackinTheBoxZombie", - CName: "Jack-in-the-Box Zombie", - SunNum: 100, - HP: 270, - BreakPoint: 167, - Lvl: 3, - Status: 1, - BookHandPosition: "30% 70%", - width: 196, - height: 181, - beAttackedPointL: 120, - beAttackedPointR: 170, - StandGif: 5, - NormalGif: 6, - DieGif: 3, - BoomDieGif: 4, - HeadGif: 11, - LostHeadGif: 9, - LostHeadAttackGif: 10, - AttackGif: 2, - OSpeed: 3.6, - Speed: 3.6, - Produce: - '这种僵尸带着个会爆炸的潘多拉盒子。

韧性:
速度:
特点:打开玩偶匣会爆炸
弱点:磁力菇
这种僵尸令人不寒而栗,不是因为他的冰冷身躯而是因为他的疯狂。', - AudioArr: ["jackinthebox", "explosion"], - PicArr: (function () { - var a = "images/Zombies/JackinTheBoxZombie/"; - return [ - "images/Card/Zombies/IJackboxZombie.png", - a + "0.gif", - a + "Attack.gif", - a + "Die.gif" + $Random, - a + "BoomDie.gif" + $Random, - a + "1.gif", - a + "Walk.gif", - a + "OpenBox.gif", - a + "Boom.gif" + $Random, - a + "LostHead.gif", - a + "LostHeadAttack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + $Random, - ]; - })(), - RandomOpenBox: function (a) { - oSym.addTask( - Math.floor(Math.random() * 100) > 4 - ? Math.floor(1325 + Math.random() * 976) - : Math.floor(450 + Math.random() * 301), - function (c) { - var b = $Z[c]; - b && b.beAttacked && b.OpenBox(c); - }, - [a] - ); - }, - OpenBox: function (b) { - var a = $Z[b]; - a.EleBody.src = a.PicArr[7]; - a.ChkActs = a.ChkActs1 = function () { - return 1; - }; - a.JudgeAttack = function () { - var g = this, - d = g.ZX, - e = g.R + "_", - f = GetC(d), - h = oGd.$, - c; - (c = g.JudgeLR(g, e, f, d, h) || g.JudgeSR(g, e, f, d, h)) - ? (!g.isAttacking && - ((g.isAttacking = 1), - (g.EleBody.src = g.PicArr[g.AttackGif])), - g.NormalAttack(c[0], c[1])) - : g.isAttacking && (g.isAttacking = 0); - }; - a.JudgeAttackH = function () { - var e = this, - d = oZ.getZ0(e.ZX, e.R), - f = e.id, - c; - d && d.beAttacked && d.AttackedLX < oS.W && d.Altitude == 1 - ? !e.isAttacking - ? ((e.isAttacking = 1), - (e.EleBody.src = e.PicArr[e.AttackGif]), - e.AttackZombie(f, (c = d.id)), - !d.isAttacking && d.AttackZombie2(d, c, f)) - : e.AttackZombie(f, d.id, 1) - : e.isAttacking && (e.isAttacking = 0); - }; - a.getPea = - a.getSnowPea = - a.getFirePeaSputtering = - a.getFirePea = - a.getHit = - a.getHit0 = - a.getHit1 = - a.getHit2 = - a.getHit3 = - a.ChangeR = - a.bedevil = - function () {}; - oSym.addTask( - 50, - function (c) { - $Z[c] && - ((a.Status = 0), - !--oGd.$JackinTheBox && StopAudio("jackinthebox"), - PlayAudio("jackinthebox"), - oSym.addTask( - 90, - function (f) { - var e = $Z[f], - d; - e && - ((d = NewImg( - "", - "", - "width:306px;height:300px;left:" + - (e.X - 16) + - "px;top:" + - (e.pixelTop - 90) + - "px;z-index:20" - )), - PlayAudio("explosion"), - (d.src = e.PicArr[8] + Math.random()), - EDPZ.appendChild(d), - oSym.addTask(70, ClearChild, [d]), - e.PZ - ? (function (k, g) { - var q = Math.max(1, k - 1), - o = Math.min(oS.R, k + 1), - n = Math.max(1, g - 1), - h = Math.min(oS.C, g + 1), - r = oGd.$, - l, - j = "", - m; - do { - g = n; - do { - j = q + "_" + g + "_"; - for (l = 0; l < 4; l++) { - (m = r[j + l]) && - m.BoomDie(); - } - } while (g++ < h); - } while (q++ < o); - })(e.R, GetC(e.ZX)) - : (function (j, l) { - var m = j - 120, - o = j + 120, - h = Math.min(1, l - 1), - g = Math.max(oS.R, l + 1), - n, - k; - do { - k = (n = oZ.getArZ(m, o, h)) - .length; - while (k--) { - n[k].ExplosionDie(); - } - } while (h++ < g); - })(e.ZX, e.R), - e.DisappearDie()); - }, - [c] - )); - }, - [b] - ); - }, - getShadow: function (a) { - return ( - "left:" + - (a.beAttackedPointL - 8) + - "px;top:" + - (a.height - 32) + - "px" - ); - }, - BirthCallBack: function (d) { - var c = d.delayT, - b = d.id, - a = (d.Ele = $(b)); - d.EleShadow = a.firstChild; - d.EleBody = a.childNodes[1]; - c - ? oSym.addTask( - c, - function (f, e) { - var g = $Z[f]; - g && - (PlayAudio("jackinthebox", true), - ++oGd.$JackinTheBox, - (g.FreeSetbodyTime = 0), - SetBlock(e), - g.RandomOpenBox(f)); - }, - [b, a] - ) - : (PlayAudio("jackinthebox", true), - ++oGd.$JackinTheBox, - SetBlock(a), - d.RandomOpenBox(b)); - }, - NormalDie: function () { - var a = this; - a.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); - a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); - oSym.addTask(250, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - ExplosionDie: function () { - var a = this; - a.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); - a.EleBody.src = a.PicArr[a.BoomDieGif] + Math.random(); - oSym.addTask(300, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - DisappearDie: function () { - this.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - var a = this; - a.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); - a.GoingDieHead(a.id, a.PicArr, a); - ClearChild(a.Ele); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - }), - oCJackinTheBoxZombie = InheritO(oJackinTheBoxZombie, { - EName: "oCJackinTheBoxZombie", - }); + return InheritO(CZombies, { + getHit: a, + getHit0: a, + getHit1: a, + getHit2: a, + getHit3: a, + getPea: function (e, b, c) { + e.PlayNormalballAudio(); + e.getHit0(e, b, c); + }, + getFirePea: function (g, c, j) { + g.PlayFireballAudio(); + (g.FreeSlowTime || g.FreeFreezeTime) && + ((g.Speed = g.OSpeed), + (g.FreeSlowTime = 0), + (g.FreeFreezeTime = 0)); + g.Attack = 100; + var f = g.AttackedLX, + h = g.AttackedRX, + b = oZ.getArZ(f, f + 40, g.R), + e = b.length; + while (e--) { + b[e].getFirePeaSputtering(); + } + g.getHit0(g, c, j); + }, + getFirePeaSputtering: function () { + this.getHit0(this, 13); + }, + getSnowPea: function (f, c, g) { + var e = f.FreeSlowTime, + b = oSym.Now + 1e3; + e == 0 + ? (f.PlaySlowballAudio(), + (f.Speed = 0.5 * f.OSpeed), + (f.Attack = 50)) + : f.PlayNormalballAudio(); + e < b && + ((f.FreeSlowTime = b), + oSym.addTask( + 1e3, + function (h, d) { + var i = $Z[h]; + i && + i.FreeSlowTime == d && + ((i.FreeSlowTime = 0), + (i.Attack = 100), + i.Speed && (i.Speed = i.OSpeed)); + }, + [f.id, b] + )); + f.getHit0(f, c, g); + }, + }); + })(), + oBackupDancer = InheritO(OrnNoneZombies, { + EName: "oBackupDancer", + CName: "Backup Dancer", + OSpeed: 3.5, + Speed: 3.5, + Lvl: 1, + StandGif: 9, + CanSelect: 0, + width: 126, + height: 152, + beAttackedPointL: 50, + beAttackedPointR: 95, + Speed: 3.5, + OSpeed: 3.5, + PicArr: (function () { + var a = "images/Zombies/BackupDancer/"; + return [ + "images/Card/Zombies/BackupDancer.png", + a + "0.gif", + a + "BackupDancer.gif", + a + "Attack.gif", + a + "LostHead.gif", + a + "LostHeadAttack.gif", + a + "Head.gif" + $Random, + a + "Die.gif" + $Random, + a + "BoomDie.gif" + $Random, + a + "Dancing.gif" + $Random, + a + "LostHeadDancing.gif" + $Random, + a + "Mound.gif" + $Random, + ]; + })(), + bedevil: function (a) { + a.ExchangeLR(a, 1); + a.JudgeAttack = a.JudgeAttackH; + a.PZ = 0; + a.WalkDirection = 1; + a.ZX = a.AttackedRX; + a.ChkActs = a.ChkActs1; + a.Speed = 3.5; + a.ChangeChkActsTo1(a, a.id, a.EleBody); + oP.MonPrgs(); + }, + getSlow: function (f, d, e) { + var b = oSym.Now + e, + c = f.FreeSlowTime, + a = 0; + switch (true) { + case !c: + f.PlaySlowballAudio(); + f.Attack = 50; + f.FreeSlowTime = b; + a = 1; + break; + case c < b: + f.PlayNormalballAudio(); + f.FreeSlowTime = b; + a = 1; + } + a && + oSym.addTask( + e, + function (h, g) { + var i = $Z[h]; + i && + i.FreeSlowTime == g && + ((i.FreeSlowTime = 0), (i.Attack = 100)); + }, + [d, b] + ); + }, + getFreeze: function (b, a) { + b.beAttacked && b.getHit0(b, 20, 0); + oSym.addTask( + 400, + function (e, d, c) { + ClearChild(c); + var f = $Z[e]; + f && + f.FreeFreezeTime == d && + ((f.FreeFreezeTime = 0), + (f.Attack = 50), + !f.FreeSetbodyTime && f.isAttacking && f.JudgeAttack(), + oSym.addTask( + 1500, + function (h, g) { + var i = $Z[h]; + i && + i.FreeSlowTime == g && + ((i.FreeSlowTime = 0), (i.Attack = 100)); + }, + [e, (f.FreeSlowTime = oSym.Now + 1500)] + )); + }, + [ + a, + (b.FreeFreezeTime = oSym.Now + 400), + NewImg( + "icetrap_" + Math.random(), + "images/Plants/IceShroom/icetrap.gif", + b.getShadow(b), + b.Ele + ), + ] + ); + }, + CustomBirth: function (g, d, a, b, j) { + var e = this, + c = GetY(g) + e.GetDY(), + f = c - e.height, + i = e.beAttackedPointL, + h = e.beAttackedPointR; + e.AttackedRX = + (e.X = (e.ZX = e.AttackedLX = d - (h - i) * 0.5) - i) + h; + e.R = g; + (e.delayT = a) && (e.FreeSetbodyTime = oSym.Now); + return e.getHTML( + (e.id = b), + e.X, + (e.pixelTop = f), + (e.zIndex = 3 * g + 1), + "none", + j || 0, + e.height + "px", + e.PicArr[e.StandGif] + ); + }, + Produce: + '当舞王僵尸摇摆时,这种僵尸四个结伙出现。

韧性:
伴舞僵尸曾在位于僵尸纽约城的“咀利牙”表演艺术学院钻研过六年的舞技。', + BirthCallBack: function (e) { + var d = e.delayT, + c = e.id, + b = (e.Ele = $(c)), + a = (e.EleBody = b.childNodes[1]); + e.EleShadow = b.firstChild; + oSym.addTask( + d, + function (g, f) { + var h = $Z[g]; + h && ((h.FreeSetbodyTime = 0), SetBlock(f)); + }, + [c, b] + ); + }, + ChangeChkActsTo0: function (c, b, a) { + if (!c.PZ) { + c.ChangeChkActsTo1(c, b, a); + return; + } + c.LostHeadGif = 10; + c.NormalGif = 9; + !c.isAttacking && (a.src = c.PicArr[9]); + c.Speed = c.DZStep = 0; + oSym.addTask( + 200, + function (e, d) { + var f = $Z[e]; + f && f.beAttacked && f.ChangeChkActsTo1(f, e, d); + }, + [b, a] + ); + }, + ChangeChkActsTo1: function (c, b, a) { + c.LostHeadGif = 4; + c.NormalGif = 2; + c.DZStep = 1; + !c.isAttacking && (a.src = c.PicArr[2]); + c.PZ && + oSym.addTask( + 220, + function (e, d) { + var f = $Z[e]; + f && f.beAttacked && f.ChangeChkActsTo0(f, e, d); + }, + [b, a] + ); + }, + ChkActs: function (g, d, h, c) { + var e, b, a, f; + !(g.FreeFreezeTime || g.FreeSetbodyTime) + ? (g.beAttacked && !g.isAttacking && g.JudgeAttack(), + (e = g.id), + !g.isAttacking + ? (a = g.AttackedRX -= b = g.Speed) < -50 + ? (h.splice(c, 1), g.DisappearDie(), (f = 0)) + : (a < 100 && + !g.PointZombie && + ((g.PointZombie = 1), + !oS.CardKind && + (StopMusic(), + PlayAudio("losemusic", false)), + g.ChangeR({ + R: d, + ar: [oS.R - 1], + CustomTop: 400 - g.height + g.GetDY(), + })), + (g.ZX = g.AttackedLX -= b), + (g.Ele.style.left = + Math.floor((g.X -= b)) + "px"), + (f = 1)) + : (f = 1)) + : (f = 1); + g.ChkSpeed(g); + return f; + }, + ChkSpeed: function (b) { + if (!b.DZStep) { + return; + } + var a = b.Speed; + switch (true) { + case (b.FreeFreezeTime || b.FreeSetbodyTime) == 1: + a && (b.Speed = 0); + break; + case b.FreeSlowTime > 0: + a != 1.75 && (b.Speed = 1.75); + break; + default: + a != 3.5 && (b.Speed = 3.5); + } + }, + }), + oDancingZombie = InheritO(OrnNoneZombies, { + EName: "oDancingZombie", + CName: "Dancing Zombie ", + HP: 500, + BreakPoint: 166, + Lvl: 3, + StandGif: 9, + SunNum: 350, + beAttackedPointL: 40, + beAttackedPointR: 85, + width: 184, + height: 176, + BookHandPosition: "70% 70%", + AudioArr: ["dancer"], + OSpeed: 7.2, + Speed: 7.2, + NormalGif: 9, + GetDTop: 5, + getShadow: function (a) { + return "left:30px;top:146px"; + }, + GetDX: function () { + return -50; + }, + GetDY: function () { + return -5; + }, + LostHeadGif: 14, + addSpotlight: (function () { + var a, b; + $User.Browser.IE6 + ? ((a = "_8"), (b = "filter:alpha(opacity=30)")) + : (a = b = ""); + return function (d, f, c) { + var g = $Z[d], + e; + NewEle( + d + "_spotlightCon", + "div", + "position:absolute;left:-30px;top:-400px;width:184px;height:600px;overflow:hidden", + 0, + c + ).appendChild( + (g.spotlight = NewImg( + d + "_spotlight", + "images/Zombies/DancingZombie/spotlight" + a + ".png", + "left:0;top:0;width:920px;height:600px;" + b + )) + ); + e = NewEle( + d + "_spotlight2Con", + "div", + "position:absolute;left:-25px;top:135px;width:184px;height:60px;overflow:hidden", + 0 + ); + c.insertBefore(e, f.EleShadow); + e.appendChild( + (g.spotlight2 = NewImg( + d + "_spotlight2", + "images/Zombies/DancingZombie/spotlight2" + a + ".png", + "left:0;top:0;width:920px;height:60px;" + b + )) + ); + }; + })(), + PicArr: (function () { + var d = "images/Zombies/DancingZombie/", + c = $User.Browser.IE6 ? "_8" : "", + a = d + "spotlight" + c + ".png" + $Random, + b = d + "spotlight2" + c + ".png" + $Random; + return [ + "images/Card/Zombies/DancingZombie.png", + d + "0.gif", + d + "DancingZombie.gif", + d + "Attack.gif", + d + "LostHead.gif", + d + "LostHeadAttack.gif", + d + "Head.gif" + $Random, + d + "Die.gif" + $Random, + d + "BoomDie.gif" + $Random, + d + "SlidingStep.gif" + $Random, + d + "Dancing.gif" + $Random, + d + "Summon1.gif", + d + "Summon2.gif", + d + "Summon3.gif", + d + "LostHeadSlidingStep.gif" + $Random, + d + "LostHeadDancing.gif" + $Random, + d + "LostHeadSummon.gif" + $Random, + a, + b, + ]; + })(), + Produce: + '舞王僵尸和人类(在世或者死去的)如有雷同,纯属巧合。

韧性:
特点:召唤伴舞僵尸

舞王僵尸的最新唱片“抓住脑子啃啊啃”在僵尸界的人气正急速飙升。', + getSnowPea: function () { + this.PlaySlowballAudio(); + }, + NormalDie: function () { + var a = this; + a.ResetBackupDancer(a); + a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); + oSym.addTask(250, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + ExplosionDie: function () { + var a = this; + a.ResetBackupDancer(a); + a.EleBody.src = a.PicArr[a.BoomDieGif] + Math.random(); + oSym.addTask(300, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + DisappearDie: function () { + this.ResetBackupDancer(this); + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + var a = this; + a.ResetBackupDancer(a); + a.GoingDieHead(a.id, a.PicArr, a); + ClearChild(a.Ele); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + bedevil: function (b) { + var a = b.id; + b.ExchangeLR(b, 1); + b.JudgeAttack = b.JudgeAttackH; + b.PZ = 0; + b.WalkDirection = 1; + b.ZX = b.AttackedRX; + b.ChkActs = b.ChkActs1; + b.ChangeChkActsTo1(b, a, b.EleBody); + b.ResetBackupDancer(b); + ($(a + "_spotlightCon").style.left = "20px"), + ($(a + "_spotlight2Con").style.left = "25px"); + oP.MonPrgs(); + }, + ResetBackupDancer: function (f) { + var g = f.ArDZ, + d = g.length, + c, + b, + e, + a = f.DZStep; + while (d--) { + if ((c = g[d]) && (b = c[0]) && (e = $Z[b]) && e.beAttacked) { + if (a > 0) { + switch (true) { + case (e.FreeFreezeTime || e.FreeSetbodyTime) == 1: + e.Speed = 0; + break; + case e.FreeSlowTime > 0: + e.Speed = 1.75; + break; + default: + e.Speed = 3.5; + } + } + } + } + a > -1 && + oSym.addTask( + f.DZStepT - oSym.Now, + function (o, j) { + var m = 4, + l, + k, + n, + h = "ChangeChkActsTo" + j; + while (m--) { + (l = o[m]) && + (k = l[0]) && + (n = $Z[k]) && + n.beAttacked && + ((n.DZStep = j), n[h](n, k, n.EleBody)); + } + }, + [g, [1, 0][a]] + ); + }, + BirthCallBack: function (d) { + var b = d.delayT, + l = d.id, + a = (d.Ele = $(l)), + c = 320, + i = oGd.$LF, + g = d.R, + s = g - 1, + n = g + 1, + e, + r, + q = LX - 60, + m = LX + 100, + k = LX - 130, + j = LX - 70, + h = LX + 30, + f = (d.ArDZ = [0, 0, 0, 0]); + d.EleShadow = a.firstChild; + d.EleBody = a.childNodes[1]; + s > 0 && + (e = i[s]) && + e != 2 && + (f[0] = [ + "", + s, + function (o) { + return o; + }, + 3 * s + 2, + function (o) { + return o - 70; + }, + GetY(s) - 155, + ]); + n <= oS.R && + (e = i[n]) && + e != 2 && + (f[2] = [ + "", + n, + function (o) { + return o; + }, + 3 * n + 2, + function (o) { + return o - 70; + }, + GetY(n) - 155, + ]); + e = 3 * g + 2; + r = GetY(g) - 155; + f[3] = [ + "", + g, + function (o) { + return o - 60; + }, + e, + function (o) { + return o - 130; + }, + r, + ]; + f[1] = [ + "", + g, + function (o) { + return o + 100; + }, + e, + function (o) { + return o + 30; + }, + r, + ]; + func = function (t, o) { + var u = $Z[t]; + u && + (u.ExchangeLR(d, 1), + (u.DZMSpeed = 7.2), + (u.DZStep = -1), + (u.DZStepT = oSym.Now + 220), + (u.FreeSetbodyTime = 0), + SetBlock(o)); + }; + b ? (oSym.addTask(b, func, [l, a]), (c += b)) : func(l, a); + oSym.addTask( + c, + function (o) { + var t = $Z[o]; + t && t.beAttacked && !t.isAttacking && t.NormalAttack(o); + }, + [d.id] + ); + }, + ChkActs1: function (e, b, f, a) { + var c, d; + !(e.FreeFreezeTime || e.FreeSetbodyTime) + ? (e.beAttacked && !e.isAttacking && e.JudgeAttack(), + (c = e.id), + !e.isAttacking + ? (e.AttackedLX += 3.5) > oS.W + ? (f.splice(a, 1), e.DisappearDie(), (d = 0)) + : ((e.ZX = e.AttackedRX += 3.5), + (e.Ele.style.left = + Math.ceil((e.X += 3.5)) + "px"), + (d = 1)) + : (d = 1)) + : (d = 1); + return d; + }, + ChkTmp: function (c, b, d, a) { + c.ChkSpeed(c); + return 0; + }, + ChkActs: function (g, d, h, c) { + var e, b, a, f; + !(g.FreeFreezeTime || g.FreeSetbodyTime) + ? (g.beAttacked && !g.isAttacking && g.JudgeAttack(), + (e = g.id), + !g.isAttacking + ? (a = g.AttackedRX -= b = g.Speed) < -50 + ? (h.splice(c, 1), g.DisappearDie(), (f = 0)) + : (a < 100 && + !g.PointZombie && + ((g.PointZombie = 1), + !oS.CardKind && + (StopMusic(), + PlayAudio("losemusic", false)), + g.ChangeR({ + R: d, + ar: [oS.R - 1], + CustomTop: 400 - g.height + g.GetDY(), + })), + (g.ZX = g.AttackedLX -= b), + (g.Ele.style.left = + Math.floor((g.X -= b)) + "px"), + (f = 1)) + : (f = 1)) + : (f = 1); + g.ChkSpeed(g); + return f; + }, + ChkSpeed: function (g) { + if (!g.DZStep) { + return; + } + var h = g.ArDZ, + d = 4, + c, + b, + e, + a = g.OSpeed, + f = []; + switch (true) { + case (g.isAttacking || g.FreeFreezeTime || g.FreeSetbodyTime) == + 1: + a = 0; + break; + case g.FreeSlowTime > 0: + a != 1.75 && (a = 1.75); + } + while (d--) { + if ((c = h[d]) && (b = c[0]) && (e = $Z[b]) && e.beAttacked) { + f.push(e); + switch (true) { + case (e.isAttacking || + e.FreeFreezeTime || + e.FreeSetbodyTime) == 1: + a = 0; + break; + case e.FreeSlowTime > 0: + a != 1.75 && (a = 1.75); + } + } + } + if (a != g.DZMSpeed) { + g.DZMSpeed = a; + d = f.length; + while (d--) { + (e = f[d]).Speed != a && (e.Speed = a); + } + g.Speed != a && (g.Speed = a); + } + }, + AttackZombie: function (a) { + this.ExchangeLR(this, 0); + var b = this.id; + this.isAttacking = 1; + this.EleBody.src = this.PicArr[this.AttackGif]; + oSym.addTask( + 10, + function (d, c) { + var f = $Z[d], + e; + f && + f.beAttacked && + !f.FreeFreezeTime && + !f.FreeSetbodyTime && + ((e = $Z[c]) + ? (e.getHit0(e, 10, 0), + oSym.addTask(10, arguments.callee, [d, c])) + : ((f.isAttacking = 0), + (f.EleBody.src = f.PicArr[f.NormalGif]), + f.TurnLeft(f))); + }, + [b, a] + ); + }, + ChkBackupDancer: function (h, g, f) { + if (!h.PZ) { + h.ChangeChkActsTo1(h, g, f); + return; + } + var b = h.ArDZ, + d = 4, + j = 1, + c, + e, + a; + while (d--) { + (e = b[d]) && + (!(c = e[0]) || + !(a = $Z[c]) || + (a.PZ ? false : ((e[0] = ""), true))) && + (d = j = 0); + } + !h.isAttacking && j ? (f.src = h.PicArr[10]) : h.Summon(h, g); + h.ChangeChkActsTo0(h, g, f); + }, + ChangeChkActsTo0: function (g, e, a) { + if (!g.PZ) { + g.ChangeChkActsTo1(g, e, a); + return; + } + var d = 4, + h = g.ArDZ, + c, + b, + f; + while (d--) { + (b = h[d]) && + (c = b[0]) && + (f = $Z[c]) && + f.beAttacked && + ((f.LostHeadGif = 10), + (f.NormalGif = 9), + !f.isAttacking && (f.EleBody.src = f.PicArr[9]), + (f.Speed = 0)); + } + g.LostHeadGif = 15; + g.NormalGif = 10; + g.Speed = g.DZMSpeed = g.DZStep = 0; + g.DZStepT = oSym.Now + 200; + oSym.addTask( + 200, + function (j, i) { + var k = $Z[j]; + k && k.beAttacked && k.ChangeChkActsTo1(k, j, i); + }, + [e, a] + ); + }, + ChangeChkActsTo1: function (g, e, a) { + var d = 4, + h = g.ArDZ, + c, + b, + f; + while (d--) { + (b = h[d]) && + (c = b[0]) && + (f = $Z[c]) && + f.beAttacked && + ((f.LostHeadGif = 4), + (f.NormalGif = 2), + !f.isAttacking && (f.EleBody.src = f.PicArr[2])); + } + g.LostHeadGif = 4; + g.NormalGif = 2; + g.DZStep = 1; + g.DZStepT = oSym.Now + 220; + !g.isAttacking && (a.src = g.PicArr[2]); + g.PZ && + oSym.addTask( + 220, + function (j, i) { + var k = $Z[j]; + k && k.beAttacked && k.ChkBackupDancer(k, j, i); + }, + [e, a] + ); + }, + TurnLeft: function (c) { + var a = CZombies.prototype, + b = c.id; + c.AttackZombie = a.AttackZombie; + c.NormalAttack = a.NormalAttack; + c.OSpeed = 3.5; + !(c.FreeSlowTime || c.FreeFreezeTime || c.FreeSetbodyTime) && + (c.Speed = 3.5); + c.getSnowPea = OrnNoneZombies.prototype.getSnowPea; + c.getFreeze = CZombies.prototype.getFreeze; + oSym.addTask( + 20, + function (d, e) { + $Z[d] && + e.beAttacked && + (e.addSpotlight(d, e, e.Ele), + oSym.addTask( + 200, + function (g, f, i, h, k) { + var j = $Z[g]; + j && + (h > -736 ? (h -= 184) : (h = 0), + (f.style.left = h + "px"), + k > -736 ? (k -= 184) : (k = 0), + (i.style.left = k + "px"), + oSym.addTask(100, arguments.callee, [ + g, + f, + i, + h, + k, + ])); + }, + [d, e.spotlight, e.spotlight2, 0, 0] + ), + oSym.addTask( + 200, + function (h, g) { + var f; + $Z[g] && + h.beAttacked && + ((f = h.EleBody), + !h.isAttacking + ? (f.src = h.PicArr[10]) + : (h.isAttacking = 0), + h.ChangeChkActsTo0(h, g, f)); + }, + [e, d] + )); + }, + [b, c] + ); + c.Summon(c, b); + }, + NormalAttack: function (a) { + var b = $Z[a]; + b.ExchangeLR(b, 0); + b.TurnLeft(b); + }, + Summon: function (d, c) { + d.LostHeadGif = 16; + var a = d.EleBody, + b = d.ChkActs; + d.ChkActs = d.ChkTmp; + d.ChkTmp = b; + a.src = "images/Zombies/DancingZombie/Summon1.gif"; + PlayAudio("dancer"); + oSym.addTask( + 10, + function (f, e) { + var g = $Z[f]; + g && + g.beAttacked && + ((e.src = "images/Zombies/DancingZombie/Summon2.gif"), + oSym.addTask( + 10, + function (t, s, x) { + var h = $Z[t], + v = h.ZX, + m = h.ArDZ, + n = [], + k = + "images/Zombies/BackupDancer/Mound.gif" + + $Random + + Math.random(), + r = 4, + w = [], + u = [], + o = 0, + q, + l; + if (h && h.beAttacked) { + s.src = + "images/Zombies/DancingZombie/Summon3.gif"; + while (r--) { + (q = m[r]) && + (!(l = q[0]) || !$Z[l]) && + ((u[o] = (w[o] = + new oBackupDancer()).CustomBirth( + q[1], + q[2](v), + 100, + (q[0] = "Z_" + Math.random()) + )), + n.push( + NewImg( + "", + k, + "z-index:" + + q[3] + + ";left:" + + q[4](v) + + "px;top:" + + q[5] + + "px", + EDPZ + ) + ), + ++o); + } + oSym.addTask( + 220, + function () { + var i = arguments.length; + while (i--) { + ClearChild(arguments[i]); + } + }, + n + ); + oSym.addTask( + 110, + function (A, y, z, i) { + var B = $Z[A]; + B && + B.beAttacked && + (oP.AppearUP(y, z, i), + oSym.addTask( + 100, + function (D, C) { + var E = $Z[D]; + if (E && E.beAttacked) { + return; + } + var j = C.length, + E; + while (j--) { + (E = + C[ + j + ]).ChangeChkActsTo0( + E, + E.id, + E.EleBody + ); + } + }, + [A, z] + )); + }, + [t, u, w, o] + ); + oSym.addTask( + 200, + function (y, i) { + var z = $Z[y], + j; + z && + z.beAttacked && + ((j = z.ChkActs), + (z.ChkActs = z.ChkTmp), + (z.ChkTmp = j)); + }, + [t, s] + ); + } + }, + [f, e] + )); + }, + [c, a] + ); + }, + }), + oIDancingZombie = InheritO(OrnNoneZombies, { + EName: "oIDancingZombie", + CName: "Dancing Zombie", + HP: 500, + BreakPoint: 166, + Lvl: 3, + StandGif: 9, + SunNum: 350, + beAttackedPointL: 40, + beAttackedPointR: 85, + width: 184, + height: 176, + BookHandPosition: "70% 70%", + AudioArr: ["dancer"], + OSpeed: 7.2, + Speed: 7.2, + NormalGif: 9, + GetDTop: 5, + getShadow: function (a) { + return "left:30px;top:146px"; + }, + GetDX: function () { + return -50; + }, + GetDY: function () { + return -5; + }, + LostHeadGif: 14, + addSpotlight: (function () { + var a, b; + $User.Browser.IE6 + ? ((a = "_8"), (b = "filter:alpha(opacity=30)")) + : (a = b = ""); + return function (d, f, c) { + var g = $Z[d], + e; + NewEle( + d + "_spotlightCon", + "div", + "position:absolute;left:-30px;top:-400px;width:184px;height:600px;overflow:hidden", + 0, + c + ).appendChild( + (g.spotlight = NewImg( + d + "_spotlight", + "images/Zombies/DancingZombie/spotlight" + a + ".png", + "left:0;top:0;width:920px;height:600px;" + b + )) + ); + e = NewEle( + d + "_spotlight2Con", + "div", + "position:absolute;left:-25px;top:135px;width:184px;height:60px;overflow:hidden", + 0 + ); + c.insertBefore(e, f.EleShadow); + e.appendChild( + (g.spotlight2 = NewImg( + d + "_spotlight2", + "images/Zombies/DancingZombie/spotlight2" + a + ".png", + "left:0;top:0;width:920px;height:60px;" + b + )) + ); + }; + })(), + PicArr: (function () { + var d = "images/Zombies/DancingZombie/", + c = $User.Browser.IE6 ? "_8" : "", + a = d + "spotlight" + c + ".png" + $Random, + b = d + "spotlight2" + c + ".png" + $Random; + return [ + "images/Card/Zombies/IDancingZombie.png", + d + "0.gif", + d + "DancingZombie.gif", + d + "Attack.gif", + d + "LostHead.gif", + d + "LostHeadAttack.gif", + d + "Head.gif" + $Random, + d + "Die.gif" + $Random, + d + "BoomDie.gif" + $Random, + d + "SlidingStep.gif" + $Random, + d + "Dancing.gif" + $Random, + d + "Summon1.gif", + d + "Summon2.gif", + d + "Summon3.gif", + d + "LostHeadSlidingStep.gif" + $Random, + d + "LostHeadDancing.gif" + $Random, + d + "LostHeadSummon.gif" + $Random, + a, + b, + ]; + })(), + Produce: + '舞王僵尸和人类(在世或者死去的)如有雷同,纯属巧合。

韧性:
特点:召唤伴舞僵尸

舞王僵尸的最新唱片“抓住脑子啃啊啃”在僵尸界的人气正急速飙升。', + getSnowPea: function () { + this.PlaySlowballAudio(); + }, + NormalDie: function () { + var a = this; + a.ResetBackupDancer(a); + a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); + oSym.addTask(250, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + ExplosionDie: function () { + var a = this; + a.ResetBackupDancer(a); + a.EleBody.src = a.PicArr[a.BoomDieGif] + Math.random(); + oSym.addTask(300, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + DisappearDie: function () { + this.ResetBackupDancer(this); + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + var a = this; + a.ResetBackupDancer(a); + a.GoingDieHead(a.id, a.PicArr, a); + ClearChild(a.Ele); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + bedevil: function (b) { + var a = b.id; + b.ExchangeLR(b, 1); + b.JudgeAttack = b.JudgeAttackH; + b.PZ = 0; + b.WalkDirection = 1; + b.ZX = b.AttackedRX; + b.ChkActs = b.ChkActs1; + b.ChangeChkActsTo1(b, a, b.EleBody); + b.ResetBackupDancer(b); + ($(a + "_spotlightCon").style.left = "20px"), + ($(a + "_spotlight2Con").style.left = "25px"); + oP.MonPrgs(); + }, + ResetBackupDancer: function (f) { + var g = f.ArDZ, + d = g.length, + c, + b, + e, + a = f.DZStep; + while (d--) { + if ((c = g[d]) && (b = c[0]) && (e = $Z[b]) && e.beAttacked) { + if (a > 0) { + switch (true) { + case (e.FreeFreezeTime || e.FreeSetbodyTime) == 1: + e.Speed = 0; + break; + case e.FreeSlowTime > 0: + e.Speed = 1.75; + break; + default: + e.Speed = 3.5; + } + } + } + } + a > -1 && + oSym.addTask( + f.DZStepT - oSym.Now, + function (o, j) { + var m = 4, + l, + k, + n, + h = "ChangeChkActsTo" + j; + while (m--) { + (l = o[m]) && + (k = l[0]) && + (n = $Z[k]) && + n.beAttacked && + ((n.DZStep = j), n[h](n, k, n.EleBody)); + } + }, + [g, [1, 0][a]] + ); + }, + BirthCallBack: function (d) { + var b = d.delayT, + l = d.id, + a = (d.Ele = $(l)), + c = 320, + i = oGd.$LF, + g = d.R, + s = g - 1, + n = g + 1, + e, + r, + q = LX - 60, + m = LX + 100, + k = LX - 130, + j = LX - 70, + h = LX + 30, + f = (d.ArDZ = [0, 0, 0, 0]); + d.EleShadow = a.firstChild; + d.EleBody = a.childNodes[1]; + s > 0 && + (e = i[s]) && + e != 2 && + (f[0] = [ + "", + s, + function (o) { + return o; + }, + 3 * s + 2, + function (o) { + return o - 70; + }, + GetY(s) - 155, + ]); + n <= oS.R && + (e = i[n]) && + e != 2 && + (f[2] = [ + "", + n, + function (o) { + return o; + }, + 3 * n + 2, + function (o) { + return o - 70; + }, + GetY(n) - 155, + ]); + e = 3 * g + 2; + r = GetY(g) - 155; + f[3] = [ + "", + g, + function (o) { + return o - 60; + }, + e, + function (o) { + return o - 130; + }, + r, + ]; + f[1] = [ + "", + g, + function (o) { + return o + 100; + }, + e, + function (o) { + return o + 30; + }, + r, + ]; + func = function (t, o) { + var u = $Z[t]; + u && + (u.ExchangeLR(d, 1), + (u.DZMSpeed = 7.2), + (u.DZStep = -1), + (u.DZStepT = oSym.Now + 220), + (u.FreeSetbodyTime = 0), + SetBlock(o)); + }; + b ? (oSym.addTask(b, func, [l, a]), (c += b)) : func(l, a); + oSym.addTask( + c, + function (o) { + var t = $Z[o]; + t && t.beAttacked && !t.isAttacking && t.NormalAttack(o); + }, + [d.id] + ); + }, + ChkActs1: function (e, b, f, a) { + var c, d; + !(e.FreeFreezeTime || e.FreeSetbodyTime) + ? (e.beAttacked && !e.isAttacking && e.JudgeAttack(), + (c = e.id), + !e.isAttacking + ? (e.AttackedLX += 3.5) > oS.W + ? (f.splice(a, 1), e.DisappearDie(), (d = 0)) + : ((e.ZX = e.AttackedRX += 3.5), + (e.Ele.style.left = + Math.ceil((e.X += 3.5)) + "px"), + (d = 1)) + : (d = 1)) + : (d = 1); + return d; + }, + ChkTmp: function (c, b, d, a) { + c.ChkSpeed(c); + return 0; + }, + ChkActs: function (g, d, h, c) { + var e, b, a, f; + !(g.FreeFreezeTime || g.FreeSetbodyTime) + ? (g.beAttacked && !g.isAttacking && g.JudgeAttack(), + (e = g.id), + !g.isAttacking + ? (a = g.AttackedRX -= b = g.Speed) < -50 + ? (h.splice(c, 1), g.DisappearDie(), (f = 0)) + : (a < 100 && + !g.PointZombie && + ((g.PointZombie = 1), + !oS.CardKind && + (StopMusic(), + PlayAudio("losemusic", false)), + g.ChangeR({ + R: d, + ar: [oS.R - 1], + CustomTop: 400 - g.height + g.GetDY(), + })), + (g.ZX = g.AttackedLX -= b), + (g.Ele.style.left = + Math.floor((g.X -= b)) + "px"), + (f = 1)) + : (f = 1)) + : (f = 1); + g.ChkSpeed(g); + return f; + }, + ChkSpeed: function (g) { + if (!g.DZStep) { + return; + } + var h = g.ArDZ, + d = 4, + c, + b, + e, + a = g.OSpeed, + f = []; + switch (true) { + case (g.isAttacking || g.FreeFreezeTime || g.FreeSetbodyTime) == + 1: + a = 0; + break; + case g.FreeSlowTime > 0: + a != 1.75 && (a = 1.75); + } + while (d--) { + if ((c = h[d]) && (b = c[0]) && (e = $Z[b]) && e.beAttacked) { + f.push(e); + switch (true) { + case (e.isAttacking || + e.FreeFreezeTime || + e.FreeSetbodyTime) == 1: + a = 0; + break; + case e.FreeSlowTime > 0: + a != 1.75 && (a = 1.75); + } + } + } + if (a != g.DZMSpeed) { + g.DZMSpeed = a; + d = f.length; + while (d--) { + (e = f[d]).Speed != a && (e.Speed = a); + } + g.Speed != a && (g.Speed = a); + } + }, + AttackZombie: function (a) { + this.ExchangeLR(this, 0); + var b = this.id; + this.isAttacking = 1; + this.EleBody.src = this.PicArr[this.AttackGif]; + oSym.addTask( + 10, + function (d, c) { + var f = $Z[d], + e; + f && + f.beAttacked && + !f.FreeFreezeTime && + !f.FreeSetbodyTime && + ((e = $Z[c]) + ? (e.getHit0(e, 10, 0), + oSym.addTask(10, arguments.callee, [d, c])) + : ((f.isAttacking = 0), + (f.EleBody.src = f.PicArr[f.NormalGif]), + f.TurnLeft(f))); + }, + [b, a] + ); + }, + ChkBackupDancer: function (h, g, f) { + if (!h.PZ) { + h.ChangeChkActsTo1(h, g, f); + return; + } + var b = h.ArDZ, + d = 4, + j = 1, + c, + e, + a; + while (d--) { + (e = b[d]) && + (!(c = e[0]) || + !(a = $Z[c]) || + (a.PZ ? false : ((e[0] = ""), true))) && + (d = j = 0); + } + !h.isAttacking && j ? (f.src = h.PicArr[10]) : h.Summon(h, g); + h.ChangeChkActsTo0(h, g, f); + }, + ChangeChkActsTo0: function (g, e, a) { + if (!g.PZ) { + g.ChangeChkActsTo1(g, e, a); + return; + } + var d = 4, + h = g.ArDZ, + c, + b, + f; + while (d--) { + (b = h[d]) && + (c = b[0]) && + (f = $Z[c]) && + f.beAttacked && + ((f.LostHeadGif = 10), + (f.NormalGif = 9), + !f.isAttacking && (f.EleBody.src = f.PicArr[9]), + (f.Speed = 0)); + } + g.LostHeadGif = 15; + g.NormalGif = 10; + g.Speed = g.DZMSpeed = g.DZStep = 0; + g.DZStepT = oSym.Now + 200; + oSym.addTask( + 200, + function (j, i) { + var k = $Z[j]; + k && k.beAttacked && k.ChangeChkActsTo1(k, j, i); + }, + [e, a] + ); + }, + ChangeChkActsTo1: function (g, e, a) { + var d = 4, + h = g.ArDZ, + c, + b, + f; + while (d--) { + (b = h[d]) && + (c = b[0]) && + (f = $Z[c]) && + f.beAttacked && + ((f.LostHeadGif = 4), + (f.NormalGif = 2), + !f.isAttacking && (f.EleBody.src = f.PicArr[2])); + } + g.LostHeadGif = 4; + g.NormalGif = 2; + g.DZStep = 1; + g.DZStepT = oSym.Now + 220; + !g.isAttacking && (a.src = g.PicArr[2]); + g.PZ && + oSym.addTask( + 220, + function (j, i) { + var k = $Z[j]; + k && k.beAttacked && k.ChkBackupDancer(k, j, i); + }, + [e, a] + ); + }, + TurnLeft: function (c) { + var a = CZombies.prototype, + b = c.id; + c.AttackZombie = a.AttackZombie; + c.NormalAttack = a.NormalAttack; + c.OSpeed = 3.5; + !(c.FreeSlowTime || c.FreeFreezeTime || c.FreeSetbodyTime) && + (c.Speed = 3.5); + c.getSnowPea = OrnNoneZombies.prototype.getSnowPea; + c.getFreeze = CZombies.prototype.getFreeze; + oSym.addTask( + 20, + function (d, e) { + $Z[d] && + e.beAttacked && + (e.addSpotlight(d, e, e.Ele), + oSym.addTask( + 200, + function (g, f, i, h, k) { + var j = $Z[g]; + j && + (h > -736 ? (h -= 184) : (h = 0), + (f.style.left = h + "px"), + k > -736 ? (k -= 184) : (k = 0), + (i.style.left = k + "px"), + oSym.addTask(100, arguments.callee, [ + g, + f, + i, + h, + k, + ])); + }, + [d, e.spotlight, e.spotlight2, 0, 0] + ), + oSym.addTask( + 200, + function (h, g) { + var f; + $Z[g] && + h.beAttacked && + ((f = h.EleBody), + !h.isAttacking + ? (f.src = h.PicArr[10]) + : (h.isAttacking = 0), + h.ChangeChkActsTo0(h, g, f)); + }, + [e, d] + )); + }, + [b, c] + ); + c.Summon(c, b); + }, + NormalAttack: function (a) { + var b = $Z[a]; + b.ExchangeLR(b, 0); + b.TurnLeft(b); + }, + Summon: function (d, c) { + d.LostHeadGif = 16; + var a = d.EleBody, + b = d.ChkActs; + d.ChkActs = d.ChkTmp; + d.ChkTmp = b; + a.src = "images/Zombies/DancingZombie/Summon1.gif"; + PlayAudio("dancer"); + oSym.addTask( + 10, + function (f, e) { + var g = $Z[f]; + g && + g.beAttacked && + ((e.src = "images/Zombies/DancingZombie/Summon2.gif"), + oSym.addTask( + 10, + function (t, s, x) { + var h = $Z[t], + v = h.ZX, + m = h.ArDZ, + n = [], + k = + "images/Zombies/BackupDancer/Mound.gif" + + $Random + + Math.random(), + r = 4, + w = [], + u = [], + o = 0, + q, + l; + if (h && h.beAttacked) { + s.src = + "images/Zombies/DancingZombie/Summon3.gif"; + while (r--) { + (q = m[r]) && + (!(l = q[0]) || !$Z[l]) && + ((u[o] = (w[o] = + new oBackupDancer()).CustomBirth( + q[1], + q[2](v), + 100, + (q[0] = "Z_" + Math.random()) + )), + n.push( + NewImg( + "", + k, + "z-index:" + + q[3] + + ";left:" + + q[4](v) + + "px;top:" + + q[5] + + "px", + EDPZ + ) + ), + ++o); + } + oSym.addTask( + 220, + function () { + var i = arguments.length; + while (i--) { + ClearChild(arguments[i]); + } + }, + n + ); + oSym.addTask( + 110, + function (A, y, z, i) { + var B = $Z[A]; + B && + B.beAttacked && + (oP.AppearUP(y, z, i), + oSym.addTask( + 100, + function (D, C) { + var E = $Z[D]; + if (E && E.beAttacked) { + return; + } + var j = C.length, + E; + while (j--) { + (E = + C[ + j + ]).ChangeChkActsTo0( + E, + E.id, + E.EleBody + ); + } + }, + [A, z] + )); + }, + [t, u, w, o] + ); + oSym.addTask( + 200, + function (y, i) { + var z = $Z[y], + j; + z && + z.beAttacked && + ((j = z.ChkActs), + (z.ChkActs = z.ChkTmp), + (z.ChkTmp = j)); + }, + [t, s] + ); + } + }, + [f, e] + )); + }, + [c, a] + ); + }, + }), + oZombie = InheritO(OrnNoneZombies, { + EName: "oZombie", + CName: "Zombie", + StandGif: 9, + HeadPosition: [ + { + x: 82, + y: 30, + width: 40, + height: 40, + }, + { + x: 82, + y: 30, + width: 40, + height: 40, + }, + ], + PicArr: (function () { + var a = "images/Zombies/Zombie/"; + return [ + "images/Card/Zombies/Zombie.png", + a + "0.gif", + a + "Zombie.gif", + a + "ZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + Produce: + '韧性:

这种僵尸喜爱脑髓,贪婪而不知足。脑髓,脑髓,脑髓,夜以继日地追求着。老而臭的脑髓?腐烂的脑髓?都没关系。僵尸需要它们。', + }), + oIZombie = InheritO(OrnNoneZombies, { + EName: "oIZombie", + CName: "Zombie", + StandGif: 9, + PicArr: (function () { + var a = "images/Zombies/Zombie/"; + return [ + "images/Card/Zombies/IZombie.png", + a + "0.gif", + a + "Zombie.gif", + a + "ZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + Produce: + '韧性:

这种僵尸喜爱脑髓,贪婪而不知足。脑髓,脑髓,脑髓,夜以继日地追求着。老而臭的脑髓?腐烂的脑髓?都没关系。僵尸需要它们。', + }), + oZombie2 = InheritO(oZombie, { EName: "oZombie2" }), + oZombie3 = InheritO(oZombie, { EName: "oZombie3" }), + oMustacheZombie = InheritO(oZombie, { + EName: "oMustacheZombie", + CName: "Mustache Zombie", + HP: 540, + Produce: + '出没于常青之塔的神秘僵尸。

韧性:

姜还是老的辣,僵尸界也有这种说法。于是,一些老僵尸也上战场了。', + PicArr: (function () { + var a = "images/Zombies/Zombie/"; + var b = "images/Zombies/MustacheZombie/"; + return [ + "images/Card/Zombies/MustacheZombie.png", + b + "0.gif", + b + "Zombie.gif", + b + "ZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + b + "1.gif", + ]; + })(), + }), + oFlagZombie = InheritO(oZombie, { + PicArr: (function () { + var a = "images/Zombies/FlagZombie/"; + return [ + "images/Card/Zombies/FlagZombie.png", + a + "0.gif", + a + "FlagZombie.gif", + a + "FlagZombieAttack.gif", + a + "FlagZombieLostHead.gif", + a + "FlagZombieLostHeadAttack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + $Random, + "images/Zombies/Zombie/ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + EName: "oFlagZombie", + CName: "Flag Zombie", + OSpeed: 2.2, + Speed: 2.2, + beAttackedPointR: 101, + Produce: + '旗帜僵尸标志着即将来袭的一大堆僵尸"流"。

韧性:

毫无疑问,摇旗僵尸喜爱脑髓。但在私下里他也迷恋旗帜。也许是因为旗帜上也画有脑子吧,这很难说。', + }), + OrnIZombies = (function () { + var a = function (f, b) { + var d = f.OrnHP, + c = f.HP, + e = OrnNoneZombies.prototype; + (d = f.OrnHP -= b) < 1 && + ((f.HP += d), + (f.Ornaments = 0), + (f.EleBody.src = + f.PicArr[ + [ + (f.NormalGif = f.OrnLostNormalGif), + (f.AttackGif = f.OrnLostAttackGif), + ][f.isAttacking] + ]), + (f.PlayNormalballAudio = e.PlayNormalballAudio), + (f.PlayFireballAudio = e.PlayFireballAudio), + (f.PlaySlowballAudio = e.PlaySlowballAudio), + (f.getHit = + f.getHit0 = + f.getHit1 = + f.getHit2 = + f.getHit3 = + e.getHit)); + f.SetAlpha(f, f.EleBody, 50, 0.5); + oSym.addTask( + 10, + function (h, g) { + (g = $Z[h]) && g.SetAlpha(g, g.EleBody, 100, 1); + }, + [f.id] + ); + }; + return InheritO(OrnNoneZombies, { + Ornaments: 1, + OrnLostNormalGif: 9, + OrnLostAttackGif: 10, + getHit: a, + getHit0: a, + getHit1: a, + getHit2: a, + getHit3: a, + }); + })(), + oConeheadZombie = InheritO(OrnIZombies, { + EName: "oConeheadZombie", + CName: "Conehead Zombie", + OrnHP: 370, + Lvl: 2, + SunNum: 75, + StandGif: 11, + HeadPosition: [ + { + x: 82, + y: 30, + width: 40, + height: 40, + }, + { + x: 82, + y: 30, + width: 40, + height: 40, + }, + ], + PicArr: (function () { + var b = "images/Zombies/ConeheadZombie/", + a = "images/Zombies/Zombie/"; + return [ + "images/Card/Zombies/ConeheadZombie.png", + b + "0.gif", + b + "ConeheadZombie.gif", + b + "ConeheadZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "Zombie.gif", + a + "ZombieAttack.gif", + b + "1.gif", + ]; + })(), + AudioArr: ["plastichit"], + PlayNormalballAudio: function () { + PlayAudio("plastichit"); + }, + Produce: + '他的路障头盔,使他两倍坚韧于普通僵尸。

韧性:

和其他僵尸一样,路障头僵尸盲目地向前。但某些事物却使他停下脚步,捡起一个交通路障,并固实在自己的脑袋上。是的,他很喜欢参加聚会。', + }), + oIConeheadZombie = InheritO(OrnIZombies, { + EName: "oIConeheadZombie", + CName: "Conehead Zombie", + OrnHP: 370, + Lvl: 2, + SunNum: 75, + StandGif: 11, + HeadPosition: [ + { + x: 82, + y: 30, + width: 40, + height: 40, + }, + { + x: 82, + y: 30, + width: 40, + height: 40, + }, + ], + PicArr: (function () { + var b = "images/Zombies/ConeheadZombie/", + a = "images/Zombies/Zombie/"; + return [ + "images/Card/Zombies/IConeheadZombie.png", + b + "0.gif", + b + "ConeheadZombie.gif", + b + "ConeheadZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "Zombie.gif", + a + "ZombieAttack.gif", + b + "1.gif", + ]; + })(), + AudioArr: ["plastichit"], + PlayNormalballAudio: function () { + PlayAudio("plastichit"); + }, + Produce: + '他的路障头盔,使他两倍坚韧于普通僵尸。

韧性:

和其他僵尸一样,路障头僵尸盲目地向前。但某些事物却使他停下脚步,捡起一个交通路障,并固实在自己的脑袋上。是的,他很喜欢参加聚会。', + }), + oLionDanceZombie = InheritO(oConeheadZombie, { + EName: "oLionDanceZombie", + CName: "Lion Dancer Zombie", + HP: 370, + OrnHP: 1100, + Speed: 4.8, + Attack: 550, + width: 216, + height: 164, + beAttackedPointL: 60, + beAttackedPointR: 130, + HeadPosition: [ + { + x: 82, + y: 30, + width: 40, + height: 40, + }, + { + x: 82, + y: 30, + width: 40, + height: 40, + }, + ], + PicArr: (function () { + var b = "images/Zombies/LionDanceZombie/", + a = "images/Zombies/LionDanceZombie/"; + return [ + "images/Card/Zombies/LionDanceZombie.png", + b + "0.gif", + b + "ConeheadZombie.gif", + b + "ConeheadZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "Zombie.gif", + a + "ZombieAttack.gif", + b + "1.gif", + ]; + })(), + Produce: + '只出现于常青之塔101层。僵尸设计来自rdrz。

韧性:

舞狮是优秀的民间艺术。每逢佳节庆典,民间都以舞狮来助兴,南方以广东的舞狮表演最为有名。狮子是由彩布条制作而成的。每头狮子有两个人合作表演,一人舞头,一人舞尾。表演者在锣鼓音乐下,装扮成狮子的样子,做出狮子的各种形态动作。在表演过程中,舞狮者要以各种招式来表现南派武功,非常富有阳刚之气。', + }), + oBucketheadZombie = InheritO( + oConeheadZombie, + { + EName: "oBucketheadZombie", + CName: "Buckethead Zombie", + OrnHP: 1100, + Lvl: 3, + SunNum: 125, + HeadPosition: [ + { + x: 82, + y: 30, + width: 40, + height: 40, + }, + { + x: 82, + y: 30, + width: 40, + height: 40, + }, + ], + PlayNormalballAudio: function () { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + }, + Produce: + '他的铁桶头盔,能极大程度的承受伤害。

韧性:
弱点:土豆雷

铁桶头僵尸经常戴着水桶,在冷漠的世界里显得独一无二。但事实上,他只是忘记了,那铁桶还在他头上而已。', + }, + { + PicArr: { + 0: "images/Card/Zombies/BucketheadZombie.png", + 1: "images/Zombies/BucketheadZombie/0.gif", + 2: "images/Zombies/BucketheadZombie/BucketheadZombie.gif", + 3: "images/Zombies/BucketheadZombie/BucketheadZombieAttack.gif", + 9: "images/Zombies/Zombie/Zombie.gif", + 11: "images/Zombies/BucketheadZombie/1.gif", + }, + } + ), + oIBucketheadZombie = InheritO( + oConeheadZombie, + { + EName: "oIBucketheadZombie", + CName: "Buckethead Zombie", + OrnHP: 1100, + Lvl: 3, + SunNum: 125, + PlayNormalballAudio: function () { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + }, + Produce: + '他的铁桶头盔,能极大程度的承受伤害。

韧性:
弱点:土豆雷

铁桶头僵尸经常戴着水桶,在冷漠的世界里显得独一无二。但事实上,他只是忘记了,那铁桶还在他头上而已。', + }, + { + PicArr: { + 0: "images/Card/Zombies/IBucketheadZombie.png", + 1: "images/Zombies/BucketheadZombie/0.gif", + 2: "images/Zombies/BucketheadZombie/BucketheadZombie.gif", + 3: "images/Zombies/BucketheadZombie/BucketheadZombieAttack.gif", + 9: "images/Zombies/Zombie/Zombie.gif", + 11: "images/Zombies/BucketheadZombie/1.gif", + }, + } + ), + oFootballZombie = InheritO(oConeheadZombie, { + EName: "oFootballZombie", + CName: "Football Zombie", + OrnHP: 1400, + Lvl: 3, + SunNum: 175, + StandGif: 11, + width: 154, + height: 160, + OSpeed: 3.2, + Speed: 3.2, + beAttackedPointL: 40, + beAttackedPointR: 134, + PlayNormalballAudio: function () { + PlayAudio("plastichit"); + }, + PicArr: (function () { + var a = "images/Zombies/FootballZombie/"; + return [ + "images/Card/Zombies/FootballZombie.png", + a + "0.gif", + a + "FootballZombie.gif", + a + "Attack.gif", + a + "LostHead.gif", + a + "LostHeadAttack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + $Random, + a + "Die.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "OrnLost.gif", + a + "OrnLostAttack.gif", + a + "1.gif", + ]; + })(), + getShadow: function (a) { + return ( + "left:" + + (a.beAttackedPointL + 15) + + "px;top:" + + (a.height - 22) + + "px" + ); + }, + Produce: + '橄榄球僵尸的表演秀。

韧性:极高
速度:

在球场上,橄榄球僵尸表现出110%的激情,他进攻防守样样在行。虽然他完全不知道橄榄球是什么。', + }), + oIFootballZombie = InheritO(oConeheadZombie, { + EName: "oIFootballZombie", + CName: "Football Zombie", + OrnHP: 1400, + Lvl: 3, + SunNum: 175, + StandGif: 11, + width: 154, + height: 160, + OSpeed: 3.2, + Speed: 3.2, + beAttackedPointL: 40, + beAttackedPointR: 134, + PlayNormalballAudio: function () { + PlayAudio("plastichit"); + }, + PicArr: (function () { + var a = "images/Zombies/FootballZombie/"; + return [ + "images/Card/Zombies/IFootballZombie.png", + a + "0.gif", + a + "FootballZombie.gif", + a + "Attack.gif", + a + "LostHead.gif", + a + "LostHeadAttack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + $Random, + a + "Die.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "OrnLost.gif", + a + "OrnLostAttack.gif", + a + "1.gif", + ]; + })(), + getShadow: function (a) { + return ( + "left:" + + (a.beAttackedPointL + 15) + + "px;top:" + + (a.height - 22) + + "px" + ); + }, + Produce: + '橄榄球僵尸的表演秀。

韧性:极高
速度:

在球场上,橄榄球僵尸表现出110%的激情,他进攻防守样样在行。虽然他完全不知道橄榄球是什么。', + }), + oHeiFootballZombie = InheritO(oFootballZombie, { + EName: "oHeiFootballZombie", + CName: "Giga-Football Zombie", + OrnHP: 2800, + Lvl: 3, + StandGif: 11, + width: 154, + height: 160, + OSpeed: 3.3, + Speed: 3.3, + beAttackedPointL: 40, + beAttackedPointR: 134, + PicArr: (function () { + var a = "images/Zombies/HeiFootballZombie/"; + return [ + "images/Card/Zombies/HeiFootballZombie.png", + a + "0.gif", + a + "FootballZombie.gif", + a + "Attack.gif", + a + "LostHead.gif", + a + "LostHeadAttack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + $Random, + a + "Die.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "OrnLost.gif", + a + "OrnLostAttack.gif", + a + "1.gif", + ]; + })(), + Produce: + '黑暗橄榄球僵尸的表演秀。

韧性:极高
速度:

他着装低调深沉,他是僵尸橄榄球界的领军人物,拥有更强的防御能力,虽然他也完全不知道橄榄球是什么。', + }), + oCFootballZombie = InheritO(oFootballZombie, { + EName: "oCFootballZombie", + CName: "元帅僵尸", + PicArr: (function () { + var a = "images/Zombies/wall/FootballZombie/"; + return [ + "images/Card/Zombies/FootballZombie.png", + a + "0.gif", + a + "FootballZombie.gif", + a + "Attack.gif", + a + "LostHead.gif", + a + "LostHeadAttack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + $Random, + a + "Die.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "OrnLost.gif", + a + "OrnLostAttack.gif", + a + "1.gif", + ]; + })(), + Produce: "", + }), + oPoleVaultingZombie = InheritO(OrnNoneZombies, { + EName: "oPoleVaultingZombie", + CName: "Pole Vaulting Zombie", + HP: 270, + width: 348, + height: 218, + OSpeed: 3.2, + Speed: 3.2, + beAttackedPointL: 215, + beAttackedPointR: 260, + StandGif: 13, + GetDX: function () { + return -238; + }, + GetDY: function () { + return 2; + }, + Lvl: 2, + SunNum: 75, + PicArr: (function () { + var a = "images/Zombies/PoleVaultingZombie/"; + return [ + "images/Card/Zombies/PoleVaultingZombie.png", + a + "0.gif", + a + "PoleVaultingZombie.gif", + a + "PoleVaultingZombieAttack.gif", + a + "PoleVaultingZombieLostHead.gif", + a + "PoleVaultingZombieLostHeadAttack.gif", + a + "PoleVaultingZombieHead.gif" + $Random, + a + "PoleVaultingZombieDie.gif" + $Random, + a + "BoomDie.gif" + $Random, + a + "PoleVaultingZombieWalk.gif", + a + "PoleVaultingZombieLostHeadWalk.gif", + a + "PoleVaultingZombieJump.gif", + a + "PoleVaultingZombieJump2.gif", + a + "1.gif", + ]; + })(), + AudioArr: ["polevault", "grassstep"], + Produce: + '撑杆僵尸运用标杆高高地跃过障碍物。

韧性:
速度:快,而后慢(跳跃后)
特点:跃过他所碰到的第一筑植物

一些僵尸渴望走得更远、得到更多,这也促使他们由普通成为非凡。那就是撑杆僵尸。', + getShadow: function (a) { + return ( + "left:" + + (a.beAttackedPointL - 20) + + "px;top:" + + (a.height - 35) + + "px" + ); + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "left:" + + b.X + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + JudgeAttack: function () { + var g = this, + b = g.ZX, + d = g.R + "_", + c = GetC(b), + h = oGd.$, + f, + a, + e = b - 74; + for (f = c - 2; f <= c; f++) { + if (f > 9) { + continue; + } + for ( + a = 2; + a > -1; + (p = h[d + f + "_" + a--]) && + (p.EName != "oBrains" + ? p.AttackedRX >= e && + p.AttackedLX < b && + p.canEat && + ((a = -1), + (g.JudgeAttack = CZombies.prototype.JudgeAttack), + g.NormalAttack(g.id, p.id, p.AttackedLX)) + : p.AttackedRX >= b && + p.AttackedLX < b && + ((a = -1), + (g.JudgeAttack = CZombies.prototype.JudgeAttack), + (g.NormalAttack = CZombies.prototype.NormalAttack)( + g.id, + p.id + ))) + ) {} + } + }, + getCrushed: function (a) { + this.NormalAttack(this.id, a.id, a.AttackedLX); + this.getCrushed = function () { + return false; + }; + a.Stature > 0 && + oSym.addTask( + 50, + function (c) { + var b = $Z[c]; + b && b.CrushDie(); + }, + [this.id] + ); + return false; + }, + getRaven: function (a) { + return ( + !this.isAttacking && + this.NormalAttack(this.id, a, $P[a].AttackedLX), + 0 + ); + }, + NormalAttack: function (d, b, g) { + var f = $Z[d], + a = f.Ele, + c = f.EleShadow, + e = f.EleBody; + e.src = + "images/Zombies/PoleVaultingZombie/PoleVaultingZombieJump.gif" + + $Random + + Math.random(); + PlayAudio("grassstep"); + SetHidden(c); + f.isAttacking = 1; + f.Altitude = 2; + f.getFreeze = function () { + f.getSnowPea(f, 20); + }; + oSym.addTask( + 50, + function (h) { + $Z[h] && PlayAudio("polevault"); + }, + [d] + ); + oSym.addTask( + 100, + function (m, j, i, l, n) { + var h = $Z[m], + k, + q, + r; + h && + ((k = $P[j]) && k.Stature > 0 + ? ((h.AttackedRX = + (h.X = + (h.AttackedLX = + h.ZX = + q = + k.AttackedRX) - + h.beAttackedPointL) + + h.beAttackedPointR), + SetStyle(i, { left: h.X + "px" }), + (n.src = + "images/Zombies/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), + SetVisible(l), + (h.isAttacking = 0), + (h.Altitude = 1), + (h.OSpeed = h.Speed = 1.6), + (h.NormalGif = 9), + (h.LostHeadGif = 10), + (h.NormalAttack = (r = + CZombies.prototype).NormalAttack), + (h.getCrushed = r.getCrushed), + (h.getFreeze = r.getFreeze), + (h.getRaven = r.getRaven)) + : ((h.ZX = h.AttackedLX = + (h.X = + (h.AttackedRX = g) - + h.beAttackedPointR) + + h.beAttackedPointL), + SetStyle(i, { left: h.X + "px" }), + (n.src = + "images/Zombies/PoleVaultingZombie/PoleVaultingZombieJump2.gif" + + $Random + + Math.random()), + SetVisible(l), + oSym.addTask( + 80, + function (s, v) { + var u = $Z[s], + t; + u && + ((v.src = + "images/Zombies/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), + (u.isAttacking = 0), + (u.Altitude = 1), + (u.OSpeed = u.Speed = 1.6), + (u.NormalGif = 9), + (u.LostHeadGif = 10), + (u.NormalAttack = (t = + CZombies.prototype).NormalAttack), + (u.getCrushed = t.getCrushed), + (u.getFreeze = t.getFreeze), + (u.getRaven = t.getRaven)); + }, + [m, n] + ))); + }, + [d, b, a, c, e] + ); + }, + }), + oIPoleVaultingZombie = InheritO(OrnNoneZombies, { + EName: "oIPoleVaultingZombie", + CName: "Pole Vaulting Zombie", + HP: 270, + width: 348, + height: 218, + OSpeed: 3.2, + Speed: 3.2, + beAttackedPointL: 215, + beAttackedPointR: 260, + StandGif: 13, + GetDX: function () { + return -238; + }, + GetDY: function () { + return 2; + }, + Lvl: 2, + SunNum: 75, + PicArr: (function () { + var a = "images/Zombies/PoleVaultingZombie/"; + return [ + "images/Card/Zombies/IPoleVaultingZombie.png", + a + "0.gif", + a + "PoleVaultingZombie.gif", + a + "PoleVaultingZombieAttack.gif", + a + "PoleVaultingZombieLostHead.gif", + a + "PoleVaultingZombieLostHeadAttack.gif", + a + "PoleVaultingZombieHead.gif" + $Random, + a + "PoleVaultingZombieDie.gif" + $Random, + a + "BoomDie.gif" + $Random, + a + "PoleVaultingZombieWalk.gif", + a + "PoleVaultingZombieLostHeadWalk.gif", + a + "PoleVaultingZombieJump.gif", + a + "PoleVaultingZombieJump2.gif", + a + "1.gif", + ]; + })(), + AudioArr: ["polevault", "grassstep"], + Produce: + '撑杆僵尸运用标杆高高地跃过障碍物。

韧性:
速度:快,而后慢(跳跃后)
特点:跃过他所碰到的第一筑植物

一些僵尸渴望走得更远、得到更多,这也促使他们由普通成为非凡。那就是撑杆僵尸。', + getShadow: function (a) { + return ( + "left:" + + (a.beAttackedPointL - 20) + + "px;top:" + + (a.height - 35) + + "px" + ); + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "left:" + + b.X + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + JudgeAttack: function () { + var g = this, + b = g.ZX, + d = g.R + "_", + c = GetC(b), + h = oGd.$, + f, + a, + e = b - 74; + for (f = c - 2; f <= c; f++) { + if (f > 9) { + continue; + } + for ( + a = 2; + a > -1; + (p = h[d + f + "_" + a--]) && + (p.EName != "oBrains" + ? p.AttackedRX >= e && + p.AttackedLX < b && + p.canEat && + ((a = -1), + (g.JudgeAttack = CZombies.prototype.JudgeAttack), + g.NormalAttack(g.id, p.id, p.AttackedLX)) + : p.AttackedRX >= b && + p.AttackedLX < b && + ((a = -1), + (g.JudgeAttack = CZombies.prototype.JudgeAttack), + (g.NormalAttack = CZombies.prototype.NormalAttack)( + g.id, + p.id + ))) + ) {} + } + }, + getCrushed: function (a) { + this.NormalAttack(this.id, a.id, a.AttackedLX); + this.getCrushed = function () { + return false; + }; + a.Stature > 0 && + oSym.addTask( + 50, + function (c) { + var b = $Z[c]; + b && b.CrushDie(); + }, + [this.id] + ); + return false; + }, + getRaven: function (a) { + return ( + !this.isAttacking && + this.NormalAttack(this.id, a, $P[a].AttackedLX), + 0 + ); + }, + NormalAttack: function (d, b, g) { + var f = $Z[d], + a = f.Ele, + c = f.EleShadow, + e = f.EleBody; + e.src = + "images/Zombies/PoleVaultingZombie/PoleVaultingZombieJump.gif" + + $Random + + Math.random(); + PlayAudio("grassstep"); + SetHidden(c); + f.isAttacking = 1; + f.Altitude = 2; + f.getFreeze = function () { + f.getSnowPea(f, 20); + }; + oSym.addTask( + 50, + function (h) { + $Z[h] && PlayAudio("polevault"); + }, + [d] + ); + oSym.addTask( + 100, + function (m, j, i, l, n) { + var h = $Z[m], + k, + q, + r; + h && + ((k = $P[j]) && k.Stature > 0 + ? ((h.AttackedRX = + (h.X = + (h.AttackedLX = + h.ZX = + q = + k.AttackedRX) - + h.beAttackedPointL) + + h.beAttackedPointR), + SetStyle(i, { left: h.X + "px" }), + (n.src = + "images/Zombies/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), + SetVisible(l), + (h.isAttacking = 0), + (h.Altitude = 1), + (h.OSpeed = h.Speed = 1.6), + (h.NormalGif = 9), + (h.LostHeadGif = 10), + (h.NormalAttack = (r = + CZombies.prototype).NormalAttack), + (h.getCrushed = r.getCrushed), + (h.getFreeze = r.getFreeze), + (h.getRaven = r.getRaven)) + : ((h.ZX = h.AttackedLX = + (h.X = + (h.AttackedRX = g) - + h.beAttackedPointR) + + h.beAttackedPointL), + SetStyle(i, { left: h.X + "px" }), + (n.src = + "images/Zombies/PoleVaultingZombie/PoleVaultingZombieJump2.gif" + + $Random + + Math.random()), + SetVisible(l), + oSym.addTask( + 80, + function (s, v) { + var u = $Z[s], + t; + u && + ((v.src = + "images/Zombies/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), + (u.isAttacking = 0), + (u.Altitude = 1), + (u.OSpeed = u.Speed = 1.6), + (u.NormalGif = 9), + (u.LostHeadGif = 10), + (u.NormalAttack = (t = + CZombies.prototype).NormalAttack), + (u.getCrushed = t.getCrushed), + (u.getFreeze = t.getFreeze), + (u.getRaven = t.getRaven)); + }, + [m, n] + ))); + }, + [d, b, a, c, e] + ); + }, + }), + oCPoleVaultingZombie = InheritO(oPoleVaultingZombie, { + EName: "oCPoleVaultingZombie", + CName: "棒子僵尸", + PicArr: (function () { + var b = "images/Zombies/PoleVaultingZombie/"; + var a = "images/Zombies/wall/PoleVaultingZombie/"; + return [ + "images/Card/Zombies/PoleVaultingZombie.png", + a + "0.gif", + a + "PoleVaultingZombie.gif", + a + "PoleVaultingZombieAttack.gif", + a + "PoleVaultingZombieLostHead.gif", + a + "PoleVaultingZombieLostHeadAttack.gif", + a + "PoleVaultingZombieHead.gif" + $Random, + a + "PoleVaultingZombieDie.gif" + $Random, + b + "BoomDie.gif" + $Random, + a + "PoleVaultingZombieWalk.gif", + a + "PoleVaultingZombieLostHeadWalk.gif", + a + "PoleVaultingZombieJump.gif", + a + "PoleVaultingZombieJump2.gif", + a + "1.gif", + ]; + })(), + NormalAttack: function (d, b, g) { + var f = $Z[d], + a = f.Ele, + c = f.EleShadow, + e = f.EleBody; + e.src = + "images/Zombies/wall/PoleVaultingZombie/PoleVaultingZombieJump.gif" + + $Random + + Math.random(); + PlayAudio("grassstep"); + SetHidden(c); + f.isAttacking = 1; + f.Altitude = 2; + f.getFreeze = function () { + f.getSnowPea(f, 20); + }; + oSym.addTask( + 50, + function (h) { + $Z[h] && PlayAudio("polevault"); + }, + [d] + ); + oSym.addTask( + 100, + function (m, j, i, l, n) { + var h = $Z[m], + k, + q, + r; + h && + ((k = $P[j]) && k.Stature > 0 + ? ((h.AttackedRX = + (h.X = + (h.AttackedLX = + h.ZX = + q = + k.AttackedRX) - + h.beAttackedPointL) + + h.beAttackedPointR), + SetStyle(i, { left: h.X + "px" }), + (n.src = + "images/Zombies/wall/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), + SetVisible(l), + (h.isAttacking = 0), + (h.Altitude = 1), + (h.OSpeed = h.Speed = 1.6), + (h.NormalGif = 9), + (h.LostHeadGif = 10), + (h.NormalAttack = (r = + CZombies.prototype).NormalAttack), + (h.getCrushed = r.getCrushed), + (h.getFreeze = r.getFreeze), + (h.getRaven = r.getRaven)) + : ((h.ZX = h.AttackedLX = + (h.X = + (h.AttackedRX = g) - + h.beAttackedPointR) + + h.beAttackedPointL), + SetStyle(i, { left: h.X + "px" }), + (n.src = + "images/Zombies/wall/PoleVaultingZombie/PoleVaultingZombieJump2.gif" + + $Random + + Math.random()), + SetVisible(l), + oSym.addTask( + 80, + function (s, v) { + var u = $Z[s], + t; + u && + ((v.src = + "images/Zombies/wall/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), + (u.isAttacking = 0), + (u.Altitude = 1), + (u.OSpeed = u.Speed = 1.6), + (u.NormalGif = 9), + (u.LostHeadGif = 10), + (u.NormalAttack = (t = + CZombies.prototype).NormalAttack), + (u.getCrushed = t.getCrushed), + (u.getFreeze = t.getFreeze), + (u.getRaven = t.getRaven)); + }, + [m, n] + ))); + }, + [d, b, a, c, e] + ); + }, + }), + OrnIIZombies = InheritO(OrnNoneZombies, { + Ornaments: 2, + BreakPoint: 91, + NormalGif: 2, + AttackGif: 3, + LostHeadGif: 4, + LostHeadAttackGif: 5, + OrnLostNormalGif: 6, + OrnLostAttackGif: 7, + OrnLostHeadNormalGif: 8, + OrnLostHeadAttackGif: 9, + HeadGif: 10, + DieGif: 11, + BoomDieGif: 12, + }), + oNewspaperZombie = InheritO(OrnIIZombies, { + EName: "oNewspaperZombie", + CName: "Newspaper Zombie", + OrnHP: 150, + Lvl: 2, + LostPaperGif: 13, + StandGif: 14, + width: 216, + height: 164, + beAttackedPointL: 60, + beAttackedPointR: 130, + LostPaperSpeed: 4.8, + PicArr: (function () { + var a = "images/Zombies/NewspaperZombie/"; + return [ + "images/Card/Zombies/NewspaperZombie.png", + a + "0.gif", + a + "HeadWalk1.gif", + a + "HeadAttack1.gif", + a + "LostHeadWalk1.gif", + a + "LostHeadAttack1.gif", + a + "HeadWalk0.gif", + a + "HeadAttack0.gif", + a + "LostHeadWalk0.gif", + a + "LostHeadAttack0.gif", + a + "Head.gif" + $Random, + a + "Die.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "LostNewspaper.gif", + a + "1.gif", + ]; + })(), + AudioArr: ["newspaper_rarrgh2"], + Produce: + '他的报纸只能提供有限的防御。

韧性:
报纸韧性:
速度:正常,而后快(失去报纸后)

读报僵尸,他正痴迷于完成他的数独难题。难怪他这么反常。', + getShadow: function (a) { + return "left:75px;top:" + (a.height - 25) + "px"; + }, + GoingDie: function (b) { + var a = this, + c = a.id; + a.EleBody.src = b; + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a.PicArr[a.HeadGif] + Math.random(), + "left:" + + a.AttackedLX + + "px;top:" + + (a.pixelTop - 20) + + "px;z-index:" + + a.zIndex, + EDPZ + ), + ]); + a.beAttacked = 0; + a.FreeFreezeTime = a.FreeSetbodyTime = a.FreeSlowTime = 0; + a.AutoReduceHP(c); + }, + getHurtOrnLost: function (j, a, g, m, c, l, k, i) { + var e = this; + if (!e.beAttacked) { + k && e.DisappearDie(); + return; + } + var b = e.id, + h = e.HP, + d = e.PicArr, + f = e.isAttacking; + switch (true) { + case (h -= g) < 1: + e.HP = 0; + e.NormalDie(); + return; + case h < 91: + e.HP = h; + e.GoingDie( + d[[e.OrnLostHeadNormalGif, e.OrnLostHeadAttackGif][f]] + ); + return; + } + e.HP = h; + switch (m) { + case -1: + e.getSlow(e, b, 1e3); + break; + case 1: + e.getFireball(e, b, a); + break; + default: + !i && j == -1 && e.PlayNormalballAudio(); + } + SetAlpha(e.EleBody, 50, 0.5); + oSym.addTask( + 10, + function (q) { + var n = $Z[q]; + n && SetAlpha(n.EleBody, 100, 1); + }, + [b] + ); + }, + getSnowPea: function (c, a, b) { + PlayAudio("splat" + Math.floor(1 + Math.random() * 3)); + c.getHit0(c, a, b); + }, + getFirePea: function (f, b, e) { + f.PlayFireballAudio(); + (f.FreeSlowTime || f.FreeFreezeTime) && + ((f.Speed = f.OSpeed), + (f.FreeSlowTime = 0), + (f.FreeFreezeTime = 0)); + f.Attack = 100; + var d = f.AttackedLX, + g = f.AttackedRX, + a = oZ.getArZ(d, d + 40, f.R), + c = a.length, + h; + while (c--) { + (h = a[c]) != this && h.getFirePeaSputtering(); + } + (f.HP -= b) < f.BreakPoint + ? ((f.getFirePea = OrnNoneZombies.prototype.getFirePea), + f.GoingDie( + f.PicArr[ + [f.LostHeadGif, f.LostHeadAttackGif][f.isAttacking] + ] + ), + (f.getHit = + f.getHit0 = + f.getHit1 = + f.getHit2 = + f.getHit3 = + function () {})) + : (f.CheckOrnHP( + f, + f.id, + f.OrnHP, + b, + f.PicArr, + f.isAttacking, + 0 + ), + f.SetAlpha(f, f.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (j, i) { + (i = $Z[j]) && i.SetAlpha(i, i.EleBody, 100, 1); + }, + [f.id] + )); + }, + getHit0: function (c, a, b) { + b == c.WalkDirection + ? (c.CheckOrnHP( + c, + c.id, + c.OrnHP, + a, + c.PicArr, + c.isAttacking, + 1 + ), + c.SetAlpha(c, c.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (e, d) { + (d = $Z[e]) && d.SetAlpha(d, d.EleBody, 100, 1); + }, + [c.id] + )) + : (c.HP -= a) < c.BreakPoint && + (c.GoingDie( + c.PicArr[ + [c.LostHeadGif, c.LostHeadAttackGif][c.isAttacking] + ] + ), + (c.getFirePea = OrnNoneZombies.prototype.getFirePea), + (c.getSnowPea = OrnNoneZombies.prototype.getSnowPea), + (c.getHit = + c.getHit0 = + c.getHit1 = + c.getHit2 = + c.getHit3 = + function () {})); + }, + getHit1: function (b, a) { + (b.HP -= a) < b.BreakPoint + ? (b.GoingDie( + b.PicArr[ + [b.LostHeadGif, b.LostHeadAttackGif][b.isAttacking] + ] + ), + (b.getFirePea = OrnNoneZombies.prototype.getFirePea), + (b.getSnowPea = OrnNoneZombies.prototype.getSnowPea), + (b.getHit = + b.getHit0 = + b.getHit1 = + b.getHit2 = + b.getHit3 = + function () {})) + : (b.CheckOrnHP( + b, + b.id, + b.OrnHP, + a, + b.PicArr, + b.isAttacking, + 0 + ), + b.SetAlpha(b, b.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (d, c) { + (c = $Z[d]) && c.SetAlpha(c, c.EleBody, 100, 1); + }, + [b.id] + )); + }, + getHit2: function (b, a) { + (b.HP -= a) < b.BreakPoint + ? (b.GoingDie( + b.PicArr[ + [b.LostHeadGif, b.LostHeadAttackGif][b.isAttacking] + ] + ), + (b.getFirePea = OrnNoneZombies.prototype.getFirePea), + (b.getSnowPea = OrnNoneZombies.prototype.getSnowPea), + (b.getHit = + b.getHit0 = + b.getHit1 = + b.getHit2 = + b.getHit3 = + function () {})) + : (b.SetAlpha(b, b.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (d, c) { + (c = $Z[d]) && c.SetAlpha(c, c.EleBody, 100, 1); + }, + [b.id] + )); + }, + getHit3: function (b, a) { + (b.HP -= a) < b.BreakPoint + ? (b.GoingDie( + b.PicArr[ + [b.LostHeadGif, b.LostHeadAttackGif][b.isAttacking] + ] + ), + (b.getFirePea = OrnNoneZombies.prototype.getFirePea), + (b.getSnowPea = OrnNoneZombies.prototype.getSnowPea), + (b.getHit = + b.getHit0 = + b.getHit1 = + b.getHit2 = + b.getHit3 = + function () {})) + : (b.CheckOrnHP( + b, + b.id, + b.OrnHP, + a, + b.PicArr, + b.isAttacking, + 0 + ), + b.SetAlpha(b, b.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (d, c) { + (c = $Z[d]) && c.SetAlpha(c, c.EleBody, 100, 1); + }, + [b.id] + )); + }, + CheckOrnHP: function (g, h, d, c, f, b, a) { + var e = OrnNoneZombies.prototype; + (g.OrnHP = d -= c) < 1 && + (a && (g.HP += d), + (g.ChkActs = function () { + return 1; + }), + (g.ChkActs1 = function () { + return 1; + }), + (g.EleBody.src = f[g.LostPaperGif] + $Random + Math.random()), + (g.Ornaments = 0), + (g.LostHeadGif = 8), + (g.LostHeadAttackGif = 9), + (g.getFirePea = e.getFirePea), + (g.getSnowPea = e.getSnowPea), + (g.getHit = + g.getHit0 = + g.getHit1 = + g.getHit2 = + g.getHit3 = + e.getHit), + oSym.addTask( + 150, + function (m, l) { + var k = $Z[m]; + if (!k) { + return; + } + var j = CZombies.prototype, + i = (k.OSpeed = k.LostPaperSpeed); + k.ChkActs = j.ChkActs; + k.ChkActs1 = j.ChkActs1; + k.Speed && (k.Speed = !k.FreeSlowTime ? i : 0.5 * i); + if (!k.beAttacked) { + return; + } + PlayAudio("newspaper_rarrgh2"); + k.EleBody.src = l; + k.JudgeAttack(); + }, + [ + h, + f[ + [ + (g.NormalGif = g.OrnLostNormalGif), + (g.AttackGif = g.OrnLostAttackGif), + ][b] + ], + ] + )); + }, + }), + oCNewspaperZombie = InheritO(oNewspaperZombie, { + EName: "oCNewspaperZombie", + }), + oScreenDoorZombie = InheritO(oNewspaperZombie, { + EName: "oScreenDoorZombie", + CName: "Screen Door Zombie", + OrnHP: 1100, + Lvl: 3, + SunNum: 100, + StandGif: 13, + width: 166, + height: 144, + beAttackedPointL: 60, + beAttackedPointR: 116, + PicArr: (function () { + var a = "images/Zombies/ScreenDoorZombie/", + b = "images/Zombies/Zombie/"; + return [ + "images/Card/Zombies/ScreenDoorZombie.png", + a + "0.gif", + a + "HeadWalk1.gif", + a + "HeadAttack1.gif", + a + "LostHeadWalk1.gif", + a + "LostHeadAttack1.gif", + b + "Zombie.gif", + b + "ZombieAttack.gif", + b + "ZombieLostHead.gif", + b + "ZombieLostHeadAttack.gif", + b + "ZombieHead.gif" + $Random, + b + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + PlayNormalballAudio: function () { + PlayAudio("splat" + Math.floor(1 + Math.random() * 3)); + }, + Produce: + '他的铁栅门是有效的盾牌。

韧性:
铁栅门韧性:
弱点:大喷菇和磁力菇

门板僵尸上次拜访过的房主防守并不专业,在吃掉房主的脑子后拿走了他家的铁栅门。', + GoingDie: CZombies.prototype.GoingDie, + getFirePea: function (c, a, b) { + PlayAudio( + b == c.WalkDirection + ? ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + : "splat" + Math.floor(1 + Math.random() * 3) + ); + c.getHit0(c, a, b); + }, + getFirePeaSputtering: function () {}, + getSnowPea: function (c, a, b) { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + c.getHit0(c, a, b); + }, + getPea: function (c, a, b) { + PlayAudio( + b == c.WalkDirection + ? ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + : "splat" + Math.floor(1 + Math.random() * 3) + ); + c.getHit0(c, a, b); + }, + getHit0: function (c, a, b) { + b == c.WalkDirection + ? (c.CheckOrnHP( + c, + c.id, + c.OrnHP, + a, + c.PicArr, + c.isAttacking, + 1 + ), + c.SetAlpha(c, c.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (e, d) { + (d = $Z[e]) && d.SetAlpha(d, d.EleBody, 100, 1); + }, + [c.id] + )) + : (c.HP -= a) < c.BreakPoint && + (c.GoingDie( + c.PicArr[ + [c.LostHeadGif, c.LostHeadAttackGif][c.isAttacking] + ] + ), + (c.getHit = + c.getHit0 = + c.getHit1 = + c.getHit2 = + c.getHit3 = + function () {})); + }, + CheckOrnHP: function (g, h, d, c, f, b, a) { + var e = OrnNoneZombies.prototype; + (g.OrnHP = d -= c) < 1 && + (a && (g.HP += d), + (g.Ornaments = 0), + (g.EleBody.src = + f[ + [ + (g.NormalGif = g.OrnLostNormalGif), + (g.AttackGif = g.OrnLostAttackGif), + ][b] + ]), + (g.LostHeadGif = 8), + (g.LostHeadAttackGif = 9), + (g.getPea = e.getPea), + (g.getFirePea = e.getFirePea), + (g.getFirePeaSputtering = e.getFirePeaSputtering), + (g.getSnowPea = g.getSnowPea), + (g.PlayNormalballAudio = e.PlayNormalballAudio), + (g.PlayFireballAudio = e.PlayFireballAudio), + (g.PlaySlowballAudio = e.PlaySlowballAudio), + (g.getHit = + g.getHit0 = + g.getHit1 = + g.getHit2 = + g.getHit3 = + e.getHit)); + }, + getFireball: function (c, a, b) { + b != c.WalkDirection + ? ((c.FreeSlowTime = 0), + (c.Attack = 100), + c.Speed != c.OSpeed + ? (c.PlayNormalballAudio(), (c.Speed = c.OSpeed)) + : c.PlayFireballAudio()) + : c.PlayNormalballAudio(); + }, + getSputtering: function () {}, + getSlow: function (d, a, c, b, e) { + b != d.WalkDirection || e != -1 + ? CZombies.prototype.getSlow(d, a, c) + : d.PlayNormalballAudio(); + }, + }), + oIScreenDoorZombie = InheritO(oNewspaperZombie, { + EName: "oIScreenDoorZombie", + CName: "Screen Door Zombie", + OrnHP: 1100, + Lvl: 3, + SunNum: 100, + StandGif: 13, + width: 166, + height: 144, + beAttackedPointL: 60, + beAttackedPointR: 116, + PicArr: (function () { + var a = "images/Zombies/ScreenDoorZombie/", + b = "images/Zombies/Zombie/"; + return [ + "images/Card/Zombies/IScreenDoorZombie.png", + a + "0.gif", + a + "HeadWalk1.gif", + a + "HeadAttack1.gif", + a + "LostHeadWalk1.gif", + a + "LostHeadAttack1.gif", + b + "Zombie.gif", + b + "ZombieAttack.gif", + b + "ZombieLostHead.gif", + b + "ZombieLostHeadAttack.gif", + b + "ZombieHead.gif" + $Random, + b + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + PlayNormalballAudio: function () { + PlayAudio("splat" + Math.floor(1 + Math.random() * 3)); + }, + Produce: + '他的铁栅门是有效的盾牌。

韧性:
铁栅门韧性:
弱点:大喷菇和磁力菇

门板僵尸上次拜访过的房主防守并不专业,在吃掉房主的脑子后拿走了他家的铁栅门。', + GoingDie: CZombies.prototype.GoingDie, + getFirePea: function (c, a, b) { + PlayAudio( + b == c.WalkDirection + ? ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + : "splat" + Math.floor(1 + Math.random() * 3) + ); + c.getHit0(c, a, b); + }, + getFirePeaSputtering: function () {}, + getSnowPea: function (c, a, b) { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + c.getHit0(c, a, b); + }, + getPea: function (c, a, b) { + PlayAudio( + b == c.WalkDirection + ? ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + : "splat" + Math.floor(1 + Math.random() * 3) + ); + c.getHit0(c, a, b); + }, + getHit0: function (c, a, b) { + b == c.WalkDirection + ? (c.CheckOrnHP( + c, + c.id, + c.OrnHP, + a, + c.PicArr, + c.isAttacking, + 1 + ), + c.SetAlpha(c, c.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (e, d) { + (d = $Z[e]) && d.SetAlpha(d, d.EleBody, 100, 1); + }, + [c.id] + )) + : (c.HP -= a) < c.BreakPoint && + (c.GoingDie( + c.PicArr[ + [c.LostHeadGif, c.LostHeadAttackGif][c.isAttacking] + ] + ), + (c.getHit = + c.getHit0 = + c.getHit1 = + c.getHit2 = + c.getHit3 = + function () {})); + }, + CheckOrnHP: function (g, h, d, c, f, b, a) { + var e = OrnNoneZombies.prototype; + (g.OrnHP = d -= c) < 1 && + (a && (g.HP += d), + (g.Ornaments = 0), + (g.EleBody.src = + f[ + [ + (g.NormalGif = g.OrnLostNormalGif), + (g.AttackGif = g.OrnLostAttackGif), + ][b] + ]), + (g.LostHeadGif = 8), + (g.LostHeadAttackGif = 9), + (g.getPea = e.getPea), + (g.getFirePea = e.getFirePea), + (g.getFirePeaSputtering = e.getFirePeaSputtering), + (g.getSnowPea = g.getSnowPea), + (g.PlayNormalballAudio = e.PlayNormalballAudio), + (g.PlayFireballAudio = e.PlayFireballAudio), + (g.PlaySlowballAudio = e.PlaySlowballAudio), + (g.getHit = + g.getHit0 = + g.getHit1 = + g.getHit2 = + g.getHit3 = + e.getHit)); + }, + getFireball: function (c, a, b) { + b != c.WalkDirection + ? ((c.FreeSlowTime = 0), + (c.Attack = 100), + c.Speed != c.OSpeed + ? (c.PlayNormalballAudio(), (c.Speed = c.OSpeed)) + : c.PlayFireballAudio()) + : c.PlayNormalballAudio(); + }, + getSputtering: function () {}, + getSlow: function (d, a, c, b, e) { + b != d.WalkDirection || e != -1 + ? CZombies.prototype.getSlow(d, a, c) + : d.PlayNormalballAudio(); + }, + }), + oTrashZombie = InheritO(oScreenDoorZombie, { + EName: "oTrashZombie", + CName: "Trash Can Zombie", + PicArr: (function () { + var a = "images/Zombies/TrashZombie/", + b = "images/Zombies/Zombie/"; + return [ + "images/Card/Zombies/TrashZombie.png", + a + "0.gif", + a + "HeadWalk1.gif", + a + "HeadAttack1.gif", + a + "LostHeadWalk1.gif", + a + "LostHeadAttack1.gif", + b + "Zombie.gif", + b + "ZombieAttack.gif", + b + "ZombieLostHead.gif", + b + "ZombieLostHeadAttack.gif", + b + "ZombieHead.gif" + $Random, + b + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + Produce: + "出没于常青之塔的神秘僵尸。

有这样一个故事:老人买了房子,不久便有、个年轻人在附近踢垃圾桶玩。 老人受不了这些噪音,于是和年轻人说“你每天都来踢垃圾桶,我给你一块钱。”年轻人很高兴,踹起了垃圾桶。三天后,老人说:“因为通货膨胀,明天起我只能给你5毛钱。“年轻人不大开心,但还是接受了。下午,他继续去踹垃圾桶。五天后,老人对他说:“最近没有收到养老金,只能给两毛了。”“两毛钱?”年轻人发起了火,之后便再没来踹垃圾桶了 ", + }), + oAquaticZombie = InheritO(OrnNoneZombies, { + StandGif: 4, + AttackGif: 5, + HeadGif: 6, + DieGif: 7, + WalkGif0: 2, + WalkGif1: 3, + CanPass: function (b, a) { + return a == 2; + }, + BirthCallBack: function (g) { + var e = g.delayT, + c = g.id, + b = (g.Ele = $(c)), + d = g.AttackedLX, + f, + a, + h; + f = g.EleShadow = b.firstChild; + g.EleBody = b.childNodes[1]; + switch (true) { + case d > GetX(9): + g.ChkActs = g.ChkActsL1; + g.WalkStatus = 0; + break; + case d < GetX(0): + g.ChkActs = g.ChkActsL3; + g.WalkStatus = 0; + break; + default: + g.ChkActs = g.ChkActsL2; + g.WalkStatus = 1; + g.EleBody.src = g.PicArr[(g.NormalGif = g.WalkGif1)]; + SetHidden(f); + NewEle( + (a = c + "_splash"), + "div", + "position:absolute;background:url(images/interface/splash.png);left:61px;top:" + + (g.height - 88) + + "px;width:97px;height:88px;over-flow:hidden", + 0, + b + ); + ImgSpriter( + a, + c, + [ + ["0 0", 9, 1], + ["-97px 0", 9, 2], + ["-194px 0", 9, 3], + ["-291px 0", 9, 4], + ["-388px 0", 9, 5], + ["-485px 0", 9, 6], + ["-582px 0", 9, 7], + ["-679px 0", 9, -1], + ], + 0, + function (i, j) { + ClearChild($(i)); + } + ); + } + e + ? oSym.addTask( + e, + function (j, i) { + var k = $Z[j]; + k && ((k.FreeSetbodyTime = 0), SetBlock(i)); + }, + [c, b] + ) + : SetBlock(b); + }, + ChkActsL1: function (f, e, g, d) { + var c, + a, + b = f.id; + !(f.FreeFreezeTime || f.FreeSetbodyTime) && + ((f.AttackedRX -= c = f.Speed), + (LX = f.ZX = f.AttackedLX -= c), + (f.Ele.style.left = Math.floor((f.X -= c)) + "px")); + f.AttackedLX < GetX(9) && + (PlayAudio("zombie_entering_water"), + (f.WalkStatus = 1), + (f.EleBody.src = f.PicArr[(f.NormalGif = f.WalkGif1)]), + SetHidden(f.EleShadow), + NewEle( + (a = b + "_splash"), + "div", + "position:absolute;background:url(images/interface/splash.png);left:61px;top:" + + (f.height - 88) + + "px;width:97px;height:88px;over-flow:hidden", + 0, + f.Ele + ), + (f.ChkActs = f.ChkActsL2), + ImgSpriter( + a, + b, + [ + ["0 0", 9, 1], + ["-97px 0", 9, 2], + ["-194px 0", 9, 3], + ["-291px 0", 9, 4], + ["-388px 0", 9, 5], + ["-485px 0", 9, 6], + ["-582px 0", 9, 7], + ["-679px 0", 9, -1], + ], + 0, + function (h, i) { + ClearChild($(h)); + } + )); + return 1; + }, + ChkActsL2: function (d, c, e, b) { + var a; + !(d.FreeFreezeTime || d.FreeSetbodyTime) && + (d.beAttacked && !d.isAttacking && d.JudgeAttack(), + !d.isAttacking && + ((d.AttackedRX -= a = d.Speed), + (d.ZX = d.AttackedLX -= a), + (d.Ele.style.left = Math.floor((d.X -= a)) + "px"))); + d.AttackedLX < GetX(0) && + ((d.WalkStatus = 0), + (d.EleBody.src = d.PicArr[(d.NormalGif = d.WalkGif0)]), + SetVisible(d.EleShadow), + (d.ChkActs = d.ChkActsL3)); + return 1; + }, + ChkActsL3: CZombies.prototype.ChkActs, + ChkActs1: function (d, c, e, b) { + var a; + !(d.FreeFreezeTime || d.FreeSetbodyTime) && + (d.beAttacked && !d.isAttacking && d.JudgeAttack(), + !d.isAttacking && + ((d.AttackedLX += a = d.Speed), + (d.ZX = d.AttackedRX += a), + (d.Ele.style.left = Math.ceil((d.X += a)) + "px"))); + d.AttackedLX > GetX(9) && + ((d.WalkStatus = 0), + (d.EleBody.src = d.PicArr[(d.NormalGif = d.WalkGif0)]), + SetVisible(d.EleShadow), + (d.ChkActs = d.ChkActs2)); + return 1; + }, + ChkActs2: function (e, c, f, b) { + var a, d; + !(e.FreeFreezeTime || e.FreeSetbodyTime) + ? (e.beAttacked && !e.isAttacking && e.JudgeAttack(), + !e.isAttacking + ? (e.AttackedLX += a = e.Speed) > oS.W + ? (f.splice(b, 1), e.DisappearDie(), (d = 0)) + : ((e.ZX = e.AttackedRX += a), + (e.Ele.style.left = Math.ceil((e.X += a)) + "px"), + (d = 1)) + : (d = 1)) + : (d = 1); + return d; + }, + ExchangeLR: function (d, b) { + var c = d.width, + f = d.beAttackedPointL, + a = d.beAttackedPointR, + e = d.Ele; + e.style.left = + (d.X = d.AttackedLX - (d.beAttackedPointL = c - a)) + "px"; + d.beAttackedPointR = c - f; + d.EleShadow.style.cssText = + "visibility:hidden;left:" + + (d.beAttackedPointL - 10) + + "px;top:" + + (d.height - 22) + + "px"; + d.ExchangeLR2(d, d.EleBody, b); + }, + GoingDie: function () { + var b = this, + c = b.id, + a = b.PicArr; + b.EleBody.src = a[7] + Math.random(); + b.GoingDieHead(c, a, b); + b.beAttacked = 0; + b.FreeFreezeTime = b.FreeSetbodyTime = b.FreeSlowTime = 0; + b.AutoReduceHP(c); + }, + AutoReduceHP: function (a) { + oSym.addTask( + 100, + function (c) { + var b = $Z[c]; + b && + ((b.HP -= 60) < 1 + ? (b.NormalDie(), + oSym.addTask(50, ClearChild, [b.Ele])) + : oSym.addTask(100, arguments.callee, [c])); + }, + [a] + ); + }, + ExplosionDie: function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + DisappearDie: function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + NormalDie: function () { + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + }), + oDuckyTubeZombie1 = InheritO(oAquaticZombie, { + EName: "oDuckyTubeZombie1", + CName: "Ducky Tube Zombie", + beAttackedPointR: 130, + GetDY: function () { + return 5; + }, + Produce: + '鸭子救生圈能让僵尸能浮在水面上。

韧性:
只在水池Level出现

只有特定的僵尸才能成为救生圈僵尸。并不是每个僵尸都能胜任的。有些救生圈有点漏气,但他们没能注意到,所以他们离开并放弃了对脑子的渴求。', + PicArr: (function () { + var a = "images/Zombies/DuckyTubeZombie1/"; + return [ + "images/Card/Zombies/DuckyTubeZombie1.png", + a + "0.gif", + a + "Walk1.gif", + a + "Walk2.gif", + a + "1.gif", + a + "Attack.gif", + a + "ZombieHead.gif" + $Random, + a + "Die.gif" + $Random, + ]; + })(), + AudioArr: ["zombie_entering_water"], + }), + oIDuckyTubeZombie1 = InheritO(oAquaticZombie, { + EName: "oIDuckyTubeZombie1", + CName: "Ducky Tube Zombie", + beAttackedPointR: 130, + GetDY: function () { + return 5; + }, + Produce: + '鸭子救生圈能让僵尸能浮在水面上。

韧性:
只在水池Level出现

只有特定的僵尸才能成为救生圈僵尸。并不是每个僵尸都能胜任的。有些救生圈有点漏气,但他们没能注意到,所以他们离开并放弃了对脑子的渴求。', + PicArr: (function () { + var a = "images/Zombies/DuckyTubeZombie1/"; + return [ + "images/Card/Zombies/IDuckyTubeZombie1.png", + a + "Walk2.gif", + a + "Walk1.gif", + a + "Walk2.gif", + a + "Walk2.gif", + a + "Attack.gif", + a + "ZombieHead.gif" + $Random, + a + "Die.gif" + $Random, + ]; + })(), + AudioArr: ["zombie_entering_water"], + }), + oWarshipsZombie = InheritO(oDuckyTubeZombie1, { + EName: "oWarshipsZombie", + CName: "Warships Zombie", + HP: "5000", + OSpeed: 0.1, + Speed: 0.1, + width: 464, + height: 364, + beAttackedPointL: 140, + beAttackedPointR: 290, + Attack: 550, + BookHandBack: 4.9, + getShadow: function (a) { + return "display:none"; + }, + Produce: + '通常在最后一波时出现于池塘里。

韧性:极高
只在水池Level出现

你一定很好奇军舰上的三只僵尸藏在水里是什么滋味,他们眼睁睁看着一只只同伴坠入海水生出,不过这些都不重要:“脑子!”。', + PicArr: (function () { + var a = "images/Zombies/WarshipsZombie/"; + return [ + "images/Card/Zombies/WarshipsZombie.png", + a + "0.gif", + a + "Walk1.gif", + a + "Walk2.gif", + a + "1.gif", + a + "Attack.gif", + a + "ZombieHead.gif" + $Random, + a + "Die.gif" + $Random, + ]; + })(), + }), + oDuckyTubeZombie2 = InheritO(oDuckyTubeZombie1, { + EName: "oDuckyTubeZombie2", + CName: "Ducky Tube Conehead Zombie", + OrnHP: 370, + Lvl: 2, + SunNum: 75, + CanDisplay: 0, + OrnLostNormalGif: 9, + OrnLostAttackGif: 10, + PlayNormalballAudio: function () { + PlayAudio("plastichit"); + }, + PicArr: (function () { + var b = "images/Zombies/DuckyTubeZombie2/", + a = "images/Zombies/DuckyTubeZombie1/"; + return [ + "images/Card/Zombies/DuckyTubeZombie1.png", + b + "0.gif", + b + "Walk1.gif", + b + "Walk2.gif", + b + "1.gif", + b + "Attack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + $Random, + a + "Die.gif" + $Random, + a + "Walk1.gif", + a + "Walk2.gif", + a + "Attack.gif", + ]; + })(), + AudioArr: ["plastichit", "zombie_entering_water"], + getHit: OrnIZombies.prototype.getHit, + getHit0: OrnIZombies.prototype.getHit0, + getHit1: OrnIZombies.prototype.getHit1, + getHit2: OrnIZombies.prototype.getHit2, + getHit3: OrnIZombies.prototype.getHit3, + }), + oIDuckyTubeZombie2 = InheritO(oDuckyTubeZombie1, { + EName: "oIDuckyTubeZombie2", + CName: "Ducky Tube Conehead Zombie", + OrnHP: 370, + Lvl: 2, + SunNum: 75, + CanDisplay: 0, + OrnLostNormalGif: 9, + OrnLostAttackGif: 10, + PlayNormalballAudio: function () { + PlayAudio("plastichit"); + }, + PicArr: (function () { + var b = "images/Zombies/DuckyTubeZombie2/", + a = "images/Zombies/DuckyTubeZombie1/"; + return [ + "images/Card/Zombies/IDuckyTubeZombie2.png", + b + "Walk2.gif", + b + "Walk1.gif", + b + "Walk2.gif", + b + "Walk2.gif", + b + "Attack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + $Random, + a + "Die.gif" + $Random, + a + "Walk1.gif", + a + "Walk2.gif", + a + "Attack.gif", + ]; + })(), + AudioArr: ["plastichit", "zombie_entering_water"], + getHit: OrnIZombies.prototype.getHit, + getHit0: OrnIZombies.prototype.getHit0, + getHit1: OrnIZombies.prototype.getHit1, + getHit2: OrnIZombies.prototype.getHit2, + getHit3: OrnIZombies.prototype.getHit3, + }), + oDuckyTubeZombie3 = InheritO(oDuckyTubeZombie2, { + EName: "oDuckyTubeZombie3", + CName: "Ducky Tube Buckethead Zombie", + OrnHP: 1100, + Lvl: 3, + SunNum: 125, + PlayNormalballAudio: function () { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + }, + AudioArr: ["shieldhit", "shieldhit2", "zombie_entering_water"], + PicArr: (function () { + var b = "images/Zombies/DuckyTubeZombie3/", + a = "images/Zombies/DuckyTubeZombie1/"; + return [ + "images/Card/Zombies/DuckyTubeZombie1.png", + b + "0.gif", + b + "Walk1.gif", + b + "Walk2.gif", + b + "1.gif", + b + "Attack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + $Random, + a + "Die.gif" + $Random, + a + "Walk1.gif", + a + "Walk2.gif", + a + "Attack.gif", + ]; + })(), + }), + oIDuckyTubeZombie3 = InheritO(oDuckyTubeZombie2, { + EName: "oIDuckyTubeZombie3", + CName: "Ducky Tube Buckethead Zombie", + OrnHP: 1100, + Lvl: 3, + SunNum: 125, + PlayNormalballAudio: function () { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + }, + AudioArr: ["shieldhit", "shieldhit2", "zombie_entering_water"], + PicArr: (function () { + var b = "images/Zombies/DuckyTubeZombie3/", + a = "images/Zombies/DuckyTubeZombie1/"; + return [ + "images/Card/Zombies/IDuckyTubeZombie3.png", + b + "Walk2.gif", + b + "Walk1.gif", + b + "Walk2.gif", + b + "Walk2.gif", + b + "Attack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + $Random, + a + "Die.gif" + $Random, + a + "Walk1.gif", + a + "Walk2.gif", + a + "Attack.gif", + ]; + })(), + }), + oDuckyTubeZombie4 = InheritO(oDuckyTubeZombie3, { + EName: "oDuckyTubeZombie4", + CName: "Ducky Tube Screen Door Zombie", + PicArr: (function () { + var b = "images/Zombies/DuckyTubeZombie4/", + a = "images/Zombies/DuckyTubeZombie1/"; + return [ + "images/Card/Zombies/DuckyTubeZombie1.png", + b + "0.gif", + b + "Walk1.gif", + b + "Walk2.gif", + b + "1.gif", + b + "Attack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + $Random, + a + "Die.gif" + $Random, + a + "Walk1.gif", + a + "Walk2.gif", + a + "Attack.gif", + ]; + })(), + getHit: OrnIIZombies.prototype.getHit, + getHit0: oScreenDoorZombie.prototype.getHit0, + getHit1: OrnIIZombies.prototype.getHit1, + getHit2: OrnIIZombies.prototype.getHit2, + getHit3: OrnIIZombies.prototype.getHit3, + getSnowPea: oScreenDoorZombie.prototype.getSnowPea, + CheckOrnHP: oScreenDoorZombie.prototype.CheckOrnHP, + }), + oAquaticZombie = InheritO(OrnNoneZombies, { + StandGif: 4, + AttackGif: 5, + HeadGif: 6, + DieGif: 7, + WalkGif0: 2, + WalkGif1: 3, + CanPass: function (b, a) { + return a == 2; + }, + BirthCallBack: function (g) { + var e = g.delayT, + c = g.id, + b = (g.Ele = $(c)), + d = g.AttackedLX, + f, + a, + h; + f = g.EleShadow = b.firstChild; + g.EleBody = b.childNodes[1]; + switch (true) { + case d > GetX(9): + g.ChkActs = g.ChkActsL1; + g.WalkStatus = 0; + break; + case d < GetX(0): + g.ChkActs = g.ChkActsL3; + g.WalkStatus = 0; + break; + default: + g.ChkActs = g.ChkActsL2; + g.WalkStatus = 1; + g.EleBody.src = g.PicArr[(g.NormalGif = g.WalkGif1)]; + SetHidden(f); + NewEle( + (a = c + "_splash"), + "div", + "position:absolute;background:url(images/interface/splash.png);left:61px;top:" + + (g.height - 88) + + "px;width:97px;height:88px;over-flow:hidden", + 0, + b + ); + ImgSpriter( + a, + c, + [ + ["0 0", 9, 1], + ["-97px 0", 9, 2], + ["-194px 0", 9, 3], + ["-291px 0", 9, 4], + ["-388px 0", 9, 5], + ["-485px 0", 9, 6], + ["-582px 0", 9, 7], + ["-679px 0", 9, -1], + ], + 0, + function (i, j) { + ClearChild($(i)); + } + ); + } + e + ? oSym.addTask( + e, + function (j, i) { + var k = $Z[j]; + k && ((k.FreeSetbodyTime = 0), SetBlock(i)); + }, + [c, b] + ) + : SetBlock(b); + }, + ChkActsL1: function (f, e, g, d) { + var c, + a, + b = f.id; + !(f.FreeFreezeTime || f.FreeSetbodyTime) && + ((f.AttackedRX -= c = f.Speed), + (LX = f.ZX = f.AttackedLX -= c), + (f.Ele.style.left = Math.floor((f.X -= c)) + "px")); + f.AttackedLX < GetX(9) && + (PlayAudio("zombie_entering_water"), + (f.WalkStatus = 1), + (f.EleBody.src = f.PicArr[(f.NormalGif = f.WalkGif1)]), + SetHidden(f.EleShadow), + NewEle( + (a = b + "_splash"), + "div", + "position:absolute;background:url(images/interface/splash.png);left:61px;top:" + + (f.height - 88) + + "px;width:97px;height:88px;over-flow:hidden", + 0, + f.Ele + ), + (f.ChkActs = f.ChkActsL2), + ImgSpriter( + a, + b, + [ + ["0 0", 9, 1], + ["-97px 0", 9, 2], + ["-194px 0", 9, 3], + ["-291px 0", 9, 4], + ["-388px 0", 9, 5], + ["-485px 0", 9, 6], + ["-582px 0", 9, 7], + ["-679px 0", 9, -1], + ], + 0, + function (h, i) { + ClearChild($(h)); + } + )); + return 1; + }, + ChkActsL2: function (d, c, e, b) { + var a; + !(d.FreeFreezeTime || d.FreeSetbodyTime) && + (d.beAttacked && !d.isAttacking && d.JudgeAttack(), + !d.isAttacking && + ((d.AttackedRX -= a = d.Speed), + (d.ZX = d.AttackedLX -= a), + (d.Ele.style.left = Math.floor((d.X -= a)) + "px"))); + d.AttackedLX < GetX(0) && + ((d.WalkStatus = 0), + (d.EleBody.src = d.PicArr[(d.NormalGif = d.WalkGif0)]), + SetVisible(d.EleShadow), + (d.ChkActs = d.ChkActsL3)); + return 1; + }, + ChkActsL3: CZombies.prototype.ChkActs, + ChkActs1: function (d, c, e, b) { + var a; + !(d.FreeFreezeTime || d.FreeSetbodyTime) && + (d.beAttacked && !d.isAttacking && d.JudgeAttack(), + !d.isAttacking && + ((d.AttackedLX += a = d.Speed), + (d.ZX = d.AttackedRX += a), + (d.Ele.style.left = Math.ceil((d.X += a)) + "px"))); + d.AttackedLX > GetX(9) && + ((d.WalkStatus = 0), + (d.EleBody.src = d.PicArr[(d.NormalGif = d.WalkGif0)]), + SetVisible(d.EleShadow), + (d.ChkActs = d.ChkActs2)); + return 1; + }, + ChkActs2: function (e, c, f, b) { + var a, d; + !(e.FreeFreezeTime || e.FreeSetbodyTime) + ? (e.beAttacked && !e.isAttacking && e.JudgeAttack(), + !e.isAttacking + ? (e.AttackedLX += a = e.Speed) > oS.W + ? (f.splice(b, 1), e.DisappearDie(), (d = 0)) + : ((e.ZX = e.AttackedRX += a), + (e.Ele.style.left = Math.ceil((e.X += a)) + "px"), + (d = 1)) + : (d = 1)) + : (d = 1); + return d; + }, + ExchangeLR: function (d, b) { + var c = d.width, + f = d.beAttackedPointL, + a = d.beAttackedPointR, + e = d.Ele; + e.style.left = + (d.X = d.AttackedLX - (d.beAttackedPointL = c - a)) + "px"; + d.beAttackedPointR = c - f; + d.EleShadow.style.cssText = + "visibility:hidden;left:" + + (d.beAttackedPointL - 10) + + "px;top:" + + (d.height - 22) + + "px"; + d.ExchangeLR2(d, d.EleBody, b); + }, + GoingDie: function () { + var b = this, + c = b.id, + a = b.PicArr; + b.EleBody.src = a[7] + Math.random(); + b.GoingDieHead(c, a, b); + b.beAttacked = 0; + b.FreeFreezeTime = b.FreeSetbodyTime = b.FreeSlowTime = 0; + b.AutoReduceHP(c); + }, + AutoReduceHP: function (a) { + oSym.addTask( + 100, + function (c) { + var b = $Z[c]; + b && + ((b.HP -= 60) < 1 + ? (b.NormalDie(), + oSym.addTask(50, ClearChild, [b.Ele])) + : oSym.addTask(100, arguments.callee, [c])); + }, + [a] + ); + }, + ExplosionDie: function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + DisappearDie: function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + NormalDie: function () { + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + }), + oSnorkelZombie = InheritO(oDuckyTubeZombie1, { + EName: "oSnorkelZombie", + CName: "Snorkel Zombie", + Lvl: 1, + SunNum: 75, + width: 143, + height: 200, + beAttackedPointL: 40, + beAttackedPointR: 100, + OSpeed: 3.2, + Speed: 3.2, + Altitude: 1, + BirthCallBack: function (g) { + var e = g.delayT, + c = g.id, + b = (g.Ele = $(c)), + d = g.AttackedLX, + f, + a, + h; + f = g.EleShadow = b.firstChild; + g.EleBody = b.childNodes[1]; + switch (true) { + case d > GetX(9): + g.ChkActs = g.ChkActsL1; + g.WalkStatus = 0; + break; + case d < GetX(0): + g.ChkActs = g.ChkActsL3; + g.WalkStatus = 0; + break; + default: + g.ChkActs = g.ChkActsL2; + g.WalkStatus = 1; + g.EleBody.src = g.PicArr[(g.NormalGif = g.WalkGif1)]; + SetHidden(f); + NewEle( + (a = c + "_splash"), + "div", + "position:absolute;background:url(images/interface/splash.png);left:61px;top:" + + (g.height - 88) + + "px;width:97px;height:88px;over-flow:hidden", + 0, + b + ); + ImgSpriter( + a, + c, + [ + ["0 0", 9, 1], + ["-97px 0", 9, 2], + ["-194px 0", 9, 3], + ["-291px 0", 9, 4], + ["-388px 0", 9, 5], + ["-485px 0", 9, 6], + ["-582px 0", 9, 7], + ["-679px 0", 9, -1], + ], + 0, + function (i, j) { + ClearChild($(i)); + } + ); + } + e + ? oSym.addTask( + e, + function (j, i) { + var k = $Z[j]; + k && ((k.FreeSetbodyTime = 0), SetBlock(i)); + }, + [c, b] + ) + : SetBlock(b); + }, + Produce: + '潜水僵尸可以在水下前行。

韧性:
特点:潜泳以避免遭到攻击
只在水池Level出现

僵尸不呼吸。他们不需要空气。那么为什么潜水僵尸需要一套潜水装置来潜水呢?
答案:同行的压力。', + JumpTime: 40, + getShadow: function (a) { + return ( + "left:" + + a.beAttackedPointL + + "px;top:" + + (a.height - 45) + + "px" + ); + }, + PicArr: (function () { + var a = "images/Zombies/SnorkelZombie/"; + return [ + "images/Card/Zombies/SnorkelZombie.png", + a + "0.gif", + a + "Walk1.gif", + a + "Walk2.gif", + a + "1.gif", + a + "Attack.gif", + a + "Head.gif" + $Random, + a + "Die.gif" + $Random, + a + "Jump.gif" + $Random, + a + "Risk.gif" + $Random, + a + "Sink.gif" + $Random, + ]; + })(), + AudioArr: ["zombie_entering_water"], + Jump: function (a) { + a.beAttacked && + (PlayAudio("zombie_entering_water"), + (a.Altitude = 2), + SetHidden(a.EleShadow), + (a.EleBody.src = a.PicArr[8] + Math.random()), + oSym.addTask( + 160, + function (c, b) { + $Z[c] && + b.beAttacked && + ((b.WalkStatus = 1), + (b.Altitude = 0), + (b.OSpeed = b.Speed = 2), + (b.EleBody.src = + b.PicArr[(b.NormalGif = b.WalkGif1)]), + (b.ChkActs = b.ChkActsL2)); + }, + [a.id, a] + ), + (a.ChkActs = function () { + return 1; + })); + }, + ChkActsL1: function (d, c, e, b) { + if (d.JumpTime <= 0) { + d.Jump(d); + return 1; + } + var a; + !(d.FreeFreezeTime || d.FreeSetbodyTime) && + ((d.AttackedRX -= a = d.Speed), + (LX = d.ZX = d.AttackedLX -= a), + (d.Ele.style.left = Math.floor((d.X -= a)) + "px"), + --d.JumpTime); + return 1; + }, + ChkActsL2: function (d, c, e, b) { + var a; + !(d.FreeFreezeTime || d.FreeSetbodyTime) && + (d.AttackedLX > GetX(0) + ? (d.beAttacked && !d.isAttacking && d.JudgeAttack(), + !d.isAttacking && + ((d.AttackedRX -= a = d.Speed), + (d.ZX = d.AttackedLX -= a), + (d.Ele.style.left = Math.floor((d.X -= a)) + "px"))) + : d.beAttacked && + ((d.WalkStatus = 0), + (d.Altitude = 1), + (d.EleBody.src = d.PicArr[(d.NormalGif = d.WalkGif0)]), + SetVisible(d.EleShadow), + (d.ChkActs = d.ChkActsL3))); + return 1; + }, + JudgeAttack: function () { + var e = this, + b = e.ZX, + c = e.R + "_", + d = GetC(b), + g = oGd.$, + a, + f = e.id; + (a = e.JudgeLR(e, c, d, b, g) || e.JudgeSR(e, c, d, b, g)) + ? !e.isAttacking + ? ((e.isAttacking = 1), + (e.EleBody.src = e.PicArr[9] + Math.random()), + oSym.addTask( + 50, + function (i, h) { + $Z[i] && + h.beAttacked && + ((h.EleBody.src = h.PicArr[h.AttackGif]), + (h.Altitude = 1), + h.NormalAttack(a[0], a[1])); + }, + [f, e] + )) + : e.NormalAttack(a[0], a[1]) + : e.isAttacking && + ((e.EleBody.src = e.PicArr[10] + Math.random()), + (e.Altitude = 0), + oSym.addTask( + 70, + function (i, h) { + $Z[i] && + h.beAttacked && + ((h.isAttacking = 0), + (h.EleBody.src = h.PicArr[h.NormalGif])); + }, + [f, e] + )); + }, + NormalAttack: function (b, a) { + oSym.addTask( + 100, + function (d, c) { + var f = $Z[d], + e; + f && + f.beAttacked && + !f.FreeFreezeTime && + !f.FreeSetbodyTime && + ((e = $P[c]) && e.getHurt(f, 0, 100), f.JudgeAttack()); + }, + [b, a] + ); + }, + JudgeAttackH: function () { + var c = this, + b = oZ.getZ0(c.ZX, c.R), + d = c.id, + a; + b && b.beAttacked && b.AttackedLX < 900 && b.Altitude < 2 + ? !c.isAttacking + ? ((c.isAttacking = 1), + (c.EleBody.src = c.PicArr[9] + Math.random()), + (a = b.id), + !b.isAttacking && b.AttackZombie2(b, a, d), + oSym.addTask( + 50, + function (g, h, f, e) { + $Z[h] && + g.beAttacked && + ($Z[e] && f.beAttacked + ? ((g.EleBody.src = + g.PicArr[g.AttackGif]), + (g.Altitude = 1), + g.AttackZombie(h, e)) + : g.JudgeAttackH()); + }, + [c, d, b, a] + )) + : c.AttackZombie(d, a) + : c.isAttacking && + ((c.EleBody.src = c.PicArr[10] + Math.random()), + (c.Altitude = 0), + oSym.addTask( + 70, + function (f, e) { + $Z[f] && + e.beAttacked && + ((e.isAttacking = 0), + (e.EleBody.src = e.PicArr[e.NormalGif])); + }, + [d, c] + )); + }, + AttackZombie2: function (c, b, a) { + c.isAttacking = 1; + c.EleBody.src = c.PicArr[9] + Math.random(); + oSym.addTask( + 50, + function (g, e, d, f) { + $Z[e] && + g.beAttacked && + ((f = $Z[d]) && f.beAttacked + ? ((g.EleBody.src = g.PicArr[g.AttackGif]), + (g.Altitude = 1), + oSym.addTask( + 10, + function (k, i, j, h) { + $Z[i] && + k.beAttacked && + !k.FreeFreezeTime && + !k.FreeSetbodyTime && + ($Z[h] && j.beAttacked + ? (j.getHit0(j, 10, 0), + oSym.addTask( + 10, + arguments.callee, + [k, i, j, h] + )) + : ((k.EleBody.src = + k.PicArr[10] + + Math.random()), + (k.Altitude = 0), + oSym.addTask( + 70, + function (l, m) { + $Z[l] && + m.beAttacked && + ((m.isAttacking = 0), + (m.EleBody.src = + m.PicArr[ + m.NormalGif + ])); + }, + [i, k] + ))); + }, + [g, e, f, d] + )) + : ((g.EleBody.src = g.PicArr[10] + Math.random()), + (g.Altitude = 0), + oSym.addTask( + 70, + function (h, i) { + $Z[h] && + i.beAttacked && + ((i.isAttacking = 0), + (i.EleBody.src = + i.PicArr[i.NormalGif])); + }, + [e, g] + ))); + }, + [c, b, a] + ); + }, + AutoReduceHP: function (a) { + oSym.addTask( + 100, + function (c) { + var b = $Z[c]; + b && + ((b.HP -= 60) < 1 + ? (b.NormalDie(), + oSym.addTask(200, ClearChild, [b.Ele])) + : oSym.addTask(100, arguments.callee, [c])); + }, + [a] + ); + }, + }), + oCSnorkelZombie = InheritO(oSnorkelZombie, {}), + oSubZombie = InheritO(oSnorkelZombie, { + EName: "oSubZombie", + CName: "Submarine Zombie", + HP: "450", + OSpeed: 0.9, + Speed: 0.9, + width: 464, + height: 364, + beAttackedPointL: 140, + beAttackedPointR: 290, + BookHandBack: 4.9, + Produce: + '强劲有力的机械潜水艇,可以在水中躲过大多数攻击。

韧性:极高
特点:潜入水底以避免遭到攻击
只在水池Level出现

这是由作者僵尸亲自打造的无敌潜水艇,不要妄想击碎他,他的猛烈进攻,只会让你的植物死得更快!。', + PicArr: (function () { + var a = "images/Zombies/SubZombie/"; + return [ + "images/Card/Zombies/SubZombie.png", + a + "0.gif", + a + "Walk1.gif", + a + "Walk2.gif", + a + "1.gif", + a + "Attack.gif", + a + "Head.gif" + $Random, + a + "Die.gif" + $Random, + a + "Jump.gif" + $Random, + a + "Risk.gif" + $Random, + a + "Sink.gif" + $Random, + ]; + })(), + }), + oSmallZombie = InheritO(oZombie, { + EName: "oSmallZombie", + CName: "Small Zombie", + HP: 67, + width: 83, + height: 72, + beAttackedPointL: 41, + beAttackedPointR: 78, + BreakPoint: 25, + Init: function (e, g, c, b) { + var a = 0, + f = this, + d = []; + g.AttackedRX = + (g.X = (g.ZX = g.AttackedLX = e) - g.beAttackedPointL) + + g.beAttackedPointR; + while (--b) { + g.CanPass(b, c[b]) && (d[a++] = b); + } + g.ArR = d; + g.ArHTML = [ + '
', + ]; + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "width:75px;height:93px;left:" + + b.AttackedLX + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + getShadow: function (a) { + return ( + "width:43px;height:18px;left:" + + (a.beAttackedPointL - 5) + + "px;top:" + + (a.height - 15) + + "px" + ); + }, + }), + oSmallFlagZombie = InheritO(oFlagZombie, { + EName: "oSmallFlagZombie", + CName: "Small Flag Zombie", + HP: 67, + width: 83, + height: 72, + beAttackedPointL: 41, + beAttackedPointR: 78, + BreakPoint: 25, + Init: function (e, g, c, b) { + var a = 0, + f = this, + d = []; + g.AttackedRX = + (g.X = (g.ZX = g.AttackedLX = e) - g.beAttackedPointL) + + g.beAttackedPointR; + while (--b) { + g.CanPass(b, c[b]) && (d[a++] = b); + } + g.ArR = d; + g.ArHTML = [ + '
', + ]; + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "width:75px;height:93px;left:" + + b.AttackedLX + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + getShadow: function (a) { + return ( + "width:43px;height:18px;left:" + + (a.beAttackedPointL - 5) + + "px;top:" + + (a.height - 15) + + "px" + ); + }, + }), + oSmallDuckyTubeZombie1 = InheritO(oDuckyTubeZombie1, { + EName: "oSmallDuckyTubeZombie1", + CName: "小鸭子救生圈僵尸", + HP: 67, + width: 83, + height: 72, + beAttackedPointL: 41, + beAttackedPointR: 73, + BreakPoint: 25, + Init: function (e, g, c, b) { + var a = 0, + f = this, + d = []; + g.AttackedRX = + (g.X = (g.ZX = g.AttackedLX = e) - g.beAttackedPointL) + + g.beAttackedPointR; + while (--b) { + g.CanPass(b, c[b]) && (d[a++] = b); + } + g.ArR = d; + g.ArHTML = [ + '
', + ]; + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "width:75px;height:93px;left:" + + b.AttackedLX + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + getShadow: function (a) { + return ( + "width:43px;height:18px;left:" + + (a.beAttackedPointL - 5) + + "px;top:" + + (a.height - 15) + + "px" + ); + }, + }), + oSmallConeheadZombie = InheritO(oConeheadZombie, { + EName: "oSmallConeheadZombie", + CName: "Small Conehead Zombie", + OrnHP: 92, + HP: 67, + width: 83, + height: 72, + beAttackedPointL: 41, + beAttackedPointR: 78, + BreakPoint: 25, + Init: function (e, g, c, b) { + var a = 0, + f = this, + d = []; + g.AttackedRX = + (g.X = (g.ZX = g.AttackedLX = e) - g.beAttackedPointL) + + g.beAttackedPointR; + while (--b) { + g.CanPass(b, c[b]) && (d[a++] = b); + } + g.ArR = d; + g.ArHTML = [ + '
', + ]; + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "width:75px;height:93px;left:" + + b.AttackedLX + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + getShadow: function (a) { + return ( + "width:43px;height:18px;left:" + + (a.beAttackedPointL - 5) + + "px;top:" + + (a.height - 15) + + "px" + ); + }, + }), + oSmallFootballZombie = InheritO(oFootballZombie, { + EName: "oSmallFootballZombie", + CName: "小橄榄球僵尸", + OrnHP: 350, + HP: 67, + width: 77, + height: 80, + beAttackedPointL: 20, + beAttackedPointR: 77, + BreakPoint: 25, + Init: function (e, g, c, b) { + var a = 0, + f = this, + d = []; + g.AttackedRX = + (g.X = (g.ZX = g.AttackedLX = e) - g.beAttackedPointL) + + g.beAttackedPointR; + while (--b) { + g.CanPass(b, c[b]) && (d[a++] = b); + } + g.ArR = d; + g.ArHTML = [ + '
', + ]; + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "width:75px;height:93px;left:" + + b.AttackedLX + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + getShadow: function (a) { + return ( + "width:43px;height:18px;left:" + + (a.beAttackedPointL + 15) + + "px;top:" + + (a.height - 22) + + "px" + ); + }, + }), + oSmallSnorkelZombie = InheritO(oSnorkelZombie, { + EName: "oSmallSnorkelZombie", + CName: "小潜水僵尸", + HP: 67, + width: 71, + height: 100, + beAttackedPointL: 20, + beAttackedPointR: 50, + BreakPoint: 25, + Init: function (e, g, c, b) { + var a = 0, + f = this, + d = []; + g.AttackedRX = + (g.X = (g.ZX = g.AttackedLX = e) - g.beAttackedPointL) + + g.beAttackedPointR; + while (--b) { + g.CanPass(b, c[b]) && (d[a++] = b); + } + g.ArR = d; + g.ArHTML = [ + '
', + ]; + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "width:71px;height:105px;left:" + + b.AttackedLX + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + getShadow: function (a) { + return ( + "width:43px;height:18px;left:" + + a.beAttackedPointL + + "px;top:" + + (a.height - 45) + + "px" + ); + }, + }), + oZomboni = (function () { + var a = function (d, b) { + var c = d.HP; + switch (true) { + case (d.HP = c -= b) < 200: + d.GoingDie(); + d.getHit0 = + d.getHit1 = + d.getHit2 = + d.getHit3 = + function () {}; + return; + case c < 391: + d.EleBody.src = "images/Zombies/Zomboni/3.gif"; + break; + case c < 871: + d.EleBody.src = "images/Zombies/Zomboni/2.gif"; + } + d.SetAlpha(d, d.EleBody, 50, 0.5); + oSym.addTask( + 10, + function (f, e) { + (e = $Z[f]) && e.SetAlpha(e, e.EleBody, 100, 1); + }, + [d.id] + ); + }; + return InheritO(OrnNoneZombies, { + EName: "oZomboni", + CName: "Zomboni", + HP: 1350, + Lvl: 3, + StandGif: 2, + DieGif: 6, + BoomDieGif: 7, + BookHandPosition: "40% 35%", + width: 464, + height: 364, + GetDTop: 104, + beAttackedPointL: 140, + beAttackedPointR: 290, + BreakPoint: 200, + SunNum: 350, + GetDY: function () { + return 0; + }, + OSpeed: 2.5, + Speed: 2.5, + AKind: 2, + Attack: 50, + Produce: + '冰车僵尸运用冰雪,碾过你的植物。

韧性:
特点:碾压植物,留下条冰道

经常被误以为是在驾驶着冰车的僵尸,但事实上冰车僵尸是种完全不同的生物形式,他与太空兽人联系更紧密而不是僵尸。', + PicArr: (function () { + var b = "images/Zombies/Zomboni/"; + return [ + "images/Card/Zombies/Zomboni.png", + b + "0.gif", + b + "1.gif", + b + "2.gif", + b + "3.gif", + b + "4.gif", + b + "5.gif" + $Random, + b + "BoomDie.gif" + $Random, + b + "ice.png", + b + "ice_cap.png", + ]; + })(), + AudioArr: ["zamboni", "explosion"], + BirthCallBack: function (h) { + var g = h.delayT, + e = h.id, + c = (h.Ele = $(e)), + d = h.R, + f, + b = oGd.$Ice; + h.EleShadow = c.firstChild; + h.EleBody = c.childNodes[1]; + !b[d] + ? ((f = NewEle( + "dIceCar" + d, + "div", + "position:absolute;z-index:1;left:145px;top:" + + (GetY(d) - 65) + + "px;width:800px;height:72px", + 0, + EDPZ + )), + NewImg( + "", + "images/interface/blank.png", + "position:absolute;clip:rect(0,auto,auto,800px);width:800px;height:72px;left:5px;background:url(images/Zombies/Zomboni/ice.png) repeat-x", + f + ), + NewImg( + "", + "images/Zombies/Zomboni/ice_cap.png", + "position:absolute;display:none;left:0", + f + ), + (b[d] = [1, 11, h.AttackedLX])) + : ++b[d][0]; + g + ? oSym.addTask( + g, + function (j, i) { + var k = $Z[j]; + k && + ((k.FreeSetbodyTime = 0), + SetBlock(i), + PlayAudio("zamboni")); + }, + [e, c] + ) + : (SetBlock(c), PlayAudio("zamboni")); + }, + ChkActs: function (e, j, q, k) { + var b, + r, + m, + g, + n = oGd.$Ice[j], + d, + h, + f, + c, + l = $("dIceCar" + j); + e.JudgeAttack(); + (r = e.AttackedRX -= b = e.Speed) < -50 + ? (q.splice(k, 1), e.DisappearDie(), (m = 0)) + : (r < 100 && + !e.PointZombie && + ((e.PointZombie = 1), + !oS.CardKind && + (StopMusic(), PlayAudio("losemusic", false)), + e.ChangeR({ + R: j, + ar: [oS.R - 1], + CustomTop: 400 - e.height + e.GetDY(), + })), + (e.ZX = e.AttackedLX -= b), + (e.Ele.style.left = Math.floor((e.X -= b)) + "px"), + (m = 1)); + d = e.X; + h = d + 250; + f = d + 100; + c = GetC(h); + c > -1 && + c < n[1] && + ((oGd.$Crater[j + "_" + c] = 1), (n[1] = c)); + h > 120 && + h < n[2] && + ((n[2] = h), + (l.firstChild.style.clip = "rect(0,auto,auto," + f + "px)"), + (l.childNodes[1].style.left = Math.max(0, f) + "px")); + GetC(e.AttackedLX) > 5 && (e.OSpeed = e.Speed -= 0.005); + return m; + }, + ChkActs1: function (f, d, g, c) { + var b, e; + f.JudgeAttack(); + (f.AttackedLX += b = f.Speed) > oS.W + ? (g.splice(c, 1), f.DisappearDie(), (e = 0)) + : ((f.ZX = f.AttackedRX += b), + (f.Ele.style.left = Math.ceil((f.X += b)) + "px"), + (e = 1)); + return e; + }, + getPea: function (c, b) { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + c.getHit0(c, b); + }, + getFirePea: function (c, b) { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + c.getHit0(c, b); + }, + getSnowPea: function (c, b) { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + c.getHit0(c, b); + }, + getFirePeaSputtering: function () {}, + getFreeze: function (c, b) { + c.getHit0(c, 20); + }, + getShadow: function (b) { + return ( + "left:" + + (b.beAttackedPointL - 10) + + "px;top:" + + (b.height - 22) + + "px" + ); + }, + getHit: a, + getHit0: a, + getHit1: a, + getHit2: a, + getHit3: a, + GoingDie: function () { + var b = this; + b.beAttacked = 0; + b.AutoReduceHP(b.id); + }, + NormalDie: function () { + var b = this; + PlayAudio("explosion"); + b.EleBody.src = b.PicArr[b.DieGif] + Math.random(); + oSym.addTask(70, ClearChild, [b.Ele]); + b.HP = 0; + delete $Z[b.id]; + b.JudgeIce(); + b.PZ && oP.MonPrgs(); + }, + DisappearDie: function () { + var b = this; + ClearChild(b.Ele); + b.HP = 0; + delete $Z[b.id]; + b.JudgeIce(); + b.PZ && oP.MonPrgs(); + }, + ExplosionDie: function () { + var b = this; + b.EleBody.src = b.PicArr[b.BoomDieGif] + Math.random(); + oSym.addTask(300, ClearChild, [b.Ele]); + b.HP = 0; + delete $Z[b.id]; + b.JudgeIce(); + b.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + this.NormalDie(); + }, + JudgeIce: function () { + var d = this, + b = d.R, + e = $("dIceCar" + b), + c = oGd.$Ice[b]; + e && e.childNodes[1] && SetBlock(e.childNodes[1]); + --c[0] <= 0 && + oSym.addTask( + 3e3, + function (k, h) { + var j = oGd.$Ice[h], + g, + f = oGd.$Crater; + if (j && j[0] <= 0 && k) { + ClearChild(k); + g = j[1]; + while (g < 11) { + delete f[h + "_" + g++]; + delete oGd.$Ice[h]; + } + } + }, + [e, b] + ); + }, + flatTire: function () { + var b = this; + b.EleBody.src = "images/Zombies/Zomboni/4.gif"; + b.beAttacked = 0; + b.HP = 0; + b.getHit0 = b.getHit1 = b.getHit2 = b.getHit3 = function () {}; + b.ChkActs = b.ChkActs1 = function () {}; + oSym.addTask( + 290, + function (e, c) { + var d = $Z[e]; + d && d.NormalDie(); + }, + [b.id, b.EleBody] + ); + }, + JudgeAttack: function () { + var f = this, + c = f.ZX, + d = f.R + "_", + e = GetC(c), + g = oGd.$, + b; + (b = f.JudgeLR(f, d, e, c, g) || f.JudgeSR(f, d, e, c, g)) && + f.NormalAttack(b[0], b[1]); + }, + JudgeLR: function (e, c, d, b, f) { + return d > 10 || d < 1 + ? false + : (function () { + c += --d + "_"; + var g = 3, + h; + while (g--) { + if ((h = f[c + g])) { + return h.AttackedRX >= b && + h.AttackedLX <= b + ? [e.id, h.id] + : false; + } + } + })(); + }, + JudgeSR: function (e, c, d, b, f) { + return d > 9 + ? false + : (function () { + c += d + "_"; + var g = 3, + h; + while (g--) { + if ((h = f[c + g])) { + return h.AttackedRX >= b && + h.AttackedLX <= b + ? [e.id, h.id] + : false; + } + } + })(); + }, + NormalAttack: function (c, b) { + var d = $Z[c]; + $P[b].getHurt(d, 2, d.Attack); + }, + getThump: function () { + this.NormalDie(); + }, + }); + })(), + oCZomboni = (function () { + var a = function (d, b) { + var c = d.HP; + switch (true) { + case (d.HP = c -= b) < 200: + d.GoingDie(); + d.getHit0 = + d.getHit1 = + d.getHit2 = + d.getHit3 = + function () {}; + return; + case c < 391: + d.EleBody.src = "images/Zombies/wall/Zomboni/3.gif"; + break; + case c < 871: + d.EleBody.src = "images/Zombies/wall/Zomboni/2.gif"; + } + d.SetAlpha(d, d.EleBody, 50, 0.5); + oSym.addTask( + 10, + function (f, e) { + (e = $Z[f]) && e.SetAlpha(e, e.EleBody, 100, 1); + }, + [d.id] + ); + }; + return InheritO(oZomboni, { + EName: "oCZomboni", + CName: "油车僵尸", + HP: 1350, + Lvl: 3, + StandGif: 2, + DieGif: 6, + BoomDieGif: 7, + BookHandPosition: "40% 35%", + width: 464, + height: 364, + GetDTop: 104, + beAttackedPointL: 140, + beAttackedPointR: 290, + BreakPoint: 200, + SunNum: 350, + GetDY: function () { + return 0; + }, + OSpeed: 2.5, + Speed: 2.5, + AKind: 2, + Attack: 50, + PicArr: (function () { + var b = "images/Zombies/wall/Zomboni/"; + return [ + "images/Card/Zombies/Zomboni.png", + b + "0.gif", + b + "1.gif", + b + "2.gif", + b + "3.gif", + b + "4.gif", + b + "5.gif" + $Random, + b + "BoomDie.gif" + $Random, + b + "ice.png", + b + "ice_cap.png", + ]; + })(), + AudioArr: ["zamboni", "explosion"], + BirthCallBack: function (h) { + var g = h.delayT, + e = h.id, + c = (h.Ele = $(e)), + d = h.R, + f, + b = oGd.$Ice; + h.EleShadow = c.firstChild; + h.EleBody = c.childNodes[1]; + !b[d] + ? ((f = NewEle( + "dIceCar" + d, + "div", + "position:absolute;z-index:1;left:145px;top:" + + (GetY(d) - 65) + + "px;width:800px;height:72px", + 0, + EDPZ + )), + NewImg( + "", + "images/interface/blank.png", + "position:absolute;clip:rect(0,auto,auto,800px);width:800px;height:72px;left:5px;background:url(images/Zombies/wall/Zomboni/ice.png) repeat-x", + f + ), + NewImg( + "", + "images/Zombies/wall/Zomboni/ice_cap.png", + "position:absolute;display:none;left:0", + f + ), + (b[d] = [1, 11, h.AttackedLX])) + : ++b[d][0]; + g + ? oSym.addTask( + g, + function (j, i) { + var k = $Z[j]; + k && + ((k.FreeSetbodyTime = 0), + SetBlock(i), + PlayAudio("zamboni")); + }, + [e, c] + ) + : (SetBlock(c), PlayAudio("zamboni")); + }, + ChkActs: function (e, j, q, k) { + var b, + r, + m, + g, + n = oGd.$Ice[j], + d, + h, + f, + c, + l = $("dIceCar" + j); + e.JudgeAttack(); + (r = e.AttackedRX -= b = e.Speed) < -50 + ? (q.splice(k, 1), e.DisappearDie(), (m = 0)) + : (r < 100 && + !e.PointZombie && + ((e.PointZombie = 1), + !oS.CardKind && + (StopMusic(), PlayAudio("losemusic", false)), + e.ChangeR({ + R: j, + ar: [oS.R - 1], + CustomTop: 400 - e.height + e.GetDY(), + })), + (e.ZX = e.AttackedLX -= b), + (e.Ele.style.left = Math.floor((e.X -= b)) + "px"), + (m = 1)); + d = e.X; + h = d + 250; + f = d + 100; + c = GetC(h); + c > -1 && + c < n[1] && + ((oGd.$Crater[j + "_" + c] = 1), (n[1] = c)); + h > 120 && + h < n[2] && + ((n[2] = h), + (l.firstChild.style.clip = "rect(0,auto,auto," + f + "px)"), + (l.childNodes[1].style.left = Math.max(0, f) + "px")); + GetC(e.AttackedLX) > 5 && (e.OSpeed = e.Speed -= 0.005); + return m; + }, + ChkActs1: function (f, d, g, c) { + var b, e; + f.JudgeAttack(); + (f.AttackedLX += b = f.Speed) > oS.W + ? (g.splice(c, 1), f.DisappearDie(), (e = 0)) + : ((f.ZX = f.AttackedRX += b), + (f.Ele.style.left = Math.ceil((f.X += b)) + "px"), + (e = 1)); + return e; + }, + getPea: function (c, b) { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + c.getHit0(c, b); + }, + getFirePea: function (c, b) { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + c.getHit0(c, b); + }, + getSnowPea: function (c, b) { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + c.getHit0(c, b); + }, + getFirePeaSputtering: function () {}, + getFreeze: function (c, b) { + c.getHit0(c, 20); + }, + getShadow: function (b) { + return ( + "left:" + + (b.beAttackedPointL - 10) + + "px;top:" + + (b.height - 22) + + "px" + ); + }, + getHit: a, + getHit0: a, + getHit1: a, + getHit2: a, + getHit3: a, + GoingDie: function () { + var b = this; + b.beAttacked = 0; + b.AutoReduceHP(b.id); + }, + NormalDie: function () { + var b = this; + PlayAudio("explosion"); + b.EleBody.src = b.PicArr[b.DieGif] + Math.random(); + oSym.addTask(70, ClearChild, [b.Ele]); + b.HP = 0; + delete $Z[b.id]; + b.JudgeIce(); + b.PZ && oP.MonPrgs(); + }, + DisappearDie: function () { + var b = this; + ClearChild(b.Ele); + b.HP = 0; + delete $Z[b.id]; + b.JudgeIce(); + b.PZ && oP.MonPrgs(); + }, + ExplosionDie: function () { + var b = this; + b.EleBody.src = b.PicArr[b.BoomDieGif] + Math.random(); + oSym.addTask(300, ClearChild, [b.Ele]); + b.HP = 0; + delete $Z[b.id]; + b.JudgeIce(); + b.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + this.NormalDie(); + }, + JudgeIce: function () { + var d = this, + b = d.R, + e = $("dIceCar" + b), + c = oGd.$Ice[b]; + e && e.childNodes[1] && SetBlock(e.childNodes[1]); + --c[0] <= 0 && + oSym.addTask( + 3e3, + function (k, h) { + var j = oGd.$Ice[h], + g, + f = oGd.$Crater; + if (j && j[0] <= 0 && k) { + ClearChild(k); + g = j[1]; + while (g < 11) { + delete f[h + "_" + g++]; + delete oGd.$Ice[h]; + } + } + }, + [e, b] + ); + }, + flatTire: function () { + var b = this; + b.EleBody.src = "images/Zombies/wall/Zomboni/4.gif"; + b.beAttacked = 0; + b.HP = 0; + b.getHit0 = b.getHit1 = b.getHit2 = b.getHit3 = function () {}; + b.ChkActs = b.ChkActs1 = function () {}; + oSym.addTask( + 290, + function (e, c) { + var d = $Z[e]; + d && d.NormalDie(); + }, + [b.id, b.EleBody] + ); + }, + JudgeAttack: function () { + var f = this, + c = f.ZX, + d = f.R + "_", + e = GetC(c), + g = oGd.$, + b; + (b = f.JudgeLR(f, d, e, c, g) || f.JudgeSR(f, d, e, c, g)) && + f.NormalAttack(b[0], b[1]); + }, + JudgeLR: function (e, c, d, b, f) { + return d > 10 || d < 1 + ? false + : (function () { + c += --d + "_"; + var g = 3, + h; + while (g--) { + if ((h = f[c + g])) { + return h.AttackedRX >= b && + h.AttackedLX <= b + ? [e.id, h.id] + : false; + } + } + })(); + }, + JudgeSR: function (e, c, d, b, f) { + return d > 9 + ? false + : (function () { + c += d + "_"; + var g = 3, + h; + while (g--) { + if ((h = f[c + g])) { + return h.AttackedRX >= b && + h.AttackedLX <= b + ? [e.id, h.id] + : false; + } + } + })(); + }, + NormalAttack: function (c, b) { + var d = $Z[c]; + $P[b].getHurt(d, 2, d.Attack); + }, + getThump: function () { + this.NormalDie(); + }, + }); + })(), + oDolphinRiderZombie = InheritO(oAquaticZombie, { + EName: "oDolphinRiderZombie", + CName: "Dolphin Rider Zombie", + HP: 270, + Lvl: 2, + BreakPoint: 167, + width: 282, + height: 210, + Lvl: 2, + getShadow: function (a) { + return "left:105px;top:175px"; + }, + GetDX: function () { + return -137; + }, + GetDY: function () { + return 0; + }, + GetDTop: 0, + Altitude: 1, + haveDolphin: 1, + JumpTime: 45, + beAttackedPointL: 110, + beAttackedPointR: 190, + SunNum: 350, + OSpeed: 3.2, + Speed: 3.2, + PicArr: (function () { + var a = "images/Zombies/DolphinRiderZombie/"; + return [ + "images/Card/Zombies/DolphinRiderZombie.png", + a + "0.gif", + a + "Walk1.gif", + a + "Walk2.gif", + a + "1.gif", + a + "Attack.gif", + a + "Head.gif" + $Random, + a + "Die.gif" + $Random, + a + "Jump.gif" + $Random, + a + "Jump2.gif" + $Random, + a + "Walk3.gif", + a + "Walk4.gif", + a + "Die2.gif" + $Random, + a + "Jump3.gif" + $Random, + ]; + })(), + AudioArr: [ + "dolphin_before_jumping", + "dolphin_appears", + "zombie_entering_water", + ], + Produce: + '海豚骑士僵尸善于利用你水池防御的弱点。

韧性:
速度:快,慢(跳越后)
特点:跃过他所遇到的第一株植物
只在水池Level出现

那海豚其实也是个僵尸。', + BirthCallBack: function (a) { + PlayAudio("dolphin_appears"); + oAquaticZombie.prototype.BirthCallBack(a); + }, + Jump: function (a) { + a.beAttacked && + (PlayAudio("zombie_entering_water"), + (a.Altitude = 2), + SetHidden(a.EleShadow), + (a.EleBody.src = a.PicArr[8] + Math.random()), + oSym.addTask( + 240, + function (d, b) { + var c; + $Z[d] && + b.beAttacked && + ((b.WalkStatus = 1), + (b.Altitude = 1), + (b.OSpeed = b.Speed = 10.8), + SetStyle(b.Ele, { left: (c = b.X -= 140) + "px" }), + (b.AttackedLX = c + (b.beAttackedPointL = 185)), + (b.AttackedRX = c + (b.beAttackedPointR = 265)), + (b.EleBody.src = + b.PicArr[(b.NormalGif = b.WalkGif1)]), + (b.ChkActs = b.ChkActsL2)); + }, + [a.id, a] + ), + (a.ChkActs = function () { + return 1; + })); + }, + ChkActsL1: function (d, c, e, b) { + if (d.JumpTime <= 0) { + d.Jump(d); + return 1; + } + var a; + !(d.FreeFreezeTime || d.FreeSetbodyTime) && + ((d.AttackedRX -= a = d.Speed), + (LX = d.ZX = d.AttackedLX -= a), + (d.Ele.style.left = Math.floor((d.X -= a)) + "px"), + --d.JumpTime); + return 1; + }, + getCrushed: function (a) { + this.NormalAttack(this.id, a.id, a.AttackedLX); + this.getCrushed = function () { + return false; + }; + a.Stature > 0 && + oSym.addTask( + 50, + function (c) { + var b = $Z[c]; + b && b.CrushDie(); + }, + [this.id] + ); + return false; + }, + getRaven: function (a) { + return ( + !this.isAttacking && + this.NormalAttack(this.id, a, $P[a].AttackedLX), + 0 + ); + }, + JudgeAttack: function () { + var f = this, + b = f.ZX, + d = f.R + "_", + c = GetC(b), + g = oGd.$, + e, + a; + for (e = c - 2; e <= c; e++) { + if (e > 9) { + continue; + } + for ( + a = 2; + a > -1; + (p = g[d + e + "_" + a--]) && + (p.EName != "oBrains" + ? p.AttackedRX >= b && + p.AttackedLX < b && + ((a = -1), + (f.JudgeAttack = CZombies.prototype.JudgeAttack), + f.NormalAttack(f.id, p.id, p.AttackedLX)) + : p.AttackedRX >= b && + p.AttackedLX < b && + ((a = -1), + (f.JudgeAttack = CZombies.prototype.JudgeAttack), + (f.NormalAttack = CZombies.prototype.NormalAttack)( + f.id, + p.id + ))) + ) {} + } + }, + AttackZombie2: function (c, b, a) { + c.NormalAttack(b, a, $Z[a].AttackedLX); + }, + NormalAttack: function (d, b, g) { + var f = $Z[d], + a = f.Ele, + c = f.EleShadow, + e = f.EleBody; + e.src = f.PicArr[9] + Math.random(); + SetHidden(c); + f.isAttacking = 1; + f.Altitude = 2; + f.haveDolphin = 0; + PlayAudio("dolphin_before_jumping"); + f.getFreeze = function () { + f.getSnow(f, 20, 0); + }; + oSym.addTask( + 50, + function (m, j, i, l, q) { + var h = $Z[m], + k, + r, + s, + n = function () { + q.src = h.PicArr[10]; + h.isAttacking = 0; + h.Altitude = 1; + h.OSpeed = h.Speed = 1.6; + h.WalkGif0 = 11; + h.NormalGif = h.WalkGif1 = 10; + h.LostHeadGif = h.DieGif = 12; + h.NormalAttack = (s = + CZombies.prototype).NormalAttack; + h.getCrushed = s.getCrushed; + h.getFreeze = s.getFreeze; + h.getRaven = s.getRaven; + h.AttackZombie2 = s.AttackZombie2; + }; + h && + ((k = $P[j]) && k.Stature > 0 + ? ((h.AttackedRX = + (h.X = + (h.AttackedLX = + h.ZX = + r = + k.AttackedRX) - + (h.beAttackedPointL = 45)) + + (h.beAttackedPointR = 100)), + SetStyle(i, { left: h.X + "px" }), + (h.EleShadow.style.left = "45px"), + n()) + : ((h.ZX = h.AttackedLX = + (h.X = + (h.AttackedRX = g) - + (h.beAttackedPointR = 100)) + + (h.beAttackedPointL = 45)), + SetStyle(i, { left: h.X + "px" }), + (h.EleShadow.style.left = "45px"), + (q.src = h.PicArr[13] + Math.random()), + oSym.addTask( + 170, + function (t, w) { + var v = $Z[t], + u; + v && n(); + }, + [m, q] + ))); + }, + [d, b, a, c, e] + ); + }, + GoingDie: function () { + var b = this, + c = b.id, + a = b.PicArr; + b.EleBody.src = a[b.haveDolphin ? 7 : 12] + Math.random(); + b.GoingDieHead(c, a, b); + b.beAttacked = 0; + b.FreeFreezeTime = b.FreeSetbodyTime = b.FreeSlowTime = 0; + b.AutoReduceHP(c); + }, + }), + oCDolphinRiderZombie = InheritO(oDolphinRiderZombie, {}), + oImp = InheritO(OrnNoneZombies, { + EName: "oImp", + CName: "Imp", + HP: 270, + Lvl: 4, + StandGif: 9, + OSpeed: 1.4, + Speed: 1.4, + PicArr: (function () { + var a = "images/Zombies/Imp/"; + return [ + "images/Card/Zombies/Imp.png", + a + "0.gif", + a + "Zombie.gif", + a + "ZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + Produce: + '小鬼僵尸会快速突破你的防线。

韧性:
其实小鬼僵尸天生就能跑的很快,一些懒惰的小鬼僵尸喜欢粘着巨人僵尸,但是一些勤奋的,就会经常出门成群的跑马拉松。', + }), + oIImp = InheritO(OrnNoneZombies, { + EName: "oIImp", + CName: "Imp", + HP: 270, + Lvl: 4, + StandGif: 9, + OSpeed: 1.64, + Speed: 1.4, + PicArr: (function () { + var a = "images/Zombies/Imp/"; + return [ + "images/Card/Zombies/IImp.png", + a + "0.gif", + a + "Zombie.gif", + a + "ZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + Produce: + '小鬼僵尸会快速突破你的防线。

韧性:
其实小鬼僵尸天生就能跑的很快,一些懒惰的小鬼僵尸喜欢粘着巨人僵尸,但是一些勤奋的,就会经常出门成群的跑马拉松。', + }), + oJX = InheritO(OrnNoneZombies, { + EName: "oJX", + CName: "Crab Imp", + HP: 275, + Lvl: 4, + StandGif: 9, + OSpeed: 1.2, + Speed: 1.4, + Attack: 120, + PicArr: (function () { + var a = "images/Zombies/JX/"; + return [ + "images/Card/Zombies/JX.png", + a + "0.gif", + a + "Zombie.gif", + a + "ZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + Produce: + '小鬼僵尸的亲戚,攻击似乎提升了不少。

韧性:
矮小的他喜欢这副捡来的蟹壳,V字型的蟹钳更是让他感到兴奋,以至忘掉了身高上的劣势。', + }), + oJackinTheBoxZombie = InheritO(OrnNoneZombies, { + EName: "oJackinTheBoxZombie", + CName: "Jack-in-the-Box Zombie", + SunNum: 100, + HP: 270, + BreakPoint: 167, + Lvl: 3, + Status: 1, + BookHandPosition: "30% 70%", + width: 196, + height: 181, + beAttackedPointL: 120, + beAttackedPointR: 170, + StandGif: 5, + NormalGif: 6, + DieGif: 3, + BoomDieGif: 4, + HeadGif: 11, + LostHeadGif: 9, + LostHeadAttackGif: 10, + AttackGif: 2, + OSpeed: 3.6, + Speed: 3.6, + Produce: + '这种僵尸带着个会爆炸的潘多拉盒子。

韧性:
速度:
特点:打开玩偶匣会爆炸
弱点:磁力菇
这种僵尸令人不寒而栗,不是因为他的冰冷身躯而是因为他的疯狂。', + AudioArr: ["jackinthebox", "explosion"], + PicArr: (function () { + var a = "images/Zombies/JackinTheBoxZombie/"; + return [ + "images/Card/Zombies/JackboxZombie.png", + a + "0.gif", + a + "Attack.gif", + a + "Die.gif" + $Random, + a + "BoomDie.gif" + $Random, + a + "1.gif", + a + "Walk.gif", + a + "OpenBox.gif", + a + "Boom.gif" + $Random, + a + "LostHead.gif", + a + "LostHeadAttack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + $Random, + ]; + })(), + RandomOpenBox: function (a) { + oSym.addTask( + Math.floor(Math.random() * 100) > 4 + ? Math.floor(1325 + Math.random() * 976) + : Math.floor(450 + Math.random() * 301), + function (c) { + var b = $Z[c]; + b && b.beAttacked && b.OpenBox(c); + }, + [a] + ); + }, + OpenBox: function (b) { + var a = $Z[b]; + a.EleBody.src = a.PicArr[7]; + a.ChkActs = a.ChkActs1 = function () { + return 1; + }; + a.JudgeAttack = function () { + var g = this, + d = g.ZX, + e = g.R + "_", + f = GetC(d), + h = oGd.$, + c; + (c = g.JudgeLR(g, e, f, d, h) || g.JudgeSR(g, e, f, d, h)) + ? (!g.isAttacking && + ((g.isAttacking = 1), + (g.EleBody.src = g.PicArr[g.AttackGif])), + g.NormalAttack(c[0], c[1])) + : g.isAttacking && (g.isAttacking = 0); + }; + a.JudgeAttackH = function () { + var e = this, + d = oZ.getZ0(e.ZX, e.R), + f = e.id, + c; + d && d.beAttacked && d.AttackedLX < oS.W && d.Altitude == 1 + ? !e.isAttacking + ? ((e.isAttacking = 1), + (e.EleBody.src = e.PicArr[e.AttackGif]), + e.AttackZombie(f, (c = d.id)), + !d.isAttacking && d.AttackZombie2(d, c, f)) + : e.AttackZombie(f, d.id, 1) + : e.isAttacking && (e.isAttacking = 0); + }; + a.getPea = + a.getSnowPea = + a.getFirePeaSputtering = + a.getFirePea = + a.getHit = + a.getHit0 = + a.getHit1 = + a.getHit2 = + a.getHit3 = + a.ChangeR = + a.bedevil = + function () {}; + oSym.addTask( + 50, + function (c) { + $Z[c] && + ((a.Status = 0), + !--oGd.$JackinTheBox && StopAudio("jackinthebox"), + PlayAudio("jackinthebox"), + oSym.addTask( + 90, + function (f) { + var e = $Z[f], + d; + e && + ((d = NewImg( + "", + "", + "width:306px;height:300px;left:" + + (e.X - 16) + + "px;top:" + + (e.pixelTop - 90) + + "px;z-index:20" + )), + PlayAudio("explosion"), + (d.src = e.PicArr[8] + Math.random()), + EDPZ.appendChild(d), + oSym.addTask(70, ClearChild, [d]), + e.PZ + ? (function (k, g) { + var q = Math.max(1, k - 1), + o = Math.min(oS.R, k + 1), + n = Math.max(1, g - 1), + h = Math.min(oS.C, g + 1), + r = oGd.$, + l, + j = "", + m; + do { + g = n; + do { + j = q + "_" + g + "_"; + for ( + l = 0; + l < 4; + l++ + ) { + (m = r[j + l]) && + m.BoomDie(); + } + } while (g++ < h); + } while (q++ < o); + })(e.R, GetC(e.ZX)) + : (function (j, l) { + var m = j - 120, + o = j + 120, + h = Math.min(1, l - 1), + g = Math.max(oS.R, l + 1), + n, + k; + do { + k = (n = oZ.getArZ(m, o, h)) + .length; + while (k--) { + n[k].ExplosionDie(); + } + } while (h++ < g); + })(e.ZX, e.R), + e.DisappearDie()); + }, + [c] + )); + }, + [b] + ); + }, + getShadow: function (a) { + return ( + "left:" + + (a.beAttackedPointL - 8) + + "px;top:" + + (a.height - 32) + + "px" + ); + }, + BirthCallBack: function (d) { + var c = d.delayT, + b = d.id, + a = (d.Ele = $(b)); + d.EleShadow = a.firstChild; + d.EleBody = a.childNodes[1]; + c + ? oSym.addTask( + c, + function (f, e) { + var g = $Z[f]; + g && + (PlayAudio("jackinthebox", true), + ++oGd.$JackinTheBox, + (g.FreeSetbodyTime = 0), + SetBlock(e), + g.RandomOpenBox(f)); + }, + [b, a] + ) + : (PlayAudio("jackinthebox", true), + ++oGd.$JackinTheBox, + SetBlock(a), + d.RandomOpenBox(b)); + }, + NormalDie: function () { + var a = this; + a.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); + a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); + oSym.addTask(250, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + ExplosionDie: function () { + var a = this; + a.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); + a.EleBody.src = a.PicArr[a.BoomDieGif] + Math.random(); + oSym.addTask(300, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + DisappearDie: function () { + this.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + var a = this; + a.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); + a.GoingDieHead(a.id, a.PicArr, a); + ClearChild(a.Ele); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + }), + oIJackinTheBoxZombie = InheritO(OrnNoneZombies, { + EName: "oIJackinTheBoxZombie", + CName: "Jack-in-the-Box Zombie", + SunNum: 100, + HP: 270, + BreakPoint: 167, + Lvl: 3, + Status: 1, + BookHandPosition: "30% 70%", + width: 196, + height: 181, + beAttackedPointL: 120, + beAttackedPointR: 170, + StandGif: 5, + NormalGif: 6, + DieGif: 3, + BoomDieGif: 4, + HeadGif: 11, + LostHeadGif: 9, + LostHeadAttackGif: 10, + AttackGif: 2, + OSpeed: 3.6, + Speed: 3.6, + Produce: + '这种僵尸带着个会爆炸的潘多拉盒子。

韧性:
速度:
特点:打开玩偶匣会爆炸
弱点:磁力菇
这种僵尸令人不寒而栗,不是因为他的冰冷身躯而是因为他的疯狂。', + AudioArr: ["jackinthebox", "explosion"], + PicArr: (function () { + var a = "images/Zombies/JackinTheBoxZombie/"; + return [ + "images/Card/Zombies/IJackboxZombie.png", + a + "0.gif", + a + "Attack.gif", + a + "Die.gif" + $Random, + a + "BoomDie.gif" + $Random, + a + "1.gif", + a + "Walk.gif", + a + "OpenBox.gif", + a + "Boom.gif" + $Random, + a + "LostHead.gif", + a + "LostHeadAttack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + $Random, + ]; + })(), + RandomOpenBox: function (a) { + oSym.addTask( + Math.floor(Math.random() * 100) > 4 + ? Math.floor(1325 + Math.random() * 976) + : Math.floor(450 + Math.random() * 301), + function (c) { + var b = $Z[c]; + b && b.beAttacked && b.OpenBox(c); + }, + [a] + ); + }, + OpenBox: function (b) { + var a = $Z[b]; + a.EleBody.src = a.PicArr[7]; + a.ChkActs = a.ChkActs1 = function () { + return 1; + }; + a.JudgeAttack = function () { + var g = this, + d = g.ZX, + e = g.R + "_", + f = GetC(d), + h = oGd.$, + c; + (c = g.JudgeLR(g, e, f, d, h) || g.JudgeSR(g, e, f, d, h)) + ? (!g.isAttacking && + ((g.isAttacking = 1), + (g.EleBody.src = g.PicArr[g.AttackGif])), + g.NormalAttack(c[0], c[1])) + : g.isAttacking && (g.isAttacking = 0); + }; + a.JudgeAttackH = function () { + var e = this, + d = oZ.getZ0(e.ZX, e.R), + f = e.id, + c; + d && d.beAttacked && d.AttackedLX < oS.W && d.Altitude == 1 + ? !e.isAttacking + ? ((e.isAttacking = 1), + (e.EleBody.src = e.PicArr[e.AttackGif]), + e.AttackZombie(f, (c = d.id)), + !d.isAttacking && d.AttackZombie2(d, c, f)) + : e.AttackZombie(f, d.id, 1) + : e.isAttacking && (e.isAttacking = 0); + }; + a.getPea = + a.getSnowPea = + a.getFirePeaSputtering = + a.getFirePea = + a.getHit = + a.getHit0 = + a.getHit1 = + a.getHit2 = + a.getHit3 = + a.ChangeR = + a.bedevil = + function () {}; + oSym.addTask( + 50, + function (c) { + $Z[c] && + ((a.Status = 0), + !--oGd.$JackinTheBox && StopAudio("jackinthebox"), + PlayAudio("jackinthebox"), + oSym.addTask( + 90, + function (f) { + var e = $Z[f], + d; + e && + ((d = NewImg( + "", + "", + "width:306px;height:300px;left:" + + (e.X - 16) + + "px;top:" + + (e.pixelTop - 90) + + "px;z-index:20" + )), + PlayAudio("explosion"), + (d.src = e.PicArr[8] + Math.random()), + EDPZ.appendChild(d), + oSym.addTask(70, ClearChild, [d]), + e.PZ + ? (function (k, g) { + var q = Math.max(1, k - 1), + o = Math.min(oS.R, k + 1), + n = Math.max(1, g - 1), + h = Math.min(oS.C, g + 1), + r = oGd.$, + l, + j = "", + m; + do { + g = n; + do { + j = q + "_" + g + "_"; + for ( + l = 0; + l < 4; + l++ + ) { + (m = r[j + l]) && + m.BoomDie(); + } + } while (g++ < h); + } while (q++ < o); + })(e.R, GetC(e.ZX)) + : (function (j, l) { + var m = j - 120, + o = j + 120, + h = Math.min(1, l - 1), + g = Math.max(oS.R, l + 1), + n, + k; + do { + k = (n = oZ.getArZ(m, o, h)) + .length; + while (k--) { + n[k].ExplosionDie(); + } + } while (h++ < g); + })(e.ZX, e.R), + e.DisappearDie()); + }, + [c] + )); + }, + [b] + ); + }, + getShadow: function (a) { + return ( + "left:" + + (a.beAttackedPointL - 8) + + "px;top:" + + (a.height - 32) + + "px" + ); + }, + BirthCallBack: function (d) { + var c = d.delayT, + b = d.id, + a = (d.Ele = $(b)); + d.EleShadow = a.firstChild; + d.EleBody = a.childNodes[1]; + c + ? oSym.addTask( + c, + function (f, e) { + var g = $Z[f]; + g && + (PlayAudio("jackinthebox", true), + ++oGd.$JackinTheBox, + (g.FreeSetbodyTime = 0), + SetBlock(e), + g.RandomOpenBox(f)); + }, + [b, a] + ) + : (PlayAudio("jackinthebox", true), + ++oGd.$JackinTheBox, + SetBlock(a), + d.RandomOpenBox(b)); + }, + NormalDie: function () { + var a = this; + a.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); + a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); + oSym.addTask(250, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + ExplosionDie: function () { + var a = this; + a.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); + a.EleBody.src = a.PicArr[a.BoomDieGif] + Math.random(); + oSym.addTask(300, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + DisappearDie: function () { + this.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + var a = this; + a.Status && !--oGd.$JackinTheBox && StopAudio("jackinthebox"); + a.GoingDieHead(a.id, a.PicArr, a); + ClearChild(a.Ele); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + }), + oCJackinTheBoxZombie = InheritO(oJackinTheBoxZombie, { + EName: "oCJackinTheBoxZombie", + }); (oBalloonZombie = InheritO(OrnIZombies, { - EName: "oBalloonZombie", - CName: "Balloon Zombie", - OrnHP: 10, - StandGif: 2, - CardGif: 0, - SunNum: 100, - width: 207, - height: 197, - beAttackedPointL: 30, - beAttackedPointR: 85, - OSpeed: 3.2, - Speed: 3.2, - Altitude: 3, - OrnLostNormalGif: 9, - OrnLostAttackGif: 3, - getShadow: function (c) { - return ( - "left:" + - (c.beAttackedPointL - 0) + - "px;top:" + - (c.height - 22) + - "px" - ); - }, - AudioArr: ["ballooninflate", "balloon_pop"], - BookHandPosition: "80% 80%", - PicArr: (function () { - var a = "images/Zombies/BalloonZombie/"; - return [ - "images/Card/Zombies/Balloonzombie.png", - a + "0.gif", - a + "1.gif", - a + "Attack.gif", - a + "Walk2.gif", - a + "Attack2.gif", - a + "Head.gif" + $Random, - a + "Die.gif" + $Random, - a + "Boom.gif", - a + "Walk.gif", - a + "Drop.gif", - a + "Boom2.gif", - a + "1.gif", - ]; - })(), - Produce: - '气球僵尸漂浮在空中,躲过大多数攻击。

韧性:
特点:飞行
弱点:仙人掌和三叶草

气球僵尸真幸运。气球有很多功效,而其他僵尸都不曾捡到过。', - GetDX: function () { - return -10; - }, - BirthCallBack: function (e) { - var d = e.delayT, - c = e.id, - a = (e.Ele = $(c)), - f = oGd.$Balloon, - b = e.R; - e.EleShadow = a.firstChild; - e.EleBody = a.childNodes[1]; - d - ? oSym.addTask( - d, - function (i, g) { - var j = $Z[i], - k = oGd.$Balloon, - h = j.R; - j && ((j.FreeSetbodyTime = 0), SetBlock(g)); - k[h] == undefined ? (k[h] = 1) : ++k[h]; - PlayAudio("ballooninflate"); - }, - [c, a] - ) - : (SetBlock(a), - f[b] == undefined ? (f[b] = 1) : ++f[b], - PlayAudio("ballooninflate")); - }, - ChkActs: function (f, d, g, c) { - var b, a, e; - !(f.FreeFreezeTime || f.FreeSetbodyTime) - ? (a = f.AttackedRX -= b = f.Speed) < -50 - ? (g.splice(c, 1), f.DisappearDie(), (e = 0)) - : (a < 100 && - !f.PointZombie && - ((f.PointZombie = 1), - !oS.CardKind && - (StopMusic(), PlayAudio("losemusic", false)), - f.ChangeR({ - R: d, - ar: [oS.R - 1], - CustomTop: 400 - f.height + f.GetDY(), - })), - (f.ZX = f.AttackedLX -= b), - (f.Ele.style.left = Math.floor((f.X -= b)) + "px"), - (e = 1)) - : (e = 1); - return e; - }, - Drop: function () { - var a = this; - PlayAudio("balloon_pop"); - a.EleBody.src = - "images/Zombies/BalloonZombie/Drop.gif" + $Random + Math.random(); - a.ChkActs = function () { - return 1; - }; - a.Altitude = 4; - --oGd.$Balloon[a.R]; - oSym.addTask( - 120, - function (b) { - var c = $Z[b]; - if (c) { - c.BoomDieGif = 11; - c.Altitude = 1; - c.OSpeed = c.Speed = 1.6; - c.getFreeze = OrnIZombies.prototype.getFreeze; - c.EleBody.src = "images/Zombies/BalloonZombie/Walk.gif"; - c.ChkActs = OrnIZombies.prototype.ChkActs; - c.ExplosionDie = function () { - var d = this; - d.EleBody.src = d.PicArr[d.BoomDieGif]; - oSym.addTask(200, ClearChild, [d.Ele]); - d.HP = 0; - delete $Z[d.id]; - d.PZ && oP.MonPrgs(); - }; - c.DisappearDie = function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }; - c.CrushDie = function () { - var d = this; - d.GoingDieHead(d.id, d.PicArr, d); - ClearChild(d.Ele); - d.HP = 0; - delete $Z[d.id]; - d.PZ && oP.MonPrgs(); - }; - } - }, - [a.id] - ); - }, - getFreeze: function (b, a) { - b.Attack = 50; - b.Speed = 0.5 * b.OSpeed; - oSym.addTask( - 1500, - function (d, c) { - var e = $Z[d]; - e && - e.FreeSlowTime == c && - ((e.FreeSlowTime = 0), - (e.Attack = 100), - (e.Speed = e.OSpeed)); - }, - [a, (b.FreeSlowTime = oSym.Now + 1500)] - ); - }, - NormalDie: function () { - var a = this; - a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); - oSym.addTask(250, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - ExplosionDie: function () { - var a = this; - a.EleBody.src = a.PicArr[a.BoomDieGif]; - oSym.addTask(200, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - --oGd.$Balloon[a.R]; - }, - DisappearDie: function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - --oGd.$Balloon[this.R]; - }, - CrushDie: function () { - this.DisappearDie(); - }, + EName: "oBalloonZombie", + CName: "Balloon Zombie", + OrnHP: 10, + StandGif: 2, + CardGif: 0, + SunNum: 100, + width: 207, + height: 197, + beAttackedPointL: 30, + beAttackedPointR: 85, + OSpeed: 3.2, + Speed: 3.2, + Altitude: 3, + OrnLostNormalGif: 9, + OrnLostAttackGif: 3, + getShadow: function (c) { + return ( + "left:" + + (c.beAttackedPointL - 0) + + "px;top:" + + (c.height - 22) + + "px" + ); + }, + AudioArr: ["ballooninflate", "balloon_pop"], + BookHandPosition: "80% 80%", + PicArr: (function () { + var a = "images/Zombies/BalloonZombie/"; + return [ + "images/Card/Zombies/Balloonzombie.png", + a + "0.gif", + a + "1.gif", + a + "Attack.gif", + a + "Walk2.gif", + a + "Attack2.gif", + a + "Head.gif" + $Random, + a + "Die.gif" + $Random, + a + "Boom.gif", + a + "Walk.gif", + a + "Drop.gif", + a + "Boom2.gif", + a + "1.gif", + ]; + })(), + Produce: + '气球僵尸漂浮在空中,躲过大多数攻击。

韧性:
特点:飞行
弱点:仙人掌和三叶草

气球僵尸真幸运。气球有很多功效,而其他僵尸都不曾捡到过。', + GetDX: function () { + return -10; + }, + BirthCallBack: function (e) { + var d = e.delayT, + c = e.id, + a = (e.Ele = $(c)), + f = oGd.$Balloon, + b = e.R; + e.EleShadow = a.firstChild; + e.EleBody = a.childNodes[1]; + d + ? oSym.addTask( + d, + function (i, g) { + var j = $Z[i], + k = oGd.$Balloon, + h = j.R; + j && ((j.FreeSetbodyTime = 0), SetBlock(g)); + k[h] == undefined ? (k[h] = 1) : ++k[h]; + PlayAudio("ballooninflate"); + }, + [c, a] + ) + : (SetBlock(a), + f[b] == undefined ? (f[b] = 1) : ++f[b], + PlayAudio("ballooninflate")); + }, + ChkActs: function (f, d, g, c) { + var b, a, e; + !(f.FreeFreezeTime || f.FreeSetbodyTime) + ? (a = f.AttackedRX -= b = f.Speed) < -50 + ? (g.splice(c, 1), f.DisappearDie(), (e = 0)) + : (a < 100 && + !f.PointZombie && + ((f.PointZombie = 1), + !oS.CardKind && + (StopMusic(), PlayAudio("losemusic", false)), + f.ChangeR({ + R: d, + ar: [oS.R - 1], + CustomTop: 400 - f.height + f.GetDY(), + })), + (f.ZX = f.AttackedLX -= b), + (f.Ele.style.left = Math.floor((f.X -= b)) + "px"), + (e = 1)) + : (e = 1); + return e; + }, + Drop: function () { + var a = this; + PlayAudio("balloon_pop"); + a.EleBody.src = + "images/Zombies/BalloonZombie/Drop.gif" + $Random + Math.random(); + a.ChkActs = function () { + return 1; + }; + a.Altitude = 4; + --oGd.$Balloon[a.R]; + oSym.addTask( + 120, + function (b) { + var c = $Z[b]; + if (c) { + c.BoomDieGif = 11; + c.Altitude = 1; + c.OSpeed = c.Speed = 1.6; + c.getFreeze = OrnIZombies.prototype.getFreeze; + c.EleBody.src = "images/Zombies/BalloonZombie/Walk.gif"; + c.ChkActs = OrnIZombies.prototype.ChkActs; + c.ExplosionDie = function () { + var d = this; + d.EleBody.src = d.PicArr[d.BoomDieGif]; + oSym.addTask(200, ClearChild, [d.Ele]); + d.HP = 0; + delete $Z[d.id]; + d.PZ && oP.MonPrgs(); + }; + c.DisappearDie = function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }; + c.CrushDie = function () { + var d = this; + d.GoingDieHead(d.id, d.PicArr, d); + ClearChild(d.Ele); + d.HP = 0; + delete $Z[d.id]; + d.PZ && oP.MonPrgs(); + }; + } + }, + [a.id] + ); + }, + getFreeze: function (b, a) { + b.Attack = 50; + b.Speed = 0.5 * b.OSpeed; + oSym.addTask( + 1500, + function (d, c) { + var e = $Z[d]; + e && + e.FreeSlowTime == c && + ((e.FreeSlowTime = 0), + (e.Attack = 100), + (e.Speed = e.OSpeed)); + }, + [a, (b.FreeSlowTime = oSym.Now + 1500)] + ); + }, + NormalDie: function () { + var a = this; + a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); + oSym.addTask(250, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + ExplosionDie: function () { + var a = this; + a.EleBody.src = a.PicArr[a.BoomDieGif]; + oSym.addTask(200, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + --oGd.$Balloon[a.R]; + }, + DisappearDie: function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + --oGd.$Balloon[this.R]; + }, + CrushDie: function () { + this.DisappearDie(); + }, })), - (oIBalloonZombie = InheritO(OrnIZombies, { - EName: "oIBalloonZombie", - CName: "Balloon Zombie", - OrnHP: 20, - StandGif: 2, - SunNum: 100, - width: 207, - height: 197, - beAttackedPointL: 30, - beAttackedPointR: 85, - OSpeed: 3.2, - Speed: 3.2, - Altitude: 3, - OrnLostNormalGif: 9, - OrnLostAttackGif: 3, - BreakBall: false, // 气球是否被戳破 - MulBallNum: function () { - // 减去气球数 - if (!this.BreakBall) - (this.BreakBall = true), - (oGd.$Balloon[this.R] |= 0), - --oGd.$Balloon[this.R]; - }, - getShadow: function (a) { - return ( - "left:" + - (a.beAttackedPointL - 10) + - "px;top:" + - (a.height - 32) + - "px" - ); - }, - CanPass: function (d, c) { - return c; - }, - AudioArr: ["ballooninflate", "balloon_pop"], - BookHandPosition: "80% 80%", - PicArr: (function () { - var a = "images/Zombies/BalloonZombie/"; - return [ - "images/Card/Zombies/IBalloonzombie.png", - a + "1.gif", - a + "1.gif", - a + "Attack.gif", - a + "Walk2.gif", - a + "Attack2.gif", - a + "Head.gif" + $Random, - a + "Die.gif" + $Random, - a + "Boom.gif", - a + "Walk.gif", - a + "Drop.gif", - a + "Boom2.gif", - ]; - })(), - Produce: - '气球僵尸漂浮在空中,躲过大多数攻击。

韧性:
特点:飞行
弱点:仙人掌和三叶草

气球僵尸真幸运。气球有很多功效,而其他僵尸都不曾捡到过。', - BirthCallBack: function (e) { - var d = e.delayT, - c = e.id, - a = (e.Ele = $(c)), - f = oGd.$Balloon, - b = e.R; - e.EleShadow = a.firstChild; - e.EleBody = a.childNodes[1]; - d - ? oSym.addTask( - d, - function (i, g, c) { - var j = $Z[i], - k = oGd.$Balloon; - j && ((j.FreeSetbodyTime = 0), SetBlock(g)); - (k[c] |= 0), ++k[c]; // 增加数量 - PlayAudio("ballooninflate"); - }, - [c, a, b] - ) - : (SetBlock(a), - f[b] == undefined ? (f[b] = 1) : ++f[b], - PlayAudio("ballooninflate")); - }, - ChkActs: function (f, d, g, c) { - var b, a, e; - if (f.Altitude == 3 && f.AttackedRX < GetX(1)) { - // 气球掉落 - f.Drop(); - return 1; - } - !(f.FreeFreezeTime || f.FreeSetbodyTime) - ? (a = f.AttackedRX -= b = f.Speed) < -50 - ? (g.splice(c, 1), f.DisappearDie(), (e = 0)) - : (a < 100 && - !f.PointZombie && - ((f.PointZombie = 1), - !oS.CardKind && - (StopMusic(), PlayAudio("losemusic", false)), - f.ChangeR({ - R: d, - ar: [oS.R - 1], - CustomTop: 400 - f.height + f.GetDY(), - })), - (f.ZX = f.AttackedLX -= b), - (f.Ele.style.left = Math.floor((f.X -= b)) + "px"), - (e = 1)) - : (e = 1); - return e; - }, - Drop: function () { - var a = this; - PlayAudio("balloon_pop"); - a.EleBody.src = - "images/Zombies/BalloonZombie/Drop.gif" + - $Random + - Math.random(); - a.ChkActs = function () { - return 1; - }; - a.Altitude = 4; - a.MulBallNum(); - oSym.addTask( - 120, - function (b) { - var c = $Z[b]; - if (c) { - c.BoomDieGif = 11; - c.Altitude = 1; - c.OSpeed = c.Speed = 1.6; - c.getFreeze = OrnIZombies.prototype.getFreeze; - c.EleBody.src = "images/Zombies/BalloonZombie/Walk.gif"; - c.ChkActs = OrnIZombies.prototype.ChkActs; - c.ExplosionDie = function () { - var d = this; - d.EleBody.src = d.PicArr[d.BoomDieGif]; - oSym.addTask(200, ClearChild, [d.Ele]); - d.HP = 0; - delete $Z[d.id]; - d.PZ && oP.MonPrgs(); - d.MulBallNum(); - }; - c.DisappearDie = function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - this.MulBallNum(); - }; - c.CrushDie = function () { - var d = this; - d.GoingDieHead(d.id, d.PicArr, d); - ClearChild(d.Ele); - d.HP = 0; - delete $Z[d.id]; - d.PZ && oP.MonPrgs(); - d.MulBallNum(); - }; - } - }, - [a.id] - ); - }, - getFreeze: function (b, a) { - b.Attack = 50; - b.Speed = 0.5 * b.OSpeed; - oSym.addTask( - 1500, - function (d, c) { - var e = $Z[d]; - e && - e.FreeSlowTime == c && - ((e.FreeSlowTime = 0), - (e.Attack = 100), - (e.Speed = e.OSpeed)); - }, - [a, (b.FreeSlowTime = oSym.Now + 1500)] - ); - }, - NormalDie: function () { - var a = this; - a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); - oSym.addTask(250, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - a.MulBallNum(); - }, - ExplosionDie: function () { - var a = this; - a.EleBody.src = a.PicArr[a.BoomDieGif]; - oSym.addTask(200, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - a.MulBallNum(); - }, - DisappearDie: function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - this.MulBallNum(); - }, - CrushDie: function () { - this.DisappearDie(); - }, - getDispelled: function () { - if (this.Altitude != 3 || this.AttackedRX < GetX(0)) { - return; - } - this.ChkActs = function () { - return 1; - }; - (function (id) { - var o = $Z[id]; - if (!o) return; - var d = (o.WalkDirection = 1), - R = o.R, - C = GetC(o.AttackedLX), - sx = 50; - o.AttackedLX += sx; - o.ZX += sx; - o.X += sx; - if (o.AttackedLX > oS.W) { - o.DisappearDie(); - return; - } - SetStyle($(id), { left: o.X + "px" }); - oSym.addTask(2, arguments.callee, [id]); - })(this.id); - }, - getFirePeaSputtering: function () { - this.Altitude == 1 && this.getHit0(this, 13); - }, - prepareBirth: oZomboni.prototype.prepareBirth, - })); + (oIBalloonZombie = InheritO(OrnIZombies, { + EName: "oIBalloonZombie", + CName: "Balloon Zombie", + OrnHP: 20, + StandGif: 2, + SunNum: 100, + width: 207, + height: 197, + beAttackedPointL: 30, + beAttackedPointR: 85, + OSpeed: 3.2, + Speed: 3.2, + Altitude: 3, + OrnLostNormalGif: 9, + OrnLostAttackGif: 3, + BreakBall: false, // 气球是否被戳破 + MulBallNum: function () { + // 减去气球数 + if (!this.BreakBall) + (this.BreakBall = true), + (oGd.$Balloon[this.R] |= 0), + --oGd.$Balloon[this.R]; + }, + getShadow: function (a) { + return ( + "left:" + + (a.beAttackedPointL - 10) + + "px;top:" + + (a.height - 32) + + "px" + ); + }, + CanPass: function (d, c) { + return c; + }, + AudioArr: ["ballooninflate", "balloon_pop"], + BookHandPosition: "80% 80%", + PicArr: (function () { + var a = "images/Zombies/BalloonZombie/"; + return [ + "images/Card/Zombies/IBalloonzombie.png", + a + "1.gif", + a + "1.gif", + a + "Attack.gif", + a + "Walk2.gif", + a + "Attack2.gif", + a + "Head.gif" + $Random, + a + "Die.gif" + $Random, + a + "Boom.gif", + a + "Walk.gif", + a + "Drop.gif", + a + "Boom2.gif", + ]; + })(), + Produce: + '气球僵尸漂浮在空中,躲过大多数攻击。

韧性:
特点:飞行
弱点:仙人掌和三叶草

气球僵尸真幸运。气球有很多功效,而其他僵尸都不曾捡到过。', + BirthCallBack: function (e) { + var d = e.delayT, + c = e.id, + a = (e.Ele = $(c)), + f = oGd.$Balloon, + b = e.R; + e.EleShadow = a.firstChild; + e.EleBody = a.childNodes[1]; + d + ? oSym.addTask( + d, + function (i, g, c) { + var j = $Z[i], + k = oGd.$Balloon; + j && ((j.FreeSetbodyTime = 0), SetBlock(g)); + (k[c] |= 0), ++k[c]; // 增加数量 + PlayAudio("ballooninflate"); + }, + [c, a, b] + ) + : (SetBlock(a), + f[b] == undefined ? (f[b] = 1) : ++f[b], + PlayAudio("ballooninflate")); + }, + ChkActs: function (f, d, g, c) { + var b, a, e; + if (f.Altitude == 3 && f.AttackedRX < GetX(1)) { + // 气球掉落 + f.Drop(); + return 1; + } + !(f.FreeFreezeTime || f.FreeSetbodyTime) + ? (a = f.AttackedRX -= b = f.Speed) < -50 + ? (g.splice(c, 1), f.DisappearDie(), (e = 0)) + : (a < 100 && + !f.PointZombie && + ((f.PointZombie = 1), + !oS.CardKind && + (StopMusic(), PlayAudio("losemusic", false)), + f.ChangeR({ + R: d, + ar: [oS.R - 1], + CustomTop: 400 - f.height + f.GetDY(), + })), + (f.ZX = f.AttackedLX -= b), + (f.Ele.style.left = Math.floor((f.X -= b)) + "px"), + (e = 1)) + : (e = 1); + return e; + }, + Drop: function () { + var a = this; + PlayAudio("balloon_pop"); + a.EleBody.src = + "images/Zombies/BalloonZombie/Drop.gif" + + $Random + + Math.random(); + a.ChkActs = function () { + return 1; + }; + a.Altitude = 4; + a.MulBallNum(); + oSym.addTask( + 120, + function (b) { + var c = $Z[b]; + if (c) { + c.BoomDieGif = 11; + c.Altitude = 1; + c.OSpeed = c.Speed = 1.6; + c.getFreeze = OrnIZombies.prototype.getFreeze; + c.EleBody.src = "images/Zombies/BalloonZombie/Walk.gif"; + c.ChkActs = OrnIZombies.prototype.ChkActs; + c.ExplosionDie = function () { + var d = this; + d.EleBody.src = d.PicArr[d.BoomDieGif]; + oSym.addTask(200, ClearChild, [d.Ele]); + d.HP = 0; + delete $Z[d.id]; + d.PZ && oP.MonPrgs(); + d.MulBallNum(); + }; + c.DisappearDie = function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + this.MulBallNum(); + }; + c.CrushDie = function () { + var d = this; + d.GoingDieHead(d.id, d.PicArr, d); + ClearChild(d.Ele); + d.HP = 0; + delete $Z[d.id]; + d.PZ && oP.MonPrgs(); + d.MulBallNum(); + }; + } + }, + [a.id] + ); + }, + getFreeze: function (b, a) { + b.Attack = 50; + b.Speed = 0.5 * b.OSpeed; + oSym.addTask( + 1500, + function (d, c) { + var e = $Z[d]; + e && + e.FreeSlowTime == c && + ((e.FreeSlowTime = 0), + (e.Attack = 100), + (e.Speed = e.OSpeed)); + }, + [a, (b.FreeSlowTime = oSym.Now + 1500)] + ); + }, + NormalDie: function () { + var a = this; + a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); + oSym.addTask(250, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + a.MulBallNum(); + }, + ExplosionDie: function () { + var a = this; + a.EleBody.src = a.PicArr[a.BoomDieGif]; + oSym.addTask(200, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + a.MulBallNum(); + }, + DisappearDie: function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + this.MulBallNum(); + }, + CrushDie: function () { + this.DisappearDie(); + }, + getDispelled: function () { + if (this.Altitude != 3 || this.AttackedRX < GetX(0)) { + return; + } + this.ChkActs = function () { + return 1; + }; + (function (id) { + var o = $Z[id]; + if (!o) return; + var d = (o.WalkDirection = 1), + R = o.R, + C = GetC(o.AttackedLX), + sx = 50; + o.AttackedLX += sx; + o.ZX += sx; + o.X += sx; + if (o.AttackedLX > oS.W) { + o.DisappearDie(); + return; + } + SetStyle($(id), { left: o.X + "px" }); + oSym.addTask(2, arguments.callee, [id]); + })(this.id); + }, + getFirePeaSputtering: function () { + this.Altitude == 1 && this.getHit0(this, 13); + }, + prepareBirth: oZomboni.prototype.prepareBirth, + })); (oJY = InheritO(oBalloonZombie, { - EName: "oJY", - CName: "Fish Thrower Imp", - OrnHP: 1, - HP: 1, - PicArr: (function () { - var a = "images/Zombies/JY/"; - return [ - "images/Card/Zombies/JY.png", - a + "0.gif", - a + "1.gif", - a + "Attack.gif", - a + "Walk2.gif", - a + "Attack2.gif", - a + "Head.gif" + $Random, - a + "Die.gif" + $Random, - a + "Boom.gif", - a + "Walk.gif", - a + "Drop.gif", - a + "Boom2.gif", - a + "BalloonZombie.gif", - ]; - })(), - Produce: - '贱鱼僵尸利用鱼形飞行器,躲过了陆地上的攻击。

速度:
特点:飞行
弱点:仙人掌

曾经站在巨人肩膀上的他也想要体验做巨人的感觉,他把鱼形飞行器系在背上,可让他万万没想到,这玩意居然让自己飞了起来!', - GetDX: function () { - return -10; - }, - BirthCallBack: function (e) { - var d = e.delayT, - c = e.id, - a = (e.Ele = $(c)), - f = oGd.$Balloon, - b = e.R; - e.EleShadow = a.firstChild; - e.EleBody = a.childNodes[1]; - d - ? oSym.addTask( - d, - function (i, g) { - var j = $Z[i], - k = oGd.$Balloon, - h = j.R; - j && ((j.FreeSetbodyTime = 0), SetBlock(g)); - k[h] == undefined ? (k[h] = 1) : ++k[h]; - PlayAudio("ballooninflate"); - }, - [c, a] - ) - : (SetBlock(a), - f[b] == undefined ? (f[b] = 1) : ++f[b], - PlayAudio("ballooninflate")); - }, - ChkActs: function (f, d, g, c) { - var b, a, e; - !(f.FreeFreezeTime || f.FreeSetbodyTime) - ? (a = f.AttackedRX -= b = f.Speed) < -50 - ? (g.splice(c, 1), f.DisappearDie(), (e = 0)) - : (a < 100 && - !f.PointZombie && - ((f.PointZombie = 1), - !oS.CardKind && - (StopMusic(), PlayAudio("losemusic", false)), - f.ChangeR({ - R: d, - ar: [oS.R - 1], - CustomTop: 400 - f.height + f.GetDY(), - })), - (f.ZX = f.AttackedLX -= b), - (f.Ele.style.left = Math.floor((f.X -= b)) + "px"), - (e = 1)) - : (e = 1); - return e; - }, - Drop: function () { - var a = this; - PlayAudio("balloon_pop"); - a.EleBody.src = "images/Zombies/JY/Drop.gif" + $Random + Math.random(); - a.ChkActs = function () { - return 1; - }; - a.Altitude = 4; - --oGd.$Balloon[a.R]; - oSym.addTask( - 120, - function (b) { - var c = $Z[b]; - if (c) { - c.BoomDieGif = 11; - c.Altitude = 1; - c.OSpeed = c.Speed = 1.6; - c.getFreeze = OrnIZombies.prototype.getFreeze; - c.EleBody.src = "images/Zombies/JY/Walk.gif"; - c.ChkActs = OrnIZombies.prototype.ChkActs; - c.ExplosionDie = function () { - var d = this; - d.EleBody.src = d.PicArr[d.BoomDieGif]; - oSym.addTask(200, ClearChild, [d.Ele]); - d.HP = 0; - delete $Z[d.id]; - d.PZ && oP.MonPrgs(); - }; - c.DisappearDie = function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }; - c.CrushDie = function () { - var d = this; - d.GoingDieHead(d.id, d.PicArr, d); - ClearChild(d.Ele); - d.HP = 0; - delete $Z[d.id]; - d.PZ && oP.MonPrgs(); - }; - } - }, - [a.id] - ); - }, - getFreeze: function (b, a) { - b.Attack = 50; - b.Speed = 0.5 * b.OSpeed; - oSym.addTask( - 1500, - function (d, c) { - var e = $Z[d]; - e && - e.FreeSlowTime == c && - ((e.FreeSlowTime = 0), - (e.Attack = 100), - (e.Speed = e.OSpeed)); - }, - [a, (b.FreeSlowTime = oSym.Now + 1500)] - ); - }, - NormalDie: function () { - var a = this; - a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); - oSym.addTask(250, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - ExplosionDie: function () { - var a = this; - a.EleBody.src = a.PicArr[a.BoomDieGif]; - oSym.addTask(200, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - --oGd.$Balloon[a.R]; - }, - DisappearDie: function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - --oGd.$Balloon[this.R]; - }, - CrushDie: function () { - this.DisappearDie(); - }, + EName: "oJY", + CName: "Fish Thrower Imp", + OrnHP: 1, + HP: 1, + PicArr: (function () { + var a = "images/Zombies/JY/"; + return [ + "images/Card/Zombies/JY.png", + a + "0.gif", + a + "1.gif", + a + "Attack.gif", + a + "Walk2.gif", + a + "Attack2.gif", + a + "Head.gif" + $Random, + a + "Die.gif" + $Random, + a + "Boom.gif", + a + "Walk.gif", + a + "Drop.gif", + a + "Boom2.gif", + a + "BalloonZombie.gif", + ]; + })(), + Produce: + '贱鱼僵尸利用鱼形飞行器,躲过了陆地上的攻击。

速度:
特点:飞行
弱点:仙人掌

曾经站在巨人肩膀上的他也想要体验做巨人的感觉,他把鱼形飞行器系在背上,可让他万万没想到,这玩意居然让自己飞了起来!', + GetDX: function () { + return -10; + }, + BirthCallBack: function (e) { + var d = e.delayT, + c = e.id, + a = (e.Ele = $(c)), + f = oGd.$Balloon, + b = e.R; + e.EleShadow = a.firstChild; + e.EleBody = a.childNodes[1]; + d + ? oSym.addTask( + d, + function (i, g) { + var j = $Z[i], + k = oGd.$Balloon, + h = j.R; + j && ((j.FreeSetbodyTime = 0), SetBlock(g)); + k[h] == undefined ? (k[h] = 1) : ++k[h]; + PlayAudio("ballooninflate"); + }, + [c, a] + ) + : (SetBlock(a), + f[b] == undefined ? (f[b] = 1) : ++f[b], + PlayAudio("ballooninflate")); + }, + ChkActs: function (f, d, g, c) { + var b, a, e; + !(f.FreeFreezeTime || f.FreeSetbodyTime) + ? (a = f.AttackedRX -= b = f.Speed) < -50 + ? (g.splice(c, 1), f.DisappearDie(), (e = 0)) + : (a < 100 && + !f.PointZombie && + ((f.PointZombie = 1), + !oS.CardKind && + (StopMusic(), PlayAudio("losemusic", false)), + f.ChangeR({ + R: d, + ar: [oS.R - 1], + CustomTop: 400 - f.height + f.GetDY(), + })), + (f.ZX = f.AttackedLX -= b), + (f.Ele.style.left = Math.floor((f.X -= b)) + "px"), + (e = 1)) + : (e = 1); + return e; + }, + Drop: function () { + var a = this; + PlayAudio("balloon_pop"); + a.EleBody.src = "images/Zombies/JY/Drop.gif" + $Random + Math.random(); + a.ChkActs = function () { + return 1; + }; + a.Altitude = 4; + --oGd.$Balloon[a.R]; + oSym.addTask( + 120, + function (b) { + var c = $Z[b]; + if (c) { + c.BoomDieGif = 11; + c.Altitude = 1; + c.OSpeed = c.Speed = 1.6; + c.getFreeze = OrnIZombies.prototype.getFreeze; + c.EleBody.src = "images/Zombies/JY/Walk.gif"; + c.ChkActs = OrnIZombies.prototype.ChkActs; + c.ExplosionDie = function () { + var d = this; + d.EleBody.src = d.PicArr[d.BoomDieGif]; + oSym.addTask(200, ClearChild, [d.Ele]); + d.HP = 0; + delete $Z[d.id]; + d.PZ && oP.MonPrgs(); + }; + c.DisappearDie = function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }; + c.CrushDie = function () { + var d = this; + d.GoingDieHead(d.id, d.PicArr, d); + ClearChild(d.Ele); + d.HP = 0; + delete $Z[d.id]; + d.PZ && oP.MonPrgs(); + }; + } + }, + [a.id] + ); + }, + getFreeze: function (b, a) { + b.Attack = 50; + b.Speed = 0.5 * b.OSpeed; + oSym.addTask( + 1500, + function (d, c) { + var e = $Z[d]; + e && + e.FreeSlowTime == c && + ((e.FreeSlowTime = 0), + (e.Attack = 100), + (e.Speed = e.OSpeed)); + }, + [a, (b.FreeSlowTime = oSym.Now + 1500)] + ); + }, + NormalDie: function () { + var a = this; + a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); + oSym.addTask(250, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + ExplosionDie: function () { + var a = this; + a.EleBody.src = a.PicArr[a.BoomDieGif]; + oSym.addTask(200, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + --oGd.$Balloon[a.R]; + }, + DisappearDie: function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + --oGd.$Balloon[this.R]; + }, + CrushDie: function () { + this.DisappearDie(); + }, })), - (oCZombie = InheritO(OrnNoneZombies, { - EName: "oCZombie", - CName: "Commoner Zombie", - StandGif: 9, - PicArr: (function () { - var a = "images/Zombies/wall/Zombie/"; - return [ - "images/Card/Zombies/CZombie.png", - a + "0.gif", - a + "Zombie.gif", - a + "ZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - Produce: - '身着古装的僵尸。

韧性:

这样的庶民气质是不是让你想到了普通僵尸?是的,他是普通僵尸在中国的远房表亲。这一族都是忠实的脑髓追求者。', - })), - (oCZombie2 = InheritO( - oCZombie, - { EName: "oCZombie2" }, - { - PicArr: { - 2: "images/Zombies/wall/Zombie/Zombie.gif", - 9: "images/Zombies/wall/Zombie/1.gif", - }, - } - )), - (oCZombie3 = InheritO( - oCZombie, - { EName: "oCZombie3" }, - { - PicArr: { - 2: "images/Zombies/wall/Zombie/Zombie.gif", - 9: "images/Zombies/wall/Zombie/1.gif", - }, - } - )); + (oCZombie = InheritO(OrnNoneZombies, { + EName: "oCZombie", + CName: "Commoner Zombie", + StandGif: 9, + PicArr: (function () { + var a = "images/Zombies/wall/Zombie/"; + return [ + "images/Card/Zombies/CZombie.png", + a + "0.gif", + a + "Zombie.gif", + a + "ZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + Produce: + '身着古装的僵尸。

韧性:

这样的庶民气质是不是让你想到了普通僵尸?是的,他是普通僵尸在中国的远房表亲。这一族都是忠实的脑髓追求者。', + })), + (oCZombie2 = InheritO( + oCZombie, + { EName: "oCZombie2" }, + { + PicArr: { + 2: "images/Zombies/wall/Zombie/Zombie.gif", + 9: "images/Zombies/wall/Zombie/1.gif", + }, + } + )), + (oCZombie3 = InheritO( + oCZombie, + { EName: "oCZombie3" }, + { + PicArr: { + 2: "images/Zombies/wall/Zombie/Zombie.gif", + 9: "images/Zombies/wall/Zombie/1.gif", + }, + } + )); oCConeheadZombie = InheritO(OrnIZombies, { - EName: "oCConeheadZombie", - CName: "Bamboo Baskethead Zombie", - OrnHP: 370, - Lvl: 2, - SunNum: 75, - StandGif: 11, + EName: "oCConeheadZombie", + CName: "Bamboo Baskethead Zombie", + OrnHP: 370, + Lvl: 2, + SunNum: 75, + StandGif: 11, - PicArr: (function () { - var b = "images/Zombies/wall/ConeheadZombie/", - a = "images/Zombies/wall/Zombie/"; - return [ - "images/Card/Zombies/CConeheadZombie.png", - b + "0.gif", - b + "ConeheadZombie.gif", - b + "ConeheadZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "Zombie.gif", - a + "ZombieAttack.gif", - b + "1.gif", - ]; - })(), - AudioArr: ["plastichit"], - PlayNormalballAudio: function () { - PlayAudio("plastichit"); - }, - Produce: - '他的竹篓头盔使他更能经受来自植物的打击

韧性:携带一般防具

竹篓僵尸是个持家的好父亲,他最大的爱好就是追着别人询问哪里可以买到特价的脑子。', + PicArr: (function () { + var b = "images/Zombies/wall/ConeheadZombie/", + a = "images/Zombies/wall/Zombie/"; + return [ + "images/Card/Zombies/CConeheadZombie.png", + b + "0.gif", + b + "ConeheadZombie.gif", + b + "ConeheadZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "Zombie.gif", + a + "ZombieAttack.gif", + b + "1.gif", + ]; + })(), + AudioArr: ["plastichit"], + PlayNormalballAudio: function () { + PlayAudio("plastichit"); + }, + Produce: + '他的竹篓头盔使他更能经受来自植物的打击

韧性:携带一般防具

竹篓僵尸是个持家的好父亲,他最大的爱好就是追着别人询问哪里可以买到特价的脑子。', }); oCBucketheadZombie = InheritO( - oCConeheadZombie, - { - EName: "oCBucketheadZombie", - CName: "Beggar Zombie", - OrnHP: 1100, - Lvl: 3, - SunNum: 125, + oCConeheadZombie, + { + EName: "oCBucketheadZombie", + CName: "Beggar Zombie", + OrnHP: 1100, + Lvl: 3, + SunNum: 125, - PlayNormalballAudio: function () { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - }, - Produce: - '他的瓷碗能有效抵挡弹丸的冲击

韧性:携带坚固防具

僵尸们都不忍心把乞丐僵尸送上战场,他们害怕听到“碎了一个,碎了两个…”。', - }, - { - PicArr: { - 0: "images/Card/Zombies/CBucketheadZombie.png", - 1: "images/Zombies/wall/BucketheadZombie/0.gif", - 2: "images/Zombies/wall/BucketheadZombie/BucketheadZombie.gif", - 3: "images/Zombies/wall/BucketheadZombie/BucketheadZombieAttack.gif", - 9: "images/Zombies/wall/Zombie/Zombie.gif", - 11: "images/Zombies/wall/BucketheadZombie/1.gif", - }, - } + PlayNormalballAudio: function () { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + }, + Produce: + '他的瓷碗能有效抵挡弹丸的冲击

韧性:携带坚固防具

僵尸们都不忍心把乞丐僵尸送上战场,他们害怕听到“碎了一个,碎了两个…”。', + }, + { + PicArr: { + 0: "images/Card/Zombies/CBucketheadZombie.png", + 1: "images/Zombies/wall/BucketheadZombie/0.gif", + 2: "images/Zombies/wall/BucketheadZombie/BucketheadZombie.gif", + 3: "images/Zombies/wall/BucketheadZombie/BucketheadZombieAttack.gif", + 9: "images/Zombies/wall/Zombie/Zombie.gif", + 11: "images/Zombies/wall/BucketheadZombie/1.gif", + }, + } ); (othugZombie = InheritO(OrnNoneZombies, { - EName: "othugZombie", - CName: "Assassin Zombie", - HP: 550, - width: 348, - height: 218, - OSpeed: 1.5, - Speed: 1.5, - beAttackedPointL: 215, - beAttackedPointR: 260, - StandGif: 13, + EName: "othugZombie", + CName: "Assassin Zombie", + HP: 550, + width: 348, + height: 218, + OSpeed: 1.5, + Speed: 1.5, + beAttackedPointL: 215, + beAttackedPointR: 260, + StandGif: 13, - GetDX: function () { - return -238; - }, - GetDY: function () { - return 2; - }, - Lvl: 2, - SunNum: 75, - PicArr: (function () { - var a = "images/Zombies/wall/thugZombie/"; - return [ - "images/Card/Zombies/thugZombie.png", - a + "0.gif", - a + "PoleVaultingZombie.gif", - a + "PoleVaultingZombieAttack.gif", - a + "PoleVaultingZombieLostHead.gif", - a + "PoleVaultingZombieLostHeadAttack.gif", - a + "PoleVaultingZombieHead.gif" + $Random, - a + "PoleVaultingZombieDie.gif" + $Random, - "images/Zombies/PoleVaultingZombie/BoomDie.gif" + $Random, - a + "PoleVaultingZombieWalk.gif", - a + "PoleVaultingZombieLostHeadWalk.gif", - a + "PoleVaultingZombieJump.gif", - a + "PoleVaultingZombieJump2.gif", - a + "1.gif", - ]; - })(), - Produce: - '刺客僵尸出其不意地突破你的阵型

韧性:

刺客,生前经受着残酷的训练;死后,他们虽然已经忘记了刺杀的使命,但是反复训练过的轻功奇术却还熟记于心,当然还有那忘不了的美味脑子。', - getShadow: function (a) { - return ( - "left:" + - (a.beAttackedPointL - 20) + - "px;top:" + - (a.height - 35) + - "px" - ); - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "left:" + - b.X + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - JudgeAttack: function () { - var g = this, - b = g.ZX, - d = g.R + "_", - c = GetC(b), - h = oGd.$, - f, - a, - e = b - 74; - for (f = c - 2; f <= c; f++) { - if (f > 9) { - continue; - } - for ( - a = 2; - a > -1; - (p = h[d + f + "_" + a--]) && - (p.EName != "oBrains" - ? p.AttackedRX >= e && - p.AttackedLX < b && - p.canEat && - ((a = -1), - (g.JudgeAttack = CZombies.prototype.JudgeAttack), - g.NormalAttack(g.id, p.id, p.AttackedLX)) - : p.AttackedRX >= b && - p.AttackedLX < b && - ((a = -1), - (g.JudgeAttack = CZombies.prototype.JudgeAttack), - (g.NormalAttack = CZombies.prototype.NormalAttack)( - g.id, - p.id - ))) - ) {} - } - }, - getCrushed: function (a) { - this.NormalAttack(this.id, a.id, a.AttackedLX); - this.getCrushed = function () { - return false; - }; - a.Stature > 0 && - oSym.addTask( - 50, - function (c) { - var b = $Z[c]; - b && b.CrushDie(); - }, - [this.id] - ); - return false; - }, - getRaven: function (a) { - return ( - !this.isAttacking && - this.NormalAttack(this.id, a, $P[a].AttackedLX), - 0 - ); - }, - NormalAttack: function (d, b, g) { - var f = $Z[d], - a = f.Ele, - c = f.EleShadow, - e = f.EleBody; - e.src = - "images/Zombies/wall/thugZombie/PoleVaultingZombieJump.gif" + - $Random + - Math.random(); - SetHidden(c); - f.isAttacking = 2; - f.Altitude = 2; - f.getFreeze = function () { - f.getSnowPea(f, 20); - }; - oSym.addTask( - 50, - function (h) { - $Z[h] && PlayAudio("polevault"); - }, - [d] - ); - oSym.addTask( - 100, - function (m, j, i, l, n) { - var h = $Z[m], - k, - q, - r; - h && - ((k = $P[j]) && k.Stature > 0 - ? ((h.AttackedRX = - (h.X = - (h.AttackedLX = h.ZX = q = k.AttackedRX) - - h.beAttackedPointL) + h.beAttackedPointR), - SetStyle(i, { left: h.X + "px" }), - (n.src = - "images/Zombies/wall/thugZombie/PoleVaultingZombieWalk.gif"), - SetVisible(l), - (h.isAttacking = 0), - (h.Altitude = 1), - (h.OSpeed = h.Speed = 1.6), - (h.NormalGif = 9), - (h.LostHeadGif = 10), - (h.NormalAttack = (r = - CZombies.prototype).NormalAttack), - (h.getCrushed = r.getCrushed), - (h.getFreeze = r.getFreeze), - (h.getRaven = r.getRaven)) - : ((h.ZX = h.AttackedLX = - (h.X = (h.AttackedRX = g) - h.beAttackedPointR) + - h.beAttackedPointL), - SetStyle(i, { left: h.X + "px" }), - (n.src = - "images/Zombies/wall/thugZombie/PoleVaultingZombieJump2.gif" + - $Random + - Math.random()), - SetVisible(l), - oSym.addTask( - 80, - function (s, v) { - var u = $Z[s], - t; - u && - ((v.src = - "images/Zombies/wall/thugZombie/PoleVaultingZombieWalk.gif"), - (u.isAttacking = 0), - (u.Altitude = 1), - (u.OSpeed = u.Speed = 1.2), - (u.NormalGif = 9), - (u.LostHeadGif = 10), - (u.NormalAttack = (t = - CZombies.prototype).NormalAttack), - (u.getCrushed = t.getCrushed), - (u.getFreeze = t.getFreeze), - (u.getRaven = t.getRaven)); - }, - [m, n] - ))); - }, - [d, b, a, c, e] - ); - }, + GetDX: function () { + return -238; + }, + GetDY: function () { + return 2; + }, + Lvl: 2, + SunNum: 75, + PicArr: (function () { + var a = "images/Zombies/wall/thugZombie/"; + return [ + "images/Card/Zombies/thugZombie.png", + a + "0.gif", + a + "PoleVaultingZombie.gif", + a + "PoleVaultingZombieAttack.gif", + a + "PoleVaultingZombieLostHead.gif", + a + "PoleVaultingZombieLostHeadAttack.gif", + a + "PoleVaultingZombieHead.gif" + $Random, + a + "PoleVaultingZombieDie.gif" + $Random, + "images/Zombies/PoleVaultingZombie/BoomDie.gif" + $Random, + a + "PoleVaultingZombieWalk.gif", + a + "PoleVaultingZombieLostHeadWalk.gif", + a + "PoleVaultingZombieJump.gif", + a + "PoleVaultingZombieJump2.gif", + a + "1.gif", + ]; + })(), + Produce: + '刺客僵尸出其不意地突破你的阵型

韧性:

刺客,生前经受着残酷的训练;死后,他们虽然已经忘记了刺杀的使命,但是反复训练过的轻功奇术却还熟记于心,当然还有那忘不了的美味脑子。', + getShadow: function (a) { + return ( + "left:" + + (a.beAttackedPointL - 20) + + "px;top:" + + (a.height - 35) + + "px" + ); + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "left:" + + b.X + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + JudgeAttack: function () { + var g = this, + b = g.ZX, + d = g.R + "_", + c = GetC(b), + h = oGd.$, + f, + a, + e = b - 74; + for (f = c - 2; f <= c; f++) { + if (f > 9) { + continue; + } + for ( + a = 2; + a > -1; + (p = h[d + f + "_" + a--]) && + (p.EName != "oBrains" + ? p.AttackedRX >= e && + p.AttackedLX < b && + p.canEat && + ((a = -1), + (g.JudgeAttack = CZombies.prototype.JudgeAttack), + g.NormalAttack(g.id, p.id, p.AttackedLX)) + : p.AttackedRX >= b && + p.AttackedLX < b && + ((a = -1), + (g.JudgeAttack = CZombies.prototype.JudgeAttack), + (g.NormalAttack = CZombies.prototype.NormalAttack)( + g.id, + p.id + ))) + ) {} + } + }, + getCrushed: function (a) { + this.NormalAttack(this.id, a.id, a.AttackedLX); + this.getCrushed = function () { + return false; + }; + a.Stature > 0 && + oSym.addTask( + 50, + function (c) { + var b = $Z[c]; + b && b.CrushDie(); + }, + [this.id] + ); + return false; + }, + getRaven: function (a) { + return ( + !this.isAttacking && + this.NormalAttack(this.id, a, $P[a].AttackedLX), + 0 + ); + }, + NormalAttack: function (d, b, g) { + var f = $Z[d], + a = f.Ele, + c = f.EleShadow, + e = f.EleBody; + e.src = + "images/Zombies/wall/thugZombie/PoleVaultingZombieJump.gif" + + $Random + + Math.random(); + SetHidden(c); + f.isAttacking = 2; + f.Altitude = 2; + f.getFreeze = function () { + f.getSnowPea(f, 20); + }; + oSym.addTask( + 50, + function (h) { + $Z[h] && PlayAudio("polevault"); + }, + [d] + ); + oSym.addTask( + 100, + function (m, j, i, l, n) { + var h = $Z[m], + k, + q, + r; + h && + ((k = $P[j]) && k.Stature > 0 + ? ((h.AttackedRX = + (h.X = + (h.AttackedLX = h.ZX = q = k.AttackedRX) - + h.beAttackedPointL) + h.beAttackedPointR), + SetStyle(i, { left: h.X + "px" }), + (n.src = + "images/Zombies/wall/thugZombie/PoleVaultingZombieWalk.gif"), + SetVisible(l), + (h.isAttacking = 0), + (h.Altitude = 1), + (h.OSpeed = h.Speed = 1.6), + (h.NormalGif = 9), + (h.LostHeadGif = 10), + (h.NormalAttack = (r = + CZombies.prototype).NormalAttack), + (h.getCrushed = r.getCrushed), + (h.getFreeze = r.getFreeze), + (h.getRaven = r.getRaven)) + : ((h.ZX = h.AttackedLX = + (h.X = + (h.AttackedRX = g) - h.beAttackedPointR) + + h.beAttackedPointL), + SetStyle(i, { left: h.X + "px" }), + (n.src = + "images/Zombies/wall/thugZombie/PoleVaultingZombieJump2.gif" + + $Random + + Math.random()), + SetVisible(l), + oSym.addTask( + 80, + function (s, v) { + var u = $Z[s], + t; + u && + ((v.src = + "images/Zombies/wall/thugZombie/PoleVaultingZombieWalk.gif"), + (u.isAttacking = 0), + (u.Altitude = 1), + (u.OSpeed = u.Speed = 1.2), + (u.NormalGif = 9), + (u.LostHeadGif = 10), + (u.NormalAttack = (t = + CZombies.prototype).NormalAttack), + (u.getCrushed = t.getCrushed), + (u.getFreeze = t.getFreeze), + (u.getRaven = t.getRaven)); + }, + [m, n] + ))); + }, + [d, b, a, c, e] + ); + }, })), - (oEunZombie = InheritO(OrnIIZombies, { - EName: "oEunZombie", - CName: "Talisman Zombie", - OrnHP: 500, - HP: 270, - Lvl: 2, - LostPaperGif: 13, - StandGif: 14, - width: 216, - height: 164, - beAttackedPointL: 60, - beAttackedPointR: 130, - Speed: 1.5, - LostPaperSpeed: 1.5, - PicArr: (function () { - var a = "images/Zombies/wall/EunZombie/"; - return [ - "images/Card/Zombies/EunZombie.png", - a + "0.gif", - a + "HeadWalk1.gif", - a + "HeadAttack1.gif", - a + "LostHeadWalk1.gif", - a + "LostHeadAttack1.gif", - a + "HeadWalk0.gif", - a + "HeadAttack0.gif", - a + "LostHeadWalk0.gif", - a + "LostHeadAttack0.gif", - a + "Head.gif" + $Random, - a + "Die.gif" + $Random, - "images/Zombies/NewspaperZombie/BoomDie.gif" + $Random, - a + "LostNewspaper.gif", - a + "1.gif", - ]; - })(), - Produce: - '同样是尸变,这位老兄不大一样

韧性:
特点:灵符被打掉后会进入爆发状态

灵符僵尸生前官至一品,所以尽管他已经不能好好走路了,他还是时刻提醒自己:穿好袍子、戴好顶戴…。', - getShadow: function (a) { - return "left:75px;top:" + (a.height - 25) + "px"; - }, - GoingDie: function (b) { - var a = this, - c = a.id; - a.EleBody.src = b; - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a.PicArr[a.HeadGif] + Math.random(), - "left:" + - a.AttackedLX + - "px;top:" + - (a.pixelTop - 20) + - "px;z-index:" + - a.zIndex, - EDPZ - ), - ]); - a.beAttacked = 0; - a.FreeFreezeTime = a.FreeSetbodyTime = a.FreeSlowTime = 0; - a.AutoReduceHP(c); - }, - getHurtOrnLost: function (j, a, g, m, c, l, k, i) { - var e = this; - if (!e.beAttacked) { - k && e.DisappearDie(); - return; - } - var b = e.id, - h = e.HP, - d = e.PicArr, - f = e.isAttacking; - switch (true) { - case (h -= g) < 1: - e.HP = 0; - e.NormalDie(); - return; - case h < 91: - e.HP = h; - e.GoingDie( - d[[e.OrnLostHeadNormalGif, e.OrnLostHeadAttackGif][f]] - ); - return; - } - e.HP = h; - switch (m) { - case -1: - e.getSlow(e, b, 1e3); - break; - case 1: - e.getFireball(e, b, a); - break; - default: - !i && j == -1 && e.PlayNormalballAudio(); - } - SetAlpha(e.EleBody, 50, 0.5); - oSym.addTask( - 10, - function (q) { - var n = $Z[q]; - n && SetAlpha(n.EleBody, 100, 1); - }, - [b] - ); - }, - getSnowPea: function (c, a, b) { - PlayAudio("splat" + Math.floor(1 + Math.random() * 3)); - c.getHit0(c, a, b); - }, - getFirePea: function (f, b, e) { - f.PlayFireballAudio(); - (f.FreeSlowTime || f.FreeFreezeTime) && - ((f.Speed = f.OSpeed), - (f.FreeSlowTime = 0), - (f.FreeFreezeTime = 0)); - f.Attack = 110; - var d = f.AttackedLX, - g = f.AttackedRX, - a = oZ.getArZ(d, d + 40, f.R), - c = a.length, - h; - while (c--) { - (h = a[c]) != this && h.getFirePeaSputtering(); - } - (f.HP -= b) < f.BreakPoint - ? ((f.getFirePea = OrnNoneZombies.prototype.getFirePea), - f.GoingDie( - f.PicArr[ - [f.LostHeadGif, f.LostHeadAttackGif][f.isAttacking] - ] - ), - (f.getHit = - f.getHit0 = - f.getHit1 = - f.getHit2 = - f.getHit3 = - function () {})) - : (f.CheckOrnHP( - f, - f.id, - f.OrnHP, - b, - f.PicArr, - f.isAttacking, - 0 - ), - f.SetAlpha(f, f.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (j, i) { - (i = $Z[j]) && i.SetAlpha(i, i.EleBody, 100, 1); - }, - [f.id] - )); - }, - getHit0: function (c, a, b) { - b == c.WalkDirection - ? (c.CheckOrnHP( - c, - c.id, - c.OrnHP, - a, - c.PicArr, - c.isAttacking, - 1 - ), - c.SetAlpha(c, c.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (e, d) { - (d = $Z[e]) && d.SetAlpha(d, d.EleBody, 100, 1); - }, - [c.id] - )) - : (c.HP -= a) < c.BreakPoint && - (c.GoingDie( - c.PicArr[ - [c.LostHeadGif, c.LostHeadAttackGif][c.isAttacking] - ] - ), - (c.getFirePea = OrnNoneZombies.prototype.getFirePea), - (c.getSnowPea = OrnNoneZombies.prototype.getSnowPea), - (c.getHit = - c.getHit0 = - c.getHit1 = - c.getHit2 = - c.getHit3 = - function () {})); - }, - getHit1: function (b, a) { - (b.HP -= a) < b.BreakPoint - ? (b.GoingDie( - b.PicArr[ - [b.LostHeadGif, b.LostHeadAttackGif][b.isAttacking] - ] - ), - (b.getFirePea = OrnNoneZombies.prototype.getFirePea), - (b.getSnowPea = OrnNoneZombies.prototype.getSnowPea), - (b.getHit = - b.getHit0 = - b.getHit1 = - b.getHit2 = - b.getHit3 = - function () {})) - : (b.CheckOrnHP( - b, - b.id, - b.OrnHP, - a, - b.PicArr, - b.isAttacking, - 0 - ), - b.SetAlpha(b, b.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (d, c) { - (c = $Z[d]) && c.SetAlpha(c, c.EleBody, 100, 1); - }, - [b.id] - )); - }, - getHit2: function (b, a) { - (b.HP -= a) < b.BreakPoint - ? (b.GoingDie( - b.PicArr[ - [b.LostHeadGif, b.LostHeadAttackGif][b.isAttacking] - ] - ), - (b.getFirePea = OrnNoneZombies.prototype.getFirePea), - (b.getSnowPea = OrnNoneZombies.prototype.getSnowPea), - (b.getHit = - b.getHit0 = - b.getHit1 = - b.getHit2 = - b.getHit3 = - function () {})) - : (b.SetAlpha(b, b.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (d, c) { - (c = $Z[d]) && c.SetAlpha(c, c.EleBody, 100, 1); - }, - [b.id] - )); - }, - getHit3: function (b, a) { - (b.HP -= a) < b.BreakPoint - ? (b.GoingDie( - b.PicArr[ - [b.LostHeadGif, b.LostHeadAttackGif][b.isAttacking] - ] - ), - (b.getFirePea = OrnNoneZombies.prototype.getFirePea), - (b.getSnowPea = OrnNoneZombies.prototype.getSnowPea), - (b.getHit = - b.getHit0 = - b.getHit1 = - b.getHit2 = - b.getHit3 = - function () {})) - : (b.CheckOrnHP( - b, - b.id, - b.OrnHP, - a, - b.PicArr, - b.isAttacking, - 0 - ), - b.SetAlpha(b, b.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (d, c) { - (c = $Z[d]) && c.SetAlpha(c, c.EleBody, 100, 1); - }, - [b.id] - )); - }, - CheckOrnHP: function (g, h, d, c, f, b, a) { - var e = OrnNoneZombies.prototype; - (g.OrnHP = d -= c) < 1 && - (a && (g.HP += d), - (g.ChkActs = function () { - return 1; - }), - (g.ChkActs1 = function () { - return 1; - }), - (g.EleBody.src = f[g.LostPaperGif] + $Random + Math.random()), - (g.Ornaments = 0), - (g.LostHeadGif = 8), - (g.LostHeadAttackGif = 9), - (g.getFirePea = e.getFirePea), - (g.getSnowPea = e.getSnowPea), - (g.getHit = - g.getHit0 = - g.getHit1 = - g.getHit2 = - g.getHit3 = - e.getHit), - oSym.addTask( - 150, - function (m, l) { - var k = $Z[m]; - if (!k) { - return; - } - var j = CZombies.prototype, - i = (k.OSpeed = k.LostPaperSpeed); - k.ChkActs = j.ChkActs; - k.ChkActs1 = j.ChkActs1; - k.Speed && (k.Speed = !k.FreeSlowTime ? i : 0.5 * i); - if (!k.beAttacked) { - return; - } - PlayAudio("newspaper_rarrgh2"); - k.EleBody.src = l; - k.JudgeAttack(); - }, - [ - h, - f[ - [ - (g.NormalGif = g.OrnLostNormalGif), - (g.AttackGif = g.OrnLostAttackGif), - ][b] - ], - ] - )); - }, - })); + (oEunZombie = InheritO(OrnIIZombies, { + EName: "oEunZombie", + CName: "Talisman Zombie", + OrnHP: 500, + HP: 270, + Lvl: 2, + LostPaperGif: 13, + StandGif: 14, + width: 216, + height: 164, + beAttackedPointL: 60, + beAttackedPointR: 130, + Speed: 1.5, + LostPaperSpeed: 1.5, + PicArr: (function () { + var a = "images/Zombies/wall/EunZombie/"; + return [ + "images/Card/Zombies/EunZombie.png", + a + "0.gif", + a + "HeadWalk1.gif", + a + "HeadAttack1.gif", + a + "LostHeadWalk1.gif", + a + "LostHeadAttack1.gif", + a + "HeadWalk0.gif", + a + "HeadAttack0.gif", + a + "LostHeadWalk0.gif", + a + "LostHeadAttack0.gif", + a + "Head.gif" + $Random, + a + "Die.gif" + $Random, + "images/Zombies/NewspaperZombie/BoomDie.gif" + $Random, + a + "LostNewspaper.gif", + a + "1.gif", + ]; + })(), + Produce: + '同样是尸变,这位老兄不大一样

韧性:
特点:灵符被打掉后会进入爆发状态

灵符僵尸生前官至一品,所以尽管他已经不能好好走路了,他还是时刻提醒自己:穿好袍子、戴好顶戴…。', + getShadow: function (a) { + return "left:75px;top:" + (a.height - 25) + "px"; + }, + GoingDie: function (b) { + var a = this, + c = a.id; + a.EleBody.src = b; + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a.PicArr[a.HeadGif] + Math.random(), + "left:" + + a.AttackedLX + + "px;top:" + + (a.pixelTop - 20) + + "px;z-index:" + + a.zIndex, + EDPZ + ), + ]); + a.beAttacked = 0; + a.FreeFreezeTime = a.FreeSetbodyTime = a.FreeSlowTime = 0; + a.AutoReduceHP(c); + }, + getHurtOrnLost: function (j, a, g, m, c, l, k, i) { + var e = this; + if (!e.beAttacked) { + k && e.DisappearDie(); + return; + } + var b = e.id, + h = e.HP, + d = e.PicArr, + f = e.isAttacking; + switch (true) { + case (h -= g) < 1: + e.HP = 0; + e.NormalDie(); + return; + case h < 91: + e.HP = h; + e.GoingDie( + d[[e.OrnLostHeadNormalGif, e.OrnLostHeadAttackGif][f]] + ); + return; + } + e.HP = h; + switch (m) { + case -1: + e.getSlow(e, b, 1e3); + break; + case 1: + e.getFireball(e, b, a); + break; + default: + !i && j == -1 && e.PlayNormalballAudio(); + } + SetAlpha(e.EleBody, 50, 0.5); + oSym.addTask( + 10, + function (q) { + var n = $Z[q]; + n && SetAlpha(n.EleBody, 100, 1); + }, + [b] + ); + }, + getSnowPea: function (c, a, b) { + PlayAudio("splat" + Math.floor(1 + Math.random() * 3)); + c.getHit0(c, a, b); + }, + getFirePea: function (f, b, e) { + f.PlayFireballAudio(); + (f.FreeSlowTime || f.FreeFreezeTime) && + ((f.Speed = f.OSpeed), + (f.FreeSlowTime = 0), + (f.FreeFreezeTime = 0)); + f.Attack = 110; + var d = f.AttackedLX, + g = f.AttackedRX, + a = oZ.getArZ(d, d + 40, f.R), + c = a.length, + h; + while (c--) { + (h = a[c]) != this && h.getFirePeaSputtering(); + } + (f.HP -= b) < f.BreakPoint + ? ((f.getFirePea = OrnNoneZombies.prototype.getFirePea), + f.GoingDie( + f.PicArr[ + [f.LostHeadGif, f.LostHeadAttackGif][f.isAttacking] + ] + ), + (f.getHit = + f.getHit0 = + f.getHit1 = + f.getHit2 = + f.getHit3 = + function () {})) + : (f.CheckOrnHP( + f, + f.id, + f.OrnHP, + b, + f.PicArr, + f.isAttacking, + 0 + ), + f.SetAlpha(f, f.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (j, i) { + (i = $Z[j]) && i.SetAlpha(i, i.EleBody, 100, 1); + }, + [f.id] + )); + }, + getHit0: function (c, a, b) { + b == c.WalkDirection + ? (c.CheckOrnHP( + c, + c.id, + c.OrnHP, + a, + c.PicArr, + c.isAttacking, + 1 + ), + c.SetAlpha(c, c.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (e, d) { + (d = $Z[e]) && d.SetAlpha(d, d.EleBody, 100, 1); + }, + [c.id] + )) + : (c.HP -= a) < c.BreakPoint && + (c.GoingDie( + c.PicArr[ + [c.LostHeadGif, c.LostHeadAttackGif][c.isAttacking] + ] + ), + (c.getFirePea = OrnNoneZombies.prototype.getFirePea), + (c.getSnowPea = OrnNoneZombies.prototype.getSnowPea), + (c.getHit = + c.getHit0 = + c.getHit1 = + c.getHit2 = + c.getHit3 = + function () {})); + }, + getHit1: function (b, a) { + (b.HP -= a) < b.BreakPoint + ? (b.GoingDie( + b.PicArr[ + [b.LostHeadGif, b.LostHeadAttackGif][b.isAttacking] + ] + ), + (b.getFirePea = OrnNoneZombies.prototype.getFirePea), + (b.getSnowPea = OrnNoneZombies.prototype.getSnowPea), + (b.getHit = + b.getHit0 = + b.getHit1 = + b.getHit2 = + b.getHit3 = + function () {})) + : (b.CheckOrnHP( + b, + b.id, + b.OrnHP, + a, + b.PicArr, + b.isAttacking, + 0 + ), + b.SetAlpha(b, b.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (d, c) { + (c = $Z[d]) && c.SetAlpha(c, c.EleBody, 100, 1); + }, + [b.id] + )); + }, + getHit2: function (b, a) { + (b.HP -= a) < b.BreakPoint + ? (b.GoingDie( + b.PicArr[ + [b.LostHeadGif, b.LostHeadAttackGif][b.isAttacking] + ] + ), + (b.getFirePea = OrnNoneZombies.prototype.getFirePea), + (b.getSnowPea = OrnNoneZombies.prototype.getSnowPea), + (b.getHit = + b.getHit0 = + b.getHit1 = + b.getHit2 = + b.getHit3 = + function () {})) + : (b.SetAlpha(b, b.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (d, c) { + (c = $Z[d]) && c.SetAlpha(c, c.EleBody, 100, 1); + }, + [b.id] + )); + }, + getHit3: function (b, a) { + (b.HP -= a) < b.BreakPoint + ? (b.GoingDie( + b.PicArr[ + [b.LostHeadGif, b.LostHeadAttackGif][b.isAttacking] + ] + ), + (b.getFirePea = OrnNoneZombies.prototype.getFirePea), + (b.getSnowPea = OrnNoneZombies.prototype.getSnowPea), + (b.getHit = + b.getHit0 = + b.getHit1 = + b.getHit2 = + b.getHit3 = + function () {})) + : (b.CheckOrnHP( + b, + b.id, + b.OrnHP, + a, + b.PicArr, + b.isAttacking, + 0 + ), + b.SetAlpha(b, b.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (d, c) { + (c = $Z[d]) && c.SetAlpha(c, c.EleBody, 100, 1); + }, + [b.id] + )); + }, + CheckOrnHP: function (g, h, d, c, f, b, a) { + var e = OrnNoneZombies.prototype; + (g.OrnHP = d -= c) < 1 && + (a && (g.HP += d), + (g.ChkActs = function () { + return 1; + }), + (g.ChkActs1 = function () { + return 1; + }), + (g.EleBody.src = f[g.LostPaperGif] + $Random + Math.random()), + (g.Ornaments = 0), + (g.LostHeadGif = 8), + (g.LostHeadAttackGif = 9), + (g.getFirePea = e.getFirePea), + (g.getSnowPea = e.getSnowPea), + (g.getHit = + g.getHit0 = + g.getHit1 = + g.getHit2 = + g.getHit3 = + e.getHit), + oSym.addTask( + 150, + function (m, l) { + var k = $Z[m]; + if (!k) { + return; + } + var j = CZombies.prototype, + i = (k.OSpeed = k.LostPaperSpeed); + k.ChkActs = j.ChkActs; + k.ChkActs1 = j.ChkActs1; + k.Speed && (k.Speed = !k.FreeSlowTime ? i : 0.5 * i); + if (!k.beAttacked) { + return; + } + PlayAudio("newspaper_rarrgh2"); + k.EleBody.src = l; + k.JudgeAttack(); + }, + [ + h, + f[ + [ + (g.NormalGif = g.OrnLostNormalGif), + (g.AttackGif = g.OrnLostAttackGif), + ][b] + ], + ] + )); + }, + })); (oZZ = InheritO(OrnNoneZombies, { - EName: "oZZ", - CName: "Wraith Zombie", - Lvl: 4, - HP: 500, - StandGif: 9, - OSpeed: 1.5, - Speed: 1.5, - width: 216, - height: 164, - beAttackedPointL: 60, - beAttackedPointR: 130, - getShadow: function (a) { - return "display:none"; - }, - PicArr: (function () { - var a = "images/Zombies/wall/ZZ/"; - return [ - "images/Card/Zombies/ZZ.png", - a + "0.gif", - a + "Zombie.gif", - a + "ZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/NewspaperZombie/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - Produce: - '怨灵僵尸神出鬼没,很多时候,她甚至是隐形的。

韧性:
特点:有可能抵消子弹攻击

有些鬼魂设法被超度,去不了天堂,只能在人间恶作剧。自从僵尸出现后,怨灵也兴奋了起来,如同找到了自家人。不过她还是像以前一样怕光。', + EName: "oZZ", + CName: "Wraith Zombie", + Lvl: 4, + HP: 500, + StandGif: 9, + OSpeed: 1.5, + Speed: 1.5, + width: 216, + height: 164, + beAttackedPointL: 60, + beAttackedPointR: 130, + getShadow: function (a) { + return "display:none"; + }, + PicArr: (function () { + var a = "images/Zombies/wall/ZZ/"; + return [ + "images/Card/Zombies/ZZ.png", + a + "0.gif", + a + "Zombie.gif", + a + "ZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/NewspaperZombie/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + Produce: + '怨灵僵尸神出鬼没,很多时候,她甚至是隐形的。

韧性:
特点:有可能抵消子弹攻击

有些鬼魂设法被超度,去不了天堂,只能在人间恶作剧。自从僵尸出现后,怨灵也兴奋了起来,如同找到了自家人。不过她还是像以前一样怕光。', })), - (oEmperor = InheritO(oCZombie, { - EName: "oEmperor", - CName: "Emperor Zombot", - HP: 15e3, - width: 464, - height: 364, - beAttackedPointL: 140, - beAttackedPointR: 290, - OSpeed: 1, - Speed: 1, - Attack: 3600, - PlayNormalballAudio: function () { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - }, - PicArr: (function () { - var a = "images/Zombies/wall/Emperor/"; - return [ - "images/Card/Zombies/Emperor.png", - a + "0.gif", - a + "Zombie.gif", - a + "ZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - "images/Zombies/Imp/ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - Produce: - '秦始皇僵尸好霸气,还威风,有木有?

韧性:非常高
速度:

秦始皇做梦都想长生不老!自从变成僵尸,一日三餐吃脑子,果然长生不老!每天在无尽的长城中,追寻脑子......', - })), - (oWJY = InheritO(oEunZombie, { - EName: "oWJY", - CName: "Author Zombie", - HP: 17e3, - OrnHP: 1e4, - lvl: 8, - OSpeed: 0.3, - Speed: 0.3, - Attack: 550, - LostPaperSpeed: 1.5, - PicArr: (function () { - var a = "images/Zombies/WJY/"; - return [ - "images/Card/Zombies/WJY.png", - a + "0.gif", - a + "HeadWalk1.gif", - a + "HeadAttack1.gif", - a + "LostHeadWalk1.gif", - a + "LostHeadAttack1.gif", - a + "HeadWalk0.gif", - a + "HeadAttack0.gif", - a + "LostHeadWalk0.gif", - a + "LostHeadAttack0.gif", - a + "Head.gif" + $Random, - a + "Die.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "LostNewspaper.gif", - a + "1.gif", - ]; - })(), - Produce: - '新一代僵王博士登场。

体力:不死之身

喂!你怎么会在出现在游戏里?我总会听到有玩家这么问。嗯,这都要怪一个叫严启伦的家伙。', - })); + (oEmperor = InheritO(oCZombie, { + EName: "oEmperor", + CName: "Emperor Zombot", + HP: 15e3, + width: 464, + height: 364, + beAttackedPointL: 140, + beAttackedPointR: 290, + OSpeed: 1, + Speed: 1, + Attack: 3600, + PlayNormalballAudio: function () { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + }, + PicArr: (function () { + var a = "images/Zombies/wall/Emperor/"; + return [ + "images/Card/Zombies/Emperor.png", + a + "0.gif", + a + "Zombie.gif", + a + "ZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + "images/Zombies/Imp/ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + Produce: + '秦始皇僵尸好霸气,还威风,有木有?

韧性:非常高
速度:

秦始皇做梦都想长生不老!自从变成僵尸,一日三餐吃脑子,果然长生不老!每天在无尽的长城中,追寻脑子......', + })), + (oWJY = InheritO(oEunZombie, { + EName: "oWJY", + CName: "Author Zombie", + HP: 17e3, + OrnHP: 1e4, + lvl: 8, + OSpeed: 0.3, + Speed: 0.3, + Attack: 550, + LostPaperSpeed: 1.5, + PicArr: (function () { + var a = "images/Zombies/WJY/"; + return [ + "images/Card/Zombies/WJY.png", + a + "0.gif", + a + "HeadWalk1.gif", + a + "HeadAttack1.gif", + a + "LostHeadWalk1.gif", + a + "LostHeadAttack1.gif", + a + "HeadWalk0.gif", + a + "HeadAttack0.gif", + a + "LostHeadWalk0.gif", + a + "LostHeadAttack0.gif", + a + "Head.gif" + $Random, + a + "Die.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "LostNewspaper.gif", + a + "1.gif", + ]; + })(), + Produce: + '新一代僵王博士登场。

体力:不死之身

喂!你怎么会在出现在游戏里?我总会听到有玩家这么问。嗯,这都要怪一个叫严启伦的家伙。', + })); (oWJY1 = InheritO(oDuckyTubeZombie1, { - EName: "oWJY1", - CName: "Author Zombie-Water", - OSpeed: 0.1, - Speed: 0.1, - HP: 2e4, - width: 216, - height: 164, - beAttackedPointL: 60, - beAttackedPointR: 130, - getShadow: function (a) { - return "display:none"; - }, - PicArr: (function () { - var a = "images/Zombies/WJY/water/"; - return [ - "images/Card/Zombies/DuckyTubeZombie1.png", - a + "0.gif", - a + "Walk1.gif", - a + "Walk2.gif", - a + "1.gif", - a + "Attack.gif", - a + "ZombieHead.gif" + $Random, - a + "Die.gif" + $Random, - ]; - })(), - AudioArr: ["zombie_entering_water"], + EName: "oWJY1", + CName: "Author Zombie-Water", + OSpeed: 0.1, + Speed: 0.1, + HP: 2e4, + width: 216, + height: 164, + beAttackedPointL: 60, + beAttackedPointR: 130, + getShadow: function (a) { + return "display:none"; + }, + PicArr: (function () { + var a = "images/Zombies/WJY/water/"; + return [ + "images/Card/Zombies/DuckyTubeZombie1.png", + a + "0.gif", + a + "Walk1.gif", + a + "Walk2.gif", + a + "1.gif", + a + "Attack.gif", + a + "ZombieHead.gif" + $Random, + a + "Die.gif" + $Random, + ]; + })(), + AudioArr: ["zombie_entering_water"], })), - (oXBZombie = InheritO(OrnNoneZombies, { - EName: "oXBZombie", - CName: "Lobsterhead Runner Zombie", - Lvl: 4, - StandGif: 9, - OSpeed: 3.2, - Speed: 3.2, - PicArr: (function () { - var a = "images/Zombies/XB/"; - return [ - "images/Card/Zombies/XB.png", - a + "0.gif", - a + "Zombie.gif", - a + "ZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - Produce: - '流线型的虾头为他带来了比其他僵尸快一倍的速度。

韧性:
弱点:寒冰射手

长期漂浮在海底令他产生了自己在飞的错觉,他坚信把虾戴在头上可以令自己飞得更高更远。', - })), - (oCXZombie = InheritO(oZombie, { - EName: "oCXZombie", - CName: "Tortoise Zombie", - Lvl: 4, - HP: 1300, - OSpeed: 0.5, - Speed: 0.5, - width: 216, - height: 164, - beAttackedPointL: 60, - beAttackedPointR: 130, - PicArr: (function () { - var a = "images/Zombies/CX/"; - return [ - "images/Card/Zombies/CX.png", - a + "0.gif", - a + "Zombie.gif", - a + "ZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/NewspaperZombie/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - Produce: - '他坚硬的龟壳能减小大部分伤害。

韧性:很高
弱点:海星果

为了爬进与自己身形不符的龟壳,他不惜舍弃作为僵尸的尊严,最终在第一百次尝试之后成功把自己挤进了龟壳,再也出不来啦。', - })), - (oICXZombie = InheritO(oZombie, { - EName: "oICXZombie", - CName: "Tortoise Zombie", - Lvl: 4, - SunNum: 300, - HP: 1300, - OSpeed: 0.64, - Speed: 0.64, - width: 216, - height: 164, - beAttackedPointL: 60, - beAttackedPointR: 130, - PicArr: (function () { - var a = "images/Zombies/CX/"; - return [ - "images/Card/Zombies/ICX.png", - a + "0.gif", - a + "Zombie.gif", - a + "ZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - "images/Zombies/NewspaperZombie/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - Produce: - '他坚硬的龟壳能减小大部分伤害。

韧性:很高
弱点:海星果

为了爬进与自己身形不符的龟壳,他不惜舍弃作为僵尸的尊严,最终在第一百次尝试之后成功把自己挤进了龟壳,再也出不来啦。', - })), - (oLGBOSS = (function () { - var a = function (d, b) { - var c = d.HP; - switch (true) { - case (d.HP = c -= b) < 1e3: - d.GoingDie(); - d.getHit0 = - d.getHit1 = - d.getHit2 = - d.getHit3 = - function () {}; - return; - case c < 3e3: - d.EleBody.src = "images/Zombies/LGBOSS/3.gif"; - break; - case c < 5e3: - d.EleBody.src = "images/Zombies/LGBOSS/2.gif"; - } - d.SetAlpha(d, d.EleBody, 50, 0.5); - oSym.addTask( - 10, - function (f, e) { - (e = $Z[f]) && e.SetAlpha(e, e.EleBody, 100, 1); - }, - [d.id] - ); - }; - return InheritO(oZomboni, { - EName: "oLGBOSS", - CName: "Dragon King Zombie", - HP: 6e3, - width: 464, - height: 377, - beAttackedPointL: 140, - beAttackedPointR: 300, - Produce: - '东海龙王拥有无限延长的身躯,带领僵尸大军突破你的阵型。

韧性:不死之身
技能:无限身躯,碾压植物

僵王博士所研制的新一代水下作战机器。博士花了近一年的功夫,从龙王的排水系统到每一个菱角,都进行了细致的打磨加强。此刻这位僵尸天才正沉浸于机器完成的喜悦中。', - PicArr: (function () { - var b = "images/Zombies/LGBOSS/"; - return [ - "images/Card/Zombies/LGBOSS.png", - b + "0.gif", - b + "1.gif", - b + "2.gif", - b + "3.gif", - b + "5.gif" + $Random, - b + "BoomDie.gif" + $Random, - b + "ice.png", - b + "ice_cap.png", - ]; - })(), - AudioArr: ["zamboni", "explosion"], - BirthCallBack: function (h) { - var g = h.delayT, - e = h.id, - c = (h.Ele = $(e)), - d = h.R, - f, - b = oGd.$Ice; - h.EleShadow = c.firstChild; - h.EleBody = c.childNodes[1]; - !b[d] - ? ((f = NewEle( - "dIceCar" + d, - "div", - "position:absolute;z-index:1;left:145px;top:" + - (GetY(d) - 65) + - "px;width:800px;height:205px", - 0, - EDPZ - )), - NewImg( - "", - "images/interface/blank.png", - "position:absolute;clip:rect(0,auto,auto,800px);width:800px;height:205px;left:0px;background:url(images/Zombies/LGBOSS/ice.png) repeat-x", - f - ), - NewImg( - "", - "images/Zombies/LGBOSS/ice_cap.png", - "position:absolute;display:none;left:0", - f - ), - (b[d] = [1, 11, h.AttackedLX])) - : ++b[d][0]; - g - ? oSym.addTask( - g, - function (j, i) { - var k = $Z[j]; - k && - ((k.FreeSetbodyTime = 0), - SetBlock(i), - PlayAudio("zamboni")); - }, - [e, c] - ) - : (SetBlock(c), PlayAudio("zamboni")); - }, - ChkActs: function (e, j, q, k) { - var b, - r, - m, - g, - n = oGd.$Ice[j], - d, - h, - f, - c, - l = $("dIceCar" + j); - e.JudgeAttack(); - (r = e.AttackedRX -= b = e.Speed) < -50 - ? (q.splice(k, 1), e.DisappearDie(), (m = 0)) - : (r < 100 && - !e.PointZombie && - ((e.PointZombie = 1), - !oS.CardKind && - (StopMusic(), PlayAudio("losemusic", false)), - e.ChangeR({ - R: j, - ar: [oS.R - 1], - CustomTop: 400 - e.height + e.GetDY(), - })), - (e.ZX = e.AttackedLX -= b), - (e.Ele.style.left = Math.floor((e.X -= b)) + "px"), - (m = 1)); - d = e.X; - h = d + 250; - f = d + 100; - c = GetC(h); - c > -1 && - c < n[1] && - ((oGd.$Crater[j + "_" + c] = 1), (n[1] = c)); - h > 120 && - h < n[2] && - ((n[2] = h), - (l.firstChild.style.clip = "rect(0,auto,auto," + f + "px)"), - (l.childNodes[1].style.left = Math.max(0, f) + "px")); - GetC(e.AttackedLX) > 5 && (e.OSpeed = e.Speed -= 0.005); - return m; - }, - ChkActs1: function (f, d, g, c) { - var b, e; - f.JudgeAttack(); - (f.AttackedLX += b = f.Speed) > oS.W - ? (g.splice(c, 1), f.DisappearDie(), (e = 0)) - : ((f.ZX = f.AttackedRX += b), - (f.Ele.style.left = Math.ceil((f.X += b)) + "px"), - (e = 1)); - return e; - }, - getPea: function (c, b) { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - c.getHit0(c, b); - }, - getFirePea: function (c, b) { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - c.getHit0(c, b); - }, - getSnowPea: function (c, b) { - PlayAudio( - ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] - ); - c.getHit0(c, b); - }, - getFirePeaSputtering: function () {}, - getFreeze: function (c, b) { - c.getHit0(c, 20); - }, - getShadow: function (b) { - return ( - "left:" + - (b.beAttackedPointL - 10) + - "px;top:" + - (b.height - 22) + - "px" - ); - }, - getHit: a, - getHit0: a, - getHit1: a, - getHit2: a, - getHit3: a, - GoingDie: function () { - var b = this; - b.beAttacked = 0; - b.AutoReduceHP(b.id); - }, - NormalDie: function () { - var b = this; - PlayAudio("explosion"); - b.EleBody.src = b.PicArr[b.DieGif] + Math.random(); - oSym.addTask(70, ClearChild, [b.Ele]); - b.HP = 0; - delete $Z[b.id]; - b.JudgeIce(); - b.PZ && oP.MonPrgs(); - }, - DisappearDie: function () { - var b = this; - ClearChild(b.Ele); - b.HP = 0; - delete $Z[b.id]; - b.JudgeIce(); - b.PZ && oP.MonPrgs(); - }, - ExplosionDie: function () { - var b = this; - b.EleBody.src = b.PicArr[b.BoomDieGif] + Math.random(); - oSym.addTask(300, ClearChild, [b.Ele]); - b.HP = 0; - delete $Z[b.id]; - b.JudgeIce(); - b.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - this.NormalDie(); - }, - JudgeIce: function () { - var d = this, - b = d.R, - e = $("dIceCar" + b), - c = oGd.$Ice[b]; - e && e.childNodes[1] && SetBlock(e.childNodes[1]); - --c[0] <= 0 && - oSym.addTask( - 3e3, - function (k, h) { - var j = oGd.$Ice[h], - g, - f = oGd.$Crater; - if (j && j[0] <= 0 && k) { - ClearChild(k); - g = j[1]; - while (g < 11) { - delete f[h + "_" + g++]; - delete oGd.$Ice[h]; - } - } - }, - [e, b] - ); - }, - flatTire: function () { - var b = this; - b.EleBody.src = "images/Zombies/LGBOSS/5.gif"; - b.beAttacked = 0; - b.HP = 0; - b.getHit0 = b.getHit1 = b.getHit2 = b.getHit3 = function () {}; - b.ChkActs = b.ChkActs1 = function () {}; - oSym.addTask( - 290, - function (e, c) { - var d = $Z[e]; - d && d.NormalDie(); - }, - [b.id, b.EleBody] - ); - }, - JudgeAttack: function () { - var f = this, - c = f.ZX, - d = f.R + "_", - e = GetC(c), - g = oGd.$, - b; - (b = f.JudgeLR(f, d, e, c, g) || f.JudgeSR(f, d, e, c, g)) && - f.NormalAttack(b[0], b[1]); - }, - JudgeLR: function (e, c, d, b, f) { - return d > 10 || d < 1 - ? false - : (function () { - c += --d + "_"; - var g = 3, - h; - while (g--) { - if ((h = f[c + g])) { - return h.AttackedRX >= b && h.AttackedLX <= b - ? [e.id, h.id] - : false; - } - } - })(); - }, - JudgeSR: function (e, c, d, b, f) { - return d > 9 - ? false - : (function () { - c += d + "_"; - var g = 3, - h; - while (g--) { - if ((h = f[c + g])) { - return h.AttackedRX >= b && h.AttackedLX <= b - ? [e.id, h.id] - : false; - } - } - })(); - }, - NormalAttack: function (c, b) { - var d = $Z[c]; - $P[b].getHurt(d, 2, d.Attack); - }, - getThump: function () { - this.NormalDie(); - var CZombies = (function (b, a) { - return ( - ((a = function () {}).prototype = { - name: "Zombies", - HP: 270, - Lvl: 1, - NormalGif: 2, - CardGif: 0, - StaticGif: 1, - StandGif: 2, - BookHandBack: 0, - AudioArr: [], - CanSelect: 1, - CanDisplay: 1, - BookHandPosition: "50% 70%", - AttackGif: 3, - LostHeadGif: 4, - LostHeadAttackGif: 5, - HeadGif: 6, - DieGif: 7, - BoomDieGif: 8, - width: 166, - height: 144, - beAttackedPointL: 82, - beAttackedPointR: 156, - BreakPoint: 90, - SunNum: 50, - coolTime: 0, - Ornaments: 0, - OrnHP: 0, - OSpeed: 1.6, - Speed: 1.6, - CSS_fliph: "", - CSS_alpha: "", - AKind: 0, - beAttacked: 1, - isAttacking: 0, - Attack: 100, - WalkDirection: 0, - LivingArea: 1, - Altitude: 1, - FreeSetbodyTime: 0, - FreeFreezeTime: 0, - FreeSlowTime: 0, - CanPass: function (d, c) { - return c && c != 2; - }, - CanGrow: function (d, c, e) { - return ( - this.CanPass(c, oGd.$LF[c]) && - (oS.ArP ? e > oS.ArP.ArC[1] : true) - ); - }, - ChkActs: function (h, f, j, e) { - var d, c, g; - !(h.FreeFreezeTime || h.FreeSetbodyTime) - ? (h.beAttacked && - !h.isAttacking && - h.JudgeAttack(), - !h.isAttacking - ? (c = - h.AttackedRX -= - d = - h.Speed) < -50 - ? (j.splice(e, 1), - h.DisappearDie(), - (g = 0)) - : (c < 100 && - !h.PointZombie && - ((h.PointZombie = 1), - !oS.CardKind && - (StopMusic(), - PlayAudio( - "losemusic", - false - )), - h.ChangeR({ - R: f, - ar: [oS.R - 1], - CustomTop: - 400 - - h.height + - h.GetDY(), - })), - (h.ZX = h.AttackedLX -= d), - (h.Ele.style.left = - Math.floor((h.X -= d)) + - "px"), - (g = 1)) - : (g = 1)) - : (g = 1); - return g; - }, - ChkActs1: function (g, e, h, d) { - var c, f; - !(g.FreeFreezeTime || g.FreeSetbodyTime) - ? (g.beAttacked && - !g.isAttacking && - g.JudgeAttack(), - !g.isAttacking - ? (g.AttackedLX += c = g.Speed) > - oS.W - ? (h.splice(d, 1), - g.DisappearDie(), - (f = 0)) - : ((g.ZX = g.AttackedRX += c), - (g.Ele.style.left = - Math.ceil((g.X += c)) + - "px"), - (f = 1)) - : (f = 1)) - : (f = 1); - return f; - }, - GetDX: function () { - return -110; - }, - GetDY: function () { - return -10; - }, - GetDTop: 0, - ChangeR: function (e) { - var h = e.R, - g = e.ar || [], - j = e.CustomTop, - d = this, - q = h - 1, - l, - k = d.id, - m = -1, - f = d.Ele, - n = d.EleBody, - i = oGd.$LF, - c; - !g.length && - (d.CanPass(q, i[q]) && (g[++m] = q), - d.CanPass((q += 2), i[q]) && - (g[++m] = q)); - g.length - ? ((l = !d.WalkDirection ? -5 : 5), - (d.ZX += l), - (d.AttackedLX += l), - (d.AttackedRX += l), - (d.X += l), - (q = - g[ - Math.floor( - Math.random() * g.length - ) - ]), - SetStyle(f, { - left: d.X + "px", - top: - (d.pixelTop = - j == undefined - ? GetY(q) - - d.height + - d.GetDY() - : j) + "px", - zIndex: (d.zIndex = 3 * q + 1), - }), - d.isAttacking && - (n.src = d.PicArr[d.NormalGif]), - oZ.moveTo(k, h, q)) - : (n.src = d.PicArr[d.NormalGif]); - d.isAttacking = 0; - }, - getShadow: function (c) { - return ( - "left:" + - (c.beAttackedPointL - 10) + - "px;top:" + - (c.height - 22) + - "px" - ); - }, - Init: function (g, i, e, d) { - var c = 0, - h = this, - f = []; - i.AttackedRX = - (i.X = - (i.ZX = i.AttackedLX = g) - - i.beAttackedPointL) + - i.beAttackedPointR; - while (--d) { - i.CanPass(d, e[d]) && (f[c++] = d); - } - i.ArR = f; - i.ArHTML = [ - '
', - ]; - }, - getHTML: function (d, g, i, h, f, k, j, c) { - var e = this.ArHTML; - return ( - e[0] + - d + - e[1] + - f + - e[2] + - g + - e[3] + - i + - e[4] + - h + - e[5] + - k + - e[6] + - j + - e[7] + - c + - e[8] - ); - }, - prepareBirth: function (f) { - var h = this, - e = h.ArR, - d = - e[ - Math.floor( - Math.random() * e.length - ) - ], - g = GetY(d) + h.GetDY(), - c = g - h.height, - j = 3 * d + 1, - i = (h.id = "Z_" + Math.random()); - h.R = d; - h.pixelTop = c; - h.zIndex = j; - (h.delayT = f) && - (h.FreeSetbodyTime = oSym.Now); - return h.getHTML( - i, - h.X, - c, - j, - "none", - "auto", - h.GetDTop, - h.PicArr[h.NormalGif] - ); - }, - CustomBirth: function (i, c, d, m) { - var g = this, - f = GetY(i) + g.GetDY(), - h = f - g.height, - k = 3 * i + 1, - e = (g.id = "Z_" + Math.random()), - l = g.beAttackedPointL, - j = g.beAttackedPointR; - g.AttackedRX = - (g.X = - (g.ZX = g.AttackedLX = - GetX(c) - (j - l) * 0.5) - l) + - j; - g.R = i; - g.pixelTop = h; - g.zIndex = k; - (g.delayT = d) && - (g.FreeSetbodyTime = oSym.Now); - return g.getHTML( - e, - g.X, - h, - k, - "none", - m || 0, - g.GetDTop, - g.PicArr[g.NormalGif] - ); - }, - BirthCallBack: function (f) { - var e = f.delayT, - d = f.id, - c = (f.Ele = $(d)); - f.EleShadow = c.firstChild; - f.EleBody = c.childNodes[1]; - e - ? oSym.addTask( - e, - function (h, g) { - var i = $Z[h]; - i && - ((i.FreeSetbodyTime = 0), - SetBlock(g)); - }, - [d, c] - ) - : SetBlock(c); - }, - Birth: function () { - var c = this; - $Z[c.id] = c; - oZ.add(c); - c.BirthCallBack(c); - }, - getCrushed: function (c) { - return true; - }, - getRaven: function () { - return this.DisappearDie(), 1; - }, - getExplosion: function () { - this.ExplosionDie(); - }, - getThump: function () { - this.DisappearDie(); - }, - PlayNormalballAudio: function () { - PlayAudio( - "splat" + - Math.floor(1 + Math.random() * 3) - ); - }, - PlayFireballAudio: function () { - PlayAudio( - ["ignite", "ignite2"][ - Math.floor(Math.random() * 2) - ] - ); - }, - PlaySlowballAudio: function () { - PlayAudio("frozen"); - }, - getFireball: function (h, e, g) { - h.FreeSlowTime = 0; - h.Attack = 100; - h.FreeFreezeTime || h.FreeSetbodyTime - ? (h.PlayNormalballAudio(), - (h.Speed = h.OSpeed)) - : h.PlayFireballAudio(); - var f = h.AttackedLX, - j = h.AttackedRX, - c = !g - ? oZ.getArZ(f, f + 40, h.R) - : oZ.getArZ(j - 40, j, h.R), - d = c.length; - while (d--) { - c[d].getSputtering(); - } - }, - getSputtering: function (c) { - this.getHit2(this, c || 13, 0); - }, - getSlow: function (h, f, g) { - var d = oSym.Now + g, - e = h.FreeSlowTime, - c = 0; - switch (true) { - case !e: - !( - h.FreeFreezeTime || - h.FreeSetbodyTime - ) && (h.Speed = 0.5 * h.OSpeed); - h.Attack = 50; - h.PlaySlowballAudio(); - h.FreeSlowTime = d; - c = 1; - break; - case e < d: - h.FreeSlowTime = d; - h.PlayNormalballAudio(); - c = 1; - } - c && - oSym.addTask( - g, - function (j, i) { - var k = $Z[j]; - k && - k.FreeSlowTime == i && - ((k.FreeSlowTime = 0), - (k.Attack = 100), - k.Speed && - (k.Speed = k.OSpeed)); - }, - [f, d] - ); - }, - getFreeze: function (d, c) { - d.beAttacked && d.getHit0(d, 20, 0); - d.Speed = 0; - oSym.addTask( - 400, - function (g, f, e) { - ClearChild(e); - var h = $Z[g]; - h && - h.FreeFreezeTime == f && - ((h.FreeFreezeTime = 0), - (h.Attack = 50), - !h.FreeSetbodyTime && - ((h.Speed = 0.5 * h.OSpeed), - h.isAttacking && - h.JudgeAttack()), - oSym.addTask( - 1500, - function (j, i) { - var k = $Z[j]; - k && - k.FreeSlowTime == - i && - ((k.FreeSlowTime = 0), - (k.Attack = 100), - !k.FreeSetbodyTime && - (k.Speed = - k.OSpeed)); - }, - [ - g, - (h.FreeSlowTime = - oSym.Now + 1500), - ] - )); - }, - [ - c, - (d.FreeFreezeTime = oSym.Now + 400), - NewImg( - "icetrap_" + Math.random(), - "images/Plants/IceShroom/icetrap.gif", - d.getShadow(d), - d.Ele - ), - ] - ); - }, - NormalDie: function () { - var c = this; - c.EleBody.src = - c.PicArr[c.DieGif] + Math.random(); - oSym.addTask(250, ClearChild, [c.Ele]); - c.HP = 0; - delete $Z[c.id]; - c.PZ && oP.MonPrgs(); - }, - ExplosionDie: function () { - var c = this; - c.EleBody.src = - c.PicArr[c.BoomDieGif] + Math.random(); - oSym.addTask(300, ClearChild, [c.Ele]); - c.HP = 0; - delete $Z[c.id]; - c.PZ && oP.MonPrgs(); - }, - DisappearDie: function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - var c = this; - c.GoingDieHead(c.id, c.PicArr, c); - ClearChild(c.Ele); - c.HP = 0; - delete $Z[c.id]; - c.PZ && oP.MonPrgs(); - }, - GoingDieHead: function (e, c, d) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - c[d.HeadGif] + Math.random(), - "left:" + - d.AttackedLX + - "px;top:" + - (d.pixelTop - 20) + - "px;z-index:" + - d.zIndex, - EDPZ - ), - ]); - }, - GoingDie: function (d) { - var c = this, - e = c.id; - c.EleBody.src = d; - c.GoingDieHead(e, c.PicArr, c); - c.beAttacked = 0; - c.FreeFreezeTime = - c.FreeSetbodyTime = - c.FreeSlowTime = - 0; - c.AutoReduceHP(e); - }, - AutoReduceHP: function (c) { - oSym.addTask( - 100, - function (e) { - var d = $Z[e]; - d && - ((d.HP -= 60) < 1 - ? d.NormalDie() - : d.AutoReduceHP(e)); - }, - [c] - ); - }, - JudgeAttack: function () { - var g = this, - d = g.ZX, - e = g.R + "_", - f = GetC(d), - h = oGd.$, - c; - (c = - g.JudgeLR(g, e, f, d, h) || - g.JudgeSR(g, e, f, d, h)) - ? (!g.isAttacking && - ((g.isAttacking = 1), - (g.EleBody.src = - g.PicArr[g.AttackGif])), - g.NormalAttack(c[0], c[1])) - : g.isAttacking && - ((g.isAttacking = 0), - (g.EleBody.src = - g.PicArr[g.NormalGif])); - }, - JudgeLR: function (f, d, e, c, g) { - return e > 10 || e < 1 - ? false - : (function () { - d += --e + "_"; - var h = 3, - i; - while (h--) { - if ( - (i = g[d + h]) && - i.canEat - ) { - return i.AttackedRX >= - c && i.AttackedLX <= c - ? [f.id, i.id] - : false; - } - } - })(); - }, - JudgeSR: function (f, d, e, c, g) { - return e > 9 - ? false - : (function () { - d += e + "_"; - var h = 3, - i; - while (h--) { - if ( - (i = g[d + h]) && - i.canEat - ) { - return i.AttackedRX >= - c && i.AttackedLX <= c - ? [f.id, i.id] - : false; - } - } - })(); - }, - JudgeAttackH1: function () { - var e = this, - d = oZ.getZ0(e.ZX, e.R), - c = e.id; - d && - d.beAttacked && - d.AttackedLX < 900 && - d.Altitude == 1 && - (e.AttackZombie(d.id), - !d.isAttacking && d.AttackZombie(c)); - }, - JudgeAttackH: function () { - var e = this, - d = oZ.getZ0(e.ZX, e.R), - f = e.id, - c; - d && - d.beAttacked && - d.AttackedLX < oS.W && - d.Altitude == 1 - ? !e.isAttacking - ? ((e.isAttacking = 1), - (e.EleBody.src = - e.PicArr[e.AttackGif]), - e.AttackZombie(f, (c = d.id)), - !d.isAttacking && - d.AttackZombie2(d, c, f)) - : e.AttackZombie(f, d.id, 1) - : e.isAttacking && - ((e.isAttacking = 0), - (e.EleBody.src = - e.PicArr[e.NormalGif])); - }, - AttackZombie: function (d, c) { - oSym.addTask( - 10, - function (f, e) { - var h = $Z[f], - g; - h && - h.beAttacked && - !h.FreeFreezeTime && - !h.FreeSetbodyTime && - ((g = $Z[e]) && - g.getHit0(g, 10, 0), - h.JudgeAttackH()); - }, - [d, c] - ); - }, - AttackZombie2: function (e, d, c) { - e.isAttacking = 1; - e.EleBody.src = e.PicArr[e.AttackGif]; - oSym.addTask( - 10, - function (g, f) { - var i = $Z[g], - h; - i && - i.beAttacked && - !i.FreeFreezeTime && - !i.FreeSetbodyTime && - ((h = $Z[f]) - ? (h.getHit0(h, 10, 0), - oSym.addTask( - 10, - arguments.callee, - [g, f] - )) - : ((i.isAttacking = 0), - (i.EleBody.src = - i.PicArr[ - i.NormalGif - ]))); - }, - [d, c] - ); - }, - NormalAttack: function (d, c) { - PlayAudio( - ["chomp", "chompsoft"][ - Math.floor(Math.random() * 2) - ] - ); - oSym.addTask( - 50, - function (e) { - $Z[e] && - PlayAudio( - ["chomp", "chompsoft"][ - Math.floor( - Math.random() * 2 - ) - ] - ); - }, - [d] - ); - oSym.addTask( - 100, - function (f, e) { - var h = $Z[f], - g; - h && - h.beAttacked && - !h.FreeFreezeTime && - !h.FreeSetbodyTime && - ((g = $P[e]) && - g.getHurt( - h, - h.AKind, - h.Attack - ), - h.JudgeAttack()); - }, - [d, c] - ); - }, - PZ: 1, - ExchangeLR: function (f, d) { - var e = f.width, - h = f.beAttackedPointL, - c = f.beAttackedPointR, - g = f.Ele; - g.style.left = - (f.X = - f.AttackedLX - - (f.beAttackedPointL = e - c)) + - "px"; - f.beAttackedPointR = e - h; - f.EleShadow.style.cssText = f.getShadow(f); - f.ExchangeLR2(f, f.EleBody, d); - }, - ExchangeLR2: $User.Browser.IE - ? function (e, c, d) { - c.style.filter = - e.CSS_alpha + - (e.CSS_fliph = d ? " fliph" : ""); - } - : function (e, c, d) { - c.className = d ? "fliph" : ""; - }, - bedevil: function (c) { - c.ExchangeLR(c, 1); - c.JudgeAttack = c.JudgeAttackH; - c.PZ = 0; - c.WalkDirection = 1; - c.ZX = c.AttackedRX; - c.ChkActs = c.ChkActs1; - oP.MonPrgs(); - }, - SetAlpha: $User.Browser.IE - ? function (f, d, e, c) { - d.style.filter = - (f.CSS_alpha = - "alpha(opacity=" + e + ")") + - f.CSS_fliph; - } - : function (f, d, e, c) { - d.style.opacity = c; - }, - }), - a - ); - })(), - OrnNoneZombies = (function () { - var a = function (c, b) { - if ((c.HP -= b) < c.BreakPoint) { - c.GoingDie( - c.PicArr[ - [c.LostHeadGif, c.LostHeadAttackGif][ - c.isAttacking - ] - ] - ); - c.getHit0 = - c.getHit1 = - c.getHit2 = - c.getHit3 = - function () {}; - return; - } - c.SetAlpha(c, c.EleBody, 50, 0.5); - oSym.addTask( - 10, - function (e, d) { - (d = $Z[e]) && - d.SetAlpha(d, d.EleBody, 100, 1); - }, - [c.id] - ); - }; - return InheritO(CZombies, { - getHit: a, - getHit0: a, - getHit1: a, - getHit2: a, - getHit3: a, - getPea: function (e, b, c) { - e.PlayNormalballAudio(); - e.getHit0(e, b, c); - }, - getFirePea: function (g, c, j) { - g.PlayFireballAudio(); - (g.FreeSlowTime || g.FreeFreezeTime) && - ((g.Speed = g.OSpeed), - (g.FreeSlowTime = 0), - (g.FreeFreezeTime = 0)); - g.Attack = 100; - var f = g.AttackedLX, - h = g.AttackedRX, - b = oZ.getArZ(f, f + 40, g.R), - e = b.length; - while (e--) { - b[e].getFirePeaSputtering(); - } - g.getHit0(g, c, j); - }, - getFirePeaSputtering: function () { - this.getHit0(this, 13); - }, - getSnowPea: function (f, c, g) { - var e = f.FreeSlowTime, - b = oSym.Now + 1000; - e == 0 - ? (f.PlaySlowballAudio(), - (f.Speed = 0.5 * f.OSpeed), - (f.Attack = 50)) - : f.PlayNormalballAudio(); - e < b && - ((f.FreeSlowTime = b), - oSym.addTask( - 1000, - function (h, d) { - var i = $Z[h]; - i && - i.FreeSlowTime == d && - ((i.FreeSlowTime = 0), - (i.Attack = 100), - i.Speed && - (i.Speed = i.OSpeed)); - }, - [f.id, b] - )); - f.getHit0(f, c, g); - }, - }); - })(), - oBackupDancer = InheritO(OrnNoneZombies, { - EName: "oBackupDancer", - CName: "Backup Dancer", - OSpeed: 3.5, - Speed: 3.5, - Lvl: 1, - StandGif: 9, - CanSelect: 0, - width: 126, - height: 152, - beAttackedPointL: 50, - beAttackedPointR: 95, - Speed: 3.5, - OSpeed: 3.5, - PicArr: (function () { - var a = "images/Zombies/BackupDancer/"; - return [ - "images/Card/Zombies/BackupDancer.png", - a + "0.gif", - a + "BackupDancer.gif", - a + "Attack.gif", - a + "LostHead.gif", - a + "LostHeadAttack.gif", - a + "Head.gif" + $Random, - a + "Die.gif" + $Random, - a + "BoomDie.gif" + $Random, - a + "Dancing.gif" + $Random, - a + "LostHeadDancing.gif" + $Random, - a + "Mound.gif" + $Random, - ]; - })(), - bedevil: function (a) { - a.ExchangeLR(a, 1); - a.JudgeAttack = a.JudgeAttackH; - a.PZ = 0; - a.WalkDirection = 1; - a.ZX = a.AttackedRX; - a.ChkActs = a.ChkActs1; - a.Speed = 3.5; - a.ChangeChkActsTo1(a, a.id, a.EleBody); - oP.MonPrgs(); - }, - getSlow: function (f, d, e) { - var b = oSym.Now + e, - c = f.FreeSlowTime, - a = 0; - switch (true) { - case !c: - f.PlaySlowballAudio(); - f.Attack = 50; - f.FreeSlowTime = b; - a = 1; - break; - case c < b: - f.PlayNormalballAudio(); - f.FreeSlowTime = b; - a = 1; - } - a && - oSym.addTask( - e, - function (h, g) { - var i = $Z[h]; - i && - i.FreeSlowTime == g && - ((i.FreeSlowTime = 0), - (i.Attack = 100)); - }, - [d, b] - ); - }, - getFreeze: function (b, a) { - b.beAttacked && b.getHit0(b, 20, 0); - oSym.addTask( - 400, - function (e, d, c) { - ClearChild(c); - var f = $Z[e]; - f && - f.FreeFreezeTime == d && - ((f.FreeFreezeTime = 0), - (f.Attack = 50), - !f.FreeSetbodyTime && - f.isAttacking && - f.JudgeAttack(), - oSym.addTask( - 1500, - function (h, g) { - var i = $Z[h]; - i && - i.FreeSlowTime == g && - ((i.FreeSlowTime = 0), - (i.Attack = 100)); - }, - [ - e, - (f.FreeSlowTime = - oSym.Now + 1500), - ] - )); - }, - [ - a, - (b.FreeFreezeTime = oSym.Now + 400), - NewImg( - "icetrap_" + Math.random(), - "images/Plants/IceShroom/icetrap.gif", - b.getShadow(b), - b.Ele - ), - ] - ); - }, - CustomBirth: function (g, d, a, b, j) { - var e = this, - c = GetY(g) + e.GetDY(), - f = c - e.height, - i = e.beAttackedPointL, - h = e.beAttackedPointR; - e.AttackedRX = - (e.X = - (e.ZX = e.AttackedLX = d - (h - i) * 0.5) - - i) + h; - e.R = g; - (e.delayT = a) && (e.FreeSetbodyTime = oSym.Now); - return e.getHTML( - (e.id = b), - e.X, - (e.pixelTop = f), - (e.zIndex = 3 * g + 1), - "none", - j || 0, - e.height + "px", - e.PicArr[e.StandGif] - ); - }, - Produce: - '当舞王僵尸摇摆时,这种僵尸四个结伙出现。

韧性:
伴舞僵尸曾在位于僵尸纽约城的“咀利牙”表演艺术学院钻研过六年的舞技。', - BirthCallBack: function (e) { - var d = e.delayT, - c = e.id, - b = (e.Ele = $(c)), - a = (e.EleBody = b.childNodes[1]); - e.EleShadow = b.firstChild; - oSym.addTask( - d, - function (g, f) { - var h = $Z[g]; - h && ((h.FreeSetbodyTime = 0), SetBlock(f)); - }, - [c, b] - ); - }, - ChangeChkActsTo0: function (c, b, a) { - if (!c.PZ) { - c.ChangeChkActsTo1(c, b, a); - return; - } - c.LostHeadGif = 10; - c.NormalGif = 9; - !c.isAttacking && (a.src = c.PicArr[9]); - c.Speed = c.DZStep = 0; - oSym.addTask( - 200, - function (e, d) { - var f = $Z[e]; - f && - f.beAttacked && - f.ChangeChkActsTo1(f, e, d); - }, - [b, a] - ); - }, - ChangeChkActsTo1: function (c, b, a) { - c.LostHeadGif = 4; - c.NormalGif = 2; - c.DZStep = 1; - !c.isAttacking && (a.src = c.PicArr[2]); - c.PZ && - oSym.addTask( - 220, - function (e, d) { - var f = $Z[e]; - f && - f.beAttacked && - f.ChangeChkActsTo0(f, e, d); - }, - [b, a] - ); - }, - ChkActs: function (g, d, h, c) { - var e, b, a, f; - !(g.FreeFreezeTime || g.FreeSetbodyTime) - ? (g.beAttacked && - !g.isAttacking && - g.JudgeAttack(), - (e = g.id), - !g.isAttacking - ? (a = g.AttackedRX -= b = g.Speed) < -50 - ? (h.splice(c, 1), - g.DisappearDie(), - (f = 0)) - : (a < 100 && - !g.PointZombie && - ((g.PointZombie = 1), - !oS.CardKind && - (StopMusic(), - PlayAudio( - "losemusic", - false - )), - g.ChangeR({ - R: d, - ar: [oS.R - 1], - CustomTop: - 400 - - g.height + - g.GetDY(), - })), - (g.ZX = g.AttackedLX -= b), - (g.Ele.style.left = - Math.floor((g.X -= b)) + "px"), - (f = 1)) - : (f = 1)) - : (f = 1); - g.ChkSpeed(g); - return f; - }, - ChkSpeed: function (b) { - if (!b.DZStep) { - return; - } - var a = b.Speed; - switch (true) { - case (b.FreeFreezeTime || b.FreeSetbodyTime) == - 1: - a && (b.Speed = 0); - break; - case b.FreeSlowTime > 0: - a != 1.75 && (b.Speed = 1.75); - break; - default: - a != 3.5 && (b.Speed = 3.5); - } - }, - }), - oDancingZombie = InheritO(OrnNoneZombies, { - EName: "oDancingZombie", - CName: "Dancing Zombie ", - HP: 500, - BreakPoint: 166, - Lvl: 3, - StandGif: 9, - SunNum: 350, - beAttackedPointL: 40, - beAttackedPointR: 85, - width: 184, - height: 176, - BookHandPosition: "70% 70%", - AudioArr: ["dancer"], - OSpeed: 7.2, - Speed: 7.2, - NormalGif: 9, - GetDTop: 5, - getShadow: function (a) { - return "left:30px;top:146px"; - }, - GetDX: function () { - return -50; - }, - GetDY: function () { - return -5; - }, - LostHeadGif: 14, - addSpotlight: (function () { - var a, b; - $User.Browser.IE6 - ? ((a = "_8"), (b = "filter:alpha(opacity=30)")) - : (a = b = ""); - return function (d, f, c) { - var g = $Z[d], - e; - NewEle( - d + "_spotlightCon", - "div", - "position:absolute;left:-30px;top:-400px;width:184px;height:600px;overflow:hidden", - 0, - c - ).appendChild( - (g.spotlight = NewImg( - d + "_spotlight", - "images/Zombies/DancingZombie/spotlight" + - a + - ".png", - "left:0;top:0;width:920px;height:600px;" + - b - )) - ); - e = NewEle( - d + "_spotlight2Con", - "div", - "position:absolute;left:-25px;top:135px;width:184px;height:60px;overflow:hidden", - 0 - ); - c.insertBefore(e, f.EleShadow); - e.appendChild( - (g.spotlight2 = NewImg( - d + "_spotlight2", - "images/Zombies/DancingZombie/spotlight2" + - a + - ".png", - "left:0;top:0;width:920px;height:60px;" + - b - )) - ); - }; - })(), - PicArr: (function () { - var d = "images/Zombies/DancingZombie/", - c = $User.Browser.IE6 ? "_8" : "", - a = d + "spotlight" + c + ".png" + $Random, - b = d + "spotlight2" + c + ".png" + $Random; - return [ - "images/Card/Zombies/DancingZombie.png", - d + "0.gif", - d + "DancingZombie.gif", - d + "Attack.gif", - d + "LostHead.gif", - d + "LostHeadAttack.gif", - d + "Head.gif" + $Random, - d + "Die.gif" + $Random, - d + "BoomDie.gif" + $Random, - d + "SlidingStep.gif" + $Random, - d + "Dancing.gif" + $Random, - d + "Summon1.gif", - d + "Summon2.gif", - d + "Summon3.gif", - d + "LostHeadSlidingStep.gif" + $Random, - d + "LostHeadDancing.gif" + $Random, - d + "LostHeadSummon.gif" + $Random, - a, - b, - ]; - })(), - Produce: - '舞王僵尸和人类(在世或者死去的)如有雷同,纯属巧合。

韧性:
特点:召唤伴舞僵尸

舞王僵尸的最新唱片“抓住脑子啃啊啃”在僵尸界的人气正急速飙升。', - getSnowPea: function () { - this.PlaySlowballAudio(); - }, - NormalDie: function () { - var a = this; - a.ResetBackupDancer(a); - a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); - oSym.addTask(250, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - ExplosionDie: function () { - var a = this; - a.ResetBackupDancer(a); - a.EleBody.src = - a.PicArr[a.BoomDieGif] + Math.random(); - oSym.addTask(300, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - DisappearDie: function () { - this.ResetBackupDancer(this); - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - var a = this; - a.ResetBackupDancer(a); - a.GoingDieHead(a.id, a.PicArr, a); - ClearChild(a.Ele); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - bedevil: function (b) { - var a = b.id; - b.ExchangeLR(b, 1); - b.JudgeAttack = b.JudgeAttackH; - b.PZ = 0; - b.WalkDirection = 1; - b.ZX = b.AttackedRX; - b.ChkActs = b.ChkActs1; - b.ChangeChkActsTo1(b, a, b.EleBody); - b.ResetBackupDancer(b); - ($(a + "_spotlightCon").style.left = "20px"), - ($(a + "_spotlight2Con").style.left = "25px"); - oP.MonPrgs(); - }, - ResetBackupDancer: function (f) { - var g = f.ArDZ, - d = g.length, - c, - b, - e, - a = f.DZStep; - while (d--) { - if ( - (c = g[d]) && - (b = c[0]) && - (e = $Z[b]) && - e.beAttacked - ) { - if (a > 0) { - switch (true) { - case (e.FreeFreezeTime || - e.FreeSetbodyTime) == 1: - e.Speed = 0; - break; - case e.FreeSlowTime > 0: - e.Speed = 1.75; - break; - default: - e.Speed = 3.5; - } - } - } - } - a > -1 && - oSym.addTask( - f.DZStepT - oSym.Now, - function (o, j) { - var m = 4, - l, - k, - n, - h = "ChangeChkActsTo" + j; - while (m--) { - (l = o[m]) && - (k = l[0]) && - (n = $Z[k]) && - n.beAttacked && - ((n.DZStep = j), - n[h](n, k, n.EleBody)); - } - }, - [g, [1, 0][a]] - ); - }, - BirthCallBack: function (d) { - var b = d.delayT, - l = d.id, - a = (d.Ele = $(l)), - c = 320, - i = oGd.$LF, - g = d.R, - s = g - 1, - n = g + 1, - e, - r, - q = LX - 60, - m = LX + 100, - k = LX - 130, - j = LX - 70, - h = LX + 30, - f = (d.ArDZ = [0, 0, 0, 0]); - d.EleShadow = a.firstChild; - d.EleBody = a.childNodes[1]; - s > 0 && - (e = i[s]) && - e != 2 && - (f[0] = [ - "", - s, - function (o) { - return o; - }, - 3 * s + 2, - function (o) { - return o - 70; - }, - GetY(s) - 155, - ]); - n <= oS.R && - (e = i[n]) && - e != 2 && - (f[2] = [ - "", - n, - function (o) { - return o; - }, - 3 * n + 2, - function (o) { - return o - 70; - }, - GetY(n) - 155, - ]); - e = 3 * g + 2; - r = GetY(g) - 155; - f[3] = [ - "", - g, - function (o) { - return o - 60; - }, - e, - function (o) { - return o - 130; - }, - r, - ]; - f[1] = [ - "", - g, - function (o) { - return o + 100; - }, - e, - function (o) { - return o + 30; - }, - r, - ]; - func = function (t, o) { - var u = $Z[t]; - u && - (u.ExchangeLR(d, 1), - (u.DZMSpeed = 7.2), - (u.DZStep = -1), - (u.DZStepT = oSym.Now + 220), - (u.FreeSetbodyTime = 0), - SetBlock(o)); - }; - b - ? (oSym.addTask(b, func, [l, a]), (c += b)) - : func(l, a); - oSym.addTask( - c, - function (o) { - var t = $Z[o]; - t && - t.beAttacked && - !t.isAttacking && - t.NormalAttack(o); - }, - [d.id] - ); - }, - ChkActs1: function (e, b, f, a) { - var c, d; - !(e.FreeFreezeTime || e.FreeSetbodyTime) - ? (e.beAttacked && - !e.isAttacking && - e.JudgeAttack(), - (c = e.id), - !e.isAttacking - ? (e.AttackedLX += 3.5) > oS.W - ? (f.splice(a, 1), - e.DisappearDie(), - (d = 0)) - : ((e.ZX = e.AttackedRX += 3.5), - (e.Ele.style.left = - Math.ceil((e.X += 3.5)) + "px"), - (d = 1)) - : (d = 1)) - : (d = 1); - return d; - }, - ChkTmp: function (c, b, d, a) { - c.ChkSpeed(c); - return 0; - }, - ChkActs: function (g, d, h, c) { - var e, b, a, f; - !(g.FreeFreezeTime || g.FreeSetbodyTime) - ? (g.beAttacked && - !g.isAttacking && - g.JudgeAttack(), - (e = g.id), - !g.isAttacking - ? (a = g.AttackedRX -= b = g.Speed) < -50 - ? (h.splice(c, 1), - g.DisappearDie(), - (f = 0)) - : (a < 100 && - !g.PointZombie && - ((g.PointZombie = 1), - !oS.CardKind && - (StopMusic(), - PlayAudio( - "losemusic", - false - )), - g.ChangeR({ - R: d, - ar: [oS.R - 1], - CustomTop: - 400 - - g.height + - g.GetDY(), - })), - (g.ZX = g.AttackedLX -= b), - (g.Ele.style.left = - Math.floor((g.X -= b)) + "px"), - (f = 1)) - : (f = 1)) - : (f = 1); - g.ChkSpeed(g); - return f; - }, - ChkSpeed: function (g) { - if (!g.DZStep) { - return; - } - var h = g.ArDZ, - d = 4, - c, - b, - e, - a = g.OSpeed, - f = []; - switch (true) { - case (g.isAttacking || - g.FreeFreezeTime || - g.FreeSetbodyTime) == 1: - a = 0; - break; - case g.FreeSlowTime > 0: - a != 1.75 && (a = 1.75); - } - while (d--) { - if ( - (c = h[d]) && - (b = c[0]) && - (e = $Z[b]) && - e.beAttacked - ) { - f.push(e); - switch (true) { - case (e.isAttacking || - e.FreeFreezeTime || - e.FreeSetbodyTime) == 1: - a = 0; - break; - case e.FreeSlowTime > 0: - a != 1.75 && (a = 1.75); - } - } - } - if (a != g.DZMSpeed) { - g.DZMSpeed = a; - d = f.length; - while (d--) { - (e = f[d]).Speed != a && (e.Speed = a); - } - g.Speed != a && (g.Speed = a); - } - }, - AttackZombie: function (a) { - this.ExchangeLR(this, 0); - var b = this.id; - this.isAttacking = 1; - this.EleBody.src = this.PicArr[this.AttackGif]; - oSym.addTask( - 10, - function (d, c) { - var f = $Z[d], - e; - f && - f.beAttacked && - !f.FreeFreezeTime && - !f.FreeSetbodyTime && - ((e = $Z[c]) - ? (e.getHit0(e, 10, 0), - oSym.addTask( - 10, - arguments.callee, - [d, c] - )) - : ((f.isAttacking = 0), - (f.EleBody.src = - f.PicArr[f.NormalGif]), - f.TurnLeft(f))); - }, - [b, a] - ); - }, - ChkBackupDancer: function (h, g, f) { - if (!h.PZ) { - h.ChangeChkActsTo1(h, g, f); - return; - } - var b = h.ArDZ, - d = 4, - j = 1, - c, - e, - a; - while (d--) { - (e = b[d]) && - (!(c = e[0]) || - !(a = $Z[c]) || - (a.PZ ? false : ((e[0] = ""), true))) && - (d = j = 0); - } - !h.isAttacking && j - ? (f.src = h.PicArr[10]) - : h.Summon(h, g); - h.ChangeChkActsTo0(h, g, f); - }, - ChangeChkActsTo0: function (g, e, a) { - if (!g.PZ) { - g.ChangeChkActsTo1(g, e, a); - return; - } - var d = 4, - h = g.ArDZ, - c, - b, - f; - while (d--) { - (b = h[d]) && - (c = b[0]) && - (f = $Z[c]) && - f.beAttacked && - ((f.LostHeadGif = 10), - (f.NormalGif = 9), - !f.isAttacking && - (f.EleBody.src = f.PicArr[9]), - (f.Speed = 0)); - } - g.LostHeadGif = 15; - g.NormalGif = 10; - g.Speed = g.DZMSpeed = g.DZStep = 0; - g.DZStepT = oSym.Now + 200; - oSym.addTask( - 200, - function (j, i) { - var k = $Z[j]; - k && - k.beAttacked && - k.ChangeChkActsTo1(k, j, i); - }, - [e, a] - ); - }, - ChangeChkActsTo1: function (g, e, a) { - var d = 4, - h = g.ArDZ, - c, - b, - f; - while (d--) { - (b = h[d]) && - (c = b[0]) && - (f = $Z[c]) && - f.beAttacked && - ((f.LostHeadGif = 4), - (f.NormalGif = 2), - !f.isAttacking && - (f.EleBody.src = f.PicArr[2])); - } - g.LostHeadGif = 4; - g.NormalGif = 2; - g.DZStep = 1; - g.DZStepT = oSym.Now + 220; - !g.isAttacking && (a.src = g.PicArr[2]); - g.PZ && - oSym.addTask( - 220, - function (j, i) { - var k = $Z[j]; - k && - k.beAttacked && - k.ChkBackupDancer(k, j, i); - }, - [e, a] - ); - }, - TurnLeft: function (c) { - var a = CZombies.prototype, - b = c.id; - c.AttackZombie = a.AttackZombie; - c.NormalAttack = a.NormalAttack; - c.OSpeed = 3.5; - !( - c.FreeSlowTime || - c.FreeFreezeTime || - c.FreeSetbodyTime - ) && (c.Speed = 3.5); - c.getSnowPea = OrnNoneZombies.prototype.getSnowPea; - c.getFreeze = CZombies.prototype.getFreeze; - oSym.addTask( - 20, - function (d, e) { - $Z[d] && - e.beAttacked && - (e.addSpotlight(d, e, e.Ele), - oSym.addTask( - 200, - function (g, f, i, h, k) { - var j = $Z[g]; - j && - (h > -736 - ? (h -= 184) - : (h = 0), - (f.style.left = h + "px"), - k > -736 - ? (k -= 184) - : (k = 0), - (i.style.left = k + "px"), - oSym.addTask( - 100, - arguments.callee, - [g, f, i, h, k] - )); - }, - [d, e.spotlight, e.spotlight2, 0, 0] - ), - oSym.addTask( - 200, - function (h, g) { - var f; - $Z[g] && - h.beAttacked && - ((f = h.EleBody), - !h.isAttacking - ? (f.src = h.PicArr[10]) - : (h.isAttacking = 0), - h.ChangeChkActsTo0( - h, - g, - f - )); - }, - [e, d] - )); - }, - [b, c] - ); - c.Summon(c, b); - }, - NormalAttack: function (a) { - var b = $Z[a]; - b.ExchangeLR(b, 0); - b.TurnLeft(b); - }, - Summon: function (d, c) { - d.LostHeadGif = 16; - var a = d.EleBody, - b = d.ChkActs; - d.ChkActs = d.ChkTmp; - d.ChkTmp = b; - a.src = "images/Zombies/DancingZombie/Summon1.gif"; - PlayAudio("dancer"); - oSym.addTask( - 10, - function (f, e) { - var g = $Z[f]; - g && - g.beAttacked && - ((e.src = - "images/Zombies/DancingZombie/Summon2.gif"), - oSym.addTask( - 10, - function (t, s, x) { - var h = $Z[t], - v = h.ZX, - m = h.ArDZ, - n = [], - k = - "images/Zombies/BackupDancer/Mound.gif" + - $Random + - Math.random(), - r = 4, - w = [], - u = [], - o = 0, - q, - l; - if (h && h.beAttacked) { - s.src = - "images/Zombies/DancingZombie/Summon3.gif"; - while (r--) { - (q = m[r]) && - (!(l = q[0]) || - !$Z[l]) && - ((u[o] = (w[o] = - new oBackupDancer()).CustomBirth( - q[1], - q[2](v), - 100, - (q[0] = - "Z_" + - Math.random()) - )), - n.push( - NewImg( - "", - k, - "z-index:" + - q[3] + - ";left:" + - q[4]( - v - ) + - "px;top:" + - q[5] + - "px", - EDPZ - ) - ), - ++o); - } - oSym.addTask( - 220, - function () { - var i = - arguments.length; - while (i--) { - ClearChild( - arguments[i] - ); - } - }, - n - ); - oSym.addTask( - 110, - function (A, y, z, i) { - var B = $Z[A]; - B && - B.beAttacked && - (oP.AppearUP( - y, - z, - i - ), - oSym.addTask( - 100, - function ( - D, - C - ) { - var E = - $Z[ - D - ]; - if ( - E && - E.beAttacked - ) { - return; - } - var j = - C.length, - E; - while ( - j-- - ) { - (E = - C[ - j - ]).ChangeChkActsTo0( - E, - E.id, - E.EleBody - ); - } - }, - [A, z] - )); - }, - [t, u, w, o] - ); - oSym.addTask( - 200, - function (y, i) { - var z = $Z[y], - j; - z && - z.beAttacked && - ((j = - z.ChkActs), - (z.ChkActs = - z.ChkTmp), - (z.ChkTmp = j)); - }, - [t, s] - ); - } - }, - [f, e] - )); - }, - [c, a] - ); - }, - }), - oZombie = InheritO(OrnNoneZombies, { - EName: "oZombie", - CName: "领带僵尸", - StandGif: 9, - PicArr: (function () { - var a = "images/Zombies/Zombie/"; - return [ - "images/Card/Zombies/Zombie.png", - a + "0.gif", - a + "Zombie.gif", - a + "ZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - a + "BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - Produce: - '韧性:

这种僵尸喜爱脑髓,贪婪而不知足。脑髓,脑髓,脑髓,夜以继日地追求着。老而臭的脑髓?腐烂的脑髓?都没关系。僵尸需要它们。', - }), - oZombie2 = InheritO( - oZombie, - { - EName: "oZombie2", - }, - { - PicArr: { - 2: "images/Zombies/Zombie/Zombie2.gif", - 9: "images/Zombies/Zombie/2.gif", - }, - } - ), - oZombie3 = InheritO( - oZombie, - { - EName: "oZombie3", - }, - { - PicArr: { - 2: "images/Zombies/Zombie/Zombie3.gif", - 9: "images/Zombies/Zombie/3.gif", - }, - } - ), - oFlagZombie = InheritO(oZombie, { - PicArr: (function () { - var a = "images/Zombies/FlagZombie/"; - return [ - "images/Card/Zombies/FlagZombie.png", - a + "0.gif", - a + "FlagZombie.gif", - a + "FlagZombieAttack.gif", - a + "FlagZombieLostHead.gif", - a + "FlagZombieLostHeadAttack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + - $Random, - "images/Zombies/Zombie/ZombieDie.gif" + $Random, - "images/Zombies/Zombie/BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - EName: "oFlagZombie", - CName: "旗帜僵尸", - OSpeed: 2.2, - Speed: 2.2, - beAttackedPointR: 101, - Produce: - '旗帜僵尸标志着即将来袭的一大堆僵尸"流"。

韧性:

毫无疑问,摇旗僵尸喜爱脑髓。但在私下里他也迷恋旗帜。也许是因为旗帜上也画有脑子吧,这很难说。', - }), - OrnIZombies = (function () { - var a = function (f, b) { - var d = f.OrnHP, - c = f.HP, - e = OrnNoneZombies.prototype; - (d = f.OrnHP -= b) < 1 && - ((f.HP += d), - (f.Ornaments = 0), - (f.EleBody.src = - f.PicArr[ - [ - (f.NormalGif = f.OrnLostNormalGif), - (f.AttackGif = f.OrnLostAttackGif), - ][f.isAttacking] - ]), - (f.PlayNormalballAudio = e.PlayNormalballAudio), - (f.PlayFireballAudio = e.PlayFireballAudio), - (f.PlaySlowballAudio = e.PlaySlowballAudio), - (f.getHit = - f.getHit0 = - f.getHit1 = - f.getHit2 = - f.getHit3 = - e.getHit)); - f.SetAlpha(f, f.EleBody, 50, 0.5); - oSym.addTask( - 10, - function (h, g) { - (g = $Z[h]) && - g.SetAlpha(g, g.EleBody, 100, 1); - }, - [f.id] - ); - }; - return InheritO(OrnNoneZombies, { - Ornaments: 1, - OrnLostNormalGif: 9, - OrnLostAttackGif: 10, - getHit: a, - getHit0: a, - getHit1: a, - getHit2: a, - getHit3: a, - }); - })(), - oConeheadZombie = InheritO(OrnIZombies, { - EName: "oConeheadZombie", - CName: "路障僵尸", - OrnHP: 370, - Lvl: 2, - SunNum: 75, - StandGif: 11, - PicArr: (function () { - var b = "images/Zombies/ConeheadZombie/", - a = "images/Zombies/Zombie/"; - return [ - "images/Card/Zombies/ConeheadZombie.png", - b + "0.gif", - b + "ConeheadZombie.gif", - b + "ConeheadZombieAttack.gif", - a + "ZombieLostHead.gif", - a + "ZombieLostHeadAttack.gif", - a + "ZombieHead.gif" + $Random, - a + "ZombieDie.gif" + $Random, - a + "BoomDie.gif" + $Random, - a + "Zombie.gif", - a + "ZombieAttack.gif", - b + "1.gif", - ]; - })(), - AudioArr: ["plastichit"], - PlayNormalballAudio: function () { - PlayAudio("plastichit"); - }, - Produce: - '他的路障头盔,使他两倍坚韧于普通僵尸。

韧性:

和其他僵尸一样,路障头僵尸盲目地向前。但某些事物却使他停下脚步,捡起一个交通路障,并固实在自己的脑袋上。是的,他很喜欢参加聚会。', - }), - oBucketheadZombie = InheritO( - oConeheadZombie, - { - EName: "oBucketheadZombie", - CName: "铁桶僵尸", - OrnHP: 1100, - Lvl: 3, - SunNum: 125, - PlayNormalballAudio: function () { - PlayAudio( - ["shieldhit", "shieldhit2"][ - Math.floor(Math.random() * 2) - ] - ); - }, - Produce: - '他的铁桶头盔,能极大程度的承受伤害。

韧性:
弱点:磁力菇

铁桶头僵尸经常戴着水桶,在冷漠的世界里显得独一无二。但事实上,他只是忘记了,那铁桶还在他头上而已。', - }, - { - PicArr: { - 0: "images/Card/Zombies/BucketheadZombie.png", - 1: "images/Zombies/BucketheadZombie/0.gif", - 2: "images/Zombies/BucketheadZombie/BucketheadZombie.gif", - 3: "images/Zombies/BucketheadZombie/BucketheadZombieAttack.gif", - 9: "images/Zombies/Zombie/Zombie2.gif", - 11: "images/Zombies/BucketheadZombie/1.gif", - }, - } - ), - oFootballZombie = InheritO(oConeheadZombie, { - EName: "oFootballZombie", - CName: "橄榄球僵尸", - OrnHP: 1400, - Lvl: 3, - SunNum: 175, - StandGif: 11, - width: 154, - height: 160, - OSpeed: 3.2, - Speed: 3.2, - beAttackedPointL: 40, - beAttackedPointR: 134, - PlayNormalballAudio: function () { - PlayAudio("plastichit"); - }, - PicArr: (function () { - var a = "images/Zombies/FootballZombie/"; - return [ - "images/Card/Zombies/FootballZombie.png", - a + "0.gif", - a + "FootballZombie.gif", - a + "Attack.gif", - a + "LostHead.gif", - a + "LostHeadAttack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + - $Random, - a + "Die.gif" + $Random, - a + "BoomDie.gif" + $Random, - a + "OrnLost.gif", - a + "OrnLostAttack.gif", - a + "1.gif", - ]; - })(), - getShadow: function (a) { - return ( - "left:" + - (a.beAttackedPointL + 15) + - "px;top:" + - (a.height - 22) + - "px" - ); - }, - Produce: - '橄榄球僵尸的表演秀。

韧性:极高
速度:
弱点:磁力菇

在球场上,橄榄球僵尸表现出110%的激情,他进攻防守样样在行。虽然他完全不知道橄榄球是什么。', - }), - oPoleVaultingZombie = InheritO(OrnNoneZombies, { - EName: "oPoleVaultingZombie", - CName: "撑杆僵尸", - HP: 500, - width: 348, - height: 218, - OSpeed: 3.2, - Speed: 3.2, - beAttackedPointL: 215, - beAttackedPointR: 260, - StandGif: 13, - GetDX: function () { - return -238; - }, - GetDY: function () { - return 2; - }, - Lvl: 2, - SunNum: 75, - BookHandPosition: "-30px 70%", - PicArr: (function () { - var a = "images/Zombies/PoleVaultingZombie/"; - return [ - "images/Card/Zombies/PoleVaultingZombie.png", - a + "0.gif", - a + "PoleVaultingZombie.gif", - a + "PoleVaultingZombieAttack.gif", - a + "PoleVaultingZombieLostHead.gif", - a + "PoleVaultingZombieLostHeadAttack.gif", - a + "PoleVaultingZombieHead.gif" + $Random, - a + "PoleVaultingZombieDie.gif" + $Random, - a + "BoomDie.gif" + $Random, - a + "PoleVaultingZombieWalk.gif", - a + "PoleVaultingZombieLostHeadWalk.gif", - a + "PoleVaultingZombieJump.gif", - a + "PoleVaultingZombieJump2.gif", - a + "1.gif", - ]; - })(), - AudioArr: ["polevault", "grassstep"], - Produce: - '撑杆僵尸运用标杆高高地跃过障碍物。

韧性:
速度:快,而后慢(跳跃后)
特点:跃过他所碰到的第一筑植物

一些僵尸渴望走得更远、得到更多,这也促使他们由普通成为非凡。那就是撑杆僵尸。', - getShadow: function (a) { - return ( - "left:" + - (a.beAttackedPointL - 20) + - "px;top:" + - (a.height - 35) + - "px" - ); - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "left:" + - b.X + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - JudgeAttack: function () { - var g = this, - b = g.ZX, - d = g.R + "_", - c = GetC(b), - h = oGd.$, - f, - a, - e = b - 74; - for (f = c - 2; f <= c; f++) { - if (f > 9) { - continue; - } - for ( - a = 2; - a > -1; - (p = h[d + f + "_" + a--]) && - (p.EName != "oBrains" - ? p.AttackedRX >= e && - p.AttackedLX < b && - p.canEat && - ((a = -1), - (g.JudgeAttack = - CZombies.prototype.JudgeAttack), - g.NormalAttack( - g.id, - p.id, - p.AttackedLX - )) - : p.AttackedRX >= b && - p.AttackedLX < b && - ((a = -1), - (g.JudgeAttack = - CZombies.prototype.JudgeAttack), - (g.NormalAttack = - CZombies.prototype.NormalAttack)( - g.id, - p.id - ))) - ) {} - } - }, - getCrushed: function (a) { - this.NormalAttack(this.id, a.id, a.AttackedLX); - this.getCrushed = function () { - return false; - }; - a.Stature > 0 && - oSym.addTask( - 50, - function (c) { - var b = $Z[c]; - b && b.CrushDie(); - }, - [this.id] - ); - return false; - }, - getRaven: function (a) { - return ( - !this.isAttacking && - this.NormalAttack( - this.id, - a, - $P[a].AttackedLX - ), - 0 - ); - }, - NormalAttack: function (d, b, g) { - var f = $Z[d], - a = f.Ele, - c = f.EleShadow, - e = f.EleBody; - e.src = - "images/Zombies/PoleVaultingZombie/PoleVaultingZombieJump.gif" + - $Random + - Math.random(); - PlayAudio("grassstep"); - SetHidden(c); - f.isAttacking = 1; - f.Altitude = 2; - f.getFreeze = function () { - f.getSnowPea(f, 20); - }; - oSym.addTask( - 50, - function (h) { - $Z[h] && PlayAudio("polevault"); - }, - [d] - ); - oSym.addTask( - 100, - function (m, j, i, l, n) { - var h = $Z[m], - k, - q, - r; - h && - ((k = $P[j]) && k.Stature > 0 - ? ((h.AttackedRX = - (h.X = - (h.AttackedLX = - h.ZX = - q = - k.AttackedRX) - - h.beAttackedPointL) + - h.beAttackedPointR), - SetStyle(i, { - left: h.X + "px", - }), - (n.src = - "images/Zombies/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), - SetVisible(l), - (h.isAttacking = 0), - (h.Altitude = 1), - (h.OSpeed = h.Speed = 1.6), - (h.NormalGif = 9), - (h.LostHeadGif = 10), - (h.NormalAttack = (r = - CZombies.prototype).NormalAttack), - (h.getCrushed = r.getCrushed), - (h.getFreeze = r.getFreeze), - (h.getRaven = r.getRaven)) - : ((h.ZX = h.AttackedLX = - (h.X = - (h.AttackedRX = g) - - h.beAttackedPointR) + - h.beAttackedPointL), - SetStyle(i, { - left: h.X + "px", - }), - (n.src = - "images/Zombies/PoleVaultingZombie/PoleVaultingZombieJump2.gif" + - $Random + - Math.random()), - SetVisible(l), - oSym.addTask( - 80, - function (s, v) { - var u = $Z[s], - t; - u && - ((v.src = - "images/Zombies/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), - (u.isAttacking = 0), - (u.Altitude = 1), - (u.OSpeed = u.Speed = - 1.6), - (u.NormalGif = 9), - (u.LostHeadGif = 10), - (u.NormalAttack = (t = - CZombies.prototype).NormalAttack), - (u.getCrushed = - t.getCrushed), - (u.getFreeze = - t.getFreeze), - (u.getRaven = - t.getRaven)); - }, - [m, n] - ))); - }, - [d, b, a, c, e] - ); - }, - }), - OrnIIZombies = InheritO(OrnNoneZombies, { - Ornaments: 2, - BreakPoint: 91, - NormalGif: 2, - AttackGif: 3, - LostHeadGif: 4, - LostHeadAttackGif: 5, - OrnLostNormalGif: 6, - OrnLostAttackGif: 7, - OrnLostHeadNormalGif: 8, - OrnLostHeadAttackGif: 9, - HeadGif: 10, - DieGif: 11, - BoomDieGif: 12, - }), - oNewspaperZombie = InheritO(OrnIIZombies, { - EName: "oNewspaperZombie", - CName: "读报僵尸", - OrnHP: 150, - Lvl: 2, - LostPaperGif: 13, - StandGif: 14, - width: 216, - height: 164, - beAttackedPointL: 60, - beAttackedPointR: 130, - LostPaperSpeed: 4.8, - PicArr: (function () { - var a = "images/Zombies/NewspaperZombie/"; - return [ - "images/Card/Zombies/NewspaperZombie.png", - a + "0.gif", - a + "HeadWalk1.gif", - a + "HeadAttack1.gif", - a + "LostHeadWalk1.gif", - a + "LostHeadAttack1.gif", - a + "HeadWalk0.gif", - a + "HeadAttack0.gif", - a + "LostHeadWalk0.gif", - a + "LostHeadAttack0.gif", - a + "Head.gif" + $Random, - a + "Die.gif" + $Random, - a + "BoomDie.gif" + $Random, - a + "LostNewspaper.gif", - a + "1.gif", - ]; - })(), - AudioArr: ["newspaper_rarrgh2"], - Produce: - '他的报纸只能提供有限的防御。

韧性:
报纸韧性:
速度:正常,而后快(失去报纸后)

读报僵尸,他正痴迷于完成他的数独难题。难怪他这么反常。', - getShadow: function (a) { - return "left:75px;top:" + (a.height - 25) + "px"; - }, - GoingDie: function (b) { - var a = this, - c = a.id; - a.EleBody.src = b; - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a.PicArr[a.HeadGif] + Math.random(), - "left:" + - a.AttackedLX + - "px;top:" + - (a.pixelTop - 20) + - "px;z-index:" + - a.zIndex, - EDPZ - ), - ]); - a.beAttacked = 0; - a.FreeFreezeTime = - a.FreeSetbodyTime = - a.FreeSlowTime = - 0; - a.AutoReduceHP(c); - }, - getHurtOrnLost: function (j, a, g, m, c, l, k, i) { - var e = this; - if (!e.beAttacked) { - k && e.DisappearDie(); - return; - } - var b = e.id, - h = e.HP, - d = e.PicArr, - f = e.isAttacking; - switch (true) { - case (h -= g) < 1: - e.HP = 0; - e.NormalDie(); - return; - case h < 91: - e.HP = h; - e.GoingDie( - d[ - [ - e.OrnLostHeadNormalGif, - e.OrnLostHeadAttackGif, - ][f] - ] - ); - return; - } - e.HP = h; - switch (m) { - case -1: - e.getSlow(e, b, 1000); - break; - case 1: - e.getFireball(e, b, a); - break; - default: - !i && j == -1 && e.PlayNormalballAudio(); - } - SetAlpha(e.EleBody, 50, 0.5); - oSym.addTask( - 10, - function (q) { - var n = $Z[q]; - n && SetAlpha(n.EleBody, 100, 1); - }, - [b] - ); - }, - getSnowPea: function (c, a, b) { - PlayAudio( - "splat" + Math.floor(1 + Math.random() * 3) - ); - c.getHit0(c, a, b); - }, - getFirePea: function (f, b, e) { - f.PlayFireballAudio(); - (f.FreeSlowTime || f.FreeFreezeTime) && - ((f.Speed = f.OSpeed), - (f.FreeSlowTime = 0), - (f.FreeFreezeTime = 0)); - f.Attack = 100; - var d = f.AttackedLX, - g = f.AttackedRX, - a = oZ.getArZ(d, d + 40, f.R), - c = a.length, - h; - while (c--) { - (h = a[c]) != this && h.getFirePeaSputtering(); - } - (f.HP -= b) < f.BreakPoint - ? ((f.getFirePea = - OrnNoneZombies.prototype.getFirePea), - f.GoingDie( - f.PicArr[ - [f.LostHeadGif, f.LostHeadAttackGif][ - f.isAttacking - ] - ] - ), - (f.getHit = - f.getHit0 = - f.getHit1 = - f.getHit2 = - f.getHit3 = - function () {})) - : (f.CheckOrnHP( - f, - f.id, - f.OrnHP, - b, - f.PicArr, - f.isAttacking, - 0 - ), - f.SetAlpha(f, f.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (j, i) { - (i = $Z[j]) && - i.SetAlpha(i, i.EleBody, 100, 1); - }, - [f.id] - )); - }, - getHit0: function (c, a, b) { - b == c.WalkDirection - ? (c.CheckOrnHP( - c, - c.id, - c.OrnHP, - a, - c.PicArr, - c.isAttacking, - 1 - ), - c.SetAlpha(c, c.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (e, d) { - (d = $Z[e]) && - d.SetAlpha(d, d.EleBody, 100, 1); - }, - [c.id] - )) - : (c.HP -= a) < c.BreakPoint && - (c.GoingDie( - c.PicArr[ - [c.LostHeadGif, c.LostHeadAttackGif][ - c.isAttacking - ] - ] - ), - (c.getFirePea = - OrnNoneZombies.prototype.getFirePea), - (c.getSnowPea = - OrnNoneZombies.prototype.getSnowPea), - (c.getHit = - c.getHit0 = - c.getHit1 = - c.getHit2 = - c.getHit3 = - function () {})); - }, - getHit1: function (b, a) { - (b.HP -= a) < b.BreakPoint - ? (b.GoingDie( - b.PicArr[ - [b.LostHeadGif, b.LostHeadAttackGif][ - b.isAttacking - ] - ] - ), - (b.getFirePea = - OrnNoneZombies.prototype.getFirePea), - (b.getSnowPea = - OrnNoneZombies.prototype.getSnowPea), - (b.getHit = - b.getHit0 = - b.getHit1 = - b.getHit2 = - b.getHit3 = - function () {})) - : (b.CheckOrnHP( - b, - b.id, - b.OrnHP, - a, - b.PicArr, - b.isAttacking, - 0 - ), - b.SetAlpha(b, b.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (d, c) { - (c = $Z[d]) && - c.SetAlpha(c, c.EleBody, 100, 1); - }, - [b.id] - )); - }, - getHit2: function (b, a) { - (b.HP -= a) < b.BreakPoint - ? (b.GoingDie( - b.PicArr[ - [b.LostHeadGif, b.LostHeadAttackGif][ - b.isAttacking - ] - ] - ), - (b.getFirePea = - OrnNoneZombies.prototype.getFirePea), - (b.getSnowPea = - OrnNoneZombies.prototype.getSnowPea), - (b.getHit = - b.getHit0 = - b.getHit1 = - b.getHit2 = - b.getHit3 = - function () {})) - : (b.SetAlpha(b, b.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (d, c) { - (c = $Z[d]) && - c.SetAlpha(c, c.EleBody, 100, 1); - }, - [b.id] - )); - }, - getHit3: function (b, a) { - (b.HP -= a) < b.BreakPoint - ? (b.GoingDie( - b.PicArr[ - [b.LostHeadGif, b.LostHeadAttackGif][ - b.isAttacking - ] - ] - ), - (b.getFirePea = - OrnNoneZombies.prototype.getFirePea), - (b.getSnowPea = - OrnNoneZombies.prototype.getSnowPea), - (b.getHit = - b.getHit0 = - b.getHit1 = - b.getHit2 = - b.getHit3 = - function () {})) - : (b.CheckOrnHP( - b, - b.id, - b.OrnHP, - a, - b.PicArr, - b.isAttacking, - 0 - ), - b.SetAlpha(b, b.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (d, c) { - (c = $Z[d]) && - c.SetAlpha(c, c.EleBody, 100, 1); - }, - [b.id] - )); - }, - CheckOrnHP: function (g, h, d, c, f, b, a) { - var e = OrnNoneZombies.prototype; - (g.OrnHP = d -= c) < 1 && - (a && (g.HP += d), - (g.ChkActs = function () { - return 1; - }), - (g.ChkActs1 = function () { - return 1; - }), - (g.EleBody.src = - f[g.LostPaperGif] + - $Random + - Math.random()), - (g.Ornaments = 0), - (g.LostHeadGif = 8), - (g.LostHeadAttackGif = 9), - (g.getFirePea = e.getFirePea), - (g.getSnowPea = e.getSnowPea), - (g.getHit = - g.getHit0 = - g.getHit1 = - g.getHit2 = - g.getHit3 = - e.getHit), - oSym.addTask( - 150, - function (m, l) { - var k = $Z[m]; - if (!k) { - return; - } - var j = CZombies.prototype, - i = (k.OSpeed = k.LostPaperSpeed); - k.ChkActs = j.ChkActs; - k.ChkActs1 = j.ChkActs1; - k.Speed && - (k.Speed = !k.FreeSlowTime - ? i - : 0.5 * i); - if (!k.beAttacked) { - return; - } - PlayAudio("newspaper_rarrgh2"); - k.EleBody.src = l; - k.JudgeAttack(); - }, - [ - h, - f[ - [ - (g.NormalGif = - g.OrnLostNormalGif), - (g.AttackGif = - g.OrnLostAttackGif), - ][b] - ], - ] - )); - }, - }), - oScreenDoorZombie = InheritO(oNewspaperZombie, { - EName: "oScreenDoorZombie", - CName: "铁栅门僵尸", - OrnHP: 1100, - Lvl: 3, - SunNum: 100, - StandGif: 13, - width: 166, - height: 144, - beAttackedPointL: 60, - beAttackedPointR: 116, - PicArr: (function () { - var a = "images/Zombies/ScreenDoorZombie/", - b = "images/Zombies/Zombie/"; - return [ - "images/Card/Zombies/ScreenDoorZombie.png", - a + "0.gif", - a + "HeadWalk1.gif", - a + "HeadAttack1.gif", - a + "LostHeadWalk1.gif", - a + "LostHeadAttack1.gif", - b + "Zombie2.gif", - b + "ZombieAttack.gif", - b + "ZombieLostHead.gif", - b + "ZombieLostHeadAttack.gif", - b + "ZombieHead.gif" + $Random, - b + "ZombieDie.gif" + $Random, - b + "BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - PlayNormalballAudio: function () { - PlayAudio( - "splat" + Math.floor(1 + Math.random() * 3) - ); - }, - Produce: - '他的铁栅门是有效的盾牌。

韧性:
铁栅门韧性:
弱点:大喷菇和磁力菇

门板僵尸上次拜访过的房主防守并不专业,在吃掉房主的脑子后拿走了他家的铁栅门。', - GoingDie: CZombies.prototype.GoingDie, - getFirePea: function (c, a, b) { - PlayAudio( - b == c.WalkDirection - ? ["shieldhit", "shieldhit2"][ - Math.floor(Math.random() * 2) - ] - : "splat" + - Math.floor(1 + Math.random() * 3) - ); - c.getHit0(c, a, b); - }, - getFirePeaSputtering: function () {}, - getSnowPea: function (c, a, b) { - PlayAudio( - ["shieldhit", "shieldhit2"][ - Math.floor(Math.random() * 2) - ] - ); - c.getHit0(c, a, b); - }, - getPea: function (c, a, b) { - PlayAudio( - b == c.WalkDirection - ? ["shieldhit", "shieldhit2"][ - Math.floor(Math.random() * 2) - ] - : "splat" + - Math.floor(1 + Math.random() * 3) - ); - c.getHit0(c, a, b); - }, - getHit0: function (c, a, b) { - b == c.WalkDirection - ? (c.CheckOrnHP( - c, - c.id, - c.OrnHP, - a, - c.PicArr, - c.isAttacking, - 1 - ), - c.SetAlpha(c, c.EleBody, 50, 0.5), - oSym.addTask( - 10, - function (e, d) { - (d = $Z[e]) && - d.SetAlpha(d, d.EleBody, 100, 1); - }, - [c.id] - )) - : (c.HP -= a) < c.BreakPoint && - (c.GoingDie( - c.PicArr[ - [c.LostHeadGif, c.LostHeadAttackGif][ - c.isAttacking - ] - ] - ), - (c.getHit = - c.getHit0 = - c.getHit1 = - c.getHit2 = - c.getHit3 = - function () {})); - }, - CheckOrnHP: function (g, h, d, c, f, b, a) { - var e = OrnNoneZombies.prototype; - (g.OrnHP = d -= c) < 1 && - (a && (g.HP += d), - (g.Ornaments = 0), - (g.EleBody.src = - f[ - [ - (g.NormalGif = g.OrnLostNormalGif), - (g.AttackGif = g.OrnLostAttackGif), - ][b] - ]), - (g.LostHeadGif = 8), - (g.LostHeadAttackGif = 9), - (g.getPea = e.getPea), - (g.getFirePea = e.getFirePea), - (g.getFirePeaSputtering = - e.getFirePeaSputtering), - (g.getSnowPea = g.getSnowPea), - (g.PlayNormalballAudio = e.PlayNormalballAudio), - (g.PlayFireballAudio = e.PlayFireballAudio), - (g.PlaySlowballAudio = e.PlaySlowballAudio), - (g.getHit = - g.getHit0 = - g.getHit1 = - g.getHit2 = - g.getHit3 = - e.getHit)); - }, - getFireball: function (c, a, b) { - b != c.WalkDirection - ? ((c.FreeSlowTime = 0), - (c.Attack = 100), - c.Speed != c.OSpeed - ? (c.PlayNormalballAudio(), - (c.Speed = c.OSpeed)) - : c.PlayFireballAudio()) - : c.PlayNormalballAudio(); - }, - getSputtering: function () {}, - getSlow: function (d, a, c, b, e) { - b != d.WalkDirection || e != -1 - ? CZombies.prototype.getSlow(d, a, c) - : d.PlayNormalballAudio(); - }, - }), - oAquaticZombie = InheritO(OrnNoneZombies, { - StandGif: 4, - AttackGif: 5, - HeadGif: 6, - DieGif: 7, - WalkGif0: 2, - WalkGif1: 3, - CanPass: function (b, a) { - return a == 2; - }, - BirthCallBack: function (g) { - var e = g.delayT, - c = g.id, - b = (g.Ele = $(c)), - d = g.AttackedLX, - f, - a, - h; - f = g.EleShadow = b.firstChild; - g.EleBody = b.childNodes[1]; - switch (true) { - case d > GetX(9): - g.ChkActs = g.ChkActsL1; - g.WalkStatus = 0; - break; - case d < GetX(0): - g.ChkActs = g.ChkActsL3; - g.WalkStatus = 0; - break; - default: - g.ChkActs = g.ChkActsL2; - g.WalkStatus = 1; - g.EleBody.src = - g.PicArr[(g.NormalGif = g.WalkGif1)]; - SetHidden(f); - NewEle( - (a = c + "_splash"), - "div", - "position:absolute;background:url(images/interface/splash.png);left:61px;top:" + - (g.height - 88) + - "px;width:97px;height:88px;over-flow:hidden", - 0, - b - ); - ImgSpriter( - a, - c, - [ - ["0 0", 9, 1], - ["-97px 0", 9, 2], - ["-194px 0", 9, 3], - ["-291px 0", 9, 4], - ["-388px 0", 9, 5], - ["-485px 0", 9, 6], - ["-582px 0", 9, 7], - ["-679px 0", 9, -1], - ], - 0, - function (i, j) { - ClearChild($(i)); - } - ); - } - e - ? oSym.addTask( - e, - function (j, i) { - var k = $Z[j]; - k && - ((k.FreeSetbodyTime = 0), - SetBlock(i)); - }, - [c, b] - ) - : SetBlock(b); - }, - ChkActsL1: function (f, e, g, d) { - var c, - a, - b = f.id; - !(f.FreeFreezeTime || f.FreeSetbodyTime) && - ((f.AttackedRX -= c = f.Speed), - (LX = f.ZX = f.AttackedLX -= c), - (f.Ele.style.left = - Math.floor((f.X -= c)) + "px")); - f.AttackedLX < GetX(9) && - (PlayAudio("zombie_entering_water"), - (f.WalkStatus = 1), - (f.EleBody.src = - f.PicArr[(f.NormalGif = f.WalkGif1)]), - SetHidden(f.EleShadow), - NewEle( - (a = b + "_splash"), - "div", - "position:absolute;background:url(images/interface/splash.png);left:61px;top:" + - (f.height - 88) + - "px;width:97px;height:88px;over-flow:hidden", - 0, - f.Ele - ), - (f.ChkActs = f.ChkActsL2), - ImgSpriter( - a, - b, - [ - ["0 0", 9, 1], - ["-97px 0", 9, 2], - ["-194px 0", 9, 3], - ["-291px 0", 9, 4], - ["-388px 0", 9, 5], - ["-485px 0", 9, 6], - ["-582px 0", 9, 7], - ["-679px 0", 9, -1], - ], - 0, - function (h, i) { - ClearChild($(h)); - } - )); - return 1; - }, - ChkActsL2: function (d, c, e, b) { - var a; - !(d.FreeFreezeTime || d.FreeSetbodyTime) && - (d.beAttacked && - !d.isAttacking && - d.JudgeAttack(), - !d.isAttacking && - ((d.AttackedRX -= a = d.Speed), - (d.ZX = d.AttackedLX -= a), - (d.Ele.style.left = - Math.floor((d.X -= a)) + "px"))); - d.AttackedLX < GetX(0) && - ((d.WalkStatus = 0), - (d.EleBody.src = - d.PicArr[(d.NormalGif = d.WalkGif0)]), - SetVisible(d.EleShadow), - (d.ChkActs = d.ChkActsL3)); - return 1; - }, - ChkActsL3: CZombies.prototype.ChkActs, - ChkActs1: function (d, c, e, b) { - var a; - !(d.FreeFreezeTime || d.FreeSetbodyTime) && - (d.beAttacked && - !d.isAttacking && - d.JudgeAttack(), - !d.isAttacking && - ((d.AttackedLX += a = d.Speed), - (d.ZX = d.AttackedRX += a), - (d.Ele.style.left = - Math.ceil((d.X += a)) + "px"))); - d.AttackedLX > GetX(9) && - ((d.WalkStatus = 0), - (d.EleBody.src = - d.PicArr[(d.NormalGif = d.WalkGif0)]), - SetVisible(d.EleShadow), - (d.ChkActs = d.ChkActs2)); - return 1; - }, - ChkActs2: function (e, c, f, b) { - var a, d; - !(e.FreeFreezeTime || e.FreeSetbodyTime) - ? (e.beAttacked && - !e.isAttacking && - e.JudgeAttack(), - !e.isAttacking - ? (e.AttackedLX += a = e.Speed) > oS.W - ? (f.splice(b, 1), - e.DisappearDie(), - (d = 0)) - : ((e.ZX = e.AttackedRX += a), - (e.Ele.style.left = - Math.ceil((e.X += a)) + "px"), - (d = 1)) - : (d = 1)) - : (d = 1); - return d; - }, - ExchangeLR: function (d, b) { - var c = d.width, - f = d.beAttackedPointL, - a = d.beAttackedPointR, - e = d.Ele; - e.style.left = - (d.X = - d.AttackedLX - - (d.beAttackedPointL = c - a)) + "px"; - d.beAttackedPointR = c - f; - d.EleShadow.style.cssText = - "visibility:hidden;left:" + - (d.beAttackedPointL - 10) + - "px;top:" + - (d.height - 22) + - "px"; - d.ExchangeLR2(d, d.EleBody, b); - }, - GoingDie: function () { - var b = this, - c = b.id, - a = b.PicArr; - b.EleBody.src = a[7] + Math.random(); - b.GoingDieHead(c, a, b); - b.beAttacked = 0; - b.FreeFreezeTime = - b.FreeSetbodyTime = - b.FreeSlowTime = - 0; - b.AutoReduceHP(c); - }, - AutoReduceHP: function (a) { - oSym.addTask( - 100, - function (c) { - var b = $Z[c]; - b && - ((b.HP -= 60) < 1 - ? (b.NormalDie(), - oSym.addTask(50, ClearChild, [ - b.Ele, - ])) - : oSym.addTask( - 100, - arguments.callee, - [c] - )); - }, - [a] - ); - }, - ExplosionDie: function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - DisappearDie: function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - NormalDie: function () { - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - }), - oDuckyTubeZombie1 = InheritO(oAquaticZombie, { - EName: "oDuckyTubeZombie1", - CName: "鸭子救生圈僵尸", - beAttackedPointR: 130, - GetDY: function () { - return 5; - }, - Produce: - '鸭子救生圈能让僵尸能浮在水面上。

韧性:
只在水池关卡出现

只有特定的僵尸才能成为救生圈僵尸。并不是每个僵尸都能胜任的。有些救生圈有点漏气,但他们没能注意到,所以他们离开并放弃了对脑子的渴求。', - PicArr: (function () { - var a = "images/Zombies/DuckyTubeZombie1/"; - return [ - "images/Card/Zombies/DuckyTubeZombie1.png", - a + "0.gif", - a + "Walk1.gif", - a + "Walk2.gif", - a + "1.gif", - a + "Attack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + - $Random, - a + "Die.gif" + $Random, - ]; - })(), - AudioArr: ["zombie_entering_water"], - }), - oDuckyTubeZombie2 = InheritO(oDuckyTubeZombie1, { - EName: "oDuckyTubeZombie2", - CName: "路障鸭子救生圈僵尸", - OrnHP: 370, - Lvl: 2, - SunNum: 75, - CanDisplay: 0, - OrnLostNormalGif: 9, - OrnLostAttackGif: 10, - PlayNormalballAudio: function () { - PlayAudio("plastichit"); - }, - PicArr: (function () { - var b = "images/Zombies/DuckyTubeZombie2/", - a = "images/Zombies/DuckyTubeZombie1/"; - return [ - "images/Card/Zombies/DuckyTubeZombie1.png", - b + "0.gif", - b + "Walk1.gif", - b + "Walk2.gif", - b + "1.gif", - b + "Attack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + - $Random, - a + "Die.gif" + $Random, - a + "Walk1.gif", - a + "Walk2.gif", - a + "Attack.gif", - ]; - })(), - AudioArr: ["plastichit", "zombie_entering_water"], - getHit: OrnIZombies.prototype.getHit, - getHit0: OrnIZombies.prototype.getHit0, - getHit1: OrnIZombies.prototype.getHit1, - getHit2: OrnIZombies.prototype.getHit2, - getHit3: OrnIZombies.prototype.getHit3, - }), - oDuckyTubeZombie3 = InheritO(oDuckyTubeZombie2, { - EName: "oDuckyTubeZombie3", - CName: "铁桶鸭子救生圈僵尸", - OrnHP: 1100, - Lvl: 3, - SunNum: 125, - PlayNormalballAudio: function () { - PlayAudio( - ["shieldhit", "shieldhit2"][ - Math.floor(Math.random() * 2) - ] - ); - }, - AudioArr: [ - "shieldhit", - "shieldhit2", - "zombie_entering_water", - ], - PicArr: (function () { - var b = "images/Zombies/DuckyTubeZombie3/", - a = "images/Zombies/DuckyTubeZombie1/"; - return [ - "images/Card/Zombies/DuckyTubeZombie1.png", - b + "0.gif", - b + "Walk1.gif", - b + "Walk2.gif", - b + "1.gif", - b + "Attack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + - $Random, - a + "Die.gif" + $Random, - a + "Walk1.gif", - a + "Walk2.gif", - a + "Attack.gif", - ]; - })(), - }), - oSnorkelZombie = InheritO(oDuckyTubeZombie1, { - EName: "oSnorkelZombie", - CName: "潜水僵尸", - Lvl: 1, - SunNum: 75, - width: 143, - height: 200, - beAttackedPointL: 40, - beAttackedPointR: 100, - OSpeed: 3.2, - Speed: 3.2, - Altitude: 1, - Produce: - '潜水僵尸可以在水下前行。

韧性:
特点:潜泳以避免遭到攻击
只在水池关卡出现

僵尸不呼吸。他们不需要空气。那么为什么潜水僵尸需要一套潜水装置来潜水呢?
答案:同行的压力。', - JumpTime: 40, - getShadow: function (a) { - return ( - "left:" + - a.beAttackedPointL + - "px;top:" + - (a.height - 45) + - "px" - ); - }, - PicArr: (function () { - var a = "images/Zombies/SnorkelZombie/"; - return [ - "images/Card/Zombies/SnorkelZombie.png", - a + "0.gif", - a + "Walk1.gif", - a + "Walk2.gif", - a + "1.gif", - a + "Attack.gif", - a + "Head.gif" + $Random, - a + "Die.gif" + $Random, - a + "Jump.gif" + $Random, - a + "Risk.gif" + $Random, - a + "Sink.gif" + $Random, - ]; - })(), - AudioArr: ["zombie_entering_water"], - BirthCallBack: function (a) { - oAquaticZombie.prototype.BirthCallBack(a), - GetC(this.ZX) <= 9 && this.Jump(this); - }, - Jump: function (a) { - a.beAttacked && - (PlayAudio("zombie_entering_water"), - (a.Altitude = 2), - SetHidden(a.EleShadow), - (a.EleBody.src = a.PicArr[8] + Math.random()), - oSym.addTask( - 160, - function (c, b) { - $Z[c] && - b.beAttacked && - ((b.WalkStatus = 1), - (b.Altitude = 0), - (b.OSpeed = b.Speed = 2), - (b.EleBody.src = - b.PicArr[ - (b.NormalGif = b.WalkGif1) - ]), - (b.ChkActs = b.ChkActsL2)); - }, - [a.id, a] - ), - (a.ChkActs = function () { - return 1; - })); - }, - ChkActsL1: function (d, c, e, b) { - if (d.JumpTime <= 0) { - d.Jump(d); - return 1; - } - var a; - !(d.FreeFreezeTime || d.FreeSetbodyTime) && - ((d.AttackedRX -= a = d.Speed), - (LX = d.ZX = d.AttackedLX -= a), - (d.Ele.style.left = - Math.floor((d.X -= a)) + "px"), - --d.JumpTime); - return 1; - }, - ChkActsL2: function (d, c, e, b) { - var a; - !(d.FreeFreezeTime || d.FreeSetbodyTime) && - (d.AttackedLX > GetX(0) - ? (d.beAttacked && - !d.isAttacking && - d.JudgeAttack(), - !d.isAttacking && - ((d.AttackedRX -= a = d.Speed), - (d.ZX = d.AttackedLX -= a), - (d.Ele.style.left = - Math.floor((d.X -= a)) + "px"))) - : d.beAttacked && - ((d.WalkStatus = 0), - (d.Altitude = 1), - (d.EleBody.src = - d.PicArr[(d.NormalGif = d.WalkGif0)]), - SetVisible(d.EleShadow), - (d.ChkActs = d.ChkActsL3))); - return 1; - }, - JudgeAttack: function () { - var e = this, - b = e.ZX, - c = e.R + "_", - d = GetC(b), - g = oGd.$, - a, - f = e.id; - (a = - e.JudgeLR(e, c, d, b, g) || - e.JudgeSR(e, c, d, b, g)) - ? !e.isAttacking - ? ((e.isAttacking = 1), - (e.EleBody.src = - e.PicArr[9] + Math.random()), - oSym.addTask( - 50, - function (i, h) { - $Z[i] && - h.beAttacked && - ((h.EleBody.src = - h.PicArr[h.AttackGif]), - (h.Altitude = 1), - h.NormalAttack(a[0], a[1])); - }, - [f, e] - )) - : e.NormalAttack(a[0], a[1]) - : e.isAttacking && - ((e.EleBody.src = - e.PicArr[10] + Math.random()), - (e.Altitude = 0), - oSym.addTask( - 70, - function (i, h) { - $Z[i] && - h.beAttacked && - ((h.isAttacking = 0), - (h.EleBody.src = - h.PicArr[h.NormalGif])); - }, - [f, e] - )); - }, - NormalAttack: function (b, a) { - oSym.addTask( - 100, - function (d, c) { - var f = $Z[d], - e; - f && - f.beAttacked && - !f.FreeFreezeTime && - !f.FreeSetbodyTime && - ((e = $P[c]) && e.getHurt(f, 0, 100), - f.JudgeAttack()); - }, - [b, a] - ); - }, - JudgeAttackH: function () { - var c = this, - b = oZ.getZ0(c.ZX, c.R), - d = c.id, - a; - b && - b.beAttacked && - b.AttackedLX < 900 && - b.Altitude < 2 - ? !c.isAttacking - ? ((c.isAttacking = 1), - (c.EleBody.src = - c.PicArr[9] + Math.random()), - (a = b.id), - !b.isAttacking && - b.AttackZombie2(b, a, d), - oSym.addTask( - 50, - function (g, h, f, e) { - $Z[h] && - g.beAttacked && - ($Z[e] && f.beAttacked - ? ((g.EleBody.src = - g.PicArr[ - g.AttackGif - ]), - (g.Altitude = 1), - g.AttackZombie(h, e)) - : g.JudgeAttackH()); - }, - [c, d, b, a] - )) - : c.AttackZombie(d, a) - : c.isAttacking && - ((c.EleBody.src = - c.PicArr[10] + Math.random()), - (c.Altitude = 0), - oSym.addTask( - 70, - function (f, e) { - $Z[f] && - e.beAttacked && - ((e.isAttacking = 0), - (e.EleBody.src = - e.PicArr[e.NormalGif])); - }, - [d, c] - )); - }, - AttackZombie2: function (c, b, a) { - c.isAttacking = 1; - c.EleBody.src = c.PicArr[9] + Math.random(); - oSym.addTask( - 50, - function (g, e, d, f) { - $Z[e] && - g.beAttacked && - ((f = $Z[d]) && f.beAttacked - ? ((g.EleBody.src = - g.PicArr[g.AttackGif]), - (g.Altitude = 1), - oSym.addTask( - 10, - function (k, i, j, h) { - $Z[i] && - k.beAttacked && - !k.FreeFreezeTime && - !k.FreeSetbodyTime && - ($Z[h] && j.beAttacked - ? (j.getHit0( - j, - 10, - 0 - ), - oSym.addTask( - 10, - arguments.callee, - [k, i, j, h] - )) - : ((k.EleBody.src = - k - .PicArr[10] + - Math.random()), - (k.Altitude = 0), - oSym.addTask( - 70, - function ( - l, - m - ) { - $Z[l] && - m.beAttacked && - ((m.isAttacking = 0), - (m.EleBody.src = - m.PicArr[ - m.NormalGif - ])); - }, - [i, k] - ))); - }, - [g, e, f, d] - )) - : ((g.EleBody.src = - g.PicArr[10] + Math.random()), - (g.Altitude = 0), - oSym.addTask( - 70, - function (h, i) { - $Z[h] && - i.beAttacked && - ((i.isAttacking = 0), - (i.EleBody.src = - i.PicArr[ - i.NormalGif - ])); - }, - [e, g] - ))); - }, - [c, b, a] - ); - }, - AutoReduceHP: function (a) { - oSym.addTask( - 100, - function (c) { - var b = $Z[c]; - b && - ((b.HP -= 60) < 1 - ? (b.NormalDie(), - oSym.addTask(200, ClearChild, [ - b.Ele, - ])) - : oSym.addTask( - 100, - arguments.callee, - [c] - )); - }, - [a] - ); - }, - }), - oSmallZombie = InheritO(oZombie, { - EName: "oSmallZombie", - CName: "小领带僵尸", - HP: 67, - width: 83, - height: 72, - beAttackedPointL: 41, - beAttackedPointR: 78, - BreakPoint: 25, - Init: function (e, g, c, b) { - var a = 0, - f = this, - d = []; - g.AttackedRX = - (g.X = - (g.ZX = g.AttackedLX = e) - - g.beAttackedPointL) + g.beAttackedPointR; - while (--b) { - g.CanPass(b, c[b]) && (d[a++] = b); - } - g.ArR = d; - g.ArHTML = [ - '
', - ]; - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "width:75px;height:93px;left:" + - b.AttackedLX + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - getShadow: function (a) { - return ( - "width:43px;height:18px;left:" + - (a.beAttackedPointL - 5) + - "px;top:" + - (a.height - 15) + - "px" - ); - }, - }), - oSmallFlagZombie = InheritO(oFlagZombie, { - EName: "oSmallFlagZombie", - CName: "小旗帜僵尸", - HP: 67, - width: 83, - height: 72, - beAttackedPointL: 41, - beAttackedPointR: 78, - BreakPoint: 25, - Init: function (e, g, c, b) { - var a = 0, - f = this, - d = []; - g.AttackedRX = - (g.X = - (g.ZX = g.AttackedLX = e) - - g.beAttackedPointL) + g.beAttackedPointR; - while (--b) { - g.CanPass(b, c[b]) && (d[a++] = b); - } - g.ArR = d; - g.ArHTML = [ - '
', - ]; - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "width:75px;height:93px;left:" + - b.AttackedLX + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - getShadow: function (a) { - return ( - "width:43px;height:18px;left:" + - (a.beAttackedPointL - 5) + - "px;top:" + - (a.height - 15) + - "px" - ); - }, - }), - oSmallDuckyTubeZombie1 = InheritO(oDuckyTubeZombie1, { - EName: "oSmallDuckyTubeZombie1", - CName: "小鸭子救生圈僵尸", - HP: 67, - width: 83, - height: 72, - beAttackedPointL: 41, - beAttackedPointR: 73, - BreakPoint: 25, - Init: function (e, g, c, b) { - var a = 0, - f = this, - d = []; - g.AttackedRX = - (g.X = - (g.ZX = g.AttackedLX = e) - - g.beAttackedPointL) + g.beAttackedPointR; - while (--b) { - g.CanPass(b, c[b]) && (d[a++] = b); - } - g.ArR = d; - g.ArHTML = [ - '
', - ]; - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "width:75px;height:93px;left:" + - b.AttackedLX + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - getShadow: function (a) { - return ( - "width:43px;height:18px;left:" + - (a.beAttackedPointL - 5) + - "px;top:" + - (a.height - 15) + - "px" - ); - }, - }), - oSmallConeheadZombie = InheritO(oConeheadZombie, { - EName: "oSmallConeheadZombie", - CName: "小路障僵尸", - OrnHP: 92, - HP: 67, - width: 83, - height: 72, - beAttackedPointL: 41, - beAttackedPointR: 78, - BreakPoint: 25, - Init: function (e, g, c, b) { - var a = 0, - f = this, - d = []; - g.AttackedRX = - (g.X = - (g.ZX = g.AttackedLX = e) - - g.beAttackedPointL) + g.beAttackedPointR; - while (--b) { - g.CanPass(b, c[b]) && (d[a++] = b); - } - g.ArR = d; - g.ArHTML = [ - '
', - ]; - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "width:75px;height:93px;left:" + - b.AttackedLX + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - getShadow: function (a) { - return ( - "width:43px;height:18px;left:" + - (a.beAttackedPointL - 5) + - "px;top:" + - (a.height - 15) + - "px" - ); - }, - }), - oSmallFootballZombie = InheritO(oFootballZombie, { - EName: "oSmallFootballZombie", - CName: "小橄榄球僵尸", - OrnHP: 350, - HP: 67, - width: 77, - height: 80, - beAttackedPointL: 20, - beAttackedPointR: 77, - BreakPoint: 25, - Init: function (e, g, c, b) { - var a = 0, - f = this, - d = []; - g.AttackedRX = - (g.X = - (g.ZX = g.AttackedLX = e) - - g.beAttackedPointL) + g.beAttackedPointR; - while (--b) { - g.CanPass(b, c[b]) && (d[a++] = b); - } - g.ArR = d; - g.ArHTML = [ - '
', - ]; - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "width:75px;height:93px;left:" + - b.AttackedLX + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - getShadow: function (a) { - return ( - "width:43px;height:18px;left:" + - (a.beAttackedPointL + 15) + - "px;top:" + - (a.height - 22) + - "px" - ); - }, - }), - oSmallSnorkelZombie = InheritO(oSnorkelZombie, { - EName: "oSmallSnorkelZombie", - CName: "小潜水僵尸", - HP: 67, - width: 71, - height: 100, - beAttackedPointL: 20, - beAttackedPointR: 50, - BreakPoint: 25, - Init: function (e, g, c, b) { - var a = 0, - f = this, - d = []; - g.AttackedRX = - (g.X = - (g.ZX = g.AttackedLX = e) - - g.beAttackedPointL) + g.beAttackedPointR; - while (--b) { - g.CanPass(b, c[b]) && (d[a++] = b); - } - g.ArR = d; - g.ArHTML = [ - '
', - ]; - }, - GoingDieHead: function (c, a, b) { - oSym.addTask(200, ClearChild, [ - NewImg( - 0, - a[b.HeadGif] + Math.random(), - "width:71px;height:105px;left:" + - b.AttackedLX + - "px;top:" + - (b.pixelTop - 20) + - "px;z-index:" + - b.zIndex, - EDPZ - ), - ]); - }, - getShadow: function (a) { - return ( - "width:43px;height:18px;left:" + - a.beAttackedPointL + - "px;top:" + - (a.height - 45) + - "px" - ); - }, - }), - oZomboni = (function () { - var a = function (d, b) { - var c = d.HP; - switch (true) { - case (d.HP = c -= b) < 200: - d.GoingDie(); - d.getHit0 = - d.getHit1 = - d.getHit2 = - d.getHit3 = - function () {}; - return; - case c < 391: - d.EleBody.src = - "images/Zombies/Zomboni/3.gif"; - break; - case c < 871: - d.EleBody.src = - "images/Zombies/Zomboni/2.gif"; - } - d.SetAlpha(d, d.EleBody, 50, 0.5); - oSym.addTask( - 10, - function (f, e) { - (e = $Z[f]) && - e.SetAlpha(e, e.EleBody, 100, 1); - }, - [d.id] - ); - }; - return InheritO(OrnNoneZombies, { - EName: "oZomboni", - CName: "冰车僵尸", - HP: 1350, - Lvl: 3, - StandGif: 2, - DieGif: 6, - BoomDieGif: 7, - BookHandPosition: "40% 35%", - width: 464, - height: 364, - GetDTop: 104, - beAttackedPointL: 140, - beAttackedPointR: 290, - BreakPoint: 200, - SunNum: 350, - GetDY: function () { - return 0; - }, - OSpeed: 2.5, - Speed: 2.5, - AKind: 2, - Attack: 50, - Produce: - '冰车僵尸运用冰雪,碾过你的植物。

韧性:
特点:碾压植物,留下条冰道

经常被误以为是在驾驶着冰车的僵尸,但事实上冰车僵尸是种完全不同的生物形式,他与太空兽人联系更紧密而不是僵尸。', - PicArr: (function () { - var b = "images/Zombies/Zomboni/"; - return [ - "images/Card/Zombies/Zomboni.png", - b + "0.gif", - b + "1.gif", - b + "2.gif", - b + "3.gif", - b + "4.gif", - b + "5.gif" + $Random, - b + "BoomDie.gif" + $Random, - b + "ice.png", - b + "ice_cap.png", - ]; - })(), - AudioArr: ["zamboni", "explosion"], - BirthCallBack: function (h) { - var g = h.delayT, - e = h.id, - c = (h.Ele = $(e)), - d = h.R, - f, - b = oGd.$Ice; - h.EleShadow = c.firstChild; - h.EleBody = c.childNodes[1]; - !b[d] - ? ((f = NewEle( - "dIceCar" + d, - "div", - "position:absolute;z-index:1;left:145px;top:" + - (GetY(d) - 65) + - "px;width:800px;height:72px", - 0, - EDPZ - )), - NewImg( - "", - "images/interface/blank.png", - "position:absolute;clip:rect(0,auto,auto,800px);width:800px;height:72px;left:5px;background:url(images/Zombies/Zomboni/ice.png) repeat-x", - f - ), - NewImg( - "", - "images/Zombies/Zomboni/ice_cap.png", - "position:absolute;display:none;left:0", - f - ), - (b[d] = [1, 11, h.AttackedLX])) - : ++b[d][0]; - g - ? oSym.addTask( - g, - function (j, i) { - var k = $Z[j]; - k && - ((k.FreeSetbodyTime = 0), - SetBlock(i), - PlayAudio("zamboni")); - }, - [e, c] - ) - : (SetBlock(c), PlayAudio("zamboni")); - }, - ChkActs: function (e, j, q, k) { - var b, - r, - m, - g, - n = oGd.$Ice[j], - d, - h, - f, - c, - l = $("dIceCar" + j); + (oXBZombie = InheritO(OrnNoneZombies, { + EName: "oXBZombie", + CName: "Lobsterhead Runner Zombie", + Lvl: 4, + StandGif: 9, + OSpeed: 3.2, + Speed: 3.2, + PicArr: (function () { + var a = "images/Zombies/XB/"; + return [ + "images/Card/Zombies/XB.png", + a + "0.gif", + a + "Zombie.gif", + a + "ZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + Produce: + '流线型的虾头为他带来了比其他僵尸快一倍的速度。

韧性:
弱点:寒冰射手

长期漂浮在海底令他产生了自己在飞的错觉,他坚信把虾戴在头上可以令自己飞得更高更远。', + })), + (oCXZombie = InheritO(oZombie, { + EName: "oCXZombie", + CName: "Tortoise Zombie", + Lvl: 4, + HP: 1300, + OSpeed: 0.5, + Speed: 0.5, + width: 216, + height: 164, + beAttackedPointL: 60, + beAttackedPointR: 130, + PicArr: (function () { + var a = "images/Zombies/CX/"; + return [ + "images/Card/Zombies/CX.png", + a + "0.gif", + a + "Zombie.gif", + a + "ZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/NewspaperZombie/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + Produce: + '他坚硬的龟壳能减小大部分伤害。

韧性:很高
弱点:海星果

为了爬进与自己身形不符的龟壳,他不惜舍弃作为僵尸的尊严,最终在第一百次尝试之后成功把自己挤进了龟壳,再也出不来啦。', + })), + (oICXZombie = InheritO(oZombie, { + EName: "oICXZombie", + CName: "Tortoise Zombie", + Lvl: 4, + SunNum: 300, + HP: 1300, + OSpeed: 0.64, + Speed: 0.64, + width: 216, + height: 164, + beAttackedPointL: 60, + beAttackedPointR: 130, + PicArr: (function () { + var a = "images/Zombies/CX/"; + return [ + "images/Card/Zombies/ICX.png", + a + "0.gif", + a + "Zombie.gif", + a + "ZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + "images/Zombies/NewspaperZombie/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + Produce: + '他坚硬的龟壳能减小大部分伤害。

韧性:很高
弱点:海星果

为了爬进与自己身形不符的龟壳,他不惜舍弃作为僵尸的尊严,最终在第一百次尝试之后成功把自己挤进了龟壳,再也出不来啦。', + })), + (oLGBOSS = (function () { + var a = function (d, b) { + var c = d.HP; + switch (true) { + case (d.HP = c -= b) < 1e3: + d.GoingDie(); + d.getHit0 = + d.getHit1 = + d.getHit2 = + d.getHit3 = + function () {}; + return; + case c < 3e3: + d.EleBody.src = "images/Zombies/LGBOSS/3.gif"; + break; + case c < 5e3: + d.EleBody.src = "images/Zombies/LGBOSS/2.gif"; + } + d.SetAlpha(d, d.EleBody, 50, 0.5); + oSym.addTask( + 10, + function (f, e) { + (e = $Z[f]) && e.SetAlpha(e, e.EleBody, 100, 1); + }, + [d.id] + ); + }; + return InheritO(oZomboni, { + EName: "oLGBOSS", + CName: "Dragon King Zombie", + HP: 6e3, + width: 464, + height: 377, + beAttackedPointL: 140, + beAttackedPointR: 300, + Produce: + '东海龙王拥有无限延长的身躯,带领僵尸大军突破你的阵型。

韧性:不死之身
技能:无限身躯,碾压植物

僵王博士所研制的新一代水下作战机器。博士花了近一年的功夫,从龙王的排水系统到每一个菱角,都进行了细致的打磨加强。此刻这位僵尸天才正沉浸于机器完成的喜悦中。', + PicArr: (function () { + var b = "images/Zombies/LGBOSS/"; + return [ + "images/Card/Zombies/LGBOSS.png", + b + "0.gif", + b + "1.gif", + b + "2.gif", + b + "3.gif", + b + "5.gif" + $Random, + b + "BoomDie.gif" + $Random, + b + "ice.png", + b + "ice_cap.png", + ]; + })(), + AudioArr: ["zamboni", "explosion"], + BirthCallBack: function (h) { + var g = h.delayT, + e = h.id, + c = (h.Ele = $(e)), + d = h.R, + f, + b = oGd.$Ice; + h.EleShadow = c.firstChild; + h.EleBody = c.childNodes[1]; + !b[d] + ? ((f = NewEle( + "dIceCar" + d, + "div", + "position:absolute;z-index:1;left:145px;top:" + + (GetY(d) - 65) + + "px;width:800px;height:205px", + 0, + EDPZ + )), + NewImg( + "", + "images/interface/blank.png", + "position:absolute;clip:rect(0,auto,auto,800px);width:800px;height:205px;left:0px;background:url(images/Zombies/LGBOSS/ice.png) repeat-x", + f + ), + NewImg( + "", + "images/Zombies/LGBOSS/ice_cap.png", + "position:absolute;display:none;left:0", + f + ), + (b[d] = [1, 11, h.AttackedLX])) + : ++b[d][0]; + g + ? oSym.addTask( + g, + function (j, i) { + var k = $Z[j]; + k && + ((k.FreeSetbodyTime = 0), + SetBlock(i), + PlayAudio("zamboni")); + }, + [e, c] + ) + : (SetBlock(c), PlayAudio("zamboni")); + }, + ChkActs: function (e, j, q, k) { + var b, + r, + m, + g, + n = oGd.$Ice[j], + d, + h, + f, + c, + l = $("dIceCar" + j); + e.JudgeAttack(); + (r = e.AttackedRX -= b = e.Speed) < -50 + ? (q.splice(k, 1), e.DisappearDie(), (m = 0)) + : (r < 100 && + !e.PointZombie && + ((e.PointZombie = 1), + !oS.CardKind && + (StopMusic(), PlayAudio("losemusic", false)), + e.ChangeR({ + R: j, + ar: [oS.R - 1], + CustomTop: 400 - e.height + e.GetDY(), + })), + (e.ZX = e.AttackedLX -= b), + (e.Ele.style.left = Math.floor((e.X -= b)) + "px"), + (m = 1)); + d = e.X; + h = d + 250; + f = d + 100; + c = GetC(h); + c > -1 && + c < n[1] && + ((oGd.$Crater[j + "_" + c] = 1), (n[1] = c)); + h > 120 && + h < n[2] && + ((n[2] = h), + (l.firstChild.style.clip = "rect(0,auto,auto," + f + "px)"), + (l.childNodes[1].style.left = Math.max(0, f) + "px")); + GetC(e.AttackedLX) > 5 && (e.OSpeed = e.Speed -= 0.005); + return m; + }, + ChkActs1: function (f, d, g, c) { + var b, e; + f.JudgeAttack(); + (f.AttackedLX += b = f.Speed) > oS.W + ? (g.splice(c, 1), f.DisappearDie(), (e = 0)) + : ((f.ZX = f.AttackedRX += b), + (f.Ele.style.left = Math.ceil((f.X += b)) + "px"), + (e = 1)); + return e; + }, + getPea: function (c, b) { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + c.getHit0(c, b); + }, + getFirePea: function (c, b) { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + c.getHit0(c, b); + }, + getSnowPea: function (c, b) { + PlayAudio( + ["shieldhit", "shieldhit2"][Math.floor(Math.random() * 2)] + ); + c.getHit0(c, b); + }, + getFirePeaSputtering: function () {}, + getFreeze: function (c, b) { + c.getHit0(c, 20); + }, + getShadow: function (b) { + return ( + "left:" + + (b.beAttackedPointL - 10) + + "px;top:" + + (b.height - 22) + + "px" + ); + }, + getHit: a, + getHit0: a, + getHit1: a, + getHit2: a, + getHit3: a, + GoingDie: function () { + var b = this; + b.beAttacked = 0; + b.AutoReduceHP(b.id); + }, + NormalDie: function () { + var b = this; + PlayAudio("explosion"); + b.EleBody.src = b.PicArr[b.DieGif] + Math.random(); + oSym.addTask(70, ClearChild, [b.Ele]); + b.HP = 0; + delete $Z[b.id]; + b.JudgeIce(); + b.PZ && oP.MonPrgs(); + }, + DisappearDie: function () { + var b = this; + ClearChild(b.Ele); + b.HP = 0; + delete $Z[b.id]; + b.JudgeIce(); + b.PZ && oP.MonPrgs(); + }, + ExplosionDie: function () { + var b = this; + b.EleBody.src = b.PicArr[b.BoomDieGif] + Math.random(); + oSym.addTask(300, ClearChild, [b.Ele]); + b.HP = 0; + delete $Z[b.id]; + b.JudgeIce(); + b.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + this.NormalDie(); + }, + JudgeIce: function () { + var d = this, + b = d.R, + e = $("dIceCar" + b), + c = oGd.$Ice[b]; + e && e.childNodes[1] && SetBlock(e.childNodes[1]); + --c[0] <= 0 && + oSym.addTask( + 3e3, + function (k, h) { + var j = oGd.$Ice[h], + g, + f = oGd.$Crater; + if (j && j[0] <= 0 && k) { + ClearChild(k); + g = j[1]; + while (g < 11) { + delete f[h + "_" + g++]; + delete oGd.$Ice[h]; + } + } + }, + [e, b] + ); + }, + flatTire: function () { + var b = this; + b.EleBody.src = "images/Zombies/LGBOSS/5.gif"; + b.beAttacked = 0; + b.HP = 0; + b.getHit0 = b.getHit1 = b.getHit2 = b.getHit3 = function () {}; + b.ChkActs = b.ChkActs1 = function () {}; + oSym.addTask( + 290, + function (e, c) { + var d = $Z[e]; + d && d.NormalDie(); + }, + [b.id, b.EleBody] + ); + }, + JudgeAttack: function () { + var f = this, + c = f.ZX, + d = f.R + "_", + e = GetC(c), + g = oGd.$, + b; + (b = f.JudgeLR(f, d, e, c, g) || f.JudgeSR(f, d, e, c, g)) && + f.NormalAttack(b[0], b[1]); + }, + JudgeLR: function (e, c, d, b, f) { + return d > 10 || d < 1 + ? false + : (function () { + c += --d + "_"; + var g = 3, + h; + while (g--) { + if ((h = f[c + g])) { + return h.AttackedRX >= b && + h.AttackedLX <= b + ? [e.id, h.id] + : false; + } + } + })(); + }, + JudgeSR: function (e, c, d, b, f) { + return d > 9 + ? false + : (function () { + c += d + "_"; + var g = 3, + h; + while (g--) { + if ((h = f[c + g])) { + return h.AttackedRX >= b && + h.AttackedLX <= b + ? [e.id, h.id] + : false; + } + } + })(); + }, + NormalAttack: function (c, b) { + var d = $Z[c]; + $P[b].getHurt(d, 2, d.Attack); + }, + getThump: function () { + this.NormalDie(); + var CZombies = (function (b, a) { + return ( + ((a = function () {}).prototype = { + name: "Zombies", + HP: 270, + Lvl: 1, + NormalGif: 2, + CardGif: 0, + StaticGif: 1, + StandGif: 2, + BookHandBack: 0, + AudioArr: [], + CanSelect: 1, + CanDisplay: 1, + BookHandPosition: "50% 70%", + AttackGif: 3, + LostHeadGif: 4, + LostHeadAttackGif: 5, + HeadGif: 6, + DieGif: 7, + BoomDieGif: 8, + width: 166, + height: 144, + beAttackedPointL: 82, + beAttackedPointR: 156, + BreakPoint: 90, + SunNum: 50, + coolTime: 0, + Ornaments: 0, + OrnHP: 0, + OSpeed: 1.6, + Speed: 1.6, + CSS_fliph: "", + CSS_alpha: "", + AKind: 0, + beAttacked: 1, + isAttacking: 0, + Attack: 100, + WalkDirection: 0, + LivingArea: 1, + Altitude: 1, + FreeSetbodyTime: 0, + FreeFreezeTime: 0, + FreeSlowTime: 0, + CanPass: function (d, c) { + return c && c != 2; + }, + CanGrow: function (d, c, e) { + return ( + this.CanPass(c, oGd.$LF[c]) && + (oS.ArP ? e > oS.ArP.ArC[1] : true) + ); + }, + ChkActs: function (h, f, j, e) { + var d, c, g; + !(h.FreeFreezeTime || h.FreeSetbodyTime) + ? (h.beAttacked && + !h.isAttacking && + h.JudgeAttack(), + !h.isAttacking + ? (c = + h.AttackedRX -= + d = + h.Speed) < -50 + ? (j.splice(e, 1), + h.DisappearDie(), + (g = 0)) + : (c < 100 && + !h.PointZombie && + ((h.PointZombie = 1), + !oS.CardKind && + (StopMusic(), + PlayAudio( + "losemusic", + false + )), + h.ChangeR({ + R: f, + ar: [oS.R - 1], + CustomTop: + 400 - + h.height + + h.GetDY(), + })), + (h.ZX = h.AttackedLX -= + d), + (h.Ele.style.left = + Math.floor( + (h.X -= d) + ) + "px"), + (g = 1)) + : (g = 1)) + : (g = 1); + return g; + }, + ChkActs1: function (g, e, h, d) { + var c, f; + !(g.FreeFreezeTime || g.FreeSetbodyTime) + ? (g.beAttacked && + !g.isAttacking && + g.JudgeAttack(), + !g.isAttacking + ? (g.AttackedLX += c = + g.Speed) > oS.W + ? (h.splice(d, 1), + g.DisappearDie(), + (f = 0)) + : ((g.ZX = g.AttackedRX += + c), + (g.Ele.style.left = + Math.ceil( + (g.X += c) + ) + "px"), + (f = 1)) + : (f = 1)) + : (f = 1); + return f; + }, + GetDX: function () { + return -110; + }, + GetDY: function () { + return -10; + }, + GetDTop: 0, + ChangeR: function (e) { + var h = e.R, + g = e.ar || [], + j = e.CustomTop, + d = this, + q = h - 1, + l, + k = d.id, + m = -1, + f = d.Ele, + n = d.EleBody, + i = oGd.$LF, + c; + !g.length && + (d.CanPass(q, i[q]) && (g[++m] = q), + d.CanPass((q += 2), i[q]) && + (g[++m] = q)); + g.length + ? ((l = !d.WalkDirection ? -5 : 5), + (d.ZX += l), + (d.AttackedLX += l), + (d.AttackedRX += l), + (d.X += l), + (q = + g[ + Math.floor( + Math.random() * g.length + ) + ]), + SetStyle(f, { + left: d.X + "px", + top: + (d.pixelTop = + j == undefined + ? GetY(q) - + d.height + + d.GetDY() + : j) + "px", + zIndex: (d.zIndex = 3 * q + 1), + }), + d.isAttacking && + (n.src = d.PicArr[d.NormalGif]), + oZ.moveTo(k, h, q)) + : (n.src = d.PicArr[d.NormalGif]); + d.isAttacking = 0; + }, + getShadow: function (c) { + return ( + "left:" + + (c.beAttackedPointL - 10) + + "px;top:" + + (c.height - 22) + + "px" + ); + }, + Init: function (g, i, e, d) { + var c = 0, + h = this, + f = []; + i.AttackedRX = + (i.X = + (i.ZX = i.AttackedLX = g) - + i.beAttackedPointL) + + i.beAttackedPointR; + while (--d) { + i.CanPass(d, e[d]) && (f[c++] = d); + } + i.ArR = f; + i.ArHTML = [ + '
', + ]; + }, + getHTML: function (d, g, i, h, f, k, j, c) { + var e = this.ArHTML; + return ( + e[0] + + d + + e[1] + + f + + e[2] + + g + + e[3] + + i + + e[4] + + h + + e[5] + + k + + e[6] + + j + + e[7] + + c + + e[8] + ); + }, + prepareBirth: function (f) { + var h = this, + e = h.ArR, + d = + e[ + Math.floor( + Math.random() * e.length + ) + ], + g = GetY(d) + h.GetDY(), + c = g - h.height, + j = 3 * d + 1, + i = (h.id = "Z_" + Math.random()); + h.R = d; + h.pixelTop = c; + h.zIndex = j; + (h.delayT = f) && + (h.FreeSetbodyTime = oSym.Now); + return h.getHTML( + i, + h.X, + c, + j, + "none", + "auto", + h.GetDTop, + h.PicArr[h.NormalGif] + ); + }, + CustomBirth: function (i, c, d, m) { + var g = this, + f = GetY(i) + g.GetDY(), + h = f - g.height, + k = 3 * i + 1, + e = (g.id = "Z_" + Math.random()), + l = g.beAttackedPointL, + j = g.beAttackedPointR; + g.AttackedRX = + (g.X = + (g.ZX = g.AttackedLX = + GetX(c) - (j - l) * 0.5) - l) + + j; + g.R = i; + g.pixelTop = h; + g.zIndex = k; + (g.delayT = d) && + (g.FreeSetbodyTime = oSym.Now); + return g.getHTML( + e, + g.X, + h, + k, + "none", + m || 0, + g.GetDTop, + g.PicArr[g.NormalGif] + ); + }, + BirthCallBack: function (f) { + var e = f.delayT, + d = f.id, + c = (f.Ele = $(d)); + f.EleShadow = c.firstChild; + f.EleBody = c.childNodes[1]; + e + ? oSym.addTask( + e, + function (h, g) { + var i = $Z[h]; + i && + ((i.FreeSetbodyTime = 0), + SetBlock(g)); + }, + [d, c] + ) + : SetBlock(c); + }, + Birth: function () { + var c = this; + $Z[c.id] = c; + oZ.add(c); + c.BirthCallBack(c); + }, + getCrushed: function (c) { + return true; + }, + getRaven: function () { + return this.DisappearDie(), 1; + }, + getExplosion: function () { + this.ExplosionDie(); + }, + getThump: function () { + this.DisappearDie(); + }, + PlayNormalballAudio: function () { + PlayAudio( + "splat" + + Math.floor(1 + Math.random() * 3) + ); + }, + PlayFireballAudio: function () { + PlayAudio( + ["ignite", "ignite2"][ + Math.floor(Math.random() * 2) + ] + ); + }, + PlaySlowballAudio: function () { + PlayAudio("frozen"); + }, + getFireball: function (h, e, g) { + h.FreeSlowTime = 0; + h.Attack = 100; + h.FreeFreezeTime || h.FreeSetbodyTime + ? (h.PlayNormalballAudio(), + (h.Speed = h.OSpeed)) + : h.PlayFireballAudio(); + var f = h.AttackedLX, + j = h.AttackedRX, + c = !g + ? oZ.getArZ(f, f + 40, h.R) + : oZ.getArZ(j - 40, j, h.R), + d = c.length; + while (d--) { + c[d].getSputtering(); + } + }, + getSputtering: function (c) { + this.getHit2(this, c || 13, 0); + }, + getSlow: function (h, f, g) { + var d = oSym.Now + g, + e = h.FreeSlowTime, + c = 0; + switch (true) { + case !e: + !( + h.FreeFreezeTime || + h.FreeSetbodyTime + ) && (h.Speed = 0.5 * h.OSpeed); + h.Attack = 50; + h.PlaySlowballAudio(); + h.FreeSlowTime = d; + c = 1; + break; + case e < d: + h.FreeSlowTime = d; + h.PlayNormalballAudio(); + c = 1; + } + c && + oSym.addTask( + g, + function (j, i) { + var k = $Z[j]; + k && + k.FreeSlowTime == i && + ((k.FreeSlowTime = 0), + (k.Attack = 100), + k.Speed && + (k.Speed = k.OSpeed)); + }, + [f, d] + ); + }, + getFreeze: function (d, c) { + d.beAttacked && d.getHit0(d, 20, 0); + d.Speed = 0; + oSym.addTask( + 400, + function (g, f, e) { + ClearChild(e); + var h = $Z[g]; + h && + h.FreeFreezeTime == f && + ((h.FreeFreezeTime = 0), + (h.Attack = 50), + !h.FreeSetbodyTime && + ((h.Speed = 0.5 * h.OSpeed), + h.isAttacking && + h.JudgeAttack()), + oSym.addTask( + 1500, + function (j, i) { + var k = $Z[j]; + k && + k.FreeSlowTime == + i && + ((k.FreeSlowTime = 0), + (k.Attack = 100), + !k.FreeSetbodyTime && + (k.Speed = + k.OSpeed)); + }, + [ + g, + (h.FreeSlowTime = + oSym.Now + 1500), + ] + )); + }, + [ + c, + (d.FreeFreezeTime = oSym.Now + 400), + NewImg( + "icetrap_" + Math.random(), + "images/Plants/IceShroom/icetrap.gif", + d.getShadow(d), + d.Ele + ), + ] + ); + }, + NormalDie: function () { + var c = this; + c.EleBody.src = + c.PicArr[c.DieGif] + Math.random(); + oSym.addTask(250, ClearChild, [c.Ele]); + c.HP = 0; + delete $Z[c.id]; + c.PZ && oP.MonPrgs(); + }, + ExplosionDie: function () { + var c = this; + c.EleBody.src = + c.PicArr[c.BoomDieGif] + Math.random(); + oSym.addTask(300, ClearChild, [c.Ele]); + c.HP = 0; + delete $Z[c.id]; + c.PZ && oP.MonPrgs(); + }, + DisappearDie: function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + var c = this; + c.GoingDieHead(c.id, c.PicArr, c); + ClearChild(c.Ele); + c.HP = 0; + delete $Z[c.id]; + c.PZ && oP.MonPrgs(); + }, + GoingDieHead: function (e, c, d) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + c[d.HeadGif] + Math.random(), + "left:" + + d.AttackedLX + + "px;top:" + + (d.pixelTop - 20) + + "px;z-index:" + + d.zIndex, + EDPZ + ), + ]); + }, + GoingDie: function (d) { + var c = this, + e = c.id; + c.EleBody.src = d; + c.GoingDieHead(e, c.PicArr, c); + c.beAttacked = 0; + c.FreeFreezeTime = + c.FreeSetbodyTime = + c.FreeSlowTime = + 0; + c.AutoReduceHP(e); + }, + AutoReduceHP: function (c) { + oSym.addTask( + 100, + function (e) { + var d = $Z[e]; + d && + ((d.HP -= 60) < 1 + ? d.NormalDie() + : d.AutoReduceHP(e)); + }, + [c] + ); + }, + JudgeAttack: function () { + var g = this, + d = g.ZX, + e = g.R + "_", + f = GetC(d), + h = oGd.$, + c; + (c = + g.JudgeLR(g, e, f, d, h) || + g.JudgeSR(g, e, f, d, h)) + ? (!g.isAttacking && + ((g.isAttacking = 1), + (g.EleBody.src = + g.PicArr[g.AttackGif])), + g.NormalAttack(c[0], c[1])) + : g.isAttacking && + ((g.isAttacking = 0), + (g.EleBody.src = + g.PicArr[g.NormalGif])); + }, + JudgeLR: function (f, d, e, c, g) { + return e > 10 || e < 1 + ? false + : (function () { + d += --e + "_"; + var h = 3, + i; + while (h--) { + if ( + (i = g[d + h]) && + i.canEat + ) { + return i.AttackedRX >= + c && + i.AttackedLX <= c + ? [f.id, i.id] + : false; + } + } + })(); + }, + JudgeSR: function (f, d, e, c, g) { + return e > 9 + ? false + : (function () { + d += e + "_"; + var h = 3, + i; + while (h--) { + if ( + (i = g[d + h]) && + i.canEat + ) { + return i.AttackedRX >= + c && + i.AttackedLX <= c + ? [f.id, i.id] + : false; + } + } + })(); + }, + JudgeAttackH1: function () { + var e = this, + d = oZ.getZ0(e.ZX, e.R), + c = e.id; + d && + d.beAttacked && + d.AttackedLX < 900 && + d.Altitude == 1 && + (e.AttackZombie(d.id), + !d.isAttacking && d.AttackZombie(c)); + }, + JudgeAttackH: function () { + var e = this, + d = oZ.getZ0(e.ZX, e.R), + f = e.id, + c; + d && + d.beAttacked && + d.AttackedLX < oS.W && + d.Altitude == 1 + ? !e.isAttacking + ? ((e.isAttacking = 1), + (e.EleBody.src = + e.PicArr[e.AttackGif]), + e.AttackZombie(f, (c = d.id)), + !d.isAttacking && + d.AttackZombie2(d, c, f)) + : e.AttackZombie(f, d.id, 1) + : e.isAttacking && + ((e.isAttacking = 0), + (e.EleBody.src = + e.PicArr[e.NormalGif])); + }, + AttackZombie: function (d, c) { + oSym.addTask( + 10, + function (f, e) { + var h = $Z[f], + g; + h && + h.beAttacked && + !h.FreeFreezeTime && + !h.FreeSetbodyTime && + ((g = $Z[e]) && + g.getHit0(g, 10, 0), + h.JudgeAttackH()); + }, + [d, c] + ); + }, + AttackZombie2: function (e, d, c) { + e.isAttacking = 1; + e.EleBody.src = e.PicArr[e.AttackGif]; + oSym.addTask( + 10, + function (g, f) { + var i = $Z[g], + h; + i && + i.beAttacked && + !i.FreeFreezeTime && + !i.FreeSetbodyTime && + ((h = $Z[f]) + ? (h.getHit0(h, 10, 0), + oSym.addTask( + 10, + arguments.callee, + [g, f] + )) + : ((i.isAttacking = 0), + (i.EleBody.src = + i.PicArr[ + i.NormalGif + ]))); + }, + [d, c] + ); + }, + NormalAttack: function (d, c) { + PlayAudio( + ["chomp", "chompsoft"][ + Math.floor(Math.random() * 2) + ] + ); + oSym.addTask( + 50, + function (e) { + $Z[e] && + PlayAudio( + ["chomp", "chompsoft"][ + Math.floor( + Math.random() * 2 + ) + ] + ); + }, + [d] + ); + oSym.addTask( + 100, + function (f, e) { + var h = $Z[f], + g; + h && + h.beAttacked && + !h.FreeFreezeTime && + !h.FreeSetbodyTime && + ((g = $P[e]) && + g.getHurt( + h, + h.AKind, + h.Attack + ), + h.JudgeAttack()); + }, + [d, c] + ); + }, + PZ: 1, + ExchangeLR: function (f, d) { + var e = f.width, + h = f.beAttackedPointL, + c = f.beAttackedPointR, + g = f.Ele; + g.style.left = + (f.X = + f.AttackedLX - + (f.beAttackedPointL = e - c)) + + "px"; + f.beAttackedPointR = e - h; + f.EleShadow.style.cssText = f.getShadow(f); + f.ExchangeLR2(f, f.EleBody, d); + }, + ExchangeLR2: $User.Browser.IE + ? function (e, c, d) { + c.style.filter = + e.CSS_alpha + + (e.CSS_fliph = d + ? " fliph" + : ""); + } + : function (e, c, d) { + c.className = d ? "fliph" : ""; + }, + bedevil: function (c) { + c.ExchangeLR(c, 1); + c.JudgeAttack = c.JudgeAttackH; + c.PZ = 0; + c.WalkDirection = 1; + c.ZX = c.AttackedRX; + c.ChkActs = c.ChkActs1; + oP.MonPrgs(); + }, + SetAlpha: $User.Browser.IE + ? function (f, d, e, c) { + d.style.filter = + (f.CSS_alpha = + "alpha(opacity=" + + e + + ")") + f.CSS_fliph; + } + : function (f, d, e, c) { + d.style.opacity = c; + }, + }), + a + ); + })(), + OrnNoneZombies = (function () { + var a = function (c, b) { + if ((c.HP -= b) < c.BreakPoint) { + c.GoingDie( + c.PicArr[ + [c.LostHeadGif, c.LostHeadAttackGif][ + c.isAttacking + ] + ] + ); + c.getHit0 = + c.getHit1 = + c.getHit2 = + c.getHit3 = + function () {}; + return; + } + c.SetAlpha(c, c.EleBody, 50, 0.5); + oSym.addTask( + 10, + function (e, d) { + (d = $Z[e]) && + d.SetAlpha(d, d.EleBody, 100, 1); + }, + [c.id] + ); + }; + return InheritO(CZombies, { + getHit: a, + getHit0: a, + getHit1: a, + getHit2: a, + getHit3: a, + getPea: function (e, b, c) { + e.PlayNormalballAudio(); + e.getHit0(e, b, c); + }, + getFirePea: function (g, c, j) { + g.PlayFireballAudio(); + (g.FreeSlowTime || g.FreeFreezeTime) && + ((g.Speed = g.OSpeed), + (g.FreeSlowTime = 0), + (g.FreeFreezeTime = 0)); + g.Attack = 100; + var f = g.AttackedLX, + h = g.AttackedRX, + b = oZ.getArZ(f, f + 40, g.R), + e = b.length; + while (e--) { + b[e].getFirePeaSputtering(); + } + g.getHit0(g, c, j); + }, + getFirePeaSputtering: function () { + this.getHit0(this, 13); + }, + getSnowPea: function (f, c, g) { + var e = f.FreeSlowTime, + b = oSym.Now + 1000; + e == 0 + ? (f.PlaySlowballAudio(), + (f.Speed = 0.5 * f.OSpeed), + (f.Attack = 50)) + : f.PlayNormalballAudio(); + e < b && + ((f.FreeSlowTime = b), + oSym.addTask( + 1000, + function (h, d) { + var i = $Z[h]; + i && + i.FreeSlowTime == d && + ((i.FreeSlowTime = 0), + (i.Attack = 100), + i.Speed && + (i.Speed = i.OSpeed)); + }, + [f.id, b] + )); + f.getHit0(f, c, g); + }, + }); + })(), + oBackupDancer = InheritO(OrnNoneZombies, { + EName: "oBackupDancer", + CName: "Backup Dancer", + OSpeed: 3.5, + Speed: 3.5, + Lvl: 1, + StandGif: 9, + CanSelect: 0, + width: 126, + height: 152, + beAttackedPointL: 50, + beAttackedPointR: 95, + Speed: 3.5, + OSpeed: 3.5, + PicArr: (function () { + var a = "images/Zombies/BackupDancer/"; + return [ + "images/Card/Zombies/BackupDancer.png", + a + "0.gif", + a + "BackupDancer.gif", + a + "Attack.gif", + a + "LostHead.gif", + a + "LostHeadAttack.gif", + a + "Head.gif" + $Random, + a + "Die.gif" + $Random, + a + "BoomDie.gif" + $Random, + a + "Dancing.gif" + $Random, + a + "LostHeadDancing.gif" + $Random, + a + "Mound.gif" + $Random, + ]; + })(), + bedevil: function (a) { + a.ExchangeLR(a, 1); + a.JudgeAttack = a.JudgeAttackH; + a.PZ = 0; + a.WalkDirection = 1; + a.ZX = a.AttackedRX; + a.ChkActs = a.ChkActs1; + a.Speed = 3.5; + a.ChangeChkActsTo1(a, a.id, a.EleBody); + oP.MonPrgs(); + }, + getSlow: function (f, d, e) { + var b = oSym.Now + e, + c = f.FreeSlowTime, + a = 0; + switch (true) { + case !c: + f.PlaySlowballAudio(); + f.Attack = 50; + f.FreeSlowTime = b; + a = 1; + break; + case c < b: + f.PlayNormalballAudio(); + f.FreeSlowTime = b; + a = 1; + } + a && + oSym.addTask( + e, + function (h, g) { + var i = $Z[h]; + i && + i.FreeSlowTime == g && + ((i.FreeSlowTime = 0), + (i.Attack = 100)); + }, + [d, b] + ); + }, + getFreeze: function (b, a) { + b.beAttacked && b.getHit0(b, 20, 0); + oSym.addTask( + 400, + function (e, d, c) { + ClearChild(c); + var f = $Z[e]; + f && + f.FreeFreezeTime == d && + ((f.FreeFreezeTime = 0), + (f.Attack = 50), + !f.FreeSetbodyTime && + f.isAttacking && + f.JudgeAttack(), + oSym.addTask( + 1500, + function (h, g) { + var i = $Z[h]; + i && + i.FreeSlowTime == g && + ((i.FreeSlowTime = 0), + (i.Attack = 100)); + }, + [ + e, + (f.FreeSlowTime = + oSym.Now + 1500), + ] + )); + }, + [ + a, + (b.FreeFreezeTime = oSym.Now + 400), + NewImg( + "icetrap_" + Math.random(), + "images/Plants/IceShroom/icetrap.gif", + b.getShadow(b), + b.Ele + ), + ] + ); + }, + CustomBirth: function (g, d, a, b, j) { + var e = this, + c = GetY(g) + e.GetDY(), + f = c - e.height, + i = e.beAttackedPointL, + h = e.beAttackedPointR; + e.AttackedRX = + (e.X = + (e.ZX = e.AttackedLX = d - (h - i) * 0.5) - + i) + h; + e.R = g; + (e.delayT = a) && (e.FreeSetbodyTime = oSym.Now); + return e.getHTML( + (e.id = b), + e.X, + (e.pixelTop = f), + (e.zIndex = 3 * g + 1), + "none", + j || 0, + e.height + "px", + e.PicArr[e.StandGif] + ); + }, + Produce: + '当舞王僵尸摇摆时,这种僵尸四个结伙出现。

韧性:
伴舞僵尸曾在位于僵尸纽约城的“咀利牙”表演艺术学院钻研过六年的舞技。', + BirthCallBack: function (e) { + var d = e.delayT, + c = e.id, + b = (e.Ele = $(c)), + a = (e.EleBody = b.childNodes[1]); + e.EleShadow = b.firstChild; + oSym.addTask( + d, + function (g, f) { + var h = $Z[g]; + h && ((h.FreeSetbodyTime = 0), SetBlock(f)); + }, + [c, b] + ); + }, + ChangeChkActsTo0: function (c, b, a) { + if (!c.PZ) { + c.ChangeChkActsTo1(c, b, a); + return; + } + c.LostHeadGif = 10; + c.NormalGif = 9; + !c.isAttacking && (a.src = c.PicArr[9]); + c.Speed = c.DZStep = 0; + oSym.addTask( + 200, + function (e, d) { + var f = $Z[e]; + f && + f.beAttacked && + f.ChangeChkActsTo1(f, e, d); + }, + [b, a] + ); + }, + ChangeChkActsTo1: function (c, b, a) { + c.LostHeadGif = 4; + c.NormalGif = 2; + c.DZStep = 1; + !c.isAttacking && (a.src = c.PicArr[2]); + c.PZ && + oSym.addTask( + 220, + function (e, d) { + var f = $Z[e]; + f && + f.beAttacked && + f.ChangeChkActsTo0(f, e, d); + }, + [b, a] + ); + }, + ChkActs: function (g, d, h, c) { + var e, b, a, f; + !(g.FreeFreezeTime || g.FreeSetbodyTime) + ? (g.beAttacked && + !g.isAttacking && + g.JudgeAttack(), + (e = g.id), + !g.isAttacking + ? (a = g.AttackedRX -= b = g.Speed) < + -50 + ? (h.splice(c, 1), + g.DisappearDie(), + (f = 0)) + : (a < 100 && + !g.PointZombie && + ((g.PointZombie = 1), + !oS.CardKind && + (StopMusic(), + PlayAudio( + "losemusic", + false + )), + g.ChangeR({ + R: d, + ar: [oS.R - 1], + CustomTop: + 400 - + g.height + + g.GetDY(), + })), + (g.ZX = g.AttackedLX -= b), + (g.Ele.style.left = + Math.floor((g.X -= b)) + + "px"), + (f = 1)) + : (f = 1)) + : (f = 1); + g.ChkSpeed(g); + return f; + }, + ChkSpeed: function (b) { + if (!b.DZStep) { + return; + } + var a = b.Speed; + switch (true) { + case (b.FreeFreezeTime || b.FreeSetbodyTime) == + 1: + a && (b.Speed = 0); + break; + case b.FreeSlowTime > 0: + a != 1.75 && (b.Speed = 1.75); + break; + default: + a != 3.5 && (b.Speed = 3.5); + } + }, + }), + oDancingZombie = InheritO(OrnNoneZombies, { + EName: "oDancingZombie", + CName: "Dancing Zombie ", + HP: 500, + BreakPoint: 166, + Lvl: 3, + StandGif: 9, + SunNum: 350, + beAttackedPointL: 40, + beAttackedPointR: 85, + width: 184, + height: 176, + BookHandPosition: "70% 70%", + AudioArr: ["dancer"], + OSpeed: 7.2, + Speed: 7.2, + NormalGif: 9, + GetDTop: 5, + getShadow: function (a) { + return "left:30px;top:146px"; + }, + GetDX: function () { + return -50; + }, + GetDY: function () { + return -5; + }, + LostHeadGif: 14, + addSpotlight: (function () { + var a, b; + $User.Browser.IE6 + ? ((a = "_8"), (b = "filter:alpha(opacity=30)")) + : (a = b = ""); + return function (d, f, c) { + var g = $Z[d], + e; + NewEle( + d + "_spotlightCon", + "div", + "position:absolute;left:-30px;top:-400px;width:184px;height:600px;overflow:hidden", + 0, + c + ).appendChild( + (g.spotlight = NewImg( + d + "_spotlight", + "images/Zombies/DancingZombie/spotlight" + + a + + ".png", + "left:0;top:0;width:920px;height:600px;" + + b + )) + ); + e = NewEle( + d + "_spotlight2Con", + "div", + "position:absolute;left:-25px;top:135px;width:184px;height:60px;overflow:hidden", + 0 + ); + c.insertBefore(e, f.EleShadow); + e.appendChild( + (g.spotlight2 = NewImg( + d + "_spotlight2", + "images/Zombies/DancingZombie/spotlight2" + + a + + ".png", + "left:0;top:0;width:920px;height:60px;" + + b + )) + ); + }; + })(), + PicArr: (function () { + var d = "images/Zombies/DancingZombie/", + c = $User.Browser.IE6 ? "_8" : "", + a = d + "spotlight" + c + ".png" + $Random, + b = d + "spotlight2" + c + ".png" + $Random; + return [ + "images/Card/Zombies/DancingZombie.png", + d + "0.gif", + d + "DancingZombie.gif", + d + "Attack.gif", + d + "LostHead.gif", + d + "LostHeadAttack.gif", + d + "Head.gif" + $Random, + d + "Die.gif" + $Random, + d + "BoomDie.gif" + $Random, + d + "SlidingStep.gif" + $Random, + d + "Dancing.gif" + $Random, + d + "Summon1.gif", + d + "Summon2.gif", + d + "Summon3.gif", + d + "LostHeadSlidingStep.gif" + $Random, + d + "LostHeadDancing.gif" + $Random, + d + "LostHeadSummon.gif" + $Random, + a, + b, + ]; + })(), + Produce: + '舞王僵尸和人类(在世或者死去的)如有雷同,纯属巧合。

韧性:
特点:召唤伴舞僵尸

舞王僵尸的最新唱片“抓住脑子啃啊啃”在僵尸界的人气正急速飙升。', + getSnowPea: function () { + this.PlaySlowballAudio(); + }, + NormalDie: function () { + var a = this; + a.ResetBackupDancer(a); + a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); + oSym.addTask(250, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + ExplosionDie: function () { + var a = this; + a.ResetBackupDancer(a); + a.EleBody.src = + a.PicArr[a.BoomDieGif] + Math.random(); + oSym.addTask(300, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + DisappearDie: function () { + this.ResetBackupDancer(this); + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + var a = this; + a.ResetBackupDancer(a); + a.GoingDieHead(a.id, a.PicArr, a); + ClearChild(a.Ele); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + bedevil: function (b) { + var a = b.id; + b.ExchangeLR(b, 1); + b.JudgeAttack = b.JudgeAttackH; + b.PZ = 0; + b.WalkDirection = 1; + b.ZX = b.AttackedRX; + b.ChkActs = b.ChkActs1; + b.ChangeChkActsTo1(b, a, b.EleBody); + b.ResetBackupDancer(b); + ($(a + "_spotlightCon").style.left = "20px"), + ($(a + "_spotlight2Con").style.left = "25px"); + oP.MonPrgs(); + }, + ResetBackupDancer: function (f) { + var g = f.ArDZ, + d = g.length, + c, + b, + e, + a = f.DZStep; + while (d--) { + if ( + (c = g[d]) && + (b = c[0]) && + (e = $Z[b]) && + e.beAttacked + ) { + if (a > 0) { + switch (true) { + case (e.FreeFreezeTime || + e.FreeSetbodyTime) == 1: + e.Speed = 0; + break; + case e.FreeSlowTime > 0: + e.Speed = 1.75; + break; + default: + e.Speed = 3.5; + } + } + } + } + a > -1 && + oSym.addTask( + f.DZStepT - oSym.Now, + function (o, j) { + var m = 4, + l, + k, + n, + h = "ChangeChkActsTo" + j; + while (m--) { + (l = o[m]) && + (k = l[0]) && + (n = $Z[k]) && + n.beAttacked && + ((n.DZStep = j), + n[h](n, k, n.EleBody)); + } + }, + [g, [1, 0][a]] + ); + }, + BirthCallBack: function (d) { + var b = d.delayT, + l = d.id, + a = (d.Ele = $(l)), + c = 320, + i = oGd.$LF, + g = d.R, + s = g - 1, + n = g + 1, + e, + r, + q = LX - 60, + m = LX + 100, + k = LX - 130, + j = LX - 70, + h = LX + 30, + f = (d.ArDZ = [0, 0, 0, 0]); + d.EleShadow = a.firstChild; + d.EleBody = a.childNodes[1]; + s > 0 && + (e = i[s]) && + e != 2 && + (f[0] = [ + "", + s, + function (o) { + return o; + }, + 3 * s + 2, + function (o) { + return o - 70; + }, + GetY(s) - 155, + ]); + n <= oS.R && + (e = i[n]) && + e != 2 && + (f[2] = [ + "", + n, + function (o) { + return o; + }, + 3 * n + 2, + function (o) { + return o - 70; + }, + GetY(n) - 155, + ]); + e = 3 * g + 2; + r = GetY(g) - 155; + f[3] = [ + "", + g, + function (o) { + return o - 60; + }, + e, + function (o) { + return o - 130; + }, + r, + ]; + f[1] = [ + "", + g, + function (o) { + return o + 100; + }, + e, + function (o) { + return o + 30; + }, + r, + ]; + func = function (t, o) { + var u = $Z[t]; + u && + (u.ExchangeLR(d, 1), + (u.DZMSpeed = 7.2), + (u.DZStep = -1), + (u.DZStepT = oSym.Now + 220), + (u.FreeSetbodyTime = 0), + SetBlock(o)); + }; + b + ? (oSym.addTask(b, func, [l, a]), (c += b)) + : func(l, a); + oSym.addTask( + c, + function (o) { + var t = $Z[o]; + t && + t.beAttacked && + !t.isAttacking && + t.NormalAttack(o); + }, + [d.id] + ); + }, + ChkActs1: function (e, b, f, a) { + var c, d; + !(e.FreeFreezeTime || e.FreeSetbodyTime) + ? (e.beAttacked && + !e.isAttacking && + e.JudgeAttack(), + (c = e.id), + !e.isAttacking + ? (e.AttackedLX += 3.5) > oS.W + ? (f.splice(a, 1), + e.DisappearDie(), + (d = 0)) + : ((e.ZX = e.AttackedRX += 3.5), + (e.Ele.style.left = + Math.ceil((e.X += 3.5)) + + "px"), + (d = 1)) + : (d = 1)) + : (d = 1); + return d; + }, + ChkTmp: function (c, b, d, a) { + c.ChkSpeed(c); + return 0; + }, + ChkActs: function (g, d, h, c) { + var e, b, a, f; + !(g.FreeFreezeTime || g.FreeSetbodyTime) + ? (g.beAttacked && + !g.isAttacking && + g.JudgeAttack(), + (e = g.id), + !g.isAttacking + ? (a = g.AttackedRX -= b = g.Speed) < + -50 + ? (h.splice(c, 1), + g.DisappearDie(), + (f = 0)) + : (a < 100 && + !g.PointZombie && + ((g.PointZombie = 1), + !oS.CardKind && + (StopMusic(), + PlayAudio( + "losemusic", + false + )), + g.ChangeR({ + R: d, + ar: [oS.R - 1], + CustomTop: + 400 - + g.height + + g.GetDY(), + })), + (g.ZX = g.AttackedLX -= b), + (g.Ele.style.left = + Math.floor((g.X -= b)) + + "px"), + (f = 1)) + : (f = 1)) + : (f = 1); + g.ChkSpeed(g); + return f; + }, + ChkSpeed: function (g) { + if (!g.DZStep) { + return; + } + var h = g.ArDZ, + d = 4, + c, + b, + e, + a = g.OSpeed, + f = []; + switch (true) { + case (g.isAttacking || + g.FreeFreezeTime || + g.FreeSetbodyTime) == 1: + a = 0; + break; + case g.FreeSlowTime > 0: + a != 1.75 && (a = 1.75); + } + while (d--) { + if ( + (c = h[d]) && + (b = c[0]) && + (e = $Z[b]) && + e.beAttacked + ) { + f.push(e); + switch (true) { + case (e.isAttacking || + e.FreeFreezeTime || + e.FreeSetbodyTime) == 1: + a = 0; + break; + case e.FreeSlowTime > 0: + a != 1.75 && (a = 1.75); + } + } + } + if (a != g.DZMSpeed) { + g.DZMSpeed = a; + d = f.length; + while (d--) { + (e = f[d]).Speed != a && (e.Speed = a); + } + g.Speed != a && (g.Speed = a); + } + }, + AttackZombie: function (a) { + this.ExchangeLR(this, 0); + var b = this.id; + this.isAttacking = 1; + this.EleBody.src = this.PicArr[this.AttackGif]; + oSym.addTask( + 10, + function (d, c) { + var f = $Z[d], + e; + f && + f.beAttacked && + !f.FreeFreezeTime && + !f.FreeSetbodyTime && + ((e = $Z[c]) + ? (e.getHit0(e, 10, 0), + oSym.addTask( + 10, + arguments.callee, + [d, c] + )) + : ((f.isAttacking = 0), + (f.EleBody.src = + f.PicArr[f.NormalGif]), + f.TurnLeft(f))); + }, + [b, a] + ); + }, + ChkBackupDancer: function (h, g, f) { + if (!h.PZ) { + h.ChangeChkActsTo1(h, g, f); + return; + } + var b = h.ArDZ, + d = 4, + j = 1, + c, + e, + a; + while (d--) { + (e = b[d]) && + (!(c = e[0]) || + !(a = $Z[c]) || + (a.PZ ? false : ((e[0] = ""), true))) && + (d = j = 0); + } + !h.isAttacking && j + ? (f.src = h.PicArr[10]) + : h.Summon(h, g); + h.ChangeChkActsTo0(h, g, f); + }, + ChangeChkActsTo0: function (g, e, a) { + if (!g.PZ) { + g.ChangeChkActsTo1(g, e, a); + return; + } + var d = 4, + h = g.ArDZ, + c, + b, + f; + while (d--) { + (b = h[d]) && + (c = b[0]) && + (f = $Z[c]) && + f.beAttacked && + ((f.LostHeadGif = 10), + (f.NormalGif = 9), + !f.isAttacking && + (f.EleBody.src = f.PicArr[9]), + (f.Speed = 0)); + } + g.LostHeadGif = 15; + g.NormalGif = 10; + g.Speed = g.DZMSpeed = g.DZStep = 0; + g.DZStepT = oSym.Now + 200; + oSym.addTask( + 200, + function (j, i) { + var k = $Z[j]; + k && + k.beAttacked && + k.ChangeChkActsTo1(k, j, i); + }, + [e, a] + ); + }, + ChangeChkActsTo1: function (g, e, a) { + var d = 4, + h = g.ArDZ, + c, + b, + f; + while (d--) { + (b = h[d]) && + (c = b[0]) && + (f = $Z[c]) && + f.beAttacked && + ((f.LostHeadGif = 4), + (f.NormalGif = 2), + !f.isAttacking && + (f.EleBody.src = f.PicArr[2])); + } + g.LostHeadGif = 4; + g.NormalGif = 2; + g.DZStep = 1; + g.DZStepT = oSym.Now + 220; + !g.isAttacking && (a.src = g.PicArr[2]); + g.PZ && + oSym.addTask( + 220, + function (j, i) { + var k = $Z[j]; + k && + k.beAttacked && + k.ChkBackupDancer(k, j, i); + }, + [e, a] + ); + }, + TurnLeft: function (c) { + var a = CZombies.prototype, + b = c.id; + c.AttackZombie = a.AttackZombie; + c.NormalAttack = a.NormalAttack; + c.OSpeed = 3.5; + !( + c.FreeSlowTime || + c.FreeFreezeTime || + c.FreeSetbodyTime + ) && (c.Speed = 3.5); + c.getSnowPea = OrnNoneZombies.prototype.getSnowPea; + c.getFreeze = CZombies.prototype.getFreeze; + oSym.addTask( + 20, + function (d, e) { + $Z[d] && + e.beAttacked && + (e.addSpotlight(d, e, e.Ele), + oSym.addTask( + 200, + function (g, f, i, h, k) { + var j = $Z[g]; + j && + (h > -736 + ? (h -= 184) + : (h = 0), + (f.style.left = h + "px"), + k > -736 + ? (k -= 184) + : (k = 0), + (i.style.left = k + "px"), + oSym.addTask( + 100, + arguments.callee, + [g, f, i, h, k] + )); + }, + [d, e.spotlight, e.spotlight2, 0, 0] + ), + oSym.addTask( + 200, + function (h, g) { + var f; + $Z[g] && + h.beAttacked && + ((f = h.EleBody), + !h.isAttacking + ? (f.src = h.PicArr[10]) + : (h.isAttacking = 0), + h.ChangeChkActsTo0( + h, + g, + f + )); + }, + [e, d] + )); + }, + [b, c] + ); + c.Summon(c, b); + }, + NormalAttack: function (a) { + var b = $Z[a]; + b.ExchangeLR(b, 0); + b.TurnLeft(b); + }, + Summon: function (d, c) { + d.LostHeadGif = 16; + var a = d.EleBody, + b = d.ChkActs; + d.ChkActs = d.ChkTmp; + d.ChkTmp = b; + a.src = "images/Zombies/DancingZombie/Summon1.gif"; + PlayAudio("dancer"); + oSym.addTask( + 10, + function (f, e) { + var g = $Z[f]; + g && + g.beAttacked && + ((e.src = + "images/Zombies/DancingZombie/Summon2.gif"), + oSym.addTask( + 10, + function (t, s, x) { + var h = $Z[t], + v = h.ZX, + m = h.ArDZ, + n = [], + k = + "images/Zombies/BackupDancer/Mound.gif" + + $Random + + Math.random(), + r = 4, + w = [], + u = [], + o = 0, + q, + l; + if (h && h.beAttacked) { + s.src = + "images/Zombies/DancingZombie/Summon3.gif"; + while (r--) { + (q = m[r]) && + (!(l = q[0]) || + !$Z[l]) && + ((u[o] = (w[o] = + new oBackupDancer()).CustomBirth( + q[1], + q[2](v), + 100, + (q[0] = + "Z_" + + Math.random()) + )), + n.push( + NewImg( + "", + k, + "z-index:" + + q[3] + + ";left:" + + q[4]( + v + ) + + "px;top:" + + q[5] + + "px", + EDPZ + ) + ), + ++o); + } + oSym.addTask( + 220, + function () { + var i = + arguments.length; + while (i--) { + ClearChild( + arguments[i] + ); + } + }, + n + ); + oSym.addTask( + 110, + function (A, y, z, i) { + var B = $Z[A]; + B && + B.beAttacked && + (oP.AppearUP( + y, + z, + i + ), + oSym.addTask( + 100, + function ( + D, + C + ) { + var E = + $Z[ + D + ]; + if ( + E && + E.beAttacked + ) { + return; + } + var j = + C.length, + E; + while ( + j-- + ) { + (E = + C[ + j + ]).ChangeChkActsTo0( + E, + E.id, + E.EleBody + ); + } + }, + [A, z] + )); + }, + [t, u, w, o] + ); + oSym.addTask( + 200, + function (y, i) { + var z = $Z[y], + j; + z && + z.beAttacked && + ((j = + z.ChkActs), + (z.ChkActs = + z.ChkTmp), + (z.ChkTmp = j)); + }, + [t, s] + ); + } + }, + [f, e] + )); + }, + [c, a] + ); + }, + }), + oZombie = InheritO(OrnNoneZombies, { + EName: "oZombie", + CName: "领带僵尸", + StandGif: 9, + PicArr: (function () { + var a = "images/Zombies/Zombie/"; + return [ + "images/Card/Zombies/Zombie.png", + a + "0.gif", + a + "Zombie.gif", + a + "ZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + a + "BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + Produce: + '韧性:

这种僵尸喜爱脑髓,贪婪而不知足。脑髓,脑髓,脑髓,夜以继日地追求着。老而臭的脑髓?腐烂的脑髓?都没关系。僵尸需要它们。', + }), + oZombie2 = InheritO( + oZombie, + { + EName: "oZombie2", + }, + { + PicArr: { + 2: "images/Zombies/Zombie/Zombie2.gif", + 9: "images/Zombies/Zombie/2.gif", + }, + } + ), + oZombie3 = InheritO( + oZombie, + { + EName: "oZombie3", + }, + { + PicArr: { + 2: "images/Zombies/Zombie/Zombie3.gif", + 9: "images/Zombies/Zombie/3.gif", + }, + } + ), + oFlagZombie = InheritO(oZombie, { + PicArr: (function () { + var a = "images/Zombies/FlagZombie/"; + return [ + "images/Card/Zombies/FlagZombie.png", + a + "0.gif", + a + "FlagZombie.gif", + a + "FlagZombieAttack.gif", + a + "FlagZombieLostHead.gif", + a + "FlagZombieLostHeadAttack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + + $Random, + "images/Zombies/Zombie/ZombieDie.gif" + $Random, + "images/Zombies/Zombie/BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + EName: "oFlagZombie", + CName: "旗帜僵尸", + OSpeed: 2.2, + Speed: 2.2, + beAttackedPointR: 101, + Produce: + '旗帜僵尸标志着即将来袭的一大堆僵尸"流"。

韧性:

毫无疑问,摇旗僵尸喜爱脑髓。但在私下里他也迷恋旗帜。也许是因为旗帜上也画有脑子吧,这很难说。', + }), + OrnIZombies = (function () { + var a = function (f, b) { + var d = f.OrnHP, + c = f.HP, + e = OrnNoneZombies.prototype; + (d = f.OrnHP -= b) < 1 && + ((f.HP += d), + (f.Ornaments = 0), + (f.EleBody.src = + f.PicArr[ + [ + (f.NormalGif = f.OrnLostNormalGif), + (f.AttackGif = f.OrnLostAttackGif), + ][f.isAttacking] + ]), + (f.PlayNormalballAudio = e.PlayNormalballAudio), + (f.PlayFireballAudio = e.PlayFireballAudio), + (f.PlaySlowballAudio = e.PlaySlowballAudio), + (f.getHit = + f.getHit0 = + f.getHit1 = + f.getHit2 = + f.getHit3 = + e.getHit)); + f.SetAlpha(f, f.EleBody, 50, 0.5); + oSym.addTask( + 10, + function (h, g) { + (g = $Z[h]) && + g.SetAlpha(g, g.EleBody, 100, 1); + }, + [f.id] + ); + }; + return InheritO(OrnNoneZombies, { + Ornaments: 1, + OrnLostNormalGif: 9, + OrnLostAttackGif: 10, + getHit: a, + getHit0: a, + getHit1: a, + getHit2: a, + getHit3: a, + }); + })(), + oConeheadZombie = InheritO(OrnIZombies, { + EName: "oConeheadZombie", + CName: "路障僵尸", + OrnHP: 370, + Lvl: 2, + SunNum: 75, + StandGif: 11, + PicArr: (function () { + var b = "images/Zombies/ConeheadZombie/", + a = "images/Zombies/Zombie/"; + return [ + "images/Card/Zombies/ConeheadZombie.png", + b + "0.gif", + b + "ConeheadZombie.gif", + b + "ConeheadZombieAttack.gif", + a + "ZombieLostHead.gif", + a + "ZombieLostHeadAttack.gif", + a + "ZombieHead.gif" + $Random, + a + "ZombieDie.gif" + $Random, + a + "BoomDie.gif" + $Random, + a + "Zombie.gif", + a + "ZombieAttack.gif", + b + "1.gif", + ]; + })(), + AudioArr: ["plastichit"], + PlayNormalballAudio: function () { + PlayAudio("plastichit"); + }, + Produce: + '他的路障头盔,使他两倍坚韧于普通僵尸。

韧性:

和其他僵尸一样,路障头僵尸盲目地向前。但某些事物却使他停下脚步,捡起一个交通路障,并固实在自己的脑袋上。是的,他很喜欢参加聚会。', + }), + oBucketheadZombie = InheritO( + oConeheadZombie, + { + EName: "oBucketheadZombie", + CName: "铁桶僵尸", + OrnHP: 1100, + Lvl: 3, + SunNum: 125, + PlayNormalballAudio: function () { + PlayAudio( + ["shieldhit", "shieldhit2"][ + Math.floor(Math.random() * 2) + ] + ); + }, + Produce: + '他的铁桶头盔,能极大程度的承受伤害。

韧性:
弱点:磁力菇

铁桶头僵尸经常戴着水桶,在冷漠的世界里显得独一无二。但事实上,他只是忘记了,那铁桶还在他头上而已。', + }, + { + PicArr: { + 0: "images/Card/Zombies/BucketheadZombie.png", + 1: "images/Zombies/BucketheadZombie/0.gif", + 2: "images/Zombies/BucketheadZombie/BucketheadZombie.gif", + 3: "images/Zombies/BucketheadZombie/BucketheadZombieAttack.gif", + 9: "images/Zombies/Zombie/Zombie2.gif", + 11: "images/Zombies/BucketheadZombie/1.gif", + }, + } + ), + oFootballZombie = InheritO(oConeheadZombie, { + EName: "oFootballZombie", + CName: "橄榄球僵尸", + OrnHP: 1400, + Lvl: 3, + SunNum: 175, + StandGif: 11, + width: 154, + height: 160, + OSpeed: 3.2, + Speed: 3.2, + beAttackedPointL: 40, + beAttackedPointR: 134, + PlayNormalballAudio: function () { + PlayAudio("plastichit"); + }, + PicArr: (function () { + var a = "images/Zombies/FootballZombie/"; + return [ + "images/Card/Zombies/FootballZombie.png", + a + "0.gif", + a + "FootballZombie.gif", + a + "Attack.gif", + a + "LostHead.gif", + a + "LostHeadAttack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + + $Random, + a + "Die.gif" + $Random, + a + "BoomDie.gif" + $Random, + a + "OrnLost.gif", + a + "OrnLostAttack.gif", + a + "1.gif", + ]; + })(), + getShadow: function (a) { + return ( + "left:" + + (a.beAttackedPointL + 15) + + "px;top:" + + (a.height - 22) + + "px" + ); + }, + Produce: + '橄榄球僵尸的表演秀。

韧性:极高
速度:
弱点:磁力菇

在球场上,橄榄球僵尸表现出110%的激情,他进攻防守样样在行。虽然他完全不知道橄榄球是什么。', + }), + oPoleVaultingZombie = InheritO(OrnNoneZombies, { + EName: "oPoleVaultingZombie", + CName: "撑杆僵尸", + HP: 500, + width: 348, + height: 218, + OSpeed: 3.2, + Speed: 3.2, + beAttackedPointL: 215, + beAttackedPointR: 260, + StandGif: 13, + GetDX: function () { + return -238; + }, + GetDY: function () { + return 2; + }, + Lvl: 2, + SunNum: 75, + BookHandPosition: "-30px 70%", + PicArr: (function () { + var a = "images/Zombies/PoleVaultingZombie/"; + return [ + "images/Card/Zombies/PoleVaultingZombie.png", + a + "0.gif", + a + "PoleVaultingZombie.gif", + a + "PoleVaultingZombieAttack.gif", + a + "PoleVaultingZombieLostHead.gif", + a + "PoleVaultingZombieLostHeadAttack.gif", + a + "PoleVaultingZombieHead.gif" + $Random, + a + "PoleVaultingZombieDie.gif" + $Random, + a + "BoomDie.gif" + $Random, + a + "PoleVaultingZombieWalk.gif", + a + "PoleVaultingZombieLostHeadWalk.gif", + a + "PoleVaultingZombieJump.gif", + a + "PoleVaultingZombieJump2.gif", + a + "1.gif", + ]; + })(), + AudioArr: ["polevault", "grassstep"], + Produce: + '撑杆僵尸运用标杆高高地跃过障碍物。

韧性:
速度:快,而后慢(跳跃后)
特点:跃过他所碰到的第一筑植物

一些僵尸渴望走得更远、得到更多,这也促使他们由普通成为非凡。那就是撑杆僵尸。', + getShadow: function (a) { + return ( + "left:" + + (a.beAttackedPointL - 20) + + "px;top:" + + (a.height - 35) + + "px" + ); + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "left:" + + b.X + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + JudgeAttack: function () { + var g = this, + b = g.ZX, + d = g.R + "_", + c = GetC(b), + h = oGd.$, + f, + a, + e = b - 74; + for (f = c - 2; f <= c; f++) { + if (f > 9) { + continue; + } + for ( + a = 2; + a > -1; + (p = h[d + f + "_" + a--]) && + (p.EName != "oBrains" + ? p.AttackedRX >= e && + p.AttackedLX < b && + p.canEat && + ((a = -1), + (g.JudgeAttack = + CZombies.prototype.JudgeAttack), + g.NormalAttack( + g.id, + p.id, + p.AttackedLX + )) + : p.AttackedRX >= b && + p.AttackedLX < b && + ((a = -1), + (g.JudgeAttack = + CZombies.prototype.JudgeAttack), + (g.NormalAttack = + CZombies.prototype.NormalAttack)( + g.id, + p.id + ))) + ) {} + } + }, + getCrushed: function (a) { + this.NormalAttack(this.id, a.id, a.AttackedLX); + this.getCrushed = function () { + return false; + }; + a.Stature > 0 && + oSym.addTask( + 50, + function (c) { + var b = $Z[c]; + b && b.CrushDie(); + }, + [this.id] + ); + return false; + }, + getRaven: function (a) { + return ( + !this.isAttacking && + this.NormalAttack( + this.id, + a, + $P[a].AttackedLX + ), + 0 + ); + }, + NormalAttack: function (d, b, g) { + var f = $Z[d], + a = f.Ele, + c = f.EleShadow, + e = f.EleBody; + e.src = + "images/Zombies/PoleVaultingZombie/PoleVaultingZombieJump.gif" + + $Random + + Math.random(); + PlayAudio("grassstep"); + SetHidden(c); + f.isAttacking = 1; + f.Altitude = 2; + f.getFreeze = function () { + f.getSnowPea(f, 20); + }; + oSym.addTask( + 50, + function (h) { + $Z[h] && PlayAudio("polevault"); + }, + [d] + ); + oSym.addTask( + 100, + function (m, j, i, l, n) { + var h = $Z[m], + k, + q, + r; + h && + ((k = $P[j]) && k.Stature > 0 + ? ((h.AttackedRX = + (h.X = + (h.AttackedLX = + h.ZX = + q = + k.AttackedRX) - + h.beAttackedPointL) + + h.beAttackedPointR), + SetStyle(i, { + left: h.X + "px", + }), + (n.src = + "images/Zombies/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), + SetVisible(l), + (h.isAttacking = 0), + (h.Altitude = 1), + (h.OSpeed = h.Speed = 1.6), + (h.NormalGif = 9), + (h.LostHeadGif = 10), + (h.NormalAttack = (r = + CZombies.prototype).NormalAttack), + (h.getCrushed = r.getCrushed), + (h.getFreeze = r.getFreeze), + (h.getRaven = r.getRaven)) + : ((h.ZX = h.AttackedLX = + (h.X = + (h.AttackedRX = g) - + h.beAttackedPointR) + + h.beAttackedPointL), + SetStyle(i, { + left: h.X + "px", + }), + (n.src = + "images/Zombies/PoleVaultingZombie/PoleVaultingZombieJump2.gif" + + $Random + + Math.random()), + SetVisible(l), + oSym.addTask( + 80, + function (s, v) { + var u = $Z[s], + t; + u && + ((v.src = + "images/Zombies/PoleVaultingZombie/PoleVaultingZombieWalk.gif"), + (u.isAttacking = 0), + (u.Altitude = 1), + (u.OSpeed = + u.Speed = + 1.6), + (u.NormalGif = 9), + (u.LostHeadGif = 10), + (u.NormalAttack = + (t = + CZombies.prototype).NormalAttack), + (u.getCrushed = + t.getCrushed), + (u.getFreeze = + t.getFreeze), + (u.getRaven = + t.getRaven)); + }, + [m, n] + ))); + }, + [d, b, a, c, e] + ); + }, + }), + OrnIIZombies = InheritO(OrnNoneZombies, { + Ornaments: 2, + BreakPoint: 91, + NormalGif: 2, + AttackGif: 3, + LostHeadGif: 4, + LostHeadAttackGif: 5, + OrnLostNormalGif: 6, + OrnLostAttackGif: 7, + OrnLostHeadNormalGif: 8, + OrnLostHeadAttackGif: 9, + HeadGif: 10, + DieGif: 11, + BoomDieGif: 12, + }), + oNewspaperZombie = InheritO(OrnIIZombies, { + EName: "oNewspaperZombie", + CName: "读报僵尸", + OrnHP: 150, + Lvl: 2, + LostPaperGif: 13, + StandGif: 14, + width: 216, + height: 164, + beAttackedPointL: 60, + beAttackedPointR: 130, + LostPaperSpeed: 4.8, + PicArr: (function () { + var a = "images/Zombies/NewspaperZombie/"; + return [ + "images/Card/Zombies/NewspaperZombie.png", + a + "0.gif", + a + "HeadWalk1.gif", + a + "HeadAttack1.gif", + a + "LostHeadWalk1.gif", + a + "LostHeadAttack1.gif", + a + "HeadWalk0.gif", + a + "HeadAttack0.gif", + a + "LostHeadWalk0.gif", + a + "LostHeadAttack0.gif", + a + "Head.gif" + $Random, + a + "Die.gif" + $Random, + a + "BoomDie.gif" + $Random, + a + "LostNewspaper.gif", + a + "1.gif", + ]; + })(), + AudioArr: ["newspaper_rarrgh2"], + Produce: + '他的报纸只能提供有限的防御。

韧性:
报纸韧性:
速度:正常,而后快(失去报纸后)

读报僵尸,他正痴迷于完成他的数独难题。难怪他这么反常。', + getShadow: function (a) { + return "left:75px;top:" + (a.height - 25) + "px"; + }, + GoingDie: function (b) { + var a = this, + c = a.id; + a.EleBody.src = b; + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a.PicArr[a.HeadGif] + Math.random(), + "left:" + + a.AttackedLX + + "px;top:" + + (a.pixelTop - 20) + + "px;z-index:" + + a.zIndex, + EDPZ + ), + ]); + a.beAttacked = 0; + a.FreeFreezeTime = + a.FreeSetbodyTime = + a.FreeSlowTime = + 0; + a.AutoReduceHP(c); + }, + getHurtOrnLost: function (j, a, g, m, c, l, k, i) { + var e = this; + if (!e.beAttacked) { + k && e.DisappearDie(); + return; + } + var b = e.id, + h = e.HP, + d = e.PicArr, + f = e.isAttacking; + switch (true) { + case (h -= g) < 1: + e.HP = 0; + e.NormalDie(); + return; + case h < 91: + e.HP = h; + e.GoingDie( + d[ + [ + e.OrnLostHeadNormalGif, + e.OrnLostHeadAttackGif, + ][f] + ] + ); + return; + } + e.HP = h; + switch (m) { + case -1: + e.getSlow(e, b, 1000); + break; + case 1: + e.getFireball(e, b, a); + break; + default: + !i && j == -1 && e.PlayNormalballAudio(); + } + SetAlpha(e.EleBody, 50, 0.5); + oSym.addTask( + 10, + function (q) { + var n = $Z[q]; + n && SetAlpha(n.EleBody, 100, 1); + }, + [b] + ); + }, + getSnowPea: function (c, a, b) { + PlayAudio( + "splat" + Math.floor(1 + Math.random() * 3) + ); + c.getHit0(c, a, b); + }, + getFirePea: function (f, b, e) { + f.PlayFireballAudio(); + (f.FreeSlowTime || f.FreeFreezeTime) && + ((f.Speed = f.OSpeed), + (f.FreeSlowTime = 0), + (f.FreeFreezeTime = 0)); + f.Attack = 100; + var d = f.AttackedLX, + g = f.AttackedRX, + a = oZ.getArZ(d, d + 40, f.R), + c = a.length, + h; + while (c--) { + (h = a[c]) != this && h.getFirePeaSputtering(); + } + (f.HP -= b) < f.BreakPoint + ? ((f.getFirePea = + OrnNoneZombies.prototype.getFirePea), + f.GoingDie( + f.PicArr[ + [ + f.LostHeadGif, + f.LostHeadAttackGif, + ][f.isAttacking] + ] + ), + (f.getHit = + f.getHit0 = + f.getHit1 = + f.getHit2 = + f.getHit3 = + function () {})) + : (f.CheckOrnHP( + f, + f.id, + f.OrnHP, + b, + f.PicArr, + f.isAttacking, + 0 + ), + f.SetAlpha(f, f.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (j, i) { + (i = $Z[j]) && + i.SetAlpha( + i, + i.EleBody, + 100, + 1 + ); + }, + [f.id] + )); + }, + getHit0: function (c, a, b) { + b == c.WalkDirection + ? (c.CheckOrnHP( + c, + c.id, + c.OrnHP, + a, + c.PicArr, + c.isAttacking, + 1 + ), + c.SetAlpha(c, c.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (e, d) { + (d = $Z[e]) && + d.SetAlpha( + d, + d.EleBody, + 100, + 1 + ); + }, + [c.id] + )) + : (c.HP -= a) < c.BreakPoint && + (c.GoingDie( + c.PicArr[ + [ + c.LostHeadGif, + c.LostHeadAttackGif, + ][c.isAttacking] + ] + ), + (c.getFirePea = + OrnNoneZombies.prototype.getFirePea), + (c.getSnowPea = + OrnNoneZombies.prototype.getSnowPea), + (c.getHit = + c.getHit0 = + c.getHit1 = + c.getHit2 = + c.getHit3 = + function () {})); + }, + getHit1: function (b, a) { + (b.HP -= a) < b.BreakPoint + ? (b.GoingDie( + b.PicArr[ + [ + b.LostHeadGif, + b.LostHeadAttackGif, + ][b.isAttacking] + ] + ), + (b.getFirePea = + OrnNoneZombies.prototype.getFirePea), + (b.getSnowPea = + OrnNoneZombies.prototype.getSnowPea), + (b.getHit = + b.getHit0 = + b.getHit1 = + b.getHit2 = + b.getHit3 = + function () {})) + : (b.CheckOrnHP( + b, + b.id, + b.OrnHP, + a, + b.PicArr, + b.isAttacking, + 0 + ), + b.SetAlpha(b, b.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (d, c) { + (c = $Z[d]) && + c.SetAlpha( + c, + c.EleBody, + 100, + 1 + ); + }, + [b.id] + )); + }, + getHit2: function (b, a) { + (b.HP -= a) < b.BreakPoint + ? (b.GoingDie( + b.PicArr[ + [ + b.LostHeadGif, + b.LostHeadAttackGif, + ][b.isAttacking] + ] + ), + (b.getFirePea = + OrnNoneZombies.prototype.getFirePea), + (b.getSnowPea = + OrnNoneZombies.prototype.getSnowPea), + (b.getHit = + b.getHit0 = + b.getHit1 = + b.getHit2 = + b.getHit3 = + function () {})) + : (b.SetAlpha(b, b.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (d, c) { + (c = $Z[d]) && + c.SetAlpha( + c, + c.EleBody, + 100, + 1 + ); + }, + [b.id] + )); + }, + getHit3: function (b, a) { + (b.HP -= a) < b.BreakPoint + ? (b.GoingDie( + b.PicArr[ + [ + b.LostHeadGif, + b.LostHeadAttackGif, + ][b.isAttacking] + ] + ), + (b.getFirePea = + OrnNoneZombies.prototype.getFirePea), + (b.getSnowPea = + OrnNoneZombies.prototype.getSnowPea), + (b.getHit = + b.getHit0 = + b.getHit1 = + b.getHit2 = + b.getHit3 = + function () {})) + : (b.CheckOrnHP( + b, + b.id, + b.OrnHP, + a, + b.PicArr, + b.isAttacking, + 0 + ), + b.SetAlpha(b, b.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (d, c) { + (c = $Z[d]) && + c.SetAlpha( + c, + c.EleBody, + 100, + 1 + ); + }, + [b.id] + )); + }, + CheckOrnHP: function (g, h, d, c, f, b, a) { + var e = OrnNoneZombies.prototype; + (g.OrnHP = d -= c) < 1 && + (a && (g.HP += d), + (g.ChkActs = function () { + return 1; + }), + (g.ChkActs1 = function () { + return 1; + }), + (g.EleBody.src = + f[g.LostPaperGif] + + $Random + + Math.random()), + (g.Ornaments = 0), + (g.LostHeadGif = 8), + (g.LostHeadAttackGif = 9), + (g.getFirePea = e.getFirePea), + (g.getSnowPea = e.getSnowPea), + (g.getHit = + g.getHit0 = + g.getHit1 = + g.getHit2 = + g.getHit3 = + e.getHit), + oSym.addTask( + 150, + function (m, l) { + var k = $Z[m]; + if (!k) { + return; + } + var j = CZombies.prototype, + i = (k.OSpeed = k.LostPaperSpeed); + k.ChkActs = j.ChkActs; + k.ChkActs1 = j.ChkActs1; + k.Speed && + (k.Speed = !k.FreeSlowTime + ? i + : 0.5 * i); + if (!k.beAttacked) { + return; + } + PlayAudio("newspaper_rarrgh2"); + k.EleBody.src = l; + k.JudgeAttack(); + }, + [ + h, + f[ + [ + (g.NormalGif = + g.OrnLostNormalGif), + (g.AttackGif = + g.OrnLostAttackGif), + ][b] + ], + ] + )); + }, + }), + oScreenDoorZombie = InheritO(oNewspaperZombie, { + EName: "oScreenDoorZombie", + CName: "铁栅门僵尸", + OrnHP: 1100, + Lvl: 3, + SunNum: 100, + StandGif: 13, + width: 166, + height: 144, + beAttackedPointL: 60, + beAttackedPointR: 116, + PicArr: (function () { + var a = "images/Zombies/ScreenDoorZombie/", + b = "images/Zombies/Zombie/"; + return [ + "images/Card/Zombies/ScreenDoorZombie.png", + a + "0.gif", + a + "HeadWalk1.gif", + a + "HeadAttack1.gif", + a + "LostHeadWalk1.gif", + a + "LostHeadAttack1.gif", + b + "Zombie2.gif", + b + "ZombieAttack.gif", + b + "ZombieLostHead.gif", + b + "ZombieLostHeadAttack.gif", + b + "ZombieHead.gif" + $Random, + b + "ZombieDie.gif" + $Random, + b + "BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + PlayNormalballAudio: function () { + PlayAudio( + "splat" + Math.floor(1 + Math.random() * 3) + ); + }, + Produce: + '他的铁栅门是有效的盾牌。

韧性:
铁栅门韧性:
弱点:大喷菇和磁力菇

门板僵尸上次拜访过的房主防守并不专业,在吃掉房主的脑子后拿走了他家的铁栅门。', + GoingDie: CZombies.prototype.GoingDie, + getFirePea: function (c, a, b) { + PlayAudio( + b == c.WalkDirection + ? ["shieldhit", "shieldhit2"][ + Math.floor(Math.random() * 2) + ] + : "splat" + + Math.floor(1 + Math.random() * 3) + ); + c.getHit0(c, a, b); + }, + getFirePeaSputtering: function () {}, + getSnowPea: function (c, a, b) { + PlayAudio( + ["shieldhit", "shieldhit2"][ + Math.floor(Math.random() * 2) + ] + ); + c.getHit0(c, a, b); + }, + getPea: function (c, a, b) { + PlayAudio( + b == c.WalkDirection + ? ["shieldhit", "shieldhit2"][ + Math.floor(Math.random() * 2) + ] + : "splat" + + Math.floor(1 + Math.random() * 3) + ); + c.getHit0(c, a, b); + }, + getHit0: function (c, a, b) { + b == c.WalkDirection + ? (c.CheckOrnHP( + c, + c.id, + c.OrnHP, + a, + c.PicArr, + c.isAttacking, + 1 + ), + c.SetAlpha(c, c.EleBody, 50, 0.5), + oSym.addTask( + 10, + function (e, d) { + (d = $Z[e]) && + d.SetAlpha( + d, + d.EleBody, + 100, + 1 + ); + }, + [c.id] + )) + : (c.HP -= a) < c.BreakPoint && + (c.GoingDie( + c.PicArr[ + [ + c.LostHeadGif, + c.LostHeadAttackGif, + ][c.isAttacking] + ] + ), + (c.getHit = + c.getHit0 = + c.getHit1 = + c.getHit2 = + c.getHit3 = + function () {})); + }, + CheckOrnHP: function (g, h, d, c, f, b, a) { + var e = OrnNoneZombies.prototype; + (g.OrnHP = d -= c) < 1 && + (a && (g.HP += d), + (g.Ornaments = 0), + (g.EleBody.src = + f[ + [ + (g.NormalGif = g.OrnLostNormalGif), + (g.AttackGif = g.OrnLostAttackGif), + ][b] + ]), + (g.LostHeadGif = 8), + (g.LostHeadAttackGif = 9), + (g.getPea = e.getPea), + (g.getFirePea = e.getFirePea), + (g.getFirePeaSputtering = + e.getFirePeaSputtering), + (g.getSnowPea = g.getSnowPea), + (g.PlayNormalballAudio = e.PlayNormalballAudio), + (g.PlayFireballAudio = e.PlayFireballAudio), + (g.PlaySlowballAudio = e.PlaySlowballAudio), + (g.getHit = + g.getHit0 = + g.getHit1 = + g.getHit2 = + g.getHit3 = + e.getHit)); + }, + getFireball: function (c, a, b) { + b != c.WalkDirection + ? ((c.FreeSlowTime = 0), + (c.Attack = 100), + c.Speed != c.OSpeed + ? (c.PlayNormalballAudio(), + (c.Speed = c.OSpeed)) + : c.PlayFireballAudio()) + : c.PlayNormalballAudio(); + }, + getSputtering: function () {}, + getSlow: function (d, a, c, b, e) { + b != d.WalkDirection || e != -1 + ? CZombies.prototype.getSlow(d, a, c) + : d.PlayNormalballAudio(); + }, + }), + oAquaticZombie = InheritO(OrnNoneZombies, { + StandGif: 4, + AttackGif: 5, + HeadGif: 6, + DieGif: 7, + WalkGif0: 2, + WalkGif1: 3, + CanPass: function (b, a) { + return a == 2; + }, + BirthCallBack: function (g) { + var e = g.delayT, + c = g.id, + b = (g.Ele = $(c)), + d = g.AttackedLX, + f, + a, + h; + f = g.EleShadow = b.firstChild; + g.EleBody = b.childNodes[1]; + switch (true) { + case d > GetX(9): + g.ChkActs = g.ChkActsL1; + g.WalkStatus = 0; + break; + case d < GetX(0): + g.ChkActs = g.ChkActsL3; + g.WalkStatus = 0; + break; + default: + g.ChkActs = g.ChkActsL2; + g.WalkStatus = 1; + g.EleBody.src = + g.PicArr[(g.NormalGif = g.WalkGif1)]; + SetHidden(f); + NewEle( + (a = c + "_splash"), + "div", + "position:absolute;background:url(images/interface/splash.png);left:61px;top:" + + (g.height - 88) + + "px;width:97px;height:88px;over-flow:hidden", + 0, + b + ); + ImgSpriter( + a, + c, + [ + ["0 0", 9, 1], + ["-97px 0", 9, 2], + ["-194px 0", 9, 3], + ["-291px 0", 9, 4], + ["-388px 0", 9, 5], + ["-485px 0", 9, 6], + ["-582px 0", 9, 7], + ["-679px 0", 9, -1], + ], + 0, + function (i, j) { + ClearChild($(i)); + } + ); + } + e + ? oSym.addTask( + e, + function (j, i) { + var k = $Z[j]; + k && + ((k.FreeSetbodyTime = 0), + SetBlock(i)); + }, + [c, b] + ) + : SetBlock(b); + }, + ChkActsL1: function (f, e, g, d) { + var c, + a, + b = f.id; + !(f.FreeFreezeTime || f.FreeSetbodyTime) && + ((f.AttackedRX -= c = f.Speed), + (LX = f.ZX = f.AttackedLX -= c), + (f.Ele.style.left = + Math.floor((f.X -= c)) + "px")); + f.AttackedLX < GetX(9) && + (PlayAudio("zombie_entering_water"), + (f.WalkStatus = 1), + (f.EleBody.src = + f.PicArr[(f.NormalGif = f.WalkGif1)]), + SetHidden(f.EleShadow), + NewEle( + (a = b + "_splash"), + "div", + "position:absolute;background:url(images/interface/splash.png);left:61px;top:" + + (f.height - 88) + + "px;width:97px;height:88px;over-flow:hidden", + 0, + f.Ele + ), + (f.ChkActs = f.ChkActsL2), + ImgSpriter( + a, + b, + [ + ["0 0", 9, 1], + ["-97px 0", 9, 2], + ["-194px 0", 9, 3], + ["-291px 0", 9, 4], + ["-388px 0", 9, 5], + ["-485px 0", 9, 6], + ["-582px 0", 9, 7], + ["-679px 0", 9, -1], + ], + 0, + function (h, i) { + ClearChild($(h)); + } + )); + return 1; + }, + ChkActsL2: function (d, c, e, b) { + var a; + !(d.FreeFreezeTime || d.FreeSetbodyTime) && + (d.beAttacked && + !d.isAttacking && + d.JudgeAttack(), + !d.isAttacking && + ((d.AttackedRX -= a = d.Speed), + (d.ZX = d.AttackedLX -= a), + (d.Ele.style.left = + Math.floor((d.X -= a)) + "px"))); + d.AttackedLX < GetX(0) && + ((d.WalkStatus = 0), + (d.EleBody.src = + d.PicArr[(d.NormalGif = d.WalkGif0)]), + SetVisible(d.EleShadow), + (d.ChkActs = d.ChkActsL3)); + return 1; + }, + ChkActsL3: CZombies.prototype.ChkActs, + ChkActs1: function (d, c, e, b) { + var a; + !(d.FreeFreezeTime || d.FreeSetbodyTime) && + (d.beAttacked && + !d.isAttacking && + d.JudgeAttack(), + !d.isAttacking && + ((d.AttackedLX += a = d.Speed), + (d.ZX = d.AttackedRX += a), + (d.Ele.style.left = + Math.ceil((d.X += a)) + "px"))); + d.AttackedLX > GetX(9) && + ((d.WalkStatus = 0), + (d.EleBody.src = + d.PicArr[(d.NormalGif = d.WalkGif0)]), + SetVisible(d.EleShadow), + (d.ChkActs = d.ChkActs2)); + return 1; + }, + ChkActs2: function (e, c, f, b) { + var a, d; + !(e.FreeFreezeTime || e.FreeSetbodyTime) + ? (e.beAttacked && + !e.isAttacking && + e.JudgeAttack(), + !e.isAttacking + ? (e.AttackedLX += a = e.Speed) > oS.W + ? (f.splice(b, 1), + e.DisappearDie(), + (d = 0)) + : ((e.ZX = e.AttackedRX += a), + (e.Ele.style.left = + Math.ceil((e.X += a)) + + "px"), + (d = 1)) + : (d = 1)) + : (d = 1); + return d; + }, + ExchangeLR: function (d, b) { + var c = d.width, + f = d.beAttackedPointL, + a = d.beAttackedPointR, + e = d.Ele; + e.style.left = + (d.X = + d.AttackedLX - + (d.beAttackedPointL = c - a)) + "px"; + d.beAttackedPointR = c - f; + d.EleShadow.style.cssText = + "visibility:hidden;left:" + + (d.beAttackedPointL - 10) + + "px;top:" + + (d.height - 22) + + "px"; + d.ExchangeLR2(d, d.EleBody, b); + }, + GoingDie: function () { + var b = this, + c = b.id, + a = b.PicArr; + b.EleBody.src = a[7] + Math.random(); + b.GoingDieHead(c, a, b); + b.beAttacked = 0; + b.FreeFreezeTime = + b.FreeSetbodyTime = + b.FreeSlowTime = + 0; + b.AutoReduceHP(c); + }, + AutoReduceHP: function (a) { + oSym.addTask( + 100, + function (c) { + var b = $Z[c]; + b && + ((b.HP -= 60) < 1 + ? (b.NormalDie(), + oSym.addTask(50, ClearChild, [ + b.Ele, + ])) + : oSym.addTask( + 100, + arguments.callee, + [c] + )); + }, + [a] + ); + }, + ExplosionDie: function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + DisappearDie: function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + NormalDie: function () { + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + }), + oDuckyTubeZombie1 = InheritO(oAquaticZombie, { + EName: "oDuckyTubeZombie1", + CName: "鸭子救生圈僵尸", + beAttackedPointR: 130, + GetDY: function () { + return 5; + }, + Produce: + '鸭子救生圈能让僵尸能浮在水面上。

韧性:
只在水池关卡出现

只有特定的僵尸才能成为救生圈僵尸。并不是每个僵尸都能胜任的。有些救生圈有点漏气,但他们没能注意到,所以他们离开并放弃了对脑子的渴求。', + PicArr: (function () { + var a = "images/Zombies/DuckyTubeZombie1/"; + return [ + "images/Card/Zombies/DuckyTubeZombie1.png", + a + "0.gif", + a + "Walk1.gif", + a + "Walk2.gif", + a + "1.gif", + a + "Attack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + + $Random, + a + "Die.gif" + $Random, + ]; + })(), + AudioArr: ["zombie_entering_water"], + }), + oDuckyTubeZombie2 = InheritO(oDuckyTubeZombie1, { + EName: "oDuckyTubeZombie2", + CName: "路障鸭子救生圈僵尸", + OrnHP: 370, + Lvl: 2, + SunNum: 75, + CanDisplay: 0, + OrnLostNormalGif: 9, + OrnLostAttackGif: 10, + PlayNormalballAudio: function () { + PlayAudio("plastichit"); + }, + PicArr: (function () { + var b = "images/Zombies/DuckyTubeZombie2/", + a = "images/Zombies/DuckyTubeZombie1/"; + return [ + "images/Card/Zombies/DuckyTubeZombie1.png", + b + "0.gif", + b + "Walk1.gif", + b + "Walk2.gif", + b + "1.gif", + b + "Attack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + + $Random, + a + "Die.gif" + $Random, + a + "Walk1.gif", + a + "Walk2.gif", + a + "Attack.gif", + ]; + })(), + AudioArr: ["plastichit", "zombie_entering_water"], + getHit: OrnIZombies.prototype.getHit, + getHit0: OrnIZombies.prototype.getHit0, + getHit1: OrnIZombies.prototype.getHit1, + getHit2: OrnIZombies.prototype.getHit2, + getHit3: OrnIZombies.prototype.getHit3, + }), + oDuckyTubeZombie3 = InheritO(oDuckyTubeZombie2, { + EName: "oDuckyTubeZombie3", + CName: "铁桶鸭子救生圈僵尸", + OrnHP: 1100, + Lvl: 3, + SunNum: 125, + PlayNormalballAudio: function () { + PlayAudio( + ["shieldhit", "shieldhit2"][ + Math.floor(Math.random() * 2) + ] + ); + }, + AudioArr: [ + "shieldhit", + "shieldhit2", + "zombie_entering_water", + ], + PicArr: (function () { + var b = "images/Zombies/DuckyTubeZombie3/", + a = "images/Zombies/DuckyTubeZombie1/"; + return [ + "images/Card/Zombies/DuckyTubeZombie1.png", + b + "0.gif", + b + "Walk1.gif", + b + "Walk2.gif", + b + "1.gif", + b + "Attack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + + $Random, + a + "Die.gif" + $Random, + a + "Walk1.gif", + a + "Walk2.gif", + a + "Attack.gif", + ]; + })(), + }), + oSnorkelZombie = InheritO(oDuckyTubeZombie1, { + EName: "oSnorkelZombie", + CName: "潜水僵尸", + Lvl: 1, + SunNum: 75, + width: 143, + height: 200, + beAttackedPointL: 40, + beAttackedPointR: 100, + OSpeed: 3.2, + Speed: 3.2, + Altitude: 1, + Produce: + '潜水僵尸可以在水下前行。

韧性:
特点:潜泳以避免遭到攻击
只在水池关卡出现

僵尸不呼吸。他们不需要空气。那么为什么潜水僵尸需要一套潜水装置来潜水呢?
答案:同行的压力。', + JumpTime: 40, + getShadow: function (a) { + return ( + "left:" + + a.beAttackedPointL + + "px;top:" + + (a.height - 45) + + "px" + ); + }, + PicArr: (function () { + var a = "images/Zombies/SnorkelZombie/"; + return [ + "images/Card/Zombies/SnorkelZombie.png", + a + "0.gif", + a + "Walk1.gif", + a + "Walk2.gif", + a + "1.gif", + a + "Attack.gif", + a + "Head.gif" + $Random, + a + "Die.gif" + $Random, + a + "Jump.gif" + $Random, + a + "Risk.gif" + $Random, + a + "Sink.gif" + $Random, + ]; + })(), + AudioArr: ["zombie_entering_water"], + BirthCallBack: function (a) { + oAquaticZombie.prototype.BirthCallBack(a), + GetC(this.ZX) <= 9 && this.Jump(this); + }, + Jump: function (a) { + a.beAttacked && + (PlayAudio("zombie_entering_water"), + (a.Altitude = 2), + SetHidden(a.EleShadow), + (a.EleBody.src = a.PicArr[8] + Math.random()), + oSym.addTask( + 160, + function (c, b) { + $Z[c] && + b.beAttacked && + ((b.WalkStatus = 1), + (b.Altitude = 0), + (b.OSpeed = b.Speed = 2), + (b.EleBody.src = + b.PicArr[ + (b.NormalGif = b.WalkGif1) + ]), + (b.ChkActs = b.ChkActsL2)); + }, + [a.id, a] + ), + (a.ChkActs = function () { + return 1; + })); + }, + ChkActsL1: function (d, c, e, b) { + if (d.JumpTime <= 0) { + d.Jump(d); + return 1; + } + var a; + !(d.FreeFreezeTime || d.FreeSetbodyTime) && + ((d.AttackedRX -= a = d.Speed), + (LX = d.ZX = d.AttackedLX -= a), + (d.Ele.style.left = + Math.floor((d.X -= a)) + "px"), + --d.JumpTime); + return 1; + }, + ChkActsL2: function (d, c, e, b) { + var a; + !(d.FreeFreezeTime || d.FreeSetbodyTime) && + (d.AttackedLX > GetX(0) + ? (d.beAttacked && + !d.isAttacking && + d.JudgeAttack(), + !d.isAttacking && + ((d.AttackedRX -= a = d.Speed), + (d.ZX = d.AttackedLX -= a), + (d.Ele.style.left = + Math.floor((d.X -= a)) + "px"))) + : d.beAttacked && + ((d.WalkStatus = 0), + (d.Altitude = 1), + (d.EleBody.src = + d.PicArr[ + (d.NormalGif = d.WalkGif0) + ]), + SetVisible(d.EleShadow), + (d.ChkActs = d.ChkActsL3))); + return 1; + }, + JudgeAttack: function () { + var e = this, + b = e.ZX, + c = e.R + "_", + d = GetC(b), + g = oGd.$, + a, + f = e.id; + (a = + e.JudgeLR(e, c, d, b, g) || + e.JudgeSR(e, c, d, b, g)) + ? !e.isAttacking + ? ((e.isAttacking = 1), + (e.EleBody.src = + e.PicArr[9] + Math.random()), + oSym.addTask( + 50, + function (i, h) { + $Z[i] && + h.beAttacked && + ((h.EleBody.src = + h.PicArr[h.AttackGif]), + (h.Altitude = 1), + h.NormalAttack(a[0], a[1])); + }, + [f, e] + )) + : e.NormalAttack(a[0], a[1]) + : e.isAttacking && + ((e.EleBody.src = + e.PicArr[10] + Math.random()), + (e.Altitude = 0), + oSym.addTask( + 70, + function (i, h) { + $Z[i] && + h.beAttacked && + ((h.isAttacking = 0), + (h.EleBody.src = + h.PicArr[h.NormalGif])); + }, + [f, e] + )); + }, + NormalAttack: function (b, a) { + oSym.addTask( + 100, + function (d, c) { + var f = $Z[d], + e; + f && + f.beAttacked && + !f.FreeFreezeTime && + !f.FreeSetbodyTime && + ((e = $P[c]) && e.getHurt(f, 0, 100), + f.JudgeAttack()); + }, + [b, a] + ); + }, + JudgeAttackH: function () { + var c = this, + b = oZ.getZ0(c.ZX, c.R), + d = c.id, + a; + b && + b.beAttacked && + b.AttackedLX < 900 && + b.Altitude < 2 + ? !c.isAttacking + ? ((c.isAttacking = 1), + (c.EleBody.src = + c.PicArr[9] + Math.random()), + (a = b.id), + !b.isAttacking && + b.AttackZombie2(b, a, d), + oSym.addTask( + 50, + function (g, h, f, e) { + $Z[h] && + g.beAttacked && + ($Z[e] && f.beAttacked + ? ((g.EleBody.src = + g.PicArr[ + g.AttackGif + ]), + (g.Altitude = 1), + g.AttackZombie(h, e)) + : g.JudgeAttackH()); + }, + [c, d, b, a] + )) + : c.AttackZombie(d, a) + : c.isAttacking && + ((c.EleBody.src = + c.PicArr[10] + Math.random()), + (c.Altitude = 0), + oSym.addTask( + 70, + function (f, e) { + $Z[f] && + e.beAttacked && + ((e.isAttacking = 0), + (e.EleBody.src = + e.PicArr[e.NormalGif])); + }, + [d, c] + )); + }, + AttackZombie2: function (c, b, a) { + c.isAttacking = 1; + c.EleBody.src = c.PicArr[9] + Math.random(); + oSym.addTask( + 50, + function (g, e, d, f) { + $Z[e] && + g.beAttacked && + ((f = $Z[d]) && f.beAttacked + ? ((g.EleBody.src = + g.PicArr[g.AttackGif]), + (g.Altitude = 1), + oSym.addTask( + 10, + function (k, i, j, h) { + $Z[i] && + k.beAttacked && + !k.FreeFreezeTime && + !k.FreeSetbodyTime && + ($Z[h] && + j.beAttacked + ? (j.getHit0( + j, + 10, + 0 + ), + oSym.addTask( + 10, + arguments.callee, + [ + k, + i, + j, + h, + ] + )) + : ((k.EleBody.src = + k + .PicArr[10] + + Math.random()), + (k.Altitude = 0), + oSym.addTask( + 70, + function ( + l, + m + ) { + $Z[ + l + ] && + m.beAttacked && + ((m.isAttacking = 0), + (m.EleBody.src = + m.PicArr[ + m.NormalGif + ])); + }, + [i, k] + ))); + }, + [g, e, f, d] + )) + : ((g.EleBody.src = + g.PicArr[10] + + Math.random()), + (g.Altitude = 0), + oSym.addTask( + 70, + function (h, i) { + $Z[h] && + i.beAttacked && + ((i.isAttacking = 0), + (i.EleBody.src = + i.PicArr[ + i.NormalGif + ])); + }, + [e, g] + ))); + }, + [c, b, a] + ); + }, + AutoReduceHP: function (a) { + oSym.addTask( + 100, + function (c) { + var b = $Z[c]; + b && + ((b.HP -= 60) < 1 + ? (b.NormalDie(), + oSym.addTask(200, ClearChild, [ + b.Ele, + ])) + : oSym.addTask( + 100, + arguments.callee, + [c] + )); + }, + [a] + ); + }, + }), + oSmallZombie = InheritO(oZombie, { + EName: "oSmallZombie", + CName: "小领带僵尸", + HP: 67, + width: 83, + height: 72, + beAttackedPointL: 41, + beAttackedPointR: 78, + BreakPoint: 25, + Init: function (e, g, c, b) { + var a = 0, + f = this, + d = []; + g.AttackedRX = + (g.X = + (g.ZX = g.AttackedLX = e) - + g.beAttackedPointL) + g.beAttackedPointR; + while (--b) { + g.CanPass(b, c[b]) && (d[a++] = b); + } + g.ArR = d; + g.ArHTML = [ + '
', + ]; + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "width:75px;height:93px;left:" + + b.AttackedLX + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + getShadow: function (a) { + return ( + "width:43px;height:18px;left:" + + (a.beAttackedPointL - 5) + + "px;top:" + + (a.height - 15) + + "px" + ); + }, + }), + oSmallFlagZombie = InheritO(oFlagZombie, { + EName: "oSmallFlagZombie", + CName: "小旗帜僵尸", + HP: 67, + width: 83, + height: 72, + beAttackedPointL: 41, + beAttackedPointR: 78, + BreakPoint: 25, + Init: function (e, g, c, b) { + var a = 0, + f = this, + d = []; + g.AttackedRX = + (g.X = + (g.ZX = g.AttackedLX = e) - + g.beAttackedPointL) + g.beAttackedPointR; + while (--b) { + g.CanPass(b, c[b]) && (d[a++] = b); + } + g.ArR = d; + g.ArHTML = [ + '
', + ]; + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "width:75px;height:93px;left:" + + b.AttackedLX + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + getShadow: function (a) { + return ( + "width:43px;height:18px;left:" + + (a.beAttackedPointL - 5) + + "px;top:" + + (a.height - 15) + + "px" + ); + }, + }), + oSmallDuckyTubeZombie1 = InheritO(oDuckyTubeZombie1, { + EName: "oSmallDuckyTubeZombie1", + CName: "小鸭子救生圈僵尸", + HP: 67, + width: 83, + height: 72, + beAttackedPointL: 41, + beAttackedPointR: 73, + BreakPoint: 25, + Init: function (e, g, c, b) { + var a = 0, + f = this, + d = []; + g.AttackedRX = + (g.X = + (g.ZX = g.AttackedLX = e) - + g.beAttackedPointL) + g.beAttackedPointR; + while (--b) { + g.CanPass(b, c[b]) && (d[a++] = b); + } + g.ArR = d; + g.ArHTML = [ + '
', + ]; + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "width:75px;height:93px;left:" + + b.AttackedLX + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + getShadow: function (a) { + return ( + "width:43px;height:18px;left:" + + (a.beAttackedPointL - 5) + + "px;top:" + + (a.height - 15) + + "px" + ); + }, + }), + oSmallConeheadZombie = InheritO(oConeheadZombie, { + EName: "oSmallConeheadZombie", + CName: "小路障僵尸", + OrnHP: 92, + HP: 67, + width: 83, + height: 72, + beAttackedPointL: 41, + beAttackedPointR: 78, + BreakPoint: 25, + Init: function (e, g, c, b) { + var a = 0, + f = this, + d = []; + g.AttackedRX = + (g.X = + (g.ZX = g.AttackedLX = e) - + g.beAttackedPointL) + g.beAttackedPointR; + while (--b) { + g.CanPass(b, c[b]) && (d[a++] = b); + } + g.ArR = d; + g.ArHTML = [ + '
', + ]; + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "width:75px;height:93px;left:" + + b.AttackedLX + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + getShadow: function (a) { + return ( + "width:43px;height:18px;left:" + + (a.beAttackedPointL - 5) + + "px;top:" + + (a.height - 15) + + "px" + ); + }, + }), + oSmallFootballZombie = InheritO(oFootballZombie, { + EName: "oSmallFootballZombie", + CName: "小橄榄球僵尸", + OrnHP: 350, + HP: 67, + width: 77, + height: 80, + beAttackedPointL: 20, + beAttackedPointR: 77, + BreakPoint: 25, + Init: function (e, g, c, b) { + var a = 0, + f = this, + d = []; + g.AttackedRX = + (g.X = + (g.ZX = g.AttackedLX = e) - + g.beAttackedPointL) + g.beAttackedPointR; + while (--b) { + g.CanPass(b, c[b]) && (d[a++] = b); + } + g.ArR = d; + g.ArHTML = [ + '
', + ]; + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "width:75px;height:93px;left:" + + b.AttackedLX + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + getShadow: function (a) { + return ( + "width:43px;height:18px;left:" + + (a.beAttackedPointL + 15) + + "px;top:" + + (a.height - 22) + + "px" + ); + }, + }), + oSmallSnorkelZombie = InheritO(oSnorkelZombie, { + EName: "oSmallSnorkelZombie", + CName: "小潜水僵尸", + HP: 67, + width: 71, + height: 100, + beAttackedPointL: 20, + beAttackedPointR: 50, + BreakPoint: 25, + Init: function (e, g, c, b) { + var a = 0, + f = this, + d = []; + g.AttackedRX = + (g.X = + (g.ZX = g.AttackedLX = e) - + g.beAttackedPointL) + g.beAttackedPointR; + while (--b) { + g.CanPass(b, c[b]) && (d[a++] = b); + } + g.ArR = d; + g.ArHTML = [ + '
', + ]; + }, + GoingDieHead: function (c, a, b) { + oSym.addTask(200, ClearChild, [ + NewImg( + 0, + a[b.HeadGif] + Math.random(), + "width:71px;height:105px;left:" + + b.AttackedLX + + "px;top:" + + (b.pixelTop - 20) + + "px;z-index:" + + b.zIndex, + EDPZ + ), + ]); + }, + getShadow: function (a) { + return ( + "width:43px;height:18px;left:" + + a.beAttackedPointL + + "px;top:" + + (a.height - 45) + + "px" + ); + }, + }), + oZomboni = (function () { + var a = function (d, b) { + var c = d.HP; + switch (true) { + case (d.HP = c -= b) < 200: + d.GoingDie(); + d.getHit0 = + d.getHit1 = + d.getHit2 = + d.getHit3 = + function () {}; + return; + case c < 391: + d.EleBody.src = + "images/Zombies/Zomboni/3.gif"; + break; + case c < 871: + d.EleBody.src = + "images/Zombies/Zomboni/2.gif"; + } + d.SetAlpha(d, d.EleBody, 50, 0.5); + oSym.addTask( + 10, + function (f, e) { + (e = $Z[f]) && + e.SetAlpha(e, e.EleBody, 100, 1); + }, + [d.id] + ); + }; + return InheritO(OrnNoneZombies, { + EName: "oZomboni", + CName: "冰车僵尸", + HP: 1350, + Lvl: 3, + StandGif: 2, + DieGif: 6, + BoomDieGif: 7, + BookHandPosition: "40% 35%", + width: 464, + height: 364, + GetDTop: 104, + beAttackedPointL: 140, + beAttackedPointR: 290, + BreakPoint: 200, + SunNum: 350, + GetDY: function () { + return 0; + }, + OSpeed: 2.5, + Speed: 2.5, + AKind: 2, + Attack: 50, + Produce: + '冰车僵尸运用冰雪,碾过你的植物。

韧性:
特点:碾压植物,留下条冰道

经常被误以为是在驾驶着冰车的僵尸,但事实上冰车僵尸是种完全不同的生物形式,他与太空兽人联系更紧密而不是僵尸。', + PicArr: (function () { + var b = "images/Zombies/Zomboni/"; + return [ + "images/Card/Zombies/Zomboni.png", + b + "0.gif", + b + "1.gif", + b + "2.gif", + b + "3.gif", + b + "4.gif", + b + "5.gif" + $Random, + b + "BoomDie.gif" + $Random, + b + "ice.png", + b + "ice_cap.png", + ]; + })(), + AudioArr: ["zamboni", "explosion"], + BirthCallBack: function (h) { + var g = h.delayT, + e = h.id, + c = (h.Ele = $(e)), + d = h.R, + f, + b = oGd.$Ice; + h.EleShadow = c.firstChild; + h.EleBody = c.childNodes[1]; + !b[d] + ? ((f = NewEle( + "dIceCar" + d, + "div", + "position:absolute;z-index:1;left:145px;top:" + + (GetY(d) - 65) + + "px;width:800px;height:72px", + 0, + EDPZ + )), + NewImg( + "", + "images/interface/blank.png", + "position:absolute;clip:rect(0,auto,auto,800px);width:800px;height:72px;left:5px;background:url(images/Zombies/Zomboni/ice.png) repeat-x", + f + ), + NewImg( + "", + "images/Zombies/Zomboni/ice_cap.png", + "position:absolute;display:none;left:0", + f + ), + (b[d] = [1, 11, h.AttackedLX])) + : ++b[d][0]; + g + ? oSym.addTask( + g, + function (j, i) { + var k = $Z[j]; + k && + ((k.FreeSetbodyTime = 0), + SetBlock(i), + PlayAudio("zamboni")); + }, + [e, c] + ) + : (SetBlock(c), PlayAudio("zamboni")); + }, + ChkActs: function (e, j, q, k) { + var b, + r, + m, + g, + n = oGd.$Ice[j], + d, + h, + f, + c, + l = $("dIceCar" + j); - if (l == null) { - // 对没有冰道的情况下特判 - l = NewEle( - "dIceCar" + j, - "div", - "position:absolute;z-index:1;left:145px;top:" + - (GetY(e.R) - 65) + - "px;width:800px;height:72px", - 0, - EDPZ - ); // 生成新的冰道 - NewImg( - "", - "images/interface/blank.png", - "position:absolute;clip:rect(0,auto,auto,800px);width:800px;height:72px;left:5px;background:url(images/Zombies/Zomboni/ice.png) repeat-x", - l - ); - NewImg( - "", - "images/Zombies/Zomboni/ice_cap.png", - "position:absolute;display:none;left:0", - l - ); - n = oGd.$Ice[j] = [1, 11, e.AttackedLX]; - } + if (l == null) { + // 对没有冰道的情况下特判 + l = NewEle( + "dIceCar" + j, + "div", + "position:absolute;z-index:1;left:145px;top:" + + (GetY(e.R) - 65) + + "px;width:800px;height:72px", + 0, + EDPZ + ); // 生成新的冰道 + NewImg( + "", + "images/interface/blank.png", + "position:absolute;clip:rect(0,auto,auto,800px);width:800px;height:72px;left:5px;background:url(images/Zombies/Zomboni/ice.png) repeat-x", + l + ); + NewImg( + "", + "images/Zombies/Zomboni/ice_cap.png", + "position:absolute;display:none;left:0", + l + ); + n = oGd.$Ice[j] = [1, 11, e.AttackedLX]; + } - e.JudgeAttack(); - (r = e.AttackedRX -= b = e.Speed) < -50 - ? (q.splice(k, 1), - e.DisappearDie(), - (m = 0)) - : (r < 100 && - !e.PointZombie && - ((e.PointZombie = 1), - !oS.CardKind && - (StopMusic(), - PlayAudio("losemusic", false)), - e.ChangeR({ - R: j, - ar: [oS.R - 1], - CustomTop: - 400 - e.height + e.GetDY(), - })), - (e.ZX = e.AttackedLX -= b), - (e.Ele.style.left = - Math.floor((e.X -= b)) + "px"), - (m = 1)); - d = e.X; - h = d + 250; - f = d + 100; - c = GetC(h); - c > -1 && - c < n[1] && - ((oGd.$Crater[j + "_" + c] = 1), - (n[1] = c)); - h > 120 && - h < n[2] && - ((n[2] = h), - (l.firstChild.style.clip = - "rect(0,auto,auto," + f + "px)"), - (l.childNodes[1].style.left = - Math.max(0, f) + "px")); - GetC(e.AttackedLX) > 5 && - (e.OSpeed = e.Speed -= 0.005); - return m; - }, - ChkActs1: function (f, d, g, c) { - var b, e; - f.JudgeAttack(); - (f.AttackedLX += b = f.Speed) > oS.W - ? (g.splice(c, 1), - f.DisappearDie(), - (e = 0)) - : ((f.ZX = f.AttackedRX += b), - (f.Ele.style.left = - Math.ceil((f.X += b)) + "px"), - (e = 1)); - return e; - }, - getPea: function (c, b) { - PlayAudio( - ["shieldhit", "shieldhit2"][ - Math.floor(Math.random() * 2) - ] - ); - c.getHit0(c, b); - }, - getFirePea: function (c, b) { - PlayAudio( - ["shieldhit", "shieldhit2"][ - Math.floor(Math.random() * 2) - ] - ); - c.getHit0(c, b); - }, - getSnowPea: function (c, b) { - PlayAudio( - ["shieldhit", "shieldhit2"][ - Math.floor(Math.random() * 2) - ] - ); - c.getHit0(c, b); - }, - getFirePeaSputtering: function () {}, - getFreeze: function (c, b) { - c.getHit0(c, 20); - }, - getShadow: function (b) { - return ( - "left:" + - (b.beAttackedPointL - 10) + - "px;top:" + - (b.height - 22) + - "px" - ); - }, - getHit: a, - getHit0: a, - getHit1: a, - getHit2: a, - getHit3: a, - GoingDie: function () { - var b = this; - b.beAttacked = 0; - b.AutoReduceHP(b.id); - }, - NormalDie: function () { - var b = this; - PlayAudio("explosion"); - b.EleBody.src = - b.PicArr[b.DieGif] + Math.random(); - oSym.addTask(70, ClearChild, [b.Ele]); - b.HP = 0; - delete $Z[b.id]; - b.JudgeIce(); - b.PZ && oP.MonPrgs(); - }, - DisappearDie: function () { - var b = this; - ClearChild(b.Ele); - b.HP = 0; - delete $Z[b.id]; - b.JudgeIce(); - b.PZ && oP.MonPrgs(); - }, - ExplosionDie: function () { - var b = this; - b.EleBody.src = - b.PicArr[b.BoomDieGif] + Math.random(); - oSym.addTask(300, ClearChild, [b.Ele]); - b.HP = 0; - delete $Z[b.id]; - b.JudgeIce(); - b.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - this.NormalDie(); - }, - JudgeIce: function () { - var d = this, - b = d.R, - e = $("dIceCar" + b), - c = oGd.$Ice[b]; + e.JudgeAttack(); + (r = e.AttackedRX -= b = e.Speed) < -50 + ? (q.splice(k, 1), + e.DisappearDie(), + (m = 0)) + : (r < 100 && + !e.PointZombie && + ((e.PointZombie = 1), + !oS.CardKind && + (StopMusic(), + PlayAudio("losemusic", false)), + e.ChangeR({ + R: j, + ar: [oS.R - 1], + CustomTop: + 400 - e.height + e.GetDY(), + })), + (e.ZX = e.AttackedLX -= b), + (e.Ele.style.left = + Math.floor((e.X -= b)) + "px"), + (m = 1)); + d = e.X; + h = d + 250; + f = d + 100; + c = GetC(h); + c > -1 && + c < n[1] && + ((oGd.$Crater[j + "_" + c] = 1), + (n[1] = c)); + h > 120 && + h < n[2] && + ((n[2] = h), + (l.firstChild.style.clip = + "rect(0,auto,auto," + f + "px)"), + (l.childNodes[1].style.left = + Math.max(0, f) + "px")); + GetC(e.AttackedLX) > 5 && + (e.OSpeed = e.Speed -= 0.005); + return m; + }, + ChkActs1: function (f, d, g, c) { + var b, e; + f.JudgeAttack(); + (f.AttackedLX += b = f.Speed) > oS.W + ? (g.splice(c, 1), + f.DisappearDie(), + (e = 0)) + : ((f.ZX = f.AttackedRX += b), + (f.Ele.style.left = + Math.ceil((f.X += b)) + "px"), + (e = 1)); + return e; + }, + getPea: function (c, b) { + PlayAudio( + ["shieldhit", "shieldhit2"][ + Math.floor(Math.random() * 2) + ] + ); + c.getHit0(c, b); + }, + getFirePea: function (c, b) { + PlayAudio( + ["shieldhit", "shieldhit2"][ + Math.floor(Math.random() * 2) + ] + ); + c.getHit0(c, b); + }, + getSnowPea: function (c, b) { + PlayAudio( + ["shieldhit", "shieldhit2"][ + Math.floor(Math.random() * 2) + ] + ); + c.getHit0(c, b); + }, + getFirePeaSputtering: function () {}, + getFreeze: function (c, b) { + c.getHit0(c, 20); + }, + getShadow: function (b) { + return ( + "left:" + + (b.beAttackedPointL - 10) + + "px;top:" + + (b.height - 22) + + "px" + ); + }, + getHit: a, + getHit0: a, + getHit1: a, + getHit2: a, + getHit3: a, + GoingDie: function () { + var b = this; + b.beAttacked = 0; + b.AutoReduceHP(b.id); + }, + NormalDie: function () { + var b = this; + PlayAudio("explosion"); + b.EleBody.src = + b.PicArr[b.DieGif] + Math.random(); + oSym.addTask(70, ClearChild, [b.Ele]); + b.HP = 0; + delete $Z[b.id]; + b.JudgeIce(); + b.PZ && oP.MonPrgs(); + }, + DisappearDie: function () { + var b = this; + ClearChild(b.Ele); + b.HP = 0; + delete $Z[b.id]; + b.JudgeIce(); + b.PZ && oP.MonPrgs(); + }, + ExplosionDie: function () { + var b = this; + b.EleBody.src = + b.PicArr[b.BoomDieGif] + Math.random(); + oSym.addTask(300, ClearChild, [b.Ele]); + b.HP = 0; + delete $Z[b.id]; + b.JudgeIce(); + b.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + this.NormalDie(); + }, + JudgeIce: function () { + var d = this, + b = d.R, + e = $("dIceCar" + b), + c = oGd.$Ice[b]; - if (d.PointZombie) return; // 如果冰车已经进入家门,则不产冰 + if (d.PointZombie) return; // 如果冰车已经进入家门,则不产冰 - e && - e.childNodes[1] && - SetBlock(e.childNodes[1]); - --c[0] <= 0 && - oSym.addTask( - 3000, - function (k, h) { - var j = oGd.$Ice[h], - g, - f = oGd.$Crater; - if (j && j[0] <= 0 && k) { - ClearChild(k); - g = j[1]; - while (g < 11) { - delete f[h + "_" + g++]; - delete oGd.$Ice[h]; - } - } - }, - [e, b] - ); - }, - flatTire: function () { - var b = this; - b.EleBody.src = "images/Zombies/Zomboni/4.gif"; - b.beAttacked = 0; - b.HP = 0; - b.getHit0 = - b.getHit1 = - b.getHit2 = - b.getHit3 = - function () {}; - b.ChkActs = b.ChkActs1 = function () {}; - oSym.addTask( - 290, - function (e, c) { - var d = $Z[e]; - d && d.NormalDie(); - }, - [b.id, b.EleBody] - ); - }, - JudgeAttack: function () { - var f = this, - c = f.ZX, - d = f.R + "_", - e = GetC(c), - g = oGd.$, - b; - (b = - f.JudgeLR(f, d, e, c, g) || - f.JudgeSR(f, d, e, c, g)) && - f.NormalAttack(b[0], b[1]); - }, - JudgeLR: function (e, c, d, b, f) { - return d > 10 || d < 1 - ? false - : (function () { - c += --d + "_"; - var g = 3, - h; - while (g--) { - if ((h = f[c + g])) { - return h.AttackedRX >= b && - h.AttackedLX <= b - ? [e.id, h.id] - : false; - } - } - })(); - }, - JudgeSR: function (e, c, d, b, f) { - return d > 9 - ? false - : (function () { - c += d + "_"; - var g = 3, - h; - while (g--) { - if ((h = f[c + g])) { - return h.AttackedRX >= b && - h.AttackedLX <= b - ? [e.id, h.id] - : false; - } - } - })(); - }, - NormalAttack: function (c, b) { - var d = $Z[c]; - $P[b].getHurt(d, 2, d.Attack); - }, - getThump: function () { - this.NormalDie(); - }, - prepareBirth: function (f, R) { - var h = this, - e = h.ArR, - d = - R || - e[Math.floor(Math.random() * e.length)], - g = GetY(d) + h.GetDY(), - c = g - h.height, - j = 3 * d + 1, - i = (h.id = "Z_" + Math.random()); + e && + e.childNodes[1] && + SetBlock(e.childNodes[1]); + --c[0] <= 0 && + oSym.addTask( + 3000, + function (k, h) { + var j = oGd.$Ice[h], + g, + f = oGd.$Crater; + if (j && j[0] <= 0 && k) { + ClearChild(k); + g = j[1]; + while (g < 11) { + delete f[h + "_" + g++]; + delete oGd.$Ice[h]; + } + } + }, + [e, b] + ); + }, + flatTire: function () { + var b = this; + b.EleBody.src = "images/Zombies/Zomboni/4.gif"; + b.beAttacked = 0; + b.HP = 0; + b.getHit0 = + b.getHit1 = + b.getHit2 = + b.getHit3 = + function () {}; + b.ChkActs = b.ChkActs1 = function () {}; + oSym.addTask( + 290, + function (e, c) { + var d = $Z[e]; + d && d.NormalDie(); + }, + [b.id, b.EleBody] + ); + }, + JudgeAttack: function () { + var f = this, + c = f.ZX, + d = f.R + "_", + e = GetC(c), + g = oGd.$, + b; + (b = + f.JudgeLR(f, d, e, c, g) || + f.JudgeSR(f, d, e, c, g)) && + f.NormalAttack(b[0], b[1]); + }, + JudgeLR: function (e, c, d, b, f) { + return d > 10 || d < 1 + ? false + : (function () { + c += --d + "_"; + var g = 3, + h; + while (g--) { + if ((h = f[c + g])) { + return h.AttackedRX >= b && + h.AttackedLX <= b + ? [e.id, h.id] + : false; + } + } + })(); + }, + JudgeSR: function (e, c, d, b, f) { + return d > 9 + ? false + : (function () { + c += d + "_"; + var g = 3, + h; + while (g--) { + if ((h = f[c + g])) { + return h.AttackedRX >= b && + h.AttackedLX <= b + ? [e.id, h.id] + : false; + } + } + })(); + }, + NormalAttack: function (c, b) { + var d = $Z[c]; + $P[b].getHurt(d, 2, d.Attack); + }, + getThump: function () { + this.NormalDie(); + }, + prepareBirth: function (f, R) { + var h = this, + e = h.ArR, + d = + R || + e[Math.floor(Math.random() * e.length)], + g = GetY(d) + h.GetDY(), + c = g - h.height, + j = 3 * d + 1, + i = (h.id = "Z_" + Math.random()); - (h.R = d), - (h.pixelTop = c), - (h.zIndex = j), - (h.delayT = 0); // 设置其本身不受 delayT 影响 + (h.R = d), + (h.pixelTop = c), + (h.zIndex = j), + (h.delayT = 0); // 设置其本身不受 delayT 影响 - return h.getHTML( - i, - h.X, - c, - j, - "none", - "auto", - h.GetDTop, - h.PicArr[h.NormalGif] - ); - }, - }); - })(), - oDolphinRiderZombie = InheritO(oAquaticZombie, { - EName: "oDolphinRiderZombie", - CName: "海豚骑士僵尸", - HP: 500, - Lvl: 2, - BreakPoint: 167, - width: 282, - height: 210, - Lvl: 2, - getShadow: function (a) { - return "left:105px;top:175px"; - }, - GetDX: function () { - return -137; - }, - GetDY: function () { - return 0; - }, - GetDTop: 0, - Altitude: 1, - haveDolphin: 1, - JumpTime: 45, - beAttackedPointL: 110, - beAttackedPointR: 190, - SunNum: 75, - OSpeed: 3.2, - Speed: 3.2, - PicArr: (function () { - var a = "images/Zombies/DolphinRiderZombie/"; - return [ - "images/Card/Zombies/DolphinRiderZombie.png", - a + "0.gif", - a + "Walk1.gif", - a + "Walk2.gif", - a + "1.gif", - a + "Attack.gif", - a + "Head.gif" + $Random, - a + "Die.gif" + $Random, - a + "Jump.gif" + $Random, - a + "Jump2.gif" + $Random, - a + "Walk3.gif", - a + "Walk4.gif", - a + "Die2.gif" + $Random, - a + "Jump3.gif" + $Random, - ]; - })(), - AudioArr: [ - "dolphin_before_jumping", - "dolphin_appears", - "zombie_entering_water", - ], - Produce: - '海豚骑士僵尸善于利用你水池防御的弱点。

韧性:
速度:快,慢(跳越后)
特点:跃过他所遇到的第一株植物
只在水池关卡出现

那海豚其实也是个僵尸。', - BirthCallBack: function (a) { - PlayAudio("dolphin_appears"); - oAquaticZombie.prototype.BirthCallBack(a), - GetC(this.ZX) <= 9 && this.Jump(this); - }, - Jump: function (a) { - a.beAttacked && - (PlayAudio("zombie_entering_water"), - (a.Altitude = 2), - SetHidden(a.EleShadow), - (a.EleBody.src = a.PicArr[8] + Math.random()), - oSym.addTask( - 240, - function (d, b) { - var c; - $Z[d] && - b.beAttacked && - ((b.WalkStatus = 1), - (b.Altitude = 1), - (b.OSpeed = b.Speed = 10.8), - SetStyle(b.Ele, { - left: (c = b.X -= 140) + "px", - }), - (b.AttackedLX = - c + (b.beAttackedPointL = 185)), - (b.AttackedRX = - c + (b.beAttackedPointR = 265)), - (b.EleBody.src = - b.PicArr[ - (b.NormalGif = b.WalkGif1) - ]), - (b.ChkActs = b.ChkActsL2)); - }, - [a.id, a] - ), - (a.ChkActs = function () { - return 1; - })); - }, - ChkActsL1: function (d, c, e, b) { - if (d.JumpTime <= 0) { - d.Jump(d); - return 1; - } - var a; - !(d.FreeFreezeTime || d.FreeSetbodyTime) && - ((d.AttackedRX -= a = d.Speed), - (LX = d.ZX = d.AttackedLX -= a), - (d.Ele.style.left = - Math.floor((d.X -= a)) + "px"), - --d.JumpTime); - return 1; - }, - getCrushed: function (a) { - this.NormalAttack(this.id, a.id, a.AttackedLX); - this.getCrushed = function () { - return false; - }; - a.Stature > 0 && - oSym.addTask( - 50, - function (c) { - var b = $Z[c]; - b && b.CrushDie(); - }, - [this.id] - ); - return false; - }, - getRaven: function (a) { - return ( - !this.isAttacking && - this.NormalAttack( - this.id, - a, - $P[a].AttackedLX - ), - 0 - ); - }, - JudgeAttack: function () { - var f = this, - b = f.ZX, - d = f.R + "_", - c = GetC(b), - g = oGd.$, - e, - a; - for (e = c - 2; e <= c; e++) { - if (e > 9) { - continue; - } - for ( - a = 2; - a > -1; - (p = g[d + e + "_" + a--]) && - (p.EName != "oBrains" - ? p.AttackedRX >= b && - p.AttackedLX < b && - ((a = -1), - (f.JudgeAttack = - CZombies.prototype.JudgeAttack), - f.NormalAttack( - f.id, - p.id, - p.AttackedLX - )) - : p.AttackedRX >= b && - p.AttackedLX < b && - ((a = -1), - (f.JudgeAttack = - CZombies.prototype.JudgeAttack), - (f.NormalAttack = - CZombies.prototype.NormalAttack)( - f.id, - p.id - ))) - ) {} - } - }, - AttackZombie2: function (c, b, a) { - c.NormalAttack(b, a, $Z[a].AttackedLX); - }, - NormalAttack: function (d, b, g) { - var f = $Z[d], - a = f.Ele, - c = f.EleShadow, - e = f.EleBody; - e.src = f.PicArr[9] + Math.random(); - SetHidden(c); - f.isAttacking = 1; - f.Altitude = 2; - f.haveDolphin = 0; - PlayAudio("dolphin_before_jumping"); - f.getFreeze = function () { - f.getSnow(f, 20, 0); - }; - oSym.addTask( - 50, - function (m, j, i, l, q) { - var h = $Z[m], - k, - r, - s, - n = function () { - q.src = h.PicArr[10]; - h.isAttacking = 0; - h.Altitude = 1; - h.OSpeed = h.Speed = 1.6; - h.WalkGif0 = 11; - h.NormalGif = h.WalkGif1 = 10; - h.LostHeadGif = h.DieGif = 12; - h.NormalAttack = (s = - CZombies.prototype).NormalAttack; - h.getCrushed = s.getCrushed; - h.getFreeze = s.getFreeze; - h.getRaven = s.getRaven; - h.AttackZombie2 = s.AttackZombie2; - }; - h && - ((k = $P[j]) && k.Stature > 0 - ? ((h.AttackedRX = - (h.X = - (h.AttackedLX = - h.ZX = - r = - k.AttackedRX) - - (h.beAttackedPointL = 45)) + - (h.beAttackedPointR = 100)), - SetStyle(i, { - left: h.X + "px", - }), - (h.EleShadow.style.left = "45px"), - n()) - : ((h.ZX = h.AttackedLX = - (h.X = - (h.AttackedRX = g) - - (h.beAttackedPointR = 100)) + - (h.beAttackedPointL = 45)), - SetStyle(i, { - left: h.X + "px", - }), - (h.EleShadow.style.left = "45px"), - (q.src = - h.PicArr[13] + Math.random()), - oSym.addTask( - 170, - function (t, w) { - var v = $Z[t], - u; - v && n(); - }, - [m, q] - ))); - }, - [d, b, a, c, e] - ); - }, - GoingDie: function () { - var b = this, - c = b.id, - a = b.PicArr; - b.EleBody.src = - a[b.haveDolphin ? 7 : 12] + Math.random(); - b.GoingDieHead(c, a, b); - b.beAttacked = 0; - b.FreeFreezeTime = - b.FreeSetbodyTime = - b.FreeSlowTime = - 0; - b.AutoReduceHP(c); - }, - }), - oImp = InheritO(OrnNoneZombies, { - EName: "oImp", - CName: "小鬼僵尸", - HP: 70, - BreakPoint: 23, - beAttackedPointL: 30, - beAttackedPointR: 60, - width: 81, - height: 110, - StandGif: 5, - NormalGif: 5, - DieGif: 3, - BoomDieGif: 4, - AttackGif: 2, - OSpeed: 5.4, - Speed: 5.4, - GetDX: function () { - return -50; - }, - GetDY: function () { - return 0; - }, - getShadow: function (a) { - return ( - "left:" + - (a.beAttackedPointL - 20) + - "px;top:" + - (a.height - 32) + - "px" - ); - }, - Produce: - '小淘气们是一群小型僵尸,他们被伽刚特尔用来投掷进你的防御体系。

韧性:
小淘气虽然瘦小,却很结实。他精通僵尸柔道,僵尸空手道和僵尸关节技。另外,他还会吹口琴。', - GoingDie: function () { - var b = this, - c = b.id, - a = b.PicArr; - b.EleBody.src = a[3] + Math.random(); - b.beAttacked = 0; - b.FreeFreezeTime = - b.FreeSetbodyTime = - b.FreeSlowTime = - 0; - b.AutoReduceHP(c); - }, - NormalDie: function () { - var a = this; - oSym.addTask(250, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - var a = this; - ClearChild(a.Ele); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - PicArr: (function () { - var a = "images/Zombies/Imp/"; - return [ - "images/Card/Zombies/Imp.png", - a + "0.gif", - a + "Attack.gif", - a + "Die.gif" + $Random, - a + "BoomDie.gif" + $Random, - a + "1.gif", - ]; - })(), - }), - oJackinTheBoxZombie = InheritO(OrnNoneZombies, { - EName: "oJackinTheBoxZombie", - CName: "小丑僵尸", - SunNum: 100, - HP: 500, - BreakPoint: 167, - Lvl: 3, - Status: 1, - BookHandPosition: "30% 70%", - width: 196, - height: 181, - beAttackedPointL: 120, - beAttackedPointR: 170, - StandGif: 5, - NormalGif: 6, - DieGif: 3, - BoomDieGif: 4, - HeadGif: 11, - LostHeadGif: 9, - LostHeadAttackGif: 10, - AttackGif: 2, - OSpeed: 3.6, - Speed: 3.6, - Produce: - '这种僵尸带着个会爆炸的潘多拉盒子。

韧性:
速度:
特点:打开玩偶匣会爆炸
弱点:磁力菇
这种僵尸令人不寒而栗,不是因为他的冰冷身躯而是因为他的疯狂。', - AudioArr: [ - "jackinthebox", - "jack_surprise", - "explosion", - ], - PicArr: (function () { - var a = "images/Zombies/JackinTheBoxZombie/"; - return [ - "images/Card/Zombies/JackboxZombie.png", - a + "0.gif", - a + "Attack.gif", - a + "Die.gif" + $Random, - a + "BoomDie.gif" + $Random, - a + "1.gif", - a + "Walk.gif", - a + "OpenBox.gif", - a + "Boom.gif" + $Random, - a + "LostHead.gif", - a + "LostHeadAttack.gif", - "images/Zombies/Zombie/ZombieHead.gif" + - $Random, - ]; - })(), - RandomOpenBox: function (a) { - oSym.addTask( - Math.floor(Math.random() * 100) > 4 - ? Math.floor(1325 + Math.random() * 976) - : Math.floor(450 + Math.random() * 301), - function (c) { - var b = $Z[c]; - b && b.beAttacked && b.OpenBox(c); - }, - [a] - ); - }, - OpenBox: function (b) { - var a = $Z[b]; - a.EleBody.src = a.PicArr[7]; - a.ChkActs = a.ChkActs1 = function () { - return 1; - }; - a.JudgeAttack = function () { - var g = this, - d = g.ZX, - e = g.R + "_", - f = GetC(d), - h = oGd.$, - c; - (c = - g.JudgeLR(g, e, f, d, h) || - g.JudgeSR(g, e, f, d, h)) - ? (!g.isAttacking && - ((g.isAttacking = 1), - (g.EleBody.src = - g.PicArr[g.AttackGif])), - g.NormalAttack(c[0], c[1])) - : g.isAttacking && (g.isAttacking = 0); - }; - a.JudgeAttackH = function () { - var e = this, - d = oZ.getZ0(e.ZX, e.R), - f = e.id, - c; - d && - d.beAttacked && - d.AttackedLX < oS.W && - d.Altitude == 1 - ? !e.isAttacking - ? ((e.isAttacking = 1), - (e.EleBody.src = - e.PicArr[e.AttackGif]), - e.AttackZombie(f, (c = d.id)), - !d.isAttacking && - d.AttackZombie2(d, c, f)) - : e.AttackZombie(f, d.id, 1) - : e.isAttacking && (e.isAttacking = 0); - }; - a.getPea = - a.getSnowPea = - a.getFirePeaSputtering = - a.getFirePea = - a.getHit = - a.getHit0 = - a.getHit1 = - a.getHit2 = - a.getHit3 = - a.ChangeR = - a.bedevil = - function () {}; - oSym.addTask( - 50, - function (c) { - $Z[c] && - ((a.Status = 0), - !--oGd.$JackinTheBox && - StopAudio("jackinthebox"), - PlayAudio("jack_surprise"), - oSym.addTask( - 90, - function (f) { - var e = $Z[f], - d; - e && - ((d = NewImg( - "", - "images/interface/blank.png", - "width:306px;height:300px;left:" + - (e.X - 16) + - "px;top:" + - (e.pixelTop - 90) + - "px;z-index:20" - )), - PlayAudio("explosion"), - (d.src = - e.PicArr[8] + - Math.random()), - EDPZ.appendChild(d), - oSym.addTask( - 70, - ClearChild, - [d] - ), - e.PZ - ? (function (k, g) { - var q = Math.max( - 1, - k - 1 - ), - o = Math.min( - oS.R, - k + 1 - ), - n = Math.max( - 1, - g - 1 - ), - h = Math.min( - oS.C, - g + 1 - ), - r = oGd.$, - l, - j = "", - m; - do { - g = n; - do { - j = - q + - "_" + - g + - "_"; - for ( - l = 0; - l < 4; - l++ - ) { - (m = - r[ - j + - l - ]) && - m.BoomDie(); - } - } while ( - g++ < h - ); - } while (q++ < o); - })(e.R, GetC(e.ZX)) - : (function (j, l) { - var m = j - 120, - o = j + 120, - h = Math.max( - 1, - l - 1 - ), - g = Math.min( - oS.R, - l + 1 - ), - n, - k; - do { - k = (n = - oZ.getArZ( - m, - o, - h - )).length; - while (k--) { - n[ - k - ].ExplosionDie(); - } - } while (h++ < g); - })(e.ZX, e.R), - e.DisappearDie()); - }, - [c] - )); - }, - [b] - ); - }, - getShadow: function (a) { - return ( - "left:" + - (a.beAttackedPointL - 8) + - "px;top:" + - (a.height - 32) + - "px" - ); - }, - BirthCallBack: function (d) { - var c = d.delayT, - b = d.id, - a = (d.Ele = $(b)); - d.EleShadow = a.firstChild; - d.EleBody = a.childNodes[1]; - c - ? oSym.addTask( - c, - function (f, e) { - var g = $Z[f]; - g && - (PlayAudio("jackinthebox", true), - ++oGd.$JackinTheBox, - (g.FreeSetbodyTime = 0), - SetBlock(e), - g.RandomOpenBox(f)); - }, - [b, a] - ) - : (PlayAudio("jackinthebox", true), - ++oGd.$JackinTheBox, - SetBlock(a), - d.RandomOpenBox(b)); - }, - NormalDie: function () { - var a = this; - a.Status && - !--oGd.$JackinTheBox && - StopAudio("jackinthebox"); - a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); - oSym.addTask(250, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - ExplosionDie: function () { - var a = this; - a.Status && - !--oGd.$JackinTheBox && - StopAudio("jackinthebox"); - a.EleBody.src = - a.PicArr[a.BoomDieGif] + Math.random(); - oSym.addTask(300, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - DisappearDie: function () { - this.Status && - !--oGd.$JackinTheBox && - StopAudio("jackinthebox"); - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - }, - CrushDie: function () { - var a = this; - a.Status && - !--oGd.$JackinTheBox && - StopAudio("jackinthebox"); - a.GoingDieHead(a.id, a.PicArr, a); - ClearChild(a.Ele); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - }, - }), - oBalloonZombie = InheritO(OrnIZombies, { - EName: "oBalloonZombie", - CName: "气球僵尸", - OrnHP: 20, - SunNum: 100, - width: 207, - height: 197, - beAttackedPointL: 30, - beAttackedPointR: 85, - OSpeed: 3.2, - Speed: 3.2, - Altitude: 3, - OrnLostNormalGif: 9, - OrnLostAttackGif: 3, - BreakBall: false, // 气球是否被戳破 - MulBallNum: function () { - // 减去气球数 - if (!this.BreakBall) - (this.BreakBall = true), - (oGd.$Balloon[this.R] |= 0), - --oGd.$Balloon[this.R]; - }, - getShadow: function (a) { - return ( - "left:" + - (a.beAttackedPointL - 10) + - "px;top:" + - (a.height - 32) + - "px" - ); - }, - CanPass: function (d, c) { - return c; - }, - AudioArr: ["ballooninflate", "balloon_pop"], - BookHandPosition: "80% 80%", - PicArr: (function () { - var a = "images/Zombies/BalloonZombie/"; - return [ - "images/Card/Zombies/Balloonzombie.png", - a + "0.gif", - a + "1.gif", - a + "Attack.gif", - a + "Walk2.gif", - a + "Attack2.gif", - a + "Head.gif" + $Random, - a + "Die.gif" + $Random, - a + "Boom.gif", - a + "Walk.gif", - a + "Drop.gif", - a + "Boom2.gif", - ]; - })(), - Produce: - '气球僵尸漂浮在空中,躲过大多数攻击。

韧性:
特点:飞行
弱点:仙人掌和三叶草

气球僵尸真幸运。气球有很多功效,而其他僵尸都不曾捡到过。', - BirthCallBack: function (e) { - var d = e.delayT, - c = e.id, - a = (e.Ele = $(c)), - f = oGd.$Balloon, - b = e.R; - e.EleShadow = a.firstChild; - e.EleBody = a.childNodes[1]; - d - ? oSym.addTask( - d, - function (i, g, c) { - var j = $Z[i], - k = oGd.$Balloon; - j && - ((j.FreeSetbodyTime = 0), - SetBlock(g)); - (k[c] |= 0), ++k[c]; // 增加数量 - PlayAudio("ballooninflate"); - }, - [c, a, b] - ) - : (SetBlock(a), - f[b] == undefined ? (f[b] = 1) : ++f[b], - PlayAudio("ballooninflate")); - }, - ChkActs: function (f, d, g, c) { - var b, a, e; - if (f.Altitude == 3 && f.AttackedRX < GetX(1)) { - // 气球掉落 - f.Drop(); - return 1; - } - !(f.FreeFreezeTime || f.FreeSetbodyTime) - ? (a = f.AttackedRX -= b = f.Speed) < -50 - ? (g.splice(c, 1), - f.DisappearDie(), - (e = 0)) - : (a < 100 && - !f.PointZombie && - ((f.PointZombie = 1), - !oS.CardKind && - (StopMusic(), - PlayAudio("losemusic", false)), - f.ChangeR({ - R: d, - ar: [oS.R - 1], - CustomTop: - 400 - f.height + f.GetDY(), - })), - (f.ZX = f.AttackedLX -= b), - (f.Ele.style.left = - Math.floor((f.X -= b)) + "px"), - (e = 1)) - : (e = 1); - return e; - }, - Drop: function () { - var a = this; - PlayAudio("balloon_pop"); - a.EleBody.src = - "images/Zombies/BalloonZombie/Drop.gif" + - $Random + - Math.random(); - a.ChkActs = function () { - return 1; - }; - a.Altitude = 4; - a.MulBallNum(); - oSym.addTask( - 120, - function (b) { - var c = $Z[b]; - if (c) { - c.BoomDieGif = 11; - c.Altitude = 1; - c.OSpeed = c.Speed = 1.6; - c.getFreeze = - OrnIZombies.prototype.getFreeze; - c.EleBody.src = - "images/Zombies/BalloonZombie/Walk.gif"; - c.ChkActs = - OrnIZombies.prototype.ChkActs; - c.ExplosionDie = function () { - var d = this; - d.EleBody.src = - d.PicArr[d.BoomDieGif]; - oSym.addTask(200, ClearChild, [ - d.Ele, - ]); - d.HP = 0; - delete $Z[d.id]; - d.PZ && oP.MonPrgs(); - d.MulBallNum(); - }; - c.DisappearDie = function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - this.MulBallNum(); - }; - c.CrushDie = function () { - var d = this; - d.GoingDieHead(d.id, d.PicArr, d); - ClearChild(d.Ele); - d.HP = 0; - delete $Z[d.id]; - d.PZ && oP.MonPrgs(); - d.MulBallNum(); - }; - } - }, - [a.id] - ); - }, - getFreeze: function (b, a) { - b.Attack = 50; - b.Speed = 0.5 * b.OSpeed; - oSym.addTask( - 1500, - function (d, c) { - var e = $Z[d]; - e && - e.FreeSlowTime == c && - ((e.FreeSlowTime = 0), - (e.Attack = 100), - (e.Speed = e.OSpeed)); - }, - [a, (b.FreeSlowTime = oSym.Now + 1500)] - ); - }, - NormalDie: function () { - var a = this; - a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); - oSym.addTask(250, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - a.MulBallNum(); - }, - ExplosionDie: function () { - var a = this; - a.EleBody.src = a.PicArr[a.BoomDieGif]; - oSym.addTask(200, ClearChild, [a.Ele]); - a.HP = 0; - delete $Z[a.id]; - a.PZ && oP.MonPrgs(); - a.MulBallNum(); - }, - DisappearDie: function () { - ClearChild(this.Ele); - this.HP = 0; - delete $Z[this.id]; - this.PZ && oP.MonPrgs(); - this.MulBallNum(); - }, - CrushDie: function () { - this.DisappearDie(); - }, - getDispelled: function () { - if ( - this.Altitude != 3 || - this.AttackedRX < GetX(0) - ) { - return; - } - this.ChkActs = function () { - return 1; - }; - (function (id) { - var o = $Z[id]; - if (!o) return; - var d = (o.WalkDirection = 1), - R = o.R, - C = GetC(o.AttackedLX), - sx = 50; - o.AttackedLX += sx; - o.ZX += sx; - o.X += sx; - if (o.AttackedLX > oS.W) { - o.DisappearDie(); - return; - } - SetStyle($(id), { left: o.X + "px" }); - oSym.addTask(2, arguments.callee, [id]); - })(this.id); - }, - getFirePeaSputtering: function () { - this.Altitude == 1 && this.getHit0(this, 13); - }, - prepareBirth: oZomboni.prototype.prepareBirth, - }); - }, - }); - })()); + return h.getHTML( + i, + h.X, + c, + j, + "none", + "auto", + h.GetDTop, + h.PicArr[h.NormalGif] + ); + }, + }); + })(), + oDolphinRiderZombie = InheritO(oAquaticZombie, { + EName: "oDolphinRiderZombie", + CName: "海豚骑士僵尸", + HP: 500, + Lvl: 2, + BreakPoint: 167, + width: 282, + height: 210, + Lvl: 2, + getShadow: function (a) { + return "left:105px;top:175px"; + }, + GetDX: function () { + return -137; + }, + GetDY: function () { + return 0; + }, + GetDTop: 0, + Altitude: 1, + haveDolphin: 1, + JumpTime: 45, + beAttackedPointL: 110, + beAttackedPointR: 190, + SunNum: 75, + OSpeed: 3.2, + Speed: 3.2, + PicArr: (function () { + var a = "images/Zombies/DolphinRiderZombie/"; + return [ + "images/Card/Zombies/DolphinRiderZombie.png", + a + "0.gif", + a + "Walk1.gif", + a + "Walk2.gif", + a + "1.gif", + a + "Attack.gif", + a + "Head.gif" + $Random, + a + "Die.gif" + $Random, + a + "Jump.gif" + $Random, + a + "Jump2.gif" + $Random, + a + "Walk3.gif", + a + "Walk4.gif", + a + "Die2.gif" + $Random, + a + "Jump3.gif" + $Random, + ]; + })(), + AudioArr: [ + "dolphin_before_jumping", + "dolphin_appears", + "zombie_entering_water", + ], + Produce: + '海豚骑士僵尸善于利用你水池防御的弱点。

韧性:
速度:快,慢(跳越后)
特点:跃过他所遇到的第一株植物
只在水池关卡出现

那海豚其实也是个僵尸。', + BirthCallBack: function (a) { + PlayAudio("dolphin_appears"); + oAquaticZombie.prototype.BirthCallBack(a), + GetC(this.ZX) <= 9 && this.Jump(this); + }, + Jump: function (a) { + a.beAttacked && + (PlayAudio("zombie_entering_water"), + (a.Altitude = 2), + SetHidden(a.EleShadow), + (a.EleBody.src = a.PicArr[8] + Math.random()), + oSym.addTask( + 240, + function (d, b) { + var c; + $Z[d] && + b.beAttacked && + ((b.WalkStatus = 1), + (b.Altitude = 1), + (b.OSpeed = b.Speed = 10.8), + SetStyle(b.Ele, { + left: (c = b.X -= 140) + "px", + }), + (b.AttackedLX = + c + (b.beAttackedPointL = 185)), + (b.AttackedRX = + c + (b.beAttackedPointR = 265)), + (b.EleBody.src = + b.PicArr[ + (b.NormalGif = b.WalkGif1) + ]), + (b.ChkActs = b.ChkActsL2)); + }, + [a.id, a] + ), + (a.ChkActs = function () { + return 1; + })); + }, + ChkActsL1: function (d, c, e, b) { + if (d.JumpTime <= 0) { + d.Jump(d); + return 1; + } + var a; + !(d.FreeFreezeTime || d.FreeSetbodyTime) && + ((d.AttackedRX -= a = d.Speed), + (LX = d.ZX = d.AttackedLX -= a), + (d.Ele.style.left = + Math.floor((d.X -= a)) + "px"), + --d.JumpTime); + return 1; + }, + getCrushed: function (a) { + this.NormalAttack(this.id, a.id, a.AttackedLX); + this.getCrushed = function () { + return false; + }; + a.Stature > 0 && + oSym.addTask( + 50, + function (c) { + var b = $Z[c]; + b && b.CrushDie(); + }, + [this.id] + ); + return false; + }, + getRaven: function (a) { + return ( + !this.isAttacking && + this.NormalAttack( + this.id, + a, + $P[a].AttackedLX + ), + 0 + ); + }, + JudgeAttack: function () { + var f = this, + b = f.ZX, + d = f.R + "_", + c = GetC(b), + g = oGd.$, + e, + a; + for (e = c - 2; e <= c; e++) { + if (e > 9) { + continue; + } + for ( + a = 2; + a > -1; + (p = g[d + e + "_" + a--]) && + (p.EName != "oBrains" + ? p.AttackedRX >= b && + p.AttackedLX < b && + ((a = -1), + (f.JudgeAttack = + CZombies.prototype.JudgeAttack), + f.NormalAttack( + f.id, + p.id, + p.AttackedLX + )) + : p.AttackedRX >= b && + p.AttackedLX < b && + ((a = -1), + (f.JudgeAttack = + CZombies.prototype.JudgeAttack), + (f.NormalAttack = + CZombies.prototype.NormalAttack)( + f.id, + p.id + ))) + ) {} + } + }, + AttackZombie2: function (c, b, a) { + c.NormalAttack(b, a, $Z[a].AttackedLX); + }, + NormalAttack: function (d, b, g) { + var f = $Z[d], + a = f.Ele, + c = f.EleShadow, + e = f.EleBody; + e.src = f.PicArr[9] + Math.random(); + SetHidden(c); + f.isAttacking = 1; + f.Altitude = 2; + f.haveDolphin = 0; + PlayAudio("dolphin_before_jumping"); + f.getFreeze = function () { + f.getSnow(f, 20, 0); + }; + oSym.addTask( + 50, + function (m, j, i, l, q) { + var h = $Z[m], + k, + r, + s, + n = function () { + q.src = h.PicArr[10]; + h.isAttacking = 0; + h.Altitude = 1; + h.OSpeed = h.Speed = 1.6; + h.WalkGif0 = 11; + h.NormalGif = h.WalkGif1 = 10; + h.LostHeadGif = h.DieGif = 12; + h.NormalAttack = (s = + CZombies.prototype).NormalAttack; + h.getCrushed = s.getCrushed; + h.getFreeze = s.getFreeze; + h.getRaven = s.getRaven; + h.AttackZombie2 = s.AttackZombie2; + }; + h && + ((k = $P[j]) && k.Stature > 0 + ? ((h.AttackedRX = + (h.X = + (h.AttackedLX = + h.ZX = + r = + k.AttackedRX) - + (h.beAttackedPointL = 45)) + + (h.beAttackedPointR = 100)), + SetStyle(i, { + left: h.X + "px", + }), + (h.EleShadow.style.left = "45px"), + n()) + : ((h.ZX = h.AttackedLX = + (h.X = + (h.AttackedRX = g) - + (h.beAttackedPointR = 100)) + + (h.beAttackedPointL = 45)), + SetStyle(i, { + left: h.X + "px", + }), + (h.EleShadow.style.left = "45px"), + (q.src = + h.PicArr[13] + + Math.random()), + oSym.addTask( + 170, + function (t, w) { + var v = $Z[t], + u; + v && n(); + }, + [m, q] + ))); + }, + [d, b, a, c, e] + ); + }, + GoingDie: function () { + var b = this, + c = b.id, + a = b.PicArr; + b.EleBody.src = + a[b.haveDolphin ? 7 : 12] + Math.random(); + b.GoingDieHead(c, a, b); + b.beAttacked = 0; + b.FreeFreezeTime = + b.FreeSetbodyTime = + b.FreeSlowTime = + 0; + b.AutoReduceHP(c); + }, + }), + oImp = InheritO(OrnNoneZombies, { + EName: "oImp", + CName: "小鬼僵尸", + HP: 70, + BreakPoint: 23, + beAttackedPointL: 30, + beAttackedPointR: 60, + width: 81, + height: 110, + StandGif: 5, + NormalGif: 5, + DieGif: 3, + BoomDieGif: 4, + AttackGif: 2, + OSpeed: 5.4, + Speed: 5.4, + GetDX: function () { + return -50; + }, + GetDY: function () { + return 0; + }, + getShadow: function (a) { + return ( + "left:" + + (a.beAttackedPointL - 20) + + "px;top:" + + (a.height - 32) + + "px" + ); + }, + Produce: + '小淘气们是一群小型僵尸,他们被伽刚特尔用来投掷进你的防御体系。

韧性:
小淘气虽然瘦小,却很结实。他精通僵尸柔道,僵尸空手道和僵尸关节技。另外,他还会吹口琴。', + GoingDie: function () { + var b = this, + c = b.id, + a = b.PicArr; + b.EleBody.src = a[3] + Math.random(); + b.beAttacked = 0; + b.FreeFreezeTime = + b.FreeSetbodyTime = + b.FreeSlowTime = + 0; + b.AutoReduceHP(c); + }, + NormalDie: function () { + var a = this; + oSym.addTask(250, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + var a = this; + ClearChild(a.Ele); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + PicArr: (function () { + var a = "images/Zombies/Imp/"; + return [ + "images/Card/Zombies/Imp.png", + a + "0.gif", + a + "Attack.gif", + a + "Die.gif" + $Random, + a + "BoomDie.gif" + $Random, + a + "1.gif", + ]; + })(), + }), + oJackinTheBoxZombie = InheritO(OrnNoneZombies, { + EName: "oJackinTheBoxZombie", + CName: "小丑僵尸", + SunNum: 100, + HP: 500, + BreakPoint: 167, + Lvl: 3, + Status: 1, + BookHandPosition: "30% 70%", + width: 196, + height: 181, + beAttackedPointL: 120, + beAttackedPointR: 170, + StandGif: 5, + NormalGif: 6, + DieGif: 3, + BoomDieGif: 4, + HeadGif: 11, + LostHeadGif: 9, + LostHeadAttackGif: 10, + AttackGif: 2, + OSpeed: 3.6, + Speed: 3.6, + Produce: + '这种僵尸带着个会爆炸的潘多拉盒子。

韧性:
速度:
特点:打开玩偶匣会爆炸
弱点:磁力菇
这种僵尸令人不寒而栗,不是因为他的冰冷身躯而是因为他的疯狂。', + AudioArr: [ + "jackinthebox", + "jack_surprise", + "explosion", + ], + PicArr: (function () { + var a = "images/Zombies/JackinTheBoxZombie/"; + return [ + "images/Card/Zombies/JackboxZombie.png", + a + "0.gif", + a + "Attack.gif", + a + "Die.gif" + $Random, + a + "BoomDie.gif" + $Random, + a + "1.gif", + a + "Walk.gif", + a + "OpenBox.gif", + a + "Boom.gif" + $Random, + a + "LostHead.gif", + a + "LostHeadAttack.gif", + "images/Zombies/Zombie/ZombieHead.gif" + + $Random, + ]; + })(), + RandomOpenBox: function (a) { + oSym.addTask( + Math.floor(Math.random() * 100) > 4 + ? Math.floor(1325 + Math.random() * 976) + : Math.floor(450 + Math.random() * 301), + function (c) { + var b = $Z[c]; + b && b.beAttacked && b.OpenBox(c); + }, + [a] + ); + }, + OpenBox: function (b) { + var a = $Z[b]; + a.EleBody.src = a.PicArr[7]; + a.ChkActs = a.ChkActs1 = function () { + return 1; + }; + a.JudgeAttack = function () { + var g = this, + d = g.ZX, + e = g.R + "_", + f = GetC(d), + h = oGd.$, + c; + (c = + g.JudgeLR(g, e, f, d, h) || + g.JudgeSR(g, e, f, d, h)) + ? (!g.isAttacking && + ((g.isAttacking = 1), + (g.EleBody.src = + g.PicArr[g.AttackGif])), + g.NormalAttack(c[0], c[1])) + : g.isAttacking && (g.isAttacking = 0); + }; + a.JudgeAttackH = function () { + var e = this, + d = oZ.getZ0(e.ZX, e.R), + f = e.id, + c; + d && + d.beAttacked && + d.AttackedLX < oS.W && + d.Altitude == 1 + ? !e.isAttacking + ? ((e.isAttacking = 1), + (e.EleBody.src = + e.PicArr[e.AttackGif]), + e.AttackZombie(f, (c = d.id)), + !d.isAttacking && + d.AttackZombie2(d, c, f)) + : e.AttackZombie(f, d.id, 1) + : e.isAttacking && (e.isAttacking = 0); + }; + a.getPea = + a.getSnowPea = + a.getFirePeaSputtering = + a.getFirePea = + a.getHit = + a.getHit0 = + a.getHit1 = + a.getHit2 = + a.getHit3 = + a.ChangeR = + a.bedevil = + function () {}; + oSym.addTask( + 50, + function (c) { + $Z[c] && + ((a.Status = 0), + !--oGd.$JackinTheBox && + StopAudio("jackinthebox"), + PlayAudio("jack_surprise"), + oSym.addTask( + 90, + function (f) { + var e = $Z[f], + d; + e && + ((d = NewImg( + "", + "images/interface/blank.png", + "width:306px;height:300px;left:" + + (e.X - 16) + + "px;top:" + + (e.pixelTop - 90) + + "px;z-index:20" + )), + PlayAudio("explosion"), + (d.src = + e.PicArr[8] + + Math.random()), + EDPZ.appendChild(d), + oSym.addTask( + 70, + ClearChild, + [d] + ), + e.PZ + ? (function (k, g) { + var q = + Math.max( + 1, + k - + 1 + ), + o = + Math.min( + oS.R, + k + + 1 + ), + n = + Math.max( + 1, + g - + 1 + ), + h = + Math.min( + oS.C, + g + + 1 + ), + r = oGd.$, + l, + j = "", + m; + do { + g = n; + do { + j = + q + + "_" + + g + + "_"; + for ( + l = 0; + l < + 4; + l++ + ) { + (m = + r[ + j + + l + ]) && + m.BoomDie(); + } + } while ( + g++ < h + ); + } while ( + q++ < o + ); + })(e.R, GetC(e.ZX)) + : (function (j, l) { + var m = j - 120, + o = j + 120, + h = + Math.max( + 1, + l - + 1 + ), + g = + Math.min( + oS.R, + l + + 1 + ), + n, + k; + do { + k = (n = + oZ.getArZ( + m, + o, + h + )) + .length; + while ( + k-- + ) { + n[ + k + ].ExplosionDie(); + } + } while ( + h++ < g + ); + })(e.ZX, e.R), + e.DisappearDie()); + }, + [c] + )); + }, + [b] + ); + }, + getShadow: function (a) { + return ( + "left:" + + (a.beAttackedPointL - 8) + + "px;top:" + + (a.height - 32) + + "px" + ); + }, + BirthCallBack: function (d) { + var c = d.delayT, + b = d.id, + a = (d.Ele = $(b)); + d.EleShadow = a.firstChild; + d.EleBody = a.childNodes[1]; + c + ? oSym.addTask( + c, + function (f, e) { + var g = $Z[f]; + g && + (PlayAudio( + "jackinthebox", + true + ), + ++oGd.$JackinTheBox, + (g.FreeSetbodyTime = 0), + SetBlock(e), + g.RandomOpenBox(f)); + }, + [b, a] + ) + : (PlayAudio("jackinthebox", true), + ++oGd.$JackinTheBox, + SetBlock(a), + d.RandomOpenBox(b)); + }, + NormalDie: function () { + var a = this; + a.Status && + !--oGd.$JackinTheBox && + StopAudio("jackinthebox"); + a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); + oSym.addTask(250, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + ExplosionDie: function () { + var a = this; + a.Status && + !--oGd.$JackinTheBox && + StopAudio("jackinthebox"); + a.EleBody.src = + a.PicArr[a.BoomDieGif] + Math.random(); + oSym.addTask(300, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + DisappearDie: function () { + this.Status && + !--oGd.$JackinTheBox && + StopAudio("jackinthebox"); + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + }, + CrushDie: function () { + var a = this; + a.Status && + !--oGd.$JackinTheBox && + StopAudio("jackinthebox"); + a.GoingDieHead(a.id, a.PicArr, a); + ClearChild(a.Ele); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + }, + }), + oBalloonZombie = InheritO(OrnIZombies, { + EName: "oBalloonZombie", + CName: "气球僵尸", + OrnHP: 20, + SunNum: 100, + width: 207, + height: 197, + beAttackedPointL: 30, + beAttackedPointR: 85, + OSpeed: 3.2, + Speed: 3.2, + Altitude: 3, + OrnLostNormalGif: 9, + OrnLostAttackGif: 3, + BreakBall: false, // 气球是否被戳破 + MulBallNum: function () { + // 减去气球数 + if (!this.BreakBall) + (this.BreakBall = true), + (oGd.$Balloon[this.R] |= 0), + --oGd.$Balloon[this.R]; + }, + getShadow: function (a) { + return ( + "left:" + + (a.beAttackedPointL - 10) + + "px;top:" + + (a.height - 32) + + "px" + ); + }, + CanPass: function (d, c) { + return c; + }, + AudioArr: ["ballooninflate", "balloon_pop"], + BookHandPosition: "80% 80%", + PicArr: (function () { + var a = "images/Zombies/BalloonZombie/"; + return [ + "images/Card/Zombies/Balloonzombie.png", + a + "0.gif", + a + "1.gif", + a + "Attack.gif", + a + "Walk2.gif", + a + "Attack2.gif", + a + "Head.gif" + $Random, + a + "Die.gif" + $Random, + a + "Boom.gif", + a + "Walk.gif", + a + "Drop.gif", + a + "Boom2.gif", + ]; + })(), + Produce: + '气球僵尸漂浮在空中,躲过大多数攻击。

韧性:
特点:飞行
弱点:仙人掌和三叶草

气球僵尸真幸运。气球有很多功效,而其他僵尸都不曾捡到过。', + BirthCallBack: function (e) { + var d = e.delayT, + c = e.id, + a = (e.Ele = $(c)), + f = oGd.$Balloon, + b = e.R; + e.EleShadow = a.firstChild; + e.EleBody = a.childNodes[1]; + d + ? oSym.addTask( + d, + function (i, g, c) { + var j = $Z[i], + k = oGd.$Balloon; + j && + ((j.FreeSetbodyTime = 0), + SetBlock(g)); + (k[c] |= 0), ++k[c]; // 增加数量 + PlayAudio("ballooninflate"); + }, + [c, a, b] + ) + : (SetBlock(a), + f[b] == undefined ? (f[b] = 1) : ++f[b], + PlayAudio("ballooninflate")); + }, + ChkActs: function (f, d, g, c) { + var b, a, e; + if (f.Altitude == 3 && f.AttackedRX < GetX(1)) { + // 气球掉落 + f.Drop(); + return 1; + } + !(f.FreeFreezeTime || f.FreeSetbodyTime) + ? (a = f.AttackedRX -= b = f.Speed) < -50 + ? (g.splice(c, 1), + f.DisappearDie(), + (e = 0)) + : (a < 100 && + !f.PointZombie && + ((f.PointZombie = 1), + !oS.CardKind && + (StopMusic(), + PlayAudio("losemusic", false)), + f.ChangeR({ + R: d, + ar: [oS.R - 1], + CustomTop: + 400 - f.height + f.GetDY(), + })), + (f.ZX = f.AttackedLX -= b), + (f.Ele.style.left = + Math.floor((f.X -= b)) + "px"), + (e = 1)) + : (e = 1); + return e; + }, + Drop: function () { + var a = this; + PlayAudio("balloon_pop"); + a.EleBody.src = + "images/Zombies/BalloonZombie/Drop.gif" + + $Random + + Math.random(); + a.ChkActs = function () { + return 1; + }; + a.Altitude = 4; + a.MulBallNum(); + oSym.addTask( + 120, + function (b) { + var c = $Z[b]; + if (c) { + c.BoomDieGif = 11; + c.Altitude = 1; + c.OSpeed = c.Speed = 1.6; + c.getFreeze = + OrnIZombies.prototype.getFreeze; + c.EleBody.src = + "images/Zombies/BalloonZombie/Walk.gif"; + c.ChkActs = + OrnIZombies.prototype.ChkActs; + c.ExplosionDie = function () { + var d = this; + d.EleBody.src = + d.PicArr[d.BoomDieGif]; + oSym.addTask(200, ClearChild, [ + d.Ele, + ]); + d.HP = 0; + delete $Z[d.id]; + d.PZ && oP.MonPrgs(); + d.MulBallNum(); + }; + c.DisappearDie = function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + this.MulBallNum(); + }; + c.CrushDie = function () { + var d = this; + d.GoingDieHead(d.id, d.PicArr, d); + ClearChild(d.Ele); + d.HP = 0; + delete $Z[d.id]; + d.PZ && oP.MonPrgs(); + d.MulBallNum(); + }; + } + }, + [a.id] + ); + }, + getFreeze: function (b, a) { + b.Attack = 50; + b.Speed = 0.5 * b.OSpeed; + oSym.addTask( + 1500, + function (d, c) { + var e = $Z[d]; + e && + e.FreeSlowTime == c && + ((e.FreeSlowTime = 0), + (e.Attack = 100), + (e.Speed = e.OSpeed)); + }, + [a, (b.FreeSlowTime = oSym.Now + 1500)] + ); + }, + NormalDie: function () { + var a = this; + a.EleBody.src = a.PicArr[a.DieGif] + Math.random(); + oSym.addTask(250, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + a.MulBallNum(); + }, + ExplosionDie: function () { + var a = this; + a.EleBody.src = a.PicArr[a.BoomDieGif]; + oSym.addTask(200, ClearChild, [a.Ele]); + a.HP = 0; + delete $Z[a.id]; + a.PZ && oP.MonPrgs(); + a.MulBallNum(); + }, + DisappearDie: function () { + ClearChild(this.Ele); + this.HP = 0; + delete $Z[this.id]; + this.PZ && oP.MonPrgs(); + this.MulBallNum(); + }, + CrushDie: function () { + this.DisappearDie(); + }, + getDispelled: function () { + if ( + this.Altitude != 3 || + this.AttackedRX < GetX(0) + ) { + return; + } + this.ChkActs = function () { + return 1; + }; + (function (id) { + var o = $Z[id]; + if (!o) return; + var d = (o.WalkDirection = 1), + R = o.R, + C = GetC(o.AttackedLX), + sx = 50; + o.AttackedLX += sx; + o.ZX += sx; + o.X += sx; + if (o.AttackedLX > oS.W) { + o.DisappearDie(); + return; + } + SetStyle($(id), { left: o.X + "px" }); + oSym.addTask(2, arguments.callee, [id]); + })(this.id); + }, + getFirePeaSputtering: function () { + this.Altitude == 1 && this.getHit0(this, 13); + }, + prepareBirth: oZomboni.prototype.prepareBirth, + }); + }, + }); + })()); diff --git a/game/js/Cfunction.js b/game/js/Cfunction.js index 37c541e7..178b25f6 100644 --- a/game/js/Cfunction.js +++ b/game/js/Cfunction.js @@ -1,3723 +1,3733 @@ var $User = (function () { - var b = navigator.platform, - i = navigator.userAgent, - f = b == "Win32" || b == "Windows", - g = b == "Mac68K" || b == "MacPPC" || b == "Macintosh", - d = b == "X11" && !f && !g, - h = f || g || d, - a = "", - c = !!(window.attachEvent && !window.opera), - e = c && !window.XMLHttpRequest, - j = location.protocol.toLowerCase() == "http:" ? 1 : 0; - $Random = j ? "#" : "?"; - innerText = c - ? function (l, k) { - l.innerText = k; - } - : function (l, k) { - l.textContent = k; - }; - e - ? (document.execCommand("BackgroundImageCache", false, true), - (ShadowPNG = "")) - : (ShadowPNG = "images/interface/plantshadow32.png"); - return { - Browser: { - IE: c, - IE6: e, - IE9: c && i.indexOf("MSIE 9.0") > 0, - Opera: !!window.opera, - WebKit: i.indexOf("AppleWebKit/") > -1, - Gecko: i.indexOf("Gecko") > -1 && i.indexOf("KHTML") == -1, - }, - Server: { - List: [[]], - SpeedURL: "", - DataURL: "", - SpeedInx: 0, - DataInx: 0, - ErrNum: 0, - }, - HTML5: (function () { - return !!document.createElement("canvas").getContext; - })(), - System: { Win: f, Mac: g, Unix: d }, - Client: { PC: h, Mobile: !h }, - HTTP: j, - AuthorWebsite: a, - isAuthorWebsite: false, - Visitor: { - UserName: "", - UserAuthority: 0, - Progress: 1, - SelectServerT: 0, - NowStep: 1, - TimeStep: 10, - SaveLvl: 1, - SaveLvlCallBack: null, - }, - }; - })(), - oSym = { - Init: function (b, a) { - this.Now = 0; - this.Timer = this.execTask = null; - this.TQ = [{ T: 0, f: b, ar: a || [] }]; - this.NowStep = 1; - this.TimeStep = 10; - this.Start(); - }, - Clear: function () { - this.TQ.length = 0; - }, - Start: function () { - if (this.Timer == null) { - (function () { - var a = oSym; - try { - a.Now += a.NowStep; - } catch (b) { - alert("Timeout to quit the game"); - location.reload(); - } - a.Timer = setTimeout(arguments.callee, a.TimeStep); - })(); - (function () { - var d = oSym, - a = d.TQ, - c = a.length, - b, - e; - while (c--) { - if (d.Now >= (b = a[c]).T) { - try { - (e = b.f).apply(e, b.ar); - } catch (Reason) { - console.error(Reason); - } - d.removeTask(c); - } - } - d.execTask = setTimeout(arguments.callee, d.TimeStep); - })(); - } - }, - Stop: function () { - clearTimeout(oSym.Timer); - clearTimeout(oSym.execTask); - oSym.Timer = null; - oSym.execTask = null; - }, - addTask: function (b, c, a) { - var d = this.TQ; - d[d.length] = { T: this.Now + b, f: c, ar: a }; - return this; - }, - removeTask: function (a) { - this.TQ.splice(a, 1); - return this; - }, - }, - oS = { - Version: 4, - W: 880, - H: 600, - C: 9, - LawnMowerX: 70, - Lvl: 0, - GlobalVariables: {}, - LvlVariables: {}, - SelfVariables: [], - LvlClearFunc: null, - Init: function (e, g, b, d) { - var c, - a = window; - e.LoadMusic - ? (PlayMusic(e.LoadMusic), - NewAudio({ source: "ChooseYourSeeds", loop: true })) - : PlayMusic((e.LoadMusic = "ChooseYourSeeds")); - if (b != d) { - for (c in b) { - a[c] != d - ? ((this.GlobalVariables[c] = a[c]), (a[c] = b[c])) - : (this.LvlVariables[c] = a[c] = b[c]); - } - } - ArCard = []; - ArPCard = []; - ArSun = []; - $Pn = []; - $Z = []; - $P = []; - EDAll = $("dAll"); - EDPZ = $("dPZ"); - EDAlloffsetLeft = EDAll.offsetLeft; - EDNewAll = EDAll.cloneNode(true); - EDNewFlagMeter = $("dFlagMeter").cloneNode(true); - ESSunNum = $("sSunNum"); - this.AudioArr = []; - this.MustAllReady = true; - this.LoadAccess = null; - this.InitLawnMower = null; - this.StartGame = null; - this.ChoseCard = this.MPID = ""; - this.PicNum = this.AccessNum = this.MCID = this.Chose = 0; - this.Monitor = null; - this.UserDefinedFlagFunc = null; - this.SunNum = d; - this.BrainsNum = d; - this.HaveFog = 0; - for (c in e) { - this.SelfVariables.push(c); - this[c] = e[c]; - } - $User.isAuthorWebsite && - oS.LevelEName != 0 && - (ClearChild($("JSPVZAjax")), - NewEle( - "JSPVZAjax", - "script", - 0, - { - src: - $User.Server.DataURL + - "asp/SaveUserPosition.asp?l=" + - escape(oS.LevelName), - type: "text/javascript", - }, - document.body - )); - !this.PicArr && (this.PicArr = []); - !this.PName && (this.PName = []); - !this.ZName && (this.ZName = []); - !this.backgroundImage && - (this.backgroundImage = "images/interface/background1.jpg"); - !this.LF && (this.LF = [0, 1, 1, 1, 1, 1]); - !this.ZF && (this.ZF = this.LF); - !this.LargeWaveFlag && (this.LargeWaveFlag = {}); - !this.StartGameMusic && (this.StartGameMusic = "Grasswalk"); - this.ArCard = this.CardKind == d ? e.PName : e.ZName; - this.SunNum == d && (this.SunNum = 50); - this.CanSelectCard == d && (this.CanSelectCard = 1); - this.DKind == d && (this.DKind = 1); - this.StaticCard == d && (this.StaticCard = 1); - this.ShowScroll == d && (this.ShowScroll = true); - this.ProduceSun == d && (this.ProduceSun = true); - this.Coord == d && (this.Coord = 1); - oCoord[this.Coord](); - oP.Init(g); - oT.Init(this.R); - oZ.Init(this.R); - oGd.Init(); - this.LoadTips(); - this.LoadProgress(); - }, - LoadTips: function () { - var b = NewEle( - "dTips", - "div", - "position:absolute;color:#fff;top:450px;width:100%;text-align:center;font-size:16px", - "", - EDAll - ), - a = [""]; - b.innerHTML = - '' + - a[Math.floor(Math.random() * a.length)] + - ""; - }, - LoadProgress: function (r, l, a, t, b) { - SetVisible($("dFlagMeter")); - SetHidden($("imgGQJC")); - var p = oS, - j = [], - i = p.PicArr, - k = p.PName, - s = p.ZName, - w = 0, - u = GetX(11), - g = oGd.$LF, - c = oGd.$ZF, - d = oS.R + 1, - x = $("sFlagMeterTitleF"), - y = $("dFlagMeterTitle"), - e = p.LoadImage, - h = p.CheckImg, - f = p.InitPn, - m, - q; - NewImg( - 0, - "images/interface/brain.png", - "", - ($Pn.oBrains = NewEle(0, "div", "position:absolute")) - ); - switch (p.Coord) { - case 2: - NewImg( - 0, - "images/interface/PoolCleaner.png", - "", - ($Pn.oPoolCleaner = NewEle( - 0, - "div", - "position:absolute" - )) - ); - case 1: - NewImg( - 0, - "images/interface/LawnCleaner.png", - "", - ($Pn.oLawnCleaner = NewEle( - 0, - "div", - "position:absolute" - )) - ); - break; - } - while (r--) { - a = (l = k[r].prototype).PicArr.slice(0); - Array.prototype.push.apply(i, a); - if ($User.HTML5) { - t = l.AudioArr; - b = t.length; - while (b--) { - NewAudio({ source: t[b] }); - } - } - } - for (r in oS.LargeWaveFlag) { - s[s.length] = oS.FlagZombie || oFlagZombie; - break; - } - r = s.length; - while (r--) { - Array.prototype.push.apply( - i, - (l = (q = s[r]).prototype).PicArr.slice(0) - ); - if ($User.HTML5) { - t = l.AudioArr; - b = t.length; - while (b--) { - NewAudio({ source: t[b] }); - } - } - l.Init.call(q, u, l, c, d); - } - p.PicNum = w += i.length; - r = i.length; - y.setAttribute("title", ""); - y.style.cursor = "pointer"; - y.onclick = function () { - oS.MustAllReady = false; - oS.LoadReady(oS); - }; - while (r--) { - e(i[r], h); - } - r = j.length; - oS.LoadAudio(); - }, - LoadAudio: $User.HTML5 - ? function () { - var b = oS.AudioArr, - a = b.length; - while (a--) { - NewAudio({ source: b[a] }); - } - } - : function () {}, - InitPn: function (a) { - var b = ($Pn[a[0]] = NewEle(0, "div", "position:absolute")); - NewImg(0, ShadowPNG, a[2], b); - NewImg(0, a[1], "", b); - oS.CheckImg(); - }, - LoadImage: $User.Browser.IE - ? function (b, d, c) { - var a = new Image(); - a.onreadystatechange = function () { - a.readyState == "complete" && d(c, 1); - }; - a.onerror = function () { - a.onreadystatechange = null; - a.title = b; - d(c, 0); - }; - a.src = b; - } - : function (b, d, c) { - var a = new Image(); - a.src = b; - a.complete - ? d(c, 1) - : ((a.onload = function () { - a.complete && d(c, 1); - }), - (a.onerror = function () { - a.title = b; - d(c, 0); - })); - }, - LoadScript: $User.Browser.IE - ? function (f, c, e, a, d) { - var b = NewEle(f, "script", 0, { type: "text/javascript" }); - b.onreadystatechange = function () { - (b.readyState == "loaded" || - b.readyState == "complete") && - ((b.onreadystatechange = null), e(d, 1)); - }; - b.onerror = function () { - b.onreadystatechange = null; - e(d, 0); - }; - b.src = c; - a.appendChild(b); - } - : function (f, c, e, a, d) { - var b = NewEle(f, "script", 0, { type: "text/javascript" }); - b.onload = function () { - e(d, 1); - }; - b.onerror = function () { - e(d, 0); - }; - b.src = c; - a.appendChild(b); - }, - CheckImg: function (b, a) { - var c = oS; - if (c.AccessNum > c.PicNum || !c.MustAllReady) { - return; - } - b = 139 - (c.AccessNum++ * 140) / c.PicNum - 11; - $("imgFlagHead").style.left = b + "px"; - $("sFlagMeterTitleF").innerHTML = - 'Loading...(' + - c.AccessNum + - "/" + - c.PicNum + - ")"; - $("imgFlagMeterFull").style.clip = - "rect(0,auto,21px," + (b + 11) + "px)"; - if (c.AccessNum == c.PicNum) { - oS.Lvl == 0; - if (c.MustAllReady) { - c.LoadReady(c); - } - } - }, - LoadReady: function (f) { - var c = $("dFlagMeterTitle"); - if (c.onclick == null) { - return; - } - ClearChild($("dTips")); - oSym.NowStep = $User.Visitor.NowStep; - oSym.TimeStep = $User.Visitor.TimeStep; - c.onclick = null; - c.title = null; - c.style.cursor = "default"; - SetHidden($("dFlagMeterContent"), dFlagMeter); - $("dFlagMeter").style.top = "490px"; - // $("dFlagMeter").style.left = "805px"; // not good - // $("dFlagMeter").style.left = (currentLeft + 15) + "px"; // not good either - $("sFlagMeterTitleF").innerHTML = $("dFlagMeterTitleB").innerHTML = - f.LevelName; - $("imgFlagHead").style.left = "139px"; - $("imgFlagMeterFull").style.clip = "rect(0,auto,auto,157px)"; - delete f.PicArr; - delete f.Coord; - delete f.LF; - delete f.ZF; - var a = { - background: "url(" + f.backgroundImage + ") no-repeat", - visibility: "visible", - }; - !f.ShowScroll && (a.left = "-115px"); - SetStyle($("tGround"), a); - $("tGround").innerHTML = oS.GifHTML; - var d = function (h) { - var i = oS, - g = $User.Visitor; - NewImg( - "imgGrowSoil", - "images/interface/GrowSoil.gif", - "visibility:hidden;z-index:50", - EDAll - ); - NewImg( - "imgGrowSpray", - "images/interface/GrowSpray.gif", - "visibility:hidden;z-index:50", - EDAll - ); - NewEle("dTitle", "div", 0, 0, $("dBody")); - innerText(ESSunNum, i.SunNum); - InitPCard(); - i.ShowScroll - ? oSym.addTask( - h == undefined ? 200 : h, - function (j) { - ClearChild(j); - i.ScrollScreen(); - }, - [ - NewEle( - "DivParty", - "div", - "line-height:50px;color:#FFFFFF;font-size:50px;font-family:Tahoma", - {}, - EDAll - ), - ] - ) - : (SetVisible($("dMenu")), AutoSelectCard(), LetsGO()); - }; - f.LoadAccess ? f.LoadAccess(d) : d(); - }, - ScrollScreen: function () { - (EDAll.scrollLeft += 25) < 500 - ? oSym.addTask(2, arguments.callee, []) - : (DisplayZombie(), - SetVisible($("dMenu")), - oS.CanSelectCard - ? SetVisible($("dTop"), $("dSelectCard"), $("dCardList")) - : (AutoSelectCard(), - oSym.addTask(200, oS.ScrollBack, [LetsGO]))); - }, - ScrollBack: function (a) { - SetHidden( - $("dZombie"), - $("dSelectCard"), - $("dTitle"), - $("dCardList") - ); - $("tGround").style.left = "-115px"; - $("dZombie").innerHTML = ""; - (function (c) { - var b = EDAll.scrollLeft; - (b -= 25) > 0 - ? ((EDAll.scrollLeft = b), - oSym.addTask(2, arguments.callee, [c])) - : ((EDAll.scrollLeft = 0), c()); - })(a); - }, - }, - oCoord = { - 1: function () { - oS.R = 5; - ChosePlantX = function (a) { - return Compare(GetC(a), 1, oS.C, GetX); - }; - ChosePlantY = function (a) { - return $SSml( - a, - [86, 181, 281, 386, 476], - [ - [75, 0], - [175, 1], - [270, 2], - [380, 3], - [470, 4], - [575, 5], - ] - ); - }; - GetC = function (a) { - return $SSml( - a, - [ - -50, 100, 140, 220, 295, 379, 460, 540, 625, 695, 775, - 855, 935, - ], - [-2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11] - ); - }; - GetR = function (a) { - return $SSml(a, [86, 181, 281, 386, 476], [0, 1, 2, 3, 4, 5]); - }; - GetX = function (a) { - return $SEql(a, { - "-2": -50, - "-1": 100, - 0: 140, - 1: 187, - 2: 267, - 3: 347, - 4: 427, - 5: 507, - 6: 587, - 7: 667, - 8: 747, - 9: 827, - 10: 865, - 11: 950, - }); - }; - GetY = function (a) { - return $SEql(a, { - 0: 75, - 1: 175, - 2: 270, - 3: 380, - 4: 470, - 5: 575, - }); - }; - GetY1Y2 = function (a) { - return $SEql(a, { - 0: [0, 85], - 1: [86, 180], - 2: [181, 280], - 3: [281, 385], - 4: [386, 475], - 5: [476, 600], - }); - }; - GetX1X2 = function (a) { - return $SEql(a, { - "-2": [-100, -49], - "-1": [-50, 99], - 0: [100, 139], - 1: [140, 219], - 2: [220, 294], - 3: [295, 378], - 4: [379, 459], - 5: [460, 539], - 6: [540, 624], - 7: [625, 694], - 8: [695, 774], - 9: [775, 854], - 10: [855, 934], - 11: [950, 1030], - }); - }; - getRowColumnFromPixels = function (pixelX, pixelY) { - let rowWidth = 129; - let columnWidth = 170; - return [ - Math.floor(pixelX / rowWidth) + 1, - Math.floor(pixelY / columnWidth) + 1, - ]; - }; - !oS.InitLawnMower && - (oS.InitLawnMower = function () { - var a = 6; - while (--a) { - CustomSpecial(oLawnCleaner, a, -1); - } - }); - oS.GifHTML = ""; - }, - 2: function () { - oS.R = 6; - ChosePlantX = function (a) { - return Compare(GetC(a), 1, oS.C, GetX); - }; - ChosePlantY = function (a) { - return $SSml( - a, - [86, 171, 264, 368, 440, 532], - [ - [75, 0], - [161, 1], - [254, 2], - [358, 3], - [430, 4], - [524, 5], - [593, 6], - ] - ); - }; - GetC = function (a) { - return $SSml( - a, - [ - -50, 100, 140, 220, 295, 379, 460, 540, 625, 695, 775, - 855, 935, - ], - [-2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11] - ); - }; - GetR = function (a) { - return $SSml( - a, - [86, 171, 264, 368, 440, 532], - [0, 1, 2, 3, 4, 5, 6] - ); - }; - GetX = function (a) { - return $SEql(a, { - "-2": -50, - "-1": 100, - 0: 140, - 1: 187, - 2: 267, - 3: 347, - 4: 427, - 5: 507, - 6: 587, - 7: 667, - 8: 747, - 9: 827, - 10: 865, - 11: 950, - }); - }; - GetY = function (a) { - return $SEql(a, { - 0: 75, - 1: 165, - 2: 253, - 3: 355, - 4: 430, - 5: 522, - 6: 587, - }); - }; - GetY1Y2 = function (a) { - return $SEql(a, { - 0: [0, 85], - 1: [86, 170], - 2: [171, 263], - 3: [264, 367], - 4: [368, 439], - 5: [440, 531], - 6: [532, 600], - }); - }; - GetX1X2 = function (a) { - return $SEql(a, { - "-2": [-100, -49], - "-1": [-50, 99], - 0: [100, 139], - 1: [140, 219], - 2: [220, 294], - 3: [295, 378], - 4: [379, 459], - 5: [460, 539], - 6: [540, 624], - 7: [625, 694], - 8: [695, 774], - 9: [775, 854], - 10: [855, 934], - 11: [950, 1030], - }); - }; - !oS.InitLawnMower && - (oS.InitLawnMower = function () { - CustomSpecial(oLawnCleaner, 1, -1); - CustomSpecial(oLawnCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oLawnCleaner, 5, -1); - CustomSpecial(oLawnCleaner, 6, -1); - }); - oS.GifHTML = - ''; - !oS.DKind && oGd.MakeFog(); - }, - }, - oP = { - Init: function (a) { - var r = this; - r.NumZombies = r.FlagZombies = 0; - if (a) { - var l; - for (l in a) { - r[l] = a[l]; - } - if (a.AZ) { - var k, - b = {}, - g, - c, - q, - p, - d, - m = [], - h, - e, - n; - r.ArZ = []; - h = (k = r.AZ).sort(function (i, f) { - return i[2] - f[2]; - }).length; - while (h--) { - c = (n = k[h])[0]; - q = n[1]; - p = n[2]; - while (q--) { - m.push([c, p]); - } - if ((d = n[3])) { - e = d.length; - while (e--) { - b[(g = d[e])] ? b[g].push(c) : (b[g] = [c]); - } - } - } - r.AZ = m; - r.MustShowAtFlag = b; - } - } - a && a.FlagNum - ? ((r.FlagHeadStep = Math.floor(140 / (a.FlagNum - 1))), - (r.MonPrgs = function () { - var u = oP, - j, - i = u.FlagZombies, - s, - t, - f = $User.Visitor; - !--u.NumZombies && - (i < u.FlagNum - ? ((u.ReadyFlag = ++i), - oSym.addTask(500, u.FlagPrgs, [])) - : (u.FlagToEnd(), - $User.isAuthorWebsite && - $User.Visitor.UserName != "" && - (ClearChild($("JSPVZAjax")), - f.SaveLvl && - NewEle( - "JSPVZAjax", - "script", - 0, - {}, - document.body - )), - f.SaveLvlCallBack && - f.SaveLvlCallBack({ - UserName: f.UserName, - SunNum: oS.SunNum, - Lvl: s, - T: oSym.Now - oS.StartTime, - }), - !isNaN(Math.floor(s)) && - ((t = $("dAdventure")), - ($User.Visitor.Progress = ++s), - (t.firstChild.innerHTML = Math.ceil( - s / 10 - )), - (t.childNodes[1].innerHTML = (s = - s - Math.floor(s / 10) * 10) - ? s - : s + 1)), - NewEle( - "DivA", - "div", - "position:absolute;width:900px;height:600px;background:#FFF;filter:alpha(opacity=0);opacity:0;z-index:255", - 0, - EDAll - ), - PauseGame($("dMenu0"), 1))); - })) - : (r.MonPrgs = function () {}); - (!a || !a.FlagToEnd) && - (r.FlagToEnd = function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:417px;top:233px;z-index:255", - EDAll, - { - onclick: function () { - PlayAudio("winmusic"); - SelectModal(0); - HiddenOptions(); - SetBlock( - $("dSurface"), - $("iSurfaceBackground") - ); - ShowNameDiv(); - }, - } - ); - }); - }, - Balloon: function () { - let balloonId = Math.floor(1 + Math.random() * 1000); - function getAnimatedPosition(element) { - const computedStyle = getComputedStyle(element); - const left = parseFloat(computedStyle.left); - const top = parseFloat(computedStyle.top); - return { left, top }; - } - let image = NewImg( - "", - "images/Zombies/Balloon/balloonidle.png", - "position: absolute; display: block; left: 875px; z-index: 0;", - $("dPZ") - ); - let styleSheet = document.styleSheets[0]; - function getRandomY() { - let randomY = GetY(Math.floor(1 + Math.random() * oS.R)); - if (randomY > 430) { - return getRandomY(); - } else { - return randomY; - } - } - let randomY = getRandomY(); - styleSheet.insertRule( - ` + var b = navigator.platform, + i = navigator.userAgent, + f = b == "Win32" || b == "Windows", + g = b == "Mac68K" || b == "MacPPC" || b == "Macintosh", + d = b == "X11" && !f && !g, + h = f || g || d, + a = "", + c = !!(window.attachEvent && !window.opera), + e = c && !window.XMLHttpRequest, + j = location.protocol.toLowerCase() == "http:" ? 1 : 0; + $Random = j ? "#" : "?"; + innerText = c + ? function (l, k) { + l.innerText = k; + } + : function (l, k) { + l.textContent = k; + }; + e + ? (document.execCommand("BackgroundImageCache", false, true), + (ShadowPNG = "")) + : (ShadowPNG = "images/interface/plantshadow32.png"); + return { + Browser: { + IE: c, + IE6: e, + IE9: c && i.indexOf("MSIE 9.0") > 0, + Opera: !!window.opera, + WebKit: i.indexOf("AppleWebKit/") > -1, + Gecko: i.indexOf("Gecko") > -1 && i.indexOf("KHTML") == -1, + }, + Server: { + List: [[]], + SpeedURL: "", + DataURL: "", + SpeedInx: 0, + DataInx: 0, + ErrNum: 0, + }, + HTML5: (function () { + return !!document.createElement("canvas").getContext; + })(), + System: { Win: f, Mac: g, Unix: d }, + Client: { PC: h, Mobile: !h }, + HTTP: j, + AuthorWebsite: a, + isAuthorWebsite: false, + Visitor: { + UserName: "", + UserAuthority: 0, + Progress: 1, + SelectServerT: 0, + NowStep: 1, + TimeStep: 10, + SaveLvl: 1, + SaveLvlCallBack: null, + }, + }; + })(), + oSym = { + Init: function (b, a) { + this.Now = 0; + this.Timer = this.execTask = null; + this.TQ = [{ T: 0, f: b, ar: a || [] }]; + this.NowStep = 1; + this.TimeStep = 10; + this.Start(); + }, + Clear: function () { + this.TQ.length = 0; + }, + Start: function () { + if (this.Timer == null) { + (function () { + var a = oSym; + try { + a.Now += a.NowStep; + } catch (b) { + alert("Timeout to quit the game"); + location.reload(); + } + a.Timer = setTimeout(arguments.callee, a.TimeStep); + })(); + (function () { + var d = oSym, + a = d.TQ, + c = a.length, + b, + e; + while (c--) { + if (d.Now >= (b = a[c]).T) { + try { + (e = b.f).apply(e, b.ar); + } catch (Reason) { + console.error(Reason); + } + d.removeTask(c); + } + } + d.execTask = setTimeout(arguments.callee, d.TimeStep); + })(); + } + }, + Stop: function () { + clearTimeout(oSym.Timer); + clearTimeout(oSym.execTask); + oSym.Timer = null; + oSym.execTask = null; + }, + addTask: function (b, c, a) { + var d = this.TQ; + d[d.length] = { T: this.Now + b, f: c, ar: a }; + return this; + }, + removeTask: function (a) { + this.TQ.splice(a, 1); + return this; + }, + }, + oS = { + Version: 4, + W: 880, + H: 600, + C: 9, + LawnMowerX: 70, + Lvl: 0, + GlobalVariables: {}, + LvlVariables: {}, + SelfVariables: [], + LvlClearFunc: null, + Init: function (e, g, b, d) { + var c, + a = window; + e.LoadMusic + ? (PlayMusic(e.LoadMusic), + NewAudio({ source: "ChooseYourSeeds", loop: true })) + : PlayMusic((e.LoadMusic = "ChooseYourSeeds")); + if (b != d) { + for (c in b) { + a[c] != d + ? ((this.GlobalVariables[c] = a[c]), (a[c] = b[c])) + : (this.LvlVariables[c] = a[c] = b[c]); + } + } + ArCard = []; + ArPCard = []; + ArSun = []; + $Pn = []; + $Z = []; + $P = []; + EDAll = $("dAll"); + EDPZ = $("dPZ"); + EDAlloffsetLeft = EDAll.offsetLeft; + EDNewAll = EDAll.cloneNode(true); + EDNewFlagMeter = $("dFlagMeter").cloneNode(true); + ESSunNum = $("sSunNum"); + this.AudioArr = []; + this.MustAllReady = true; + this.LoadAccess = null; + this.InitLawnMower = null; + this.StartGame = null; + this.ChoseCard = this.MPID = ""; + this.PicNum = this.AccessNum = this.MCID = this.Chose = 0; + this.Monitor = null; + this.UserDefinedFlagFunc = null; + this.SunNum = d; + this.BrainsNum = d; + this.HaveFog = 0; + for (c in e) { + this.SelfVariables.push(c); + this[c] = e[c]; + } + $User.isAuthorWebsite && + oS.LevelEName != 0 && + (ClearChild($("JSPVZAjax")), + NewEle( + "JSPVZAjax", + "script", + 0, + { + src: + $User.Server.DataURL + + "asp/SaveUserPosition.asp?l=" + + escape(oS.LevelName), + type: "text/javascript", + }, + document.body + )); + !this.PicArr && (this.PicArr = []); + !this.PName && (this.PName = []); + !this.ZName && (this.ZName = []); + !this.backgroundImage && + (this.backgroundImage = "images/interface/background1.jpg"); + !this.LF && (this.LF = [0, 1, 1, 1, 1, 1]); + !this.ZF && (this.ZF = this.LF); + !this.LargeWaveFlag && (this.LargeWaveFlag = {}); + !this.StartGameMusic && (this.StartGameMusic = "Grasswalk"); + this.ArCard = this.CardKind == d ? e.PName : e.ZName; + this.SunNum == d && (this.SunNum = 50); + this.CanSelectCard == d && (this.CanSelectCard = 1); + this.DKind == d && (this.DKind = 1); + this.StaticCard == d && (this.StaticCard = 1); + this.ShowScroll == d && (this.ShowScroll = true); + this.ProduceSun == d && (this.ProduceSun = true); + this.Coord == d && (this.Coord = 1); + oCoord[this.Coord](); + oP.Init(g); + oT.Init(this.R); + oZ.Init(this.R); + oGd.Init(); + this.LoadTips(); + this.LoadProgress(); + }, + LoadTips: function () { + var b = NewEle( + "dTips", + "div", + "position:absolute;color:#fff;top:450px;width:100%;text-align:center;font-size:16px", + "", + EDAll + ), + a = [""]; + b.innerHTML = + '' + + a[Math.floor(Math.random() * a.length)] + + ""; + }, + LoadProgress: function (r, l, a, t, b) { + SetVisible($("dFlagMeter")); + SetHidden($("imgGQJC")); + var p = oS, + j = [], + i = p.PicArr, + k = p.PName, + s = p.ZName, + w = 0, + u = GetX(11), + g = oGd.$LF, + c = oGd.$ZF, + d = oS.R + 1, + x = $("sFlagMeterTitleF"), + y = $("dFlagMeterTitle"), + e = p.LoadImage, + h = p.CheckImg, + f = p.InitPn, + m, + q; + NewImg( + 0, + "images/interface/brain.png", + "", + ($Pn.oBrains = NewEle(0, "div", "position:absolute")) + ); + switch (p.Coord) { + case 2: + NewImg( + 0, + "images/interface/PoolCleaner.png", + "", + ($Pn.oPoolCleaner = NewEle( + 0, + "div", + "position:absolute" + )) + ); + case 1: + NewImg( + 0, + "images/interface/LawnCleaner.png", + "", + ($Pn.oLawnCleaner = NewEle( + 0, + "div", + "position:absolute" + )) + ); + break; + } + while (r--) { + a = (l = k[r].prototype).PicArr.slice(0); + Array.prototype.push.apply(i, a); + if ($User.HTML5) { + t = l.AudioArr; + b = t.length; + while (b--) { + NewAudio({ source: t[b] }); + } + } + } + for (r in oS.LargeWaveFlag) { + s[s.length] = oS.FlagZombie || oFlagZombie; + break; + } + r = s.length; + while (r--) { + Array.prototype.push.apply( + i, + (l = (q = s[r]).prototype).PicArr.slice(0) + ); + if ($User.HTML5) { + t = l.AudioArr; + b = t.length; + while (b--) { + NewAudio({ source: t[b] }); + } + } + l.Init.call(q, u, l, c, d); + } + p.PicNum = w += i.length; + r = i.length; + y.setAttribute("title", ""); + y.style.cursor = "pointer"; + y.onclick = function () { + oS.MustAllReady = false; + oS.LoadReady(oS); + }; + while (r--) { + e(i[r], h); + } + r = j.length; + oS.LoadAudio(); + }, + LoadAudio: $User.HTML5 + ? function () { + var b = oS.AudioArr, + a = b.length; + while (a--) { + NewAudio({ source: b[a] }); + } + } + : function () {}, + InitPn: function (a) { + var b = ($Pn[a[0]] = NewEle(0, "div", "position:absolute")); + NewImg(0, ShadowPNG, a[2], b); + NewImg(0, a[1], "", b); + oS.CheckImg(); + }, + LoadImage: $User.Browser.IE + ? function (b, d, c) { + var a = new Image(); + a.onreadystatechange = function () { + a.readyState == "complete" && d(c, 1); + }; + a.onerror = function () { + a.onreadystatechange = null; + a.title = b; + d(c, 0); + }; + a.src = b; + } + : function (b, d, c) { + var a = new Image(); + a.src = b; + a.complete + ? d(c, 1) + : ((a.onload = function () { + a.complete && d(c, 1); + }), + (a.onerror = function () { + a.title = b; + d(c, 0); + })); + }, + LoadScript: $User.Browser.IE + ? function (f, c, e, a, d) { + var b = NewEle(f, "script", 0, { type: "text/javascript" }); + b.onreadystatechange = function () { + (b.readyState == "loaded" || + b.readyState == "complete") && + ((b.onreadystatechange = null), e(d, 1)); + }; + b.onerror = function () { + b.onreadystatechange = null; + e(d, 0); + }; + b.src = c; + a.appendChild(b); + } + : function (f, c, e, a, d) { + var b = NewEle(f, "script", 0, { type: "text/javascript" }); + b.onload = function () { + e(d, 1); + }; + b.onerror = function () { + e(d, 0); + }; + b.src = c; + a.appendChild(b); + }, + CheckImg: function (b, a) { + var c = oS; + if (c.AccessNum > c.PicNum || !c.MustAllReady) { + return; + } + b = 139 - (c.AccessNum++ * 140) / c.PicNum - 11; + $("imgFlagHead").style.left = b + "px"; + $("sFlagMeterTitleF").innerHTML = + 'Loading...(' + + c.AccessNum + + "/" + + c.PicNum + + ")"; + $("imgFlagMeterFull").style.clip = + "rect(0,auto,21px," + (b + 11) + "px)"; + if (c.AccessNum == c.PicNum) { + oS.Lvl == 0; + if (c.MustAllReady) { + c.LoadReady(c); + } + } + }, + LoadReady: function (f) { + var c = $("dFlagMeterTitle"); + if (c.onclick == null) { + return; + } + ClearChild($("dTips")); + oSym.NowStep = $User.Visitor.NowStep; + oSym.TimeStep = $User.Visitor.TimeStep; + c.onclick = null; + c.title = null; + c.style.cursor = "default"; + SetHidden($("dFlagMeterContent"), dFlagMeter); + $("dFlagMeter").style.top = "490px"; + // $("dFlagMeter").style.left = "805px"; // not good + // $("dFlagMeter").style.left = (currentLeft + 15) + "px"; // not good either + $("sFlagMeterTitleF").innerHTML = $("dFlagMeterTitleB").innerHTML = + f.LevelName; + $("imgFlagHead").style.left = "139px"; + $("imgFlagMeterFull").style.clip = "rect(0,auto,auto,157px)"; + delete f.PicArr; + delete f.Coord; + delete f.LF; + delete f.ZF; + var a = { + background: "url(" + f.backgroundImage + ") no-repeat", + visibility: "visible", + }; + !f.ShowScroll && (a.left = "-115px"); + SetStyle($("tGround"), a); + $("tGround").innerHTML = oS.GifHTML; + var d = function (h) { + var i = oS, + g = $User.Visitor; + NewImg( + "imgGrowSoil", + "images/interface/GrowSoil.gif", + "visibility:hidden;z-index:50", + EDAll + ); + NewImg( + "imgGrowSpray", + "images/interface/GrowSpray.gif", + "visibility:hidden;z-index:50", + EDAll + ); + NewEle("dTitle", "div", 0, 0, $("dBody")); + innerText(ESSunNum, i.SunNum); + InitPCard(); + i.ShowScroll + ? oSym.addTask( + h == undefined ? 200 : h, + function (j) { + ClearChild(j); + i.ScrollScreen(); + }, + [ + NewEle( + "DivParty", + "div", + "line-height:50px;color:#FFFFFF;font-size:50px;font-family:Tahoma", + {}, + EDAll + ), + ] + ) + : (SetVisible($("dMenu")), AutoSelectCard(), LetsGO()); + }; + f.LoadAccess ? f.LoadAccess(d) : d(); + }, + ScrollScreen: function () { + (EDAll.scrollLeft += 25) < 500 + ? oSym.addTask(2, arguments.callee, []) + : (DisplayZombie(), + SetVisible($("dMenu")), + oS.CanSelectCard + ? SetVisible( + $("dTop"), + $("dSelectCard"), + $("dCardList") + ) + : (AutoSelectCard(), + oSym.addTask(200, oS.ScrollBack, [LetsGO]))); + }, + ScrollBack: function (a) { + SetHidden( + $("dZombie"), + $("dSelectCard"), + $("dTitle"), + $("dCardList") + ); + $("tGround").style.left = "-115px"; + $("dZombie").innerHTML = ""; + (function (c) { + var b = EDAll.scrollLeft; + (b -= 25) > 0 + ? ((EDAll.scrollLeft = b), + oSym.addTask(2, arguments.callee, [c])) + : ((EDAll.scrollLeft = 0), c()); + })(a); + }, + }, + oCoord = { + 1: function () { + oS.R = 5; + ChosePlantX = function (a) { + return Compare(GetC(a), 1, oS.C, GetX); + }; + ChosePlantY = function (a) { + return $SSml( + a, + [86, 181, 281, 386, 476], + [ + [75, 0], + [175, 1], + [270, 2], + [380, 3], + [470, 4], + [575, 5], + ] + ); + }; + GetC = function (a) { + return $SSml( + a, + [ + -50, 100, 140, 220, 295, 379, 460, 540, 625, 695, 775, + 855, 935, + ], + [-2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11] + ); + }; + GetR = function (a) { + return $SSml(a, [86, 181, 281, 386, 476], [0, 1, 2, 3, 4, 5]); + }; + GetX = function (a) { + return $SEql(a, { + "-2": -50, + "-1": 100, + 0: 140, + 1: 187, + 2: 267, + 3: 347, + 4: 427, + 5: 507, + 6: 587, + 7: 667, + 8: 747, + 9: 827, + 10: 865, + 11: 950, + }); + }; + GetY = function (a) { + return $SEql(a, { + 0: 75, + 1: 175, + 2: 270, + 3: 380, + 4: 470, + 5: 575, + }); + }; + GetY1Y2 = function (a) { + return $SEql(a, { + 0: [0, 85], + 1: [86, 180], + 2: [181, 280], + 3: [281, 385], + 4: [386, 475], + 5: [476, 600], + }); + }; + GetX1X2 = function (a) { + return $SEql(a, { + "-2": [-100, -49], + "-1": [-50, 99], + 0: [100, 139], + 1: [140, 219], + 2: [220, 294], + 3: [295, 378], + 4: [379, 459], + 5: [460, 539], + 6: [540, 624], + 7: [625, 694], + 8: [695, 774], + 9: [775, 854], + 10: [855, 934], + 11: [950, 1030], + }); + }; + getRowColumnFromPixels = function (pixelX, pixelY) { + let rowWidth = 129; + let columnWidth = 170; + return [ + Math.floor(pixelX / rowWidth) + 1, + Math.floor(pixelY / columnWidth) + 1, + ]; + }; + !oS.InitLawnMower && + (oS.InitLawnMower = function () { + var a = 6; + while (--a) { + CustomSpecial(oLawnCleaner, a, -1); + } + }); + oS.GifHTML = ""; + }, + 2: function () { + oS.R = 6; + ChosePlantX = function (a) { + return Compare(GetC(a), 1, oS.C, GetX); + }; + ChosePlantY = function (a) { + return $SSml( + a, + [86, 171, 264, 368, 440, 532], + [ + [75, 0], + [161, 1], + [254, 2], + [358, 3], + [430, 4], + [524, 5], + [593, 6], + ] + ); + }; + GetC = function (a) { + return $SSml( + a, + [ + -50, 100, 140, 220, 295, 379, 460, 540, 625, 695, 775, + 855, 935, + ], + [-2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11] + ); + }; + GetR = function (a) { + return $SSml( + a, + [86, 171, 264, 368, 440, 532], + [0, 1, 2, 3, 4, 5, 6] + ); + }; + GetX = function (a) { + return $SEql(a, { + "-2": -50, + "-1": 100, + 0: 140, + 1: 187, + 2: 267, + 3: 347, + 4: 427, + 5: 507, + 6: 587, + 7: 667, + 8: 747, + 9: 827, + 10: 865, + 11: 950, + }); + }; + GetY = function (a) { + return $SEql(a, { + 0: 75, + 1: 165, + 2: 253, + 3: 355, + 4: 430, + 5: 522, + 6: 587, + }); + }; + GetY1Y2 = function (a) { + return $SEql(a, { + 0: [0, 85], + 1: [86, 170], + 2: [171, 263], + 3: [264, 367], + 4: [368, 439], + 5: [440, 531], + 6: [532, 600], + }); + }; + GetX1X2 = function (a) { + return $SEql(a, { + "-2": [-100, -49], + "-1": [-50, 99], + 0: [100, 139], + 1: [140, 219], + 2: [220, 294], + 3: [295, 378], + 4: [379, 459], + 5: [460, 539], + 6: [540, 624], + 7: [625, 694], + 8: [695, 774], + 9: [775, 854], + 10: [855, 934], + 11: [950, 1030], + }); + }; + !oS.InitLawnMower && + (oS.InitLawnMower = function () { + CustomSpecial(oLawnCleaner, 1, -1); + CustomSpecial(oLawnCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oLawnCleaner, 5, -1); + CustomSpecial(oLawnCleaner, 6, -1); + }); + oS.GifHTML = + ''; + !oS.DKind && oGd.MakeFog(); + }, + }, + oP = { + Init: function (a) { + var r = this; + r.NumZombies = r.FlagZombies = 0; + if (a) { + var l; + for (l in a) { + r[l] = a[l]; + } + if (a.AZ) { + var k, + b = {}, + g, + c, + q, + p, + d, + m = [], + h, + e, + n; + r.ArZ = []; + h = (k = r.AZ).sort(function (i, f) { + return i[2] - f[2]; + }).length; + while (h--) { + c = (n = k[h])[0]; + q = n[1]; + p = n[2]; + while (q--) { + m.push([c, p]); + } + if ((d = n[3])) { + e = d.length; + while (e--) { + b[(g = d[e])] ? b[g].push(c) : (b[g] = [c]); + } + } + } + r.AZ = m; + r.MustShowAtFlag = b; + } + } + a && a.FlagNum + ? ((r.FlagHeadStep = Math.floor(140 / (a.FlagNum - 1))), + (r.MonPrgs = function () { + var u = oP, + j, + i = u.FlagZombies, + s, + t, + f = $User.Visitor; + !--u.NumZombies && + (i < u.FlagNum + ? ((u.ReadyFlag = ++i), + oSym.addTask(500, u.FlagPrgs, [])) + : (u.FlagToEnd(), + $User.isAuthorWebsite && + $User.Visitor.UserName != "" && + (ClearChild($("JSPVZAjax")), + f.SaveLvl && + NewEle( + "JSPVZAjax", + "script", + 0, + {}, + document.body + )), + f.SaveLvlCallBack && + f.SaveLvlCallBack({ + UserName: f.UserName, + SunNum: oS.SunNum, + Lvl: s, + T: oSym.Now - oS.StartTime, + }), + !isNaN(Math.floor(s)) && + ((t = $("dAdventure")), + ($User.Visitor.Progress = ++s), + (t.firstChild.innerHTML = Math.ceil( + s / 10 + )), + (t.childNodes[1].innerHTML = (s = + s - Math.floor(s / 10) * 10) + ? s + : s + 1)), + NewEle( + "DivA", + "div", + "position:absolute;width:900px;height:600px;background:#FFF;filter:alpha(opacity=0);opacity:0;z-index:255", + 0, + EDAll + ), + PauseGame($("dMenu0"), 1))); + })) + : (r.MonPrgs = function () {}); + (!a || !a.FlagToEnd) && + (r.FlagToEnd = function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:417px;top:233px;z-index:255", + EDAll, + { + onclick: function () { + PlayAudio("winmusic"); + SelectModal(0); + HiddenOptions(); + SetBlock( + $("dSurface"), + $("iSurfaceBackground") + ); + ShowNameDiv(); + }, + } + ); + }); + }, + Balloon: function () { + let balloonId = Math.floor(1 + Math.random() * 1000); + function getAnimatedPosition(element) { + const computedStyle = getComputedStyle(element); + const left = parseFloat(computedStyle.left); + const top = parseFloat(computedStyle.top); + return { left, top }; + } + let image = NewImg( + "", + "images/Zombies/Balloon/balloonidle.png", + "position: absolute; display: block; left: 875px; z-index: 0;", + $("dPZ") + ); + let styleSheet = document.styleSheets[0]; + function getRandomY() { + let randomY = GetY(Math.floor(1 + Math.random() * oS.R)); + if (randomY > 430) { + return getRandomY(); + } else { + return randomY; + } + } + let randomY = getRandomY(); + styleSheet.insertRule( + ` @keyframes moveLeft${balloonId} { from { left: 910px; } to { left: -75px; } } `, - styleSheet.cssRules.length - ); + styleSheet.cssRules.length + ); - styleSheet.insertRule( - ` + styleSheet.insertRule( + ` @keyframes bobbing${balloonId} { 0%, 100% { top: ${randomY}px; } 50% { top: ${randomY + 10}px; } } `, - styleSheet.cssRules.length - ); - image.width = 75; - image.onclick = function () { - image.onclick = null; - image.src = "images/Zombies/Balloon/popped.png"; - image.style.animationPlayState = "paused"; - PlayAudio("balloon_pop"); - setTimeout(function () { - image.parentNode.removeChild(image); - if ($("dSunNum").style.visibility == "") { - AppearSun( - GetX(Math.floor(1 + Math.random() * oS.C)), - GetY(Math.floor(1 + Math.random() * oS.R)), - 75, - 1 - ); - } - }, 100); - }; - image.style.animation = `moveLeft${balloonId} ${13 / $User.Visitor.TimeStep}s linear, bobbing${balloonId} ${2 / $User.Visitor.TimeStep}s ease-in-out infinite`; - image.style.top = `${randomY}px`; - image.style.cursor = "pointer"; - image.style.zIndex = "999"; - image.addEventListener("animationend", () => { - image.parentNode.removeChild(image); - }); - PlayAudio("ballooninflate"); - // console.log(image); - // console.log(image.parentElement); - }, - AddZombiesFlag: function (d) { - if (Math.floor(Math.random() * 5) == 1) { - oP.Balloon(); - } - var g = oP, - c = oS.LargeWaveFlag, - e, - b = g.FlagHeadStep, - a = g.FlagNum; - SetVisible($("imgGQJC"), $("dFlagMeterContent")); - for (e in c) { - Math.floor(e) < a - ? SetStyle(c[e], { - visibility: "visible", - left: 150 - (e - 1) * b + "px", - }) - : SetVisible(c[e]); - } - PlayAudio("awooga"); - $User.HTML5 && - (function () { - oSym.addTask( - 2e3, - function () { - [ - function () { - PlayAudio( - ["groan1", "groan2"][ - Math.floor(Math.random() * 2) - ] - ); - }, - function () { - PlayAudio( - ["groan3", "groan4"][ - Math.floor(Math.random() * 2) - ] - ); - }, - function () { - PlayAudio( - ["groan5", "groan6"][ - Math.floor(Math.random() * 2) - ] - ); - }, - function () { - PlayAudio("groan1"); - oSym.addTask( - 150, - function () { - PlayAudio("groan5"); - }, - [] - ); - }, - function () { - PlayAudio("groan2"); - oSym.addTask( - 150, - function () { - PlayAudio("groan6"); - }, - [] - ); - }, - ][Math.floor(Math.random() * 3)](); - oSym.addTask(2e3, arguments.callee, []); - }, - [] - ); - })(); - g.ReadyFlag = 1; - g.FlagPrgs(d); - }, - SelectFlagZombie: function (j, d) { - var e = oP, - m = e.ArZ, - k = e.AZ, - s = k.length, - q, - r, - i = [], - g = 0, - n = oS.LargeWaveFlag[d], - c = false, - h = !n - ? 150 - : (PlayAudio("siren"), - (n.style.top = "5px"), - --j, - (i[g++] = oS.FlagZombie || oFlagZombie), - 30), - p, - b, - f = e.MustShowAtFlag, - a; - while (s--) { - if ((r = (q = k[s])[1]) > d) { - break; - } else { - m.push(q[0]); - --k.length; - c = true; - } - } - c && - m.sort(function (t, l) { - return t.prototype.Lvl - l.prototype.Lvl; - }); - if ((a = f[d])) { - s = a.length; - while (s--) { - j -= (i[g++] = a[s]).prototype.Lvl; - } - } - b = m[(s = (p = m.length) - 1)].prototype.Lvl; - while (j > 0) { - if (s && b > j) { - while (--s && m[s].prototype.Lvl > j) {} - p = s + 1; - b = m[s].prototype.Lvl; - } - j -= (i[g++] = m[Math.floor(Math.random() * p)]).prototype.Lvl; - } - e.NumZombies += g; - e.SetTimeoutZombie(i, h); - }, - SelectFlagZombie1: function (d) { - var h = oP, - c = [], - a = 0, - g = h.ArZ, - f = oS.LargeWaveFlag[h.FlagZombies], - e = h.SumToZombie, - b = !f - ? 150 - : ((f.style.top = "5px"), - --d, - (c[a++] = oS.FlagZombie || oFlagZombie), - 30); - while (d > 0) { - d -= (c[a++] = g[Math.floor(Math.random() * $SEql(d, e))]) - .prototype.Lvl; - } - h.NumZombies += a; - h.SetTimeoutZombie(c, b); - }, - SetTimeoutTomZombie: function (c) { - var f = [], - d = [], - e = 0, - a = c.length, - b, - g; - for (b in oGd.$Tombstones) { - g = b.split("_"); - d[e] = (f[e] = new c[ - Math.floor(Math.random() * a) - ]()).CustomBirth(g[0], g[1], 100); - ++e; - } - this.AppearUP(d, f, e); - }, - SetTimeoutWaterZombie: function (j, b, e, h) { - var f = oGd.$LF, - l = [], - c = f.length, - m = [], - k = [], - g = h.length, - a, - d = b - j + 1; - while (--c) { - f[c] == 2 && l.push(c); - } - a = l.length; - c = e; - while (c--) { - k[c] = (m[c] = new h[ - Math.floor(Math.random() * g) - ]()).CustomBirth( - l[Math.floor(Math.random() * a)], - Math.floor(j + Math.random() * d) - ); - } - this.AppearUP(k, m, e); - }, - AppearUP: function (a, c, b) { - oP.NumZombies += b; - asyncInnerHTML( - a.join(""), - function (h, f) { - EDPZ.appendChild(h); - var e = f.length, - g, - d; - while (e--) { - g = f[e]; - g.Birth.call(g); - SetBlock(g.Ele); - oSym.addTask( - 10, - function (l, k, i, j) { - k = Math.max(k - j, 0); - SetStyle(l, { - top: k + "px", - clip: "rect(0,auto," + (i += j) + "px,0)", - }); - k && - oSym.addTask(10, arguments.callee, [ - l, - k, - i, - j, - ]); - }, - [g.EleBody, (d = g.height), 0, d * 0.1] - ); - } - }, - c - ); - }, - SetZombie: function (j, b, e, h) { - var f = [], - l = [], - c = f.length, - m = [], - k = [], - g = h.length, - a, - d = b - j + 1; - while (--c) { - f[c] == 2 && l.push(c); - } - a = l.length; - c = e; - while (c--) { - k[c] = (m[c] = new h[ - Math.floor(Math.random() * g) - ]()).CustomBirth( - l[Math.floor(Math.random() * a)], - Math.floor(j + Math.random() * d) - ); - } - this.AppearUP1(k, m, e); - }, - AppearUP1: function (a, c, b) { - oP.NumZombies += b; - asyncInnerHTML( - a.join(""), - function (h, f) { - EDPZ.appendChild(h); - var e = f.length, - g, - d; - while (e--) { - g = f[e]; - g.Birth.call(g); - SetBlock(g.Ele); - oSym.addTask( - 10, - function (l, k, i, j) { - k = Math.max(k - j, 0); - SetStyle(l, { - top: k + "px", - clip: "rect(0,auto," + (i += j) + "px,0)", - }); - k && - oSym.addTask(10, arguments.callee, [ - l, - k, - i, - j, - ]); - }, - [g.EleBody, (d = g.height), 0, d * 0.1] - ); - } - }, - c - ); - }, - SetTimeoutZombie: function (b, d) { - var f = [], - c = [], - e = 0, - g = 0, - a = b.length; - while (e < a) { - c[e] = (f[e] = new b[e]()).prepareBirth(g); - g += d; - ++e; - } - asyncInnerHTML( - c.join(""), - function (k, j) { - EDPZ.appendChild(k); - var h = j.length; - while (h--) { - j[h].Birth(); - } - }, - f - ); - }, - FlagPrgs: function () { - var f = oP, - c = f.FlagZombies, - e = f.FlagToSumNum, - a = 139 - c * f.FlagHeadStep, - d = $SSml(c, e.a1, e.a2), - b; - f.FlagNum > (c = ++f.FlagZombies) - ? (($("imgFlagHead").style.left = a + "px"), - ($("imgFlagMeterFull").style.clip = - "rect(0,157px,21px," + (a + 11) + "px)"), - (b = $SEql(c, f.FlagToMonitor)) && - oSym.addTask( - 1690, - function (g) { - !g[1] && (g[0](), (g[1] = 1)); - }, - [b] - ), - oSym.addTask( - 1990, - function (g) { - var h = oP; - h.ReadyFlag == g++ && - ((h.ReadyFlag = g), h.FlagPrgs()); - }, - [c] - )) - : (($("imgFlagHead").style.left = "-1px"), - ($("imgFlagMeterFull").style.clip = "rect(0,157px,21px,0)")); - f.SelectFlagZombie.call(f, d, c); - f.UserDefinedFlagFunc && f.UserDefinedFlagFunc(); - }, - Monitor: function (a, b) { - a && a.f.apply(a.f, a.ar); - oP.UserDefinedFlagFunc = b ? b : null; - (function () { - oZ.traversalOf(); - oSym.addTask(10, arguments.callee, []); - })(); - }, - }, - oGd = { - Init: function () { - this.$ = []; - this.$Crater = []; - this.$Tombstones = {}; - this.$Torch = []; - this.$Plantern = []; - this.$LF = oS.LF; - this.$ZF = oS.ZF; - this.$Ice = []; - this.$JackinTheBox = 0; - this.$Balloon = new Array(oS.R + 1); - this.$Fog = []; - }, - add: function (c, a, b, d) { - (b = (d = this.$)[a]) && b.Die(); - d[a] = c; - }, - del: function (a) { - delete this.$[a.R + "_" + a.C + "_" + a.PKind]; - }, - MakeFog: function () { - var d = "", - g = (tx = ri = cj = 0), - c = oGd.$Fog, - b, - a = 2 * oS.HaveFog + 3, - e = (function () { - return function (f) { - var h = $User.Browser.IE && !$User.Browser.IE9; - d += - ''; - }; - })(); - for (ri = 1, tx = 0; ri < 7; g = 0, ri++) { - for (ci = 0; ci <= a; ci++) { - e((c[(b = ri + "_" + ci)] = "Fog" + b)); - g += 35; - } - tx += 90; - } - NewEle("dFog", "div", "", { innerHTML: d }, EDAll); - }, - MoveFogLeft: function (a) { - (function (c, d, b, e) { - d -= 50; - d > b - ? ((c.style.left = d + "px"), - oSym.addTask(5, arguments.callee, [c, d, b, e])) - : ((c.style.left = b + "px"), e && e()); - })($("dFog"), 900, GetX(oS.C - oS.HaveFog) - 30, a); - }, - MoveFogRight: function () { - if (arguments.callee.caller.caller == null) { - return; - } - (function (a, b) { - (b += 50) < 901 - ? ((a.style.left = b + "px"), - oSym.addTask(5, arguments.callee, [a, b])) - : (a.style.left = "900px"); - })($("dFog"), GetX(oS.C - oS.HaveFog) - 3); - }, - GatherFog: function (d, r, x, t, z) { - var c = d - x, - b = d + x, - q = r - t, - p = r + t, - e = [SetNone, SetBlock][z], - w = oS.C, - m = oS.R, - h = w + 1, - g = oS.HaveFog, - a = g * 2, - k = [], - l, - j, - u, - n = function (i) { - return (i - w) * 2 + a; - }, - s = function (i) { - return (i - w) * 2 + a - 2; - }; - if (c > 0) { - l = s(q > 0 ? q + 1 : 1); - j = n(p > h ? h : p - 1); - do { - l > -1 && k.push("Fog" + c + "_" + l); - } while (l++ < j); - } - if (b <= m) { - l = s(q > 0 ? q + 1 : 1); - j = n(p > h ? h : p - 1); - do { - l > -1 && k.push("Fog" + b + "_" + l); - } while (l++ < j); - } - ++c; - --b; - l = s(q < 1 ? 1 : q); - j = n(p > h ? h : p); - u = l; - do { - do { - l > -1 && k.push("Fog" + c + "_" + l); - } while (l++ <= j); - l = u; - } while (c++ < b); - for (l = 0; l < k.length; e($(k[l])), l++) {} - if (z) { - var y = oGd.$Torch, - f; - for (u in y) { - f = $P[y[u]]; - this.GatherFog(f.R, f.C, 1, 1, 0); - } - } - }, - }, - oZ = { - Init: function (b) { - this.$ = []; - this.$R = []; - var a; - for (a = b; a; this.$[a] = [], this.$R[a--] = []) {} - }, - add: function (b, a) { - (a = oZ.$[b.R]).push(b); - a.sort(function (d, c) { - return d.AttackedLX - c.AttackedLX; - }); - a.RefreshTime = oSym.Now; - }, - getZ0: function (b, d) { - if (d < 1 || d > oS.R) { - return; - } - var c = 0, - e = this.$[d], - f, - a = e.length; - while (c < a && (f = e[c++]).AttackedLX <= b) { - if (f.PZ && f.HP && f.AttackedRX >= b) { - return f; - } - } - }, - getZ1: function (h, b) { - if (b < 1 || b > oS.R) { - return; - } - var d = 0, - j = this.$[b], - f = this.$R[b], - g, - c, - k, - e; - (k = j.RefreshTime) == f.RefreshTime - ? (g = f) - : ((g = (this.$R[b] = j.slice(0)).sort(function (l, i) { - return i.AttackedRX - l.AttackedRX; - })).RefreshTime = k); - e = g.length; - while (d < e && (c = g[d++]).AttackedRX >= h) { - if (c.PZ && c.HP && c.AttackedLX <= h) { - return c; - } - } - }, - getArZ: function (e, d, b) { - var g = 0, - l = this.$[b], - f = [], - k = 0, - c, - h = l.length, - j; - while (g < h && (j = (c = l[g++]).AttackedLX) < d) { - c.PZ && c.HP && (j > e || c.AttackedRX > e) && (f[k++] = c); - } - return f; - }, - getRangeLeftZ: function (e, d, b) { - if (b < 1 || b > oS.R) { - return; - } - var g = 0, - l = this.$[b], - f = [], - k = 0, - c, - h = l.length, - j; - while (g < h && (j = (c = l[g++]).AttackedLX) < d) { - if (c.PZ && c.HP && (j > e || c.AttackedRX > e)) { - return c; - } - } - return; - }, - moveTo: function (g, f, c) { - var b = this.$[f], - a = this.$[c], - e = b.length, - d; - while (e--) { - (o = b[e]).id == g && - (b.splice(e, 1), - (o.R = c), - a.push(o), - (a.sort(function (i, h) { - return i.AttackedLX - h.AttackedLX; - }).RefreshTime = b.RefreshTime = - oSym.Now), - (e = 0)); - } - }, - traversalOf: function () { - var a, - b = this.$, - j, - l = 0, - d = 0, - k = 1e3, - i, - h, - f = [ - function (n) { - d = 1; - k = i; - }, - function (n) { - (i = n.AttackedLX) > k && (l = d = 1); - k = i; - }, - ], - e = b.length, - m, - c, - g; - (function (r) { - var q = (j = b[r]).length, - n = arguments.callee, - p = oT.$[r], - s = oT.$L[r]; - while (q--) { - a = j[q]; - a.HP && - a.PZ && - a.ZX < 901 && - oT["chkD" + a.WalkDirection](a, r, p, s); - !a.HP - ? (j.splice(q, 1), f[0](a)) - : f[a.ChkActs(a, r, j, q)](a); - } - l - ? ((l = d = 0), - j.sort(function (u, t) { - return u.AttackedLX - t.AttackedLX; - }), - (j.RefreshTime = oSym.Now)) - : d && ((d = 0), (j.RefreshTime = oSym.Now)); - --r && oSym.addTask(0, n, [r]); - })(b.length - 1); - }, - }, - oT = { - Init: function (b) { - this.$ = []; - this.$L = []; - for (var a = b; a; ) { - this.$[a] = []; - this.$L[a--] = []; - } - }, - add: function (f, c, g) { - if (f <= 0 || f > oS.R) { - return; - } - var e = this.$[f], - d = c.length, - b; - while (d--) { - b = c[d]; - e.push([b[0], b[1], b[2], g]); - } - e.sort(function (i, h) { - return h[1] - i[1]; - }); - e.RefreshTime = new Date(); - }, - chkD0: function (g, e, d, h) { - var f = g.AttackedLX, - c = 0, - b, - a; - while (c < d.length && (b = d[c])[1] >= f) { - (a = $P[b[3]]).canTrigger && - b[0] <= f && - a.TriggerCheck(g, b[2], c); - ++c; - } - }, - chkD1: function (b, e, c, g) { - var j = b.AttackedLX, - h = b.AttackedRX, - f = 0, - m, - l, - d, - a, - k; - (l = c.RefreshTime) == g.RefreshTime - ? (m = g) - : ((m = (this.$L[e] = c.slice(0)).sort(function (n, i) { - return n[0] - i[0]; - })).RefreshTime = l); - while (f < m.length && (d = m[f])[0] <= h) { - (a = $P[d[3]]).canTrigger && - d[1] >= h && - a.TriggerCheck(b, d[2], f); - ++f; - } - }, - delP: function (e) { - var b = e.oTrigger, - f = e.id, - d, - a, - c; - for (d in b) { - for ( - c = (a = this.$[d]).length; - c--; - a[c][3] == f && a.splice(c, 1) - ) {} - a.RefreshTime = new Date(); - } - }, - indexOf: function (j, d) { - var f = new RegExp(d + ",", "g"), - h = (j.toString() + ",").replace(f, "┢,").replace(/[^,┢]/g, ""), - i = 0, - g = 0, - b = []; - for (; (g = h.indexOf("┢", g)) > 0; b.push((g++ - i++ - 2) / 3)) {} - return b; - }, - }, - asyncInnerHTML = function (d, c, a) { - var b = $n("div"), - e = document.createDocumentFragment(); - b.innerHTML = d; - (function (g) { - var f = arguments.callee; - g-- - ? (e.appendChild(b.firstChild), - setTimeout(function () { - f(g); - }, 0)) - : c(e, a); - })(b.childNodes.length); - }, - WhichMouseButton = function (a) { - a = window.event || a; - var b = $User.Browser; - return !b.Gecko - ? $SEql(a.button, { 1: 1, 0: b.IE ? 2 : 1, 2: 2, default: 1 }) - : $SEql(a.which, { 1: 1, 3: 2, default: 1 }); - }, - GroundOnmousedown = function (i) { - i = window.event || i; - var a = - i.clientX - EDAlloffsetLeft + EBody.scrollLeft || - EElement.scrollLeft, - k = i.clientY + EBody.scrollTop || EElement.scrollTop, - g = ChosePlantX(a), - h = ChosePlantY(k), - d = g[0], - c = h[0], - f = h[1], - b = g[1], - j = GetAP(a, k, f, b); - switch (oS.Chose) { - case 1: - WhichMouseButton(i) < 2 - ? GrowPlant(j[0], d, c, f, b) - : (PlayAudio("tap"), CancelPlant()); - break; - case -1: - WhichMouseButton(i) < 2 - ? (PlayAudio("plant2"), ShovelPlant(j)) - : (PlayAudio("tap"), CancelShovel()); - } - }, - GetAP = function (a, h, d, c) { - var f, - i = oGd.$, - e, - g = [], - b; - for ( - f = 0; - f < 4; - g.push((e = i[d + "_" + c + "_" + f++])), - e && - !( - a < e.pixelLeft || - a > e.pixelRight || - h < e.pixelTop || - h > e.pixelBottom - ) && - (b = e) - ) {} - return [g, b]; - }, - GroundOnkeydown = function (b) { - var a; - if ((a = (b || event).keyCode) == 27) { - switch (oS.Chose) { - case 1: - CancelPlant(); - break; - case -1: - CancelShovel(); - } - return false; - } else { - !oS.Chose && KeyBoardGrowPlant(a); - } - }, - KeyBoardGrowPlant = function (b, a) { - a = a || 0; - if (b > 47 && b < 58) { - switch (a) { - case 0: - ChosePlant( - { clientX: 450, clientY: 300 }, - String.fromCharCode(b) - ); - } - } - }, - GroundOnmousemove = function () {}, - GroundOnmousemove1 = function (j) { - j = window.event || j; - var d = - j.clientX - EDAlloffsetLeft + EBody.scrollLeft || - EElement.scrollLeft, - b = j.clientY + EBody.scrollTop || EElement.scrollTop, - k = oS.ChoseCard, - h = ChosePlantX(d), - i = ChosePlantY(b), - f = h[0], - c = i[0], - g = i[1], - a = h[1], - m = GetAP(d, b, g, a); - var l = ArCard[k].PName.prototype; - SetStyle($("MovePlant"), { - left: d - 0.5 * (l.beAttackedPointL + l.beAttackedPointR) + "px", - top: b + 20 - l.height + "px", - }); - l.CanGrow(m[0], g, a) - ? SetStyle($("MovePlantAlpha"), { - visibility: "visible", - left: f + l.GetDX() + "px", - top: c - l.height + l.GetDY(g, a, m[0]) + "px", - }) - : SetHidden($("MovePlantAlpha")); - }, - GroundOnmousemove2 = function (k) { - k = window.event || k; - var d = - k.clientX - EDAlloffsetLeft + EBody.scrollLeft || - EElement.scrollLeft, - b = k.clientY + EBody.scrollTop || EElement.scrollTop, - m = oS.ChoseCard, - h = ChosePlantX(d), - i = ChosePlantY(b), - f = h[0], - c = i[0], - g = i[1], - a = h[1], - n = GetAP(d, b, g, a); - var j = n[1], - l = j ? j.id : "", - p = oS.MPID; - p != l && - (p && SetAlpha($(p).childNodes[1], 100, 1), - (oS.MPID = l) && SetAlpha($(l).childNodes[1], 60, 0.6)); - SetStyle($("tShovel"), { left: d - 15 + "px", top: b - 16 + "px" }); - }, - DisplayZombie = function () { - SetVisible($("bShowHandBook")); - /* SetVisible($("bMainMenu")); */ - var d = oP.AZ.slice(0), - b = d.length, - c, - g, - h = $("dZombie"), - f = [], - e = [], - a; - while (b--) { - d[b][0].prototype.CanDiaplay == 0 && d.splice(b, 1); - } - c = b = d.length; - while (c--) { - f.push(Math.floor(150 + Math.random() * 444)); - } - f.sort(function (j, i) { - return j - i; - }); - while (b) { - g = d[(a = Math.floor(Math.random() * b))][0].prototype; - g.CanDisplay - ? (d.splice(a, 1), - (e[b--] = g.getHTML( - "", - Math.floor(50 + Math.random() * 201) - g.width * 0.5, - f[b] - g.height, - 1, - "block", - "auto", - g.GetDTop, - g.PicArr[g.StandGif] - ))) - : --b; - } - asyncInnerHTML(e.join(""), function (i) { - h.appendChild(i); - }); - }, - AutoSelectCard = function () { - var c = oS.ArCard, - b = -1, - a = c.length; - while (++b < a) { - SelectCard(c[b].prototype.EName); - } - }, - InitPCard = function () { - var d = "", - f, - e = oS.ArCard, - a = e.length, - b = 0, - c; - while (b < a) { - f = e[b]; - c = f.prototype; - if (!c.CanSelect) { - ++b; - continue; - } - ArPCard[(EName = c.EName)] = { Select: 0, PName: f }; - d += - '
' + - c.SunNum + - "
"; - b++ % 6 == 5 && (d += "
"); - } - $("dPCard").innerHTML = d; - }, - InitHandBookPCard = function () { - PlayAudio("gravebutton"); - var d = "", - g, - f, - e = [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - oBalloon, - ], - a = e.length, - b = 0, - c; - while (b < a) { - g = e[b]; - c = g.prototype; - f = c.EName; - d += - '
' + - c.SunNum + - "
"; - b++ % 6 == 5 && (d += "
"); - } - $("dHandBookPCard").innerHTML = d; - ViewProducePlant(e[0]); - $("dHandBookPZ").className = "WindowFrame Almanac_PlantBack"; - SetVisible($("dHandBookPZ")); - SetNone($("dHandBookZ")); - SetBlock($("dHandBookP")); - }, - InitHandBookZCard = function () { - PlayAudio("gravebutton"); - var d = "", - g, - f, - e = [ - oZombie, - oConeheadZombie, - oPoleVaultingZombie, - oBucketheadZombie, - oFlagZombie, - oNewspaperZombie, - oScreenDoorZombie, - oFootballZombie, - oHeiFootballZombie, - oDancingZombie, - oBackupDancer, - oDuckyTubeZombie1, - oSnorkelZombie, - oZomboni, - oDolphinRiderZombie, - oBalloonZombie, - oJackinTheBoxZombie, - oImp, - oCZombie, - oCConeheadZombie, - oCBucketheadZombie, - oEunZombie, - othugZombie, - oZZ, - oEmperor, - oCXZombie, - oXBZombie, - oJX, - oJY, - oLGBOSS, - oWarshipsZombie, - oSubZombie, - oWJY, - oMustacheZombie, - oTrashZombie, - oLionDanceZombie, - ], - a = e.length, - b = 0, - c; - while (b < a) { - g = e[b]; - c = g.prototype; - f = c.EName; - d += - '
' + - c.SunNum + - "
"; - b++; - } - $("dHandBookZCard").innerHTML = d; - ViewProduceZombie(e[0]); - $("dHandBookPZ").className = "WindowFrame Almanac_ZombieBack"; - SetVisible($("dHandBookPZ")); - SetNone($("dHandBookP")); - SetBlock($("dHandBookZ")); - }, - ViewProducePlant = function (b) { - PlayAudio("tap"); - var a = b.prototype; - $("pHandBookPlant").style.backgroundImage = - "url(" + a.PicArr[a.StaticGif] + ")"; - $("dProducePlant").innerHTML = a.Produce; - innerText($("dHandBookPlantName"), a.CName); - innerText($("spSunNum"), a.SunNum); - innerText($("spCoolTime"), a.coolTime + "s"); - $("pPlantBack").style.backgroundPosition = - -200 * a.BookHandBack + "px 0"; - }, - ViewProduceZombie = function (b) { - PlayAudio("tap"); - var a = b.prototype; - $("pHandBookZombie").style.background = - "url(" + - a.PicArr[a.StaticGif] + - ") no-repeat scroll " + - a.BookHandPosition; - $("dProduceZombie").innerHTML = a.Produce; - innerText($("dHandBookZombieName"), a.CName); - $("pZombieBack").style.backgroundPosition = - -200 * a.BookHandBack + "px 0"; - }, - ViewCardTitle = function (b, c) { - c = c || window.event; - var f = $("dTitle"), - a = b.prototype; - f.innerHTML = - a.CName + - "
cooldown:" + - a.coolTime + - "s
" + - (oS.DKind && a.night - ? 'Nocturnal - sleeps during the day
' + - a.Tooltip - : a.Tooltip || - '' + a.Produce + ""); - SetStyle(f, { - left: - c.clientX + - (EBody.scrollLeft || EElement.scrollLeft) - - 3 + - "px", - top: c.clientY + 18 + EBody.scrollTop || EElement.scrollTop + "px", - visibility: "visible", - }); - }, - SelectCard = function (c) { - PlayAudio("tap"); - var h = $("Card" + c).childNodes, - f = h[0], - b = ArPCard[c], - i = b.PName.prototype, - g, - a, - j, - e = $("btnOK"); - if (!b.Select) { - if (!(ArPCard.SelNum |= 0)) { - e.disabled = ""; - e.style.color = "#FC6"; - } else { - if (ArPCard.SelNum > 9) { - return; - } - } - ++ArPCard.SelNum; - b.Select = 1; - oS.StaticCard && - ((g = NewEle( - "dCard" + c, - "div", - "", - { - onclick: function () { - SelectCard(c); - }, - }, - $("dCardList") - )), - NewImg(0, f.src, "width:100px;height:120px", g), - innerText(NewEle("sSunNum" + c, "span", 0, 0, g), i.SunNum), - (f.style.top = "-42px")); - } else { - b.Select = 0; - !--ArPCard.SelNum && - ((e.disabled = "disabled"), (e.style.color = "#888")); - (g = $("dCard" + c)).onclick = null; - ClearChild(g.firstChild, g.childNodes[1], g.lastChild, g); - f.style.top = 0; - } - }, - ResetSelectCard = function () { - var b, - a = $("btnOK"); - for (b in ArPCard) { - ArPCard[b].Select && SelectCard(b); - } - a.disabled = "disalbed"; - a.style.color = "#888"; - }, - LetsGO = function () { - var e = $("dCardList"), - g = 0, - k = e.childNodes.length, - f, - h, - l, - c, - j, - a, - b = document.body; - SetStyle($("dTop"), { left: "105px", top: 0 }); - e.style.left = 0; - SetVisible(e); - while (g < k) { - (function (d) { - f = (j = e.childNodes[d]).id.substr(5); - l = (h = ArPCard[f].PName).prototype; - j.onclick = function (i) { - ChosePlant(i, d); - }; - j.onmouseover = function () { - SetVisible($("dTitle")); - ViewPlantTitle((oS.MCID = d)); - }; - j.onmouseout = function () { - SetHidden($("dTitle")); - }; - j.firstChild.style.top = "-60px"; - (a = j.lastChild).id = "sSunNum" + d; - innerText(a, l.SunNum); - ArCard.push({ DID: j.id, CDReady: 0, SunReady: 0, PName: h }); - })(g++); - } - b.onkeydown = function (d) { - GroundOnkeydown(d); - }; - b.onmousedown = function (d) { - GroundOnmousedown(d); - }; - b.onmousemove = function (d) { - GroundOnmousemove(d); - }; - SetVisible(e); - !oS.BrainsNum && CustomSpecial(oBrains, oS.R - 1, -2); - ( - oS.StartGame || - function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - NewMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor(oS.Monitor, oS.UserDefinedFlagFunc); - BeginCool(); - oS.DKind && AutoProduceSun(50); - oSym.addTask( - 1500, - function () { - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }, - [] - ); - }); - } - )(); - oS.StartTime = oSym.Now; - }, - ViewPlantTitle = function (b) { - var f = $("dTitle"), - e = ArCard[b], - c = e.PName.prototype, - a = c.CName; - !oS.CardKind && - ((a += "
cooldown:" + c.coolTime + "s
" + c.Tooltip), - !e.CDReady && - (a += '
ReLoading...')); - !e.SunReady && - (a += '
Not enough sunlight!'); - f.innerHTML = a; - SetStyle(f, { top: 60 * b + "px", left: EDAlloffsetLeft + 100 + "px" }); - }, - BeginCool = function () { - var b = ArCard.length, - c, - d, - a, - e; - while (b--) { - a = (c = (d = ArCard[b]).PName.prototype).coolTime; - e = c.SunNum; - switch (a) { - case 0: - case 7.5: - d.CDReady = 1; - e <= oS.SunNum && - ((d.SunReady = 1), - ($(d.DID).childNodes[0].style.top = "0")); - break; - case 30: - DoCoolTimer(b, 20); - break; - default: - DoCoolTimer(b, 35); - } - } - }, - ImmediatelyCool = function () { - var b = ArCard.length, - c, - d, - a, - e; - while (b--) { - a = (c = (d = ArCard[b]).PName.prototype).coolTime; - e = c.SunNum; - d.CDReady = 1; - d.SunReady = 1; - $(d.DID).childNodes[0].style.top = 0; - } - }, - MonitorCard = function (d) { - var b = ArCard.length, - c, - a = Number(ESSunNum.innerHTML); - a != oS.SunNum && (oS.SunNum = Math.min(a, oS.SunNum)); - if (oS.Chose < 1) { - while (b--) { - (c = (d = ArCard[b]).PName.prototype).SunNum > oS.SunNum - ? (d.SunReady && (d.SunReady = 0), - ($(d.DID).childNodes[0].style.top = "-60px")) - : (!d.SunReady && (d.SunReady = 1), - d.CDReady && ($(d.DID).childNodes[0].style.top = 0)); - } - } else { - while (b--) { - (c = (d = ArCard[b]).PName.prototype).SunNum > oS.SunNum - ? d.SunReady && (d.SunReady = 0) - : !d.SunReady && (d.SunReady = 1); - } - } - ViewPlantTitle(oS.MCID); - }, - DoCoolTimer = function (c, b) { - var a = $(ArCard[c].DID); - NewEle( - "dCD1" + c, - "span", - "position:absolute;left:22px;top:22px;font-size:18px;font-weight:500;font-family:Verdana;color:#000", - "", - a - ); - NewEle( - "dCD2" + c, - "span", - "position:absolute;left:20px;top:20px;font-size:18px;font-weight:500;font-family:Verdana;color:#FF0", - "", - a - ); - (function (d, e) { - d > 0 - ? (innerText($("dCD1" + e), d), - innerText($("dCD2" + e), d), - oSym.addTask(50, arguments.callee, [(d - 0.5).toFixed(1), e])) - : (ClearChild($("dCD1" + e), $("dCD2" + e)), - (ArCard[e].CDReady = 1), - MonitorCard()); - })(b, c); - }, - ChosePlant = function (h, d) { - // PlayAudio("seedlift"); - var g = ArCard[(oS.ChoseCard = d)]; - if (!(g.CDReady && g.SunReady)) { - PlayAudio("buzzer"); - return; - } - PlayAudio("seedlift"); - h = window.event || h; - var b = - h.clientX - EDAlloffsetLeft + EBody.scrollLeft || - EElement.scrollLeft, - a = h.clientY + EBody.scrollTop || EElement.scrollTop, - j = g.PName.prototype, - e = ArCard.length, - f, - c = j.PicArr; - oS.Chose = 1; - !oS.CardKind - ? EditImg( - NewImg( - "MovePlant", - c[j.StaticGif], - "left:" + - b - - 0.5 * (j.beAttackedPointL + j.beAttackedPointR) + - "px;top:" + - a + - 20 - - j.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ) - : (NewImg( - "MovePlant", - j.PicArr[j.StandGif], - "left:" + - (b - 0.5 * (j.beAttackedPointL + j.beAttackedPointR)) + - "px;top:" + - (a + 20 - j.height) + - "px;z-index:254", - EDAll - ), - NewImg( - "MovePlantAlpha", - j.PicArr[j.StandGif], - "visibility:hidden;filter:alpha(opacity=40);opacity:0.4;z-index:30", - EDAll - )); - while (e--) { - $(ArCard[e].DID).childNodes[0].style.top = "-60px"; - } - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant = function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - MonitorCard(); - GroundOnmousemove = function () {}; - }, - ShovelPlant = function (a) { - PlayAudio("plant2"); - var b = a[0], - c = a[1]; - c && (c.PKind || !(b[1] || b[2])) && (c.Die(), (oS.MPID = "")); - CancelShovel(); - }, - ChoseShovel = function (a) { - PlayAudio("shovel"); - WhichMouseButton(a) < 2 && - (SetHidden($("imgShovel")), - NewImg( - "tShovel", - "images/interface/Shovel/0.gif", - "left:" + - (a.clientX - 10) + - "px;top:" + - (a.clientY + document.body.scrollTop - 17) + - "px;z-index:1", - EDAll - ), - (oS.Chose = -1), - (GroundOnmousemove = GroundOnmousemove2), - StopBubble(a)); - }, - CancelShovel = function (a) { - var b = oS.MPID; - ClearChild($("tShovel")); - oS.Chose = 0; - SetVisible($("imgShovel")); - b && SetAlpha($(b).childNodes[1], 100, 1); - GroundOnmousemove = function () {}; - }, - StopBubble = function (a) { - window.event ? (event.cancelBubble = true) : a.stopPropagation(); - }, - GrowPlant = function (l, d, c, e, b) { - var j = oS.ChoseCard, - f = ArCard[j], - h = f.PName, - k = h.prototype, - i = k.coolTime, - a, - g = oGd.$LF[e]; + styleSheet.cssRules.length + ); + image.width = 75; + image.onclick = function () { + image.onclick = null; + image.src = "images/Zombies/Balloon/popped.png"; + image.style.animationPlayState = "paused"; + PlayAudio("balloon_pop"); + setTimeout(function () { + image.parentNode.removeChild(image); + if ($("dSunNum").style.visibility == "") { + AppearSun( + GetX(Math.floor(1 + Math.random() * oS.C)), + GetY(Math.floor(1 + Math.random() * oS.R)), + 75, + 1 + ); + } + }, 100); + }; + image.style.animation = `moveLeft${balloonId} ${ + 13 / $User.Visitor.TimeStep + }s linear, bobbing${balloonId} ${ + 2 / $User.Visitor.TimeStep + }s ease-in-out infinite`; + image.style.top = `${randomY}px`; + image.style.cursor = "pointer"; + image.style.zIndex = "999"; + image.addEventListener("animationend", () => { + image.parentNode.removeChild(image); + }); + PlayAudio("ballooninflate"); + // console.log(image); + // console.log(image.parentElement); + }, + AddZombiesFlag: function (d) { + if (Math.floor(Math.random() * 5) == 1) { + oP.Balloon(); + } + var g = oP, + c = oS.LargeWaveFlag, + e, + b = g.FlagHeadStep, + a = g.FlagNum; + SetVisible($("imgGQJC"), $("dFlagMeterContent")); + for (e in c) { + Math.floor(e) < a + ? SetStyle(c[e], { + visibility: "visible", + left: 150 - (e - 1) * b + "px", + }) + : SetVisible(c[e]); + } + PlayAudio("awooga"); + $User.HTML5 && + (function () { + oSym.addTask( + 2e3, + function () { + [ + function () { + PlayAudio( + ["groan1", "groan2"][ + Math.floor(Math.random() * 2) + ] + ); + }, + function () { + PlayAudio( + ["groan3", "groan4"][ + Math.floor(Math.random() * 2) + ] + ); + }, + function () { + PlayAudio( + ["groan5", "groan6"][ + Math.floor(Math.random() * 2) + ] + ); + }, + function () { + PlayAudio("groan1"); + oSym.addTask( + 150, + function () { + PlayAudio("groan5"); + }, + [] + ); + }, + function () { + PlayAudio("groan2"); + oSym.addTask( + 150, + function () { + PlayAudio("groan6"); + }, + [] + ); + }, + ][Math.floor(Math.random() * 3)](); + oSym.addTask(2e3, arguments.callee, []); + }, + [] + ); + })(); + g.ReadyFlag = 1; + g.FlagPrgs(d); + }, + SelectFlagZombie: function (j, d) { + var e = oP, + m = e.ArZ, + k = e.AZ, + s = k.length, + q, + r, + i = [], + g = 0, + n = oS.LargeWaveFlag[d], + c = false, + h = !n + ? 150 + : (PlayAudio("siren"), + (n.style.top = "5px"), + --j, + (i[g++] = oS.FlagZombie || oFlagZombie), + 30), + p, + b, + f = e.MustShowAtFlag, + a; + while (s--) { + if ((r = (q = k[s])[1]) > d) { + break; + } else { + m.push(q[0]); + --k.length; + c = true; + } + } + c && + m.sort(function (t, l) { + return t.prototype.Lvl - l.prototype.Lvl; + }); + if ((a = f[d])) { + s = a.length; + while (s--) { + j -= (i[g++] = a[s]).prototype.Lvl; + } + } + b = m[(s = (p = m.length) - 1)].prototype.Lvl; + while (j > 0) { + if (s && b > j) { + while (--s && m[s].prototype.Lvl > j) {} + p = s + 1; + b = m[s].prototype.Lvl; + } + j -= (i[g++] = m[Math.floor(Math.random() * p)]).prototype.Lvl; + } + e.NumZombies += g; + e.SetTimeoutZombie(i, h); + }, + SelectFlagZombie1: function (d) { + var h = oP, + c = [], + a = 0, + g = h.ArZ, + f = oS.LargeWaveFlag[h.FlagZombies], + e = h.SumToZombie, + b = !f + ? 150 + : ((f.style.top = "5px"), + --d, + (c[a++] = oS.FlagZombie || oFlagZombie), + 30); + while (d > 0) { + d -= (c[a++] = g[Math.floor(Math.random() * $SEql(d, e))]) + .prototype.Lvl; + } + h.NumZombies += a; + h.SetTimeoutZombie(c, b); + }, + SetTimeoutTomZombie: function (c) { + var f = [], + d = [], + e = 0, + a = c.length, + b, + g; + for (b in oGd.$Tombstones) { + g = b.split("_"); + d[e] = (f[e] = new c[ + Math.floor(Math.random() * a) + ]()).CustomBirth(g[0], g[1], 100); + ++e; + } + this.AppearUP(d, f, e); + }, + SetTimeoutWaterZombie: function (j, b, e, h) { + var f = oGd.$LF, + l = [], + c = f.length, + m = [], + k = [], + g = h.length, + a, + d = b - j + 1; + while (--c) { + f[c] == 2 && l.push(c); + } + a = l.length; + c = e; + while (c--) { + k[c] = (m[c] = new h[ + Math.floor(Math.random() * g) + ]()).CustomBirth( + l[Math.floor(Math.random() * a)], + Math.floor(j + Math.random() * d) + ); + } + this.AppearUP(k, m, e); + }, + AppearUP: function (a, c, b) { + oP.NumZombies += b; + asyncInnerHTML( + a.join(""), + function (h, f) { + EDPZ.appendChild(h); + var e = f.length, + g, + d; + while (e--) { + g = f[e]; + g.Birth.call(g); + SetBlock(g.Ele); + oSym.addTask( + 10, + function (l, k, i, j) { + k = Math.max(k - j, 0); + SetStyle(l, { + top: k + "px", + clip: "rect(0,auto," + (i += j) + "px,0)", + }); + k && + oSym.addTask(10, arguments.callee, [ + l, + k, + i, + j, + ]); + }, + [g.EleBody, (d = g.height), 0, d * 0.1] + ); + } + }, + c + ); + }, + SetZombie: function (j, b, e, h) { + var f = [], + l = [], + c = f.length, + m = [], + k = [], + g = h.length, + a, + d = b - j + 1; + while (--c) { + f[c] == 2 && l.push(c); + } + a = l.length; + c = e; + while (c--) { + k[c] = (m[c] = new h[ + Math.floor(Math.random() * g) + ]()).CustomBirth( + l[Math.floor(Math.random() * a)], + Math.floor(j + Math.random() * d) + ); + } + this.AppearUP1(k, m, e); + }, + AppearUP1: function (a, c, b) { + oP.NumZombies += b; + asyncInnerHTML( + a.join(""), + function (h, f) { + EDPZ.appendChild(h); + var e = f.length, + g, + d; + while (e--) { + g = f[e]; + g.Birth.call(g); + SetBlock(g.Ele); + oSym.addTask( + 10, + function (l, k, i, j) { + k = Math.max(k - j, 0); + SetStyle(l, { + top: k + "px", + clip: "rect(0,auto," + (i += j) + "px,0)", + }); + k && + oSym.addTask(10, arguments.callee, [ + l, + k, + i, + j, + ]); + }, + [g.EleBody, (d = g.height), 0, d * 0.1] + ); + } + }, + c + ); + }, + SetTimeoutZombie: function (b, d) { + var f = [], + c = [], + e = 0, + g = 0, + a = b.length; + while (e < a) { + c[e] = (f[e] = new b[e]()).prepareBirth(g); + g += d; + ++e; + } + asyncInnerHTML( + c.join(""), + function (k, j) { + EDPZ.appendChild(k); + var h = j.length; + while (h--) { + j[h].Birth(); + } + }, + f + ); + }, + FlagPrgs: function () { + var f = oP, + c = f.FlagZombies, + e = f.FlagToSumNum, + a = 139 - c * f.FlagHeadStep, + d = $SSml(c, e.a1, e.a2), + b; + f.FlagNum > (c = ++f.FlagZombies) + ? (($("imgFlagHead").style.left = a + "px"), + ($("imgFlagMeterFull").style.clip = + "rect(0,157px,21px," + (a + 11) + "px)"), + (b = $SEql(c, f.FlagToMonitor)) && + oSym.addTask( + 1690, + function (g) { + !g[1] && (g[0](), (g[1] = 1)); + }, + [b] + ), + oSym.addTask( + 1990, + function (g) { + var h = oP; + h.ReadyFlag == g++ && + ((h.ReadyFlag = g), h.FlagPrgs()); + }, + [c] + )) + : (($("imgFlagHead").style.left = "-1px"), + ($("imgFlagMeterFull").style.clip = "rect(0,157px,21px,0)")); + f.SelectFlagZombie.call(f, d, c); + f.UserDefinedFlagFunc && f.UserDefinedFlagFunc(); + }, + Monitor: function (a, b) { + a && a.f.apply(a.f, a.ar); + oP.UserDefinedFlagFunc = b ? b : null; + (function () { + oZ.traversalOf(); + oSym.addTask(10, arguments.callee, []); + })(); + }, + }, + oGd = { + Init: function () { + this.$ = []; + this.$Crater = []; + this.$Tombstones = {}; + this.$Torch = []; + this.$Plantern = []; + this.$LF = oS.LF; + this.$ZF = oS.ZF; + this.$Ice = []; + this.$JackinTheBox = 0; + this.$Balloon = new Array(oS.R + 1); + this.$Fog = []; + }, + add: function (c, a, b, d) { + (b = (d = this.$)[a]) && b.Die(); + d[a] = c; + }, + del: function (a) { + delete this.$[a.R + "_" + a.C + "_" + a.PKind]; + }, + MakeFog: function () { + var d = "", + g = (tx = ri = cj = 0), + c = oGd.$Fog, + b, + a = 2 * oS.HaveFog + 3, + e = (function () { + return function (f) { + var h = $User.Browser.IE && !$User.Browser.IE9; + d += + ''; + }; + })(); + for (ri = 1, tx = 0; ri < 7; g = 0, ri++) { + for (ci = 0; ci <= a; ci++) { + e((c[(b = ri + "_" + ci)] = "Fog" + b)); + g += 35; + } + tx += 90; + } + NewEle("dFog", "div", "", { innerHTML: d }, EDAll); + }, + MoveFogLeft: function (a) { + (function (c, d, b, e) { + d -= 50; + d > b + ? ((c.style.left = d + "px"), + oSym.addTask(5, arguments.callee, [c, d, b, e])) + : ((c.style.left = b + "px"), e && e()); + })($("dFog"), 900, GetX(oS.C - oS.HaveFog) - 30, a); + }, + MoveFogRight: function () { + if (arguments.callee.caller.caller == null) { + return; + } + (function (a, b) { + (b += 50) < 901 + ? ((a.style.left = b + "px"), + oSym.addTask(5, arguments.callee, [a, b])) + : (a.style.left = "900px"); + })($("dFog"), GetX(oS.C - oS.HaveFog) - 3); + }, + GatherFog: function (d, r, x, t, z) { + var c = d - x, + b = d + x, + q = r - t, + p = r + t, + e = [SetNone, SetBlock][z], + w = oS.C, + m = oS.R, + h = w + 1, + g = oS.HaveFog, + a = g * 2, + k = [], + l, + j, + u, + n = function (i) { + return (i - w) * 2 + a; + }, + s = function (i) { + return (i - w) * 2 + a - 2; + }; + if (c > 0) { + l = s(q > 0 ? q + 1 : 1); + j = n(p > h ? h : p - 1); + do { + l > -1 && k.push("Fog" + c + "_" + l); + } while (l++ < j); + } + if (b <= m) { + l = s(q > 0 ? q + 1 : 1); + j = n(p > h ? h : p - 1); + do { + l > -1 && k.push("Fog" + b + "_" + l); + } while (l++ < j); + } + ++c; + --b; + l = s(q < 1 ? 1 : q); + j = n(p > h ? h : p); + u = l; + do { + do { + l > -1 && k.push("Fog" + c + "_" + l); + } while (l++ <= j); + l = u; + } while (c++ < b); + for (l = 0; l < k.length; e($(k[l])), l++) {} + if (z) { + var y = oGd.$Torch, + f; + for (u in y) { + f = $P[y[u]]; + this.GatherFog(f.R, f.C, 1, 1, 0); + } + } + }, + }, + oZ = { + Init: function (b) { + this.$ = []; + this.$R = []; + var a; + for (a = b; a; this.$[a] = [], this.$R[a--] = []) {} + }, + add: function (b, a) { + (a = oZ.$[b.R]).push(b); + a.sort(function (d, c) { + return d.AttackedLX - c.AttackedLX; + }); + a.RefreshTime = oSym.Now; + }, + getZ0: function (b, d) { + if (d < 1 || d > oS.R) { + return; + } + var c = 0, + e = this.$[d], + f, + a = e.length; + while (c < a && (f = e[c++]).AttackedLX <= b) { + if (f.PZ && f.HP && f.AttackedRX >= b) { + return f; + } + } + }, + getZ1: function (h, b) { + if (b < 1 || b > oS.R) { + return; + } + var d = 0, + j = this.$[b], + f = this.$R[b], + g, + c, + k, + e; + (k = j.RefreshTime) == f.RefreshTime + ? (g = f) + : ((g = (this.$R[b] = j.slice(0)).sort(function (l, i) { + return i.AttackedRX - l.AttackedRX; + })).RefreshTime = k); + e = g.length; + while (d < e && (c = g[d++]).AttackedRX >= h) { + if (c.PZ && c.HP && c.AttackedLX <= h) { + return c; + } + } + }, + getArZ: function (e, d, b) { + var g = 0, + l = this.$[b], + f = [], + k = 0, + c, + h = l.length, + j; + while (g < h && (j = (c = l[g++]).AttackedLX) < d) { + c.PZ && c.HP && (j > e || c.AttackedRX > e) && (f[k++] = c); + } + return f; + }, + getRangeLeftZ: function (e, d, b) { + if (b < 1 || b > oS.R) { + return; + } + var g = 0, + l = this.$[b], + f = [], + k = 0, + c, + h = l.length, + j; + while (g < h && (j = (c = l[g++]).AttackedLX) < d) { + if (c.PZ && c.HP && (j > e || c.AttackedRX > e)) { + return c; + } + } + return; + }, + moveTo: function (g, f, c) { + var b = this.$[f], + a = this.$[c], + e = b.length, + d; + while (e--) { + (o = b[e]).id == g && + (b.splice(e, 1), + (o.R = c), + a.push(o), + (a.sort(function (i, h) { + return i.AttackedLX - h.AttackedLX; + }).RefreshTime = b.RefreshTime = + oSym.Now), + (e = 0)); + } + }, + traversalOf: function () { + var a, + b = this.$, + j, + l = 0, + d = 0, + k = 1e3, + i, + h, + f = [ + function (n) { + d = 1; + k = i; + }, + function (n) { + (i = n.AttackedLX) > k && (l = d = 1); + k = i; + }, + ], + e = b.length, + m, + c, + g; + (function (r) { + var q = (j = b[r]).length, + n = arguments.callee, + p = oT.$[r], + s = oT.$L[r]; + while (q--) { + a = j[q]; + a.HP && + a.PZ && + a.ZX < 901 && + oT["chkD" + a.WalkDirection](a, r, p, s); + !a.HP + ? (j.splice(q, 1), f[0](a)) + : f[a.ChkActs(a, r, j, q)](a); + } + l + ? ((l = d = 0), + j.sort(function (u, t) { + return u.AttackedLX - t.AttackedLX; + }), + (j.RefreshTime = oSym.Now)) + : d && ((d = 0), (j.RefreshTime = oSym.Now)); + --r && oSym.addTask(0, n, [r]); + })(b.length - 1); + }, + }, + oT = { + Init: function (b) { + this.$ = []; + this.$L = []; + for (var a = b; a; ) { + this.$[a] = []; + this.$L[a--] = []; + } + }, + add: function (f, c, g) { + if (f <= 0 || f > oS.R) { + return; + } + var e = this.$[f], + d = c.length, + b; + while (d--) { + b = c[d]; + e.push([b[0], b[1], b[2], g]); + } + e.sort(function (i, h) { + return h[1] - i[1]; + }); + e.RefreshTime = new Date(); + }, + chkD0: function (g, e, d, h) { + var f = g.AttackedLX, + c = 0, + b, + a; + while (c < d.length && (b = d[c])[1] >= f) { + (a = $P[b[3]]).canTrigger && + b[0] <= f && + a.TriggerCheck(g, b[2], c); + ++c; + } + }, + chkD1: function (b, e, c, g) { + var j = b.AttackedLX, + h = b.AttackedRX, + f = 0, + m, + l, + d, + a, + k; + (l = c.RefreshTime) == g.RefreshTime + ? (m = g) + : ((m = (this.$L[e] = c.slice(0)).sort(function (n, i) { + return n[0] - i[0]; + })).RefreshTime = l); + while (f < m.length && (d = m[f])[0] <= h) { + (a = $P[d[3]]).canTrigger && + d[1] >= h && + a.TriggerCheck(b, d[2], f); + ++f; + } + }, + delP: function (e) { + var b = e.oTrigger, + f = e.id, + d, + a, + c; + for (d in b) { + for ( + c = (a = this.$[d]).length; + c--; + a[c][3] == f && a.splice(c, 1) + ) {} + a.RefreshTime = new Date(); + } + }, + indexOf: function (j, d) { + var f = new RegExp(d + ",", "g"), + h = (j.toString() + ",").replace(f, "┢,").replace(/[^,┢]/g, ""), + i = 0, + g = 0, + b = []; + for (; (g = h.indexOf("┢", g)) > 0; b.push((g++ - i++ - 2) / 3)) {} + return b; + }, + }, + asyncInnerHTML = function (d, c, a) { + var b = $n("div"), + e = document.createDocumentFragment(); + b.innerHTML = d; + (function (g) { + var f = arguments.callee; + g-- + ? (e.appendChild(b.firstChild), + setTimeout(function () { + f(g); + }, 0)) + : c(e, a); + })(b.childNodes.length); + }, + WhichMouseButton = function (a) { + a = window.event || a; + var b = $User.Browser; + return !b.Gecko + ? $SEql(a.button, { 1: 1, 0: b.IE ? 2 : 1, 2: 2, default: 1 }) + : $SEql(a.which, { 1: 1, 3: 2, default: 1 }); + }, + GroundOnmousedown = function (i) { + i = window.event || i; + var a = + i.clientX - EDAlloffsetLeft + EBody.scrollLeft || + EElement.scrollLeft, + k = i.clientY + EBody.scrollTop || EElement.scrollTop, + g = ChosePlantX(a), + h = ChosePlantY(k), + d = g[0], + c = h[0], + f = h[1], + b = g[1], + j = GetAP(a, k, f, b); + switch (oS.Chose) { + case 1: + WhichMouseButton(i) < 2 + ? GrowPlant(j[0], d, c, f, b) + : (PlayAudio("tap"), CancelPlant()); + break; + case -1: + WhichMouseButton(i) < 2 + ? (PlayAudio("plant2"), ShovelPlant(j)) + : (PlayAudio("tap"), CancelShovel()); + } + }, + GetAP = function (a, h, d, c) { + var f, + i = oGd.$, + e, + g = [], + b; + for ( + f = 0; + f < 4; + g.push((e = i[d + "_" + c + "_" + f++])), + e && + !( + a < e.pixelLeft || + a > e.pixelRight || + h < e.pixelTop || + h > e.pixelBottom + ) && + (b = e) + ) {} + return [g, b]; + }, + GroundOnkeydown = function (b) { + var a; + if ((a = (b || event).keyCode) == 27) { + switch (oS.Chose) { + case 1: + CancelPlant(); + break; + case -1: + CancelShovel(); + } + return false; + } else { + !oS.Chose && KeyBoardGrowPlant(a); + } + }, + KeyBoardGrowPlant = function (b, a) { + a = a || 0; + if (b > 47 && b < 58) { + switch (a) { + case 0: + ChosePlant( + { clientX: 450, clientY: 300 }, + String.fromCharCode(b) + ); + } + } + }, + GroundOnmousemove = function () {}, + GroundOnmousemove1 = function (j) { + j = window.event || j; + var d = + j.clientX - EDAlloffsetLeft + EBody.scrollLeft || + EElement.scrollLeft, + b = j.clientY + EBody.scrollTop || EElement.scrollTop, + k = oS.ChoseCard, + h = ChosePlantX(d), + i = ChosePlantY(b), + f = h[0], + c = i[0], + g = i[1], + a = h[1], + m = GetAP(d, b, g, a); + var l = ArCard[k].PName.prototype; + SetStyle($("MovePlant"), { + left: (d - 0.5 * (l.beAttackedPointL + l.beAttackedPointR)) * 10 / 9 + "px", + top: (b + 20 - l.height) * 10 / 9 + "px", + }); + l.CanGrow(m[0], g, a) + ? SetStyle($("MovePlantAlpha"), { + visibility: "visible", + left: f + l.GetDX() + "px", + top: c - l.height + l.GetDY(g, a, m[0]) + "px", + }) + : SetHidden($("MovePlantAlpha")); + }, + GroundOnmousemove2 = function (k) { + k = window.event || k; + var d = + k.clientX - EDAlloffsetLeft + EBody.scrollLeft || + EElement.scrollLeft, + b = k.clientY + EBody.scrollTop || EElement.scrollTop, + m = oS.ChoseCard, + h = ChosePlantX(d), + i = ChosePlantY(b), + f = h[0], + c = i[0], + g = i[1], + a = h[1], + n = GetAP(d, b, g, a); + var j = n[1], + l = j ? j.id : "", + p = oS.MPID; + p != l && + (p && SetAlpha($(p).childNodes[1], 100, 1), + (oS.MPID = l) && SetAlpha($(l).childNodes[1], 60, 0.6)); + SetStyle($("tShovel"), { left: d - 15 + "px", top: b - 16 + "px" }); + }, + DisplayZombie = function () { + SetVisible($("bShowHandBook")); + /* SetVisible($("bMainMenu")); */ + var d = oP.AZ.slice(0), + b = d.length, + c, + g, + h = $("dZombie"), + f = [], + e = [], + a; + while (b--) { + d[b][0].prototype.CanDiaplay == 0 && d.splice(b, 1); + } + c = b = d.length; + while (c--) { + f.push(Math.floor(150 + Math.random() * 444)); + } + f.sort(function (j, i) { + return j - i; + }); + while (b) { + g = d[(a = Math.floor(Math.random() * b))][0].prototype; + g.CanDisplay + ? (d.splice(a, 1), + (e[b--] = g.getHTML( + "", + Math.floor(50 + Math.random() * 201) - g.width * 0.5, + f[b] - g.height, + 1, + "block", + "auto", + g.GetDTop, + g.PicArr[g.StandGif] + ))) + : --b; + } + asyncInnerHTML(e.join(""), function (i) { + h.appendChild(i); + }); + }, + AutoSelectCard = function () { + var c = oS.ArCard, + b = -1, + a = c.length; + while (++b < a) { + SelectCard(c[b].prototype.EName); + } + }, + InitPCard = function () { + var d = "", + f, + e = oS.ArCard, + a = e.length, + b = 0, + c; + while (b < a) { + f = e[b]; + c = f.prototype; + if (!c.CanSelect) { + ++b; + continue; + } + ArPCard[(EName = c.EName)] = { Select: 0, PName: f }; + d += + '
' + + c.SunNum + + "
"; + b++ % 6 == 5 && (d += "
"); + } + $("dPCard").innerHTML = d; + }, + InitHandBookPCard = function () { + PlayAudio("gravebutton"); + var d = "", + g, + f, + e = [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + oBalloon, + ], + a = e.length, + b = 0, + c; + while (b < a) { + g = e[b]; + c = g.prototype; + f = c.EName; + d += + '
' + + c.SunNum + + "
"; + b++ % 6 == 5 && (d += "
"); + } + $("dHandBookPCard").innerHTML = d; + ViewProducePlant(e[0]); + $("dHandBookPZ").className = "WindowFrame Almanac_PlantBack"; + SetVisible($("dHandBookPZ")); + SetNone($("dHandBookZ")); + SetBlock($("dHandBookP")); + }, + InitHandBookZCard = function () { + PlayAudio("gravebutton"); + var d = "", + g, + f, + e = [ + oZombie, + oConeheadZombie, + oPoleVaultingZombie, + oBucketheadZombie, + oFlagZombie, + oNewspaperZombie, + oScreenDoorZombie, + oFootballZombie, + oHeiFootballZombie, + oDancingZombie, + oBackupDancer, + oDuckyTubeZombie1, + oSnorkelZombie, + oZomboni, + oDolphinRiderZombie, + oBalloonZombie, + oJackinTheBoxZombie, + oImp, + oCZombie, + oCConeheadZombie, + oCBucketheadZombie, + oEunZombie, + othugZombie, + oZZ, + oEmperor, + oCXZombie, + oXBZombie, + oJX, + oJY, + oLGBOSS, + oWarshipsZombie, + oSubZombie, + oWJY, + oMustacheZombie, + oTrashZombie, + oLionDanceZombie, + ], + a = e.length, + b = 0, + c; + while (b < a) { + g = e[b]; + c = g.prototype; + f = c.EName; + d += + '
' + + c.SunNum + + "
"; + b++; + } + $("dHandBookZCard").innerHTML = d; + ViewProduceZombie(e[0]); + $("dHandBookPZ").className = "WindowFrame Almanac_ZombieBack"; + SetVisible($("dHandBookPZ")); + SetNone($("dHandBookP")); + SetBlock($("dHandBookZ")); + }, + ViewProducePlant = function (b) { + PlayAudio("tap"); + var a = b.prototype; + $("pHandBookPlant").style.backgroundImage = + "url(" + a.PicArr[a.StaticGif] + ")"; + $("dProducePlant").innerHTML = a.Produce; + innerText($("dHandBookPlantName"), a.CName); + innerText($("spSunNum"), a.SunNum); + innerText($("spCoolTime"), a.coolTime + "s"); + $("pPlantBack").style.backgroundPosition = + -200 * a.BookHandBack + "px 0"; + }, + ViewProduceZombie = function (b) { + PlayAudio("tap"); + var a = b.prototype; + $("pHandBookZombie").style.background = + "url(" + + a.PicArr[a.StaticGif] + + ") no-repeat scroll " + + a.BookHandPosition; + $("dProduceZombie").innerHTML = a.Produce; + innerText($("dHandBookZombieName"), a.CName); + $("pZombieBack").style.backgroundPosition = + -200 * a.BookHandBack + "px 0"; + }, + ViewCardTitle = function (b, c) { + c = c || window.event; + var f = $("dTitle"), + a = b.prototype; + f.innerHTML = + a.CName + + "
cooldown:" + + a.coolTime + + "s
" + + (oS.DKind && a.night + ? 'Nocturnal - sleeps during the day
' + + a.Tooltip + : a.Tooltip || + '' + a.Produce + ""); + SetStyle(f, { + left: + c.clientX + + (EBody.scrollLeft || EElement.scrollLeft) - + 3 + + "px", + top: c.clientY + 18 + EBody.scrollTop || EElement.scrollTop + "px", + visibility: "visible", + }); + }, + SelectCard = function (c) { + PlayAudio("tap"); + var h = $("Card" + c).childNodes, + f = h[0], + b = ArPCard[c], + i = b.PName.prototype, + g, + a, + j, + e = $("btnOK"); + if (!b.Select) { + if (!(ArPCard.SelNum |= 0)) { + e.disabled = ""; + e.style.color = "#FC6"; + } else { + if (ArPCard.SelNum > 9) { + return; + } + } + ++ArPCard.SelNum; + b.Select = 1; + oS.StaticCard && + ((g = NewEle( + "dCard" + c, + "div", + "", + { + onclick: function () { + SelectCard(c); + }, + }, + $("dCardList") + )), + NewImg(0, f.src, "width:100px;height:120px", g), + innerText(NewEle("sSunNum" + c, "span", 0, 0, g), i.SunNum), + (f.style.top = "-42px")); + } else { + b.Select = 0; + !--ArPCard.SelNum && + ((e.disabled = "disabled"), (e.style.color = "#888")); + (g = $("dCard" + c)).onclick = null; + ClearChild(g.firstChild, g.childNodes[1], g.lastChild, g); + f.style.top = 0; + } + }, + ResetSelectCard = function () { + var b, + a = $("btnOK"); + for (b in ArPCard) { + ArPCard[b].Select && SelectCard(b); + } + a.disabled = "disalbed"; + a.style.color = "#888"; + }, + LetsGO = function () { + var e = $("dCardList"), + g = 0, + k = e.childNodes.length, + f, + h, + l, + c, + j, + a, + b = document.body; + SetStyle($("dTop"), { left: "105px", top: 0 }); + e.style.left = 0; + SetVisible(e); + while (g < k) { + (function (d) { + f = (j = e.childNodes[d]).id.substr(5); + l = (h = ArPCard[f].PName).prototype; + j.onclick = function (i) { + ChosePlant(i, d); + }; + j.onmouseover = function () { + SetVisible($("dTitle")); + ViewPlantTitle((oS.MCID = d)); + }; + j.onmouseout = function () { + SetHidden($("dTitle")); + }; + j.firstChild.style.top = "-60px"; + (a = j.lastChild).id = "sSunNum" + d; + innerText(a, l.SunNum); + ArCard.push({ DID: j.id, CDReady: 0, SunReady: 0, PName: h }); + })(g++); + } + b.onkeydown = function (d) { + GroundOnkeydown(d); + }; + b.onmousedown = function (d) { + GroundOnmousedown(d); + }; + b.onmousemove = function (d) { + GroundOnmousemove(d); + }; + SetVisible(e); + !oS.BrainsNum && CustomSpecial(oBrains, oS.R - 1, -2); + ( + oS.StartGame || + function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + NewMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor(oS.Monitor, oS.UserDefinedFlagFunc); + BeginCool(); + oS.DKind && AutoProduceSun(50); + oSym.addTask( + 1500, + function () { + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }, + [] + ); + }); + } + )(); + oS.StartTime = oSym.Now; + }, + ViewPlantTitle = function (b) { + var f = $("dTitle"), + e = ArCard[b], + c = e.PName.prototype, + a = c.CName; + !oS.CardKind && + ((a += "
cooldown:" + c.coolTime + "s
" + c.Tooltip), + !e.CDReady && + (a += '
ReLoading...')); + !e.SunReady && + (a += '
Not enough sunlight!'); + f.innerHTML = a; + SetStyle(f, { top: 60 * b + "px", left: EDAlloffsetLeft + 100 + "px" }); + }, + BeginCool = function () { + var b = ArCard.length, + c, + d, + a, + e; + while (b--) { + a = (c = (d = ArCard[b]).PName.prototype).coolTime; + e = c.SunNum; + switch (a) { + case 0: + case 7.5: + d.CDReady = 1; + e <= oS.SunNum && + ((d.SunReady = 1), + ($(d.DID).childNodes[0].style.top = "0")); + break; + case 30: + DoCoolTimer(b, 20); + break; + default: + DoCoolTimer(b, 35); + } + } + }, + ImmediatelyCool = function () { + var b = ArCard.length, + c, + d, + a, + e; + while (b--) { + a = (c = (d = ArCard[b]).PName.prototype).coolTime; + e = c.SunNum; + d.CDReady = 1; + d.SunReady = 1; + $(d.DID).childNodes[0].style.top = 0; + } + }, + MonitorCard = function (d) { + var b = ArCard.length, + c, + a = Number(ESSunNum.innerHTML); + a != oS.SunNum && (oS.SunNum = Math.min(a, oS.SunNum)); + if (oS.Chose < 1) { + while (b--) { + (c = (d = ArCard[b]).PName.prototype).SunNum > oS.SunNum + ? (d.SunReady && (d.SunReady = 0), + ($(d.DID).childNodes[0].style.top = "-60px")) + : (!d.SunReady && (d.SunReady = 1), + d.CDReady && ($(d.DID).childNodes[0].style.top = 0)); + } + } else { + while (b--) { + (c = (d = ArCard[b]).PName.prototype).SunNum > oS.SunNum + ? d.SunReady && (d.SunReady = 0) + : !d.SunReady && (d.SunReady = 1); + } + } + ViewPlantTitle(oS.MCID); + }, + DoCoolTimer = function (c, b) { + var a = $(ArCard[c].DID); + NewEle( + "dCD1" + c, + "span", + "position:absolute;left:22px;top:22px;font-size:18px;font-weight:500;font-family:Verdana;color:#000", + "", + a + ); + NewEle( + "dCD2" + c, + "span", + "position:absolute;left:20px;top:20px;font-size:18px;font-weight:500;font-family:Verdana;color:#FF0", + "", + a + ); + (function (d, e) { + d > 0 + ? (innerText($("dCD1" + e), d), + innerText($("dCD2" + e), d), + oSym.addTask(50, arguments.callee, [(d - 0.5).toFixed(1), e])) + : (ClearChild($("dCD1" + e), $("dCD2" + e)), + (ArCard[e].CDReady = 1), + MonitorCard()); + })(b, c); + }, + ChosePlant = function (h, d) { + // PlayAudio("seedlift"); + var g = ArCard[(oS.ChoseCard = d)]; + if (!(g.CDReady && g.SunReady)) { + PlayAudio("buzzer"); + return; + } + PlayAudio("seedlift"); + h = window.event || h; + var b = + h.clientX - EDAlloffsetLeft + EBody.scrollLeft || + EElement.scrollLeft, + a = h.clientY + EBody.scrollTop || EElement.scrollTop, + j = g.PName.prototype, + e = ArCard.length, + f, + c = j.PicArr; + oS.Chose = 1; + !oS.CardKind + ? EditImg( + NewImg( + "MovePlant", + c[j.StaticGif], + "left:" + + b - + 0.5 * (j.beAttackedPointL + j.beAttackedPointR) + + "px;top:" + + a + + 20 - + j.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ) + : (NewImg( + "MovePlant", + j.PicArr[j.StandGif], + "left:" + + (b - 0.5 * (j.beAttackedPointL + j.beAttackedPointR)) + + "px;top:" + + (a + 20 - j.height) + + "px;z-index:254", + EDAll + ), + NewImg( + "MovePlantAlpha", + j.PicArr[j.StandGif], + "visibility:hidden;filter:alpha(opacity=40);opacity:0.4;z-index:30", + EDAll + )); + while (e--) { + $(ArCard[e].DID).childNodes[0].style.top = "-60px"; + } + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant = function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + MonitorCard(); + GroundOnmousemove = function () {}; + }, + ShovelPlant = function (a) { + PlayAudio("plant2"); + var b = a[0], + c = a[1]; + c && (c.PKind || !(b[1] || b[2])) && (c.Die(), (oS.MPID = "")); + CancelShovel(); + }, + ChoseShovel = function (a) { + PlayAudio("shovel"); + WhichMouseButton(a) < 2 && + (SetHidden($("imgShovel")), + NewImg( + "tShovel", + "images/interface/Shovel/0.gif", + "left:" + + (a.clientX - 10) + + "px;top:" + + (a.clientY + document.body.scrollTop - 17) + + "px;z-index:1", + EDAll + ), + (oS.Chose = -1), + (GroundOnmousemove = GroundOnmousemove2), + StopBubble(a)); + }, + CancelShovel = function (a) { + var b = oS.MPID; + ClearChild($("tShovel")); + oS.Chose = 0; + SetVisible($("imgShovel")); + b && SetAlpha($(b).childNodes[1], 100, 1); + GroundOnmousemove = function () {}; + }, + StopBubble = function (a) { + window.event ? (event.cancelBubble = true) : a.stopPropagation(); + }, + GrowPlant = function (l, d, c, e, b) { + var j = oS.ChoseCard, + f = ArCard[j], + h = f.PName, + k = h.prototype, + i = k.coolTime, + a, + g = oGd.$LF[e]; - // Check if the plant can grow at the selected location - if (k.CanGrow(l, e, b)) { - // Play planting audio based on soil type - PlayAudio( - g != 2 - ? "plant" + Math.floor(1 + Math.random() * 2) - : "plant_water" - ); + // Check if the plant can grow at the selected location + if (k.CanGrow(l, e, b)) { + // Play planting audio based on soil type + PlayAudio( + g != 2 + ? "plant" + Math.floor(1 + Math.random() * 2) + : "plant_water" + ); - // Plant the selected plant at the specified location - !oS.CardKind - ? new h().Birth(d, c, e, b, l) - : asyncInnerHTML( - (a = new h()).CustomBirth(e, b, 0, "auto"), - function (n, m) { - EDPZ.appendChild(n); - m.Birth(); - }, - a - ); + // Plant the selected plant at the specified location + !oS.CardKind + ? new h().Birth(d, c, e, b, l) + : asyncInnerHTML( + (a = new h()).CustomBirth(e, b, 0, "auto"), + function (n, m) { + EDPZ.appendChild(n); + m.Birth(); + }, + a + ); - // Deduct sun points based on plant's cost - innerText(ESSunNum, (oS.SunNum -= k.SunNum)); + // Deduct sun points based on plant's cost + innerText(ESSunNum, (oS.SunNum -= k.SunNum)); - // Start cooldown timer for the plant - i && ((f.CDReady = 0), DoCoolTimer(j, k.coolTime)); + // Start cooldown timer for the plant + i && ((f.CDReady = 0), DoCoolTimer(j, k.coolTime)); - // Show planting animation - oSym.addTask(20, SetHidden, [ - SetStyle(g != 2 ? $("imgGrowSoil") : $("imgGrowSpray"), { - left: d - 30 + "px", - top: c - 30 + "px", - zIndex: 3 * e + 1, - visibility: "visible", - }), - ]); + // Show planting animation + oSym.addTask(20, SetHidden, [ + SetStyle(g != 2 ? $("imgGrowSoil") : $("imgGrowSpray"), { + left: d - 30 + "px", + top: c - 30 + "px", + zIndex: 3 * e + 1, + visibility: "visible", + }), + ]); - // List of seed plants - const seedPlants = [ - oSeedPeashooter, - oSeedSnowPea, - oSeedSquash, - oSeedPotatoMine, - oSeedWallNut, - oSeedRepeater2, - oSeedHypnoShroom, - oSeedPuffShroom, - oSeedPumpkinHead, - oSeedPlantern, - oSeedThreepeater, - oSeedTallNut, - oSeedTorchwood, - oSeedLilyPad, - oSeedCherryBomb, - oSeedChomper, - oSeedRepeater, - oSeedGarlic, - oSeedScaredyShroom, - oSeedBlover, - oSeedStarfruit, - oSeedCactus, - oSeedFumeShroom, - oSeedDoomShroom, - oSeedSeaShroom, - oSeedJalapeno, - oSeedTangleKelp, - oSeedIceShroom, - oSeedGloomShroom, - ]; - // Check if the chosen plant is a seed variant - if (seedPlants.includes(h)) { - // Hide the card instead of removing it - SetHidden($(f.DID)); - } - } + // List of seed plants + const seedPlants = [ + oSeedPeashooter, + oSeedSnowPea, + oSeedSquash, + oSeedPotatoMine, + oSeedWallNut, + oSeedRepeater2, + oSeedHypnoShroom, + oSeedPuffShroom, + oSeedPumpkinHead, + oSeedPlantern, + oSeedThreepeater, + oSeedTallNut, + oSeedTorchwood, + oSeedLilyPad, + oSeedCherryBomb, + oSeedChomper, + oSeedRepeater, + oSeedGarlic, + oSeedScaredyShroom, + oSeedBlover, + oSeedStarfruit, + oSeedCactus, + oSeedFumeShroom, + oSeedDoomShroom, + oSeedSeaShroom, + oSeedJalapeno, + oSeedTangleKelp, + oSeedIceShroom, + oSeedGloomShroom, + ]; + // Check if the chosen plant is a seed variant + if (seedPlants.includes(h)) { + // Hide the card instead of removing it + SetHidden($(f.DID)); + } + } - // Clear plant selection - CancelPlant(); - }; + // Clear plant selection + CancelPlant(); + }; (AutoProduceSun = function (a) { - // console.log("ROBLNET13 on github") - AppearSun( - GetX(Math.floor(1 + Math.random() * oS.C)), - GetY(Math.floor(1 + Math.random() * oS.R)), - a, - 1 - ); - oSym.addTask(Math.floor(9 + Math.random() * 3) * 100, AutoProduceSun, [a]); + // console.log("ROBLNET13 on github") + AppearSun( + GetX(Math.floor(1 + Math.random() * oS.C)), + GetY(Math.floor(1 + Math.random() * oS.R)), + a, + 1 + ); + oSym.addTask(Math.floor(9 + Math.random() * 3) * 100, AutoProduceSun, [a]); }), - (AppearSun = function (h, f, e, a) { - var b, - d, - g = "Sun" + Math.random(), - c = - "cursor:pointer;z-index:25;filter:alpha(opacity=80);opacity:0.8;left:" + - h + - "px;"; - switch (e) { - case 25: - c += "width:78px;height:78px"; - b = 39; - break; - case 15: - c += "width:46px;height:46px"; - b = 23; - break; - default: - c += "width:100px;height:100px"; - b = 55; - } - a - ? ((d = 0), oSym.addTask(10, MoveDropSun, [g, f])) - : ((d = f - b - 20), - (c += ";top:" + d + "px"), - oSym.addTask( - 1, - function (q, p, n, j, l, k, m, i) { - if (ArSun[q] && ArSun[q].C) { - SetStyle($(q), { - left: (p = p + j * k) + "px", - top: (n = n + Number(l[0])) + "px", - }); - l.shift(); - --m; - m > 0 && - (l.length == 0 && (l = [8, 16, 24, 32]), - oSym.addTask(i, arguments.callee, [ - q, - p, - n, - j, - l, - k, - m, - ++i, - ])); - } - }, - [ - g, - h, - d, - Math.floor(Math.random() * 4), - [-32, -24, -16, -8], - [-1, 1][Math.floor(Math.random() * 2)], - 8, - 2, - ] - ), - oSym.addTask(800, DisappearSun, [g], 3)); - ArSun[g] = { id: g, N: e, C: 1, left: h, top: d }; - NewImg(g, "images/interface/Sun.png", c, EDAll, { - onclick: function () { - ClickSun(this.id); - }, - }); - oS.AutoSun && oSym.addTask(100, ClickSun, [g]); - }), - (MoveDropSun = function (c, b) { - var a = ArSun[c]; - a && - a.C && - (a.top < b - 53 - ? (($(c).style.top = (a.top += 3) + "px"), - oSym.addTask(5, MoveDropSun, [c, b])) - : oSym.addTask(800, DisappearSun, [c])); - }), - (DisappearSun = function (b) { - var a = ArSun[b]; - a && a.C && (delete ArSun[b], ClearChild($(b))); - }), - (ClickSun = function (b) { - PlayAudio("points"); - var a = ArSun[b]; - a && a.C && ((a.C = 0), oSym.addTask(0, MoveClickSun, [b])); - }), - (MoveClickSun = function (b) { - var a = 15, - c = ArSun[b], - e = 85, - i = -20, - d = c.left, - h = c.top, - g = Math.round((d - e) / a), - f = Math.round((h - i) / a); - (function (k, l, n, s, m, r, j, q, p) { - (m -= q) > n - ? (SetStyle($(k), { left: m + "px", top: (r -= p) + "px" }), - oSym.addTask(j, arguments.callee, [ - k, - l, - n, - s, - m, - r, - (j += 0.3), - q, - p, - ])) - : (SetStyle($(k), { left: n + "px", top: s + "px" }), - Number(ESSunNum.innerHTML) != oS.SunNum && - (oS.SunNum = Math.min( - Number(ESSunNum.innerHTML), - oS.SunNum - )), - innerText( - ESSunNum, - (oS.SunNum = Math.min(oS.SunNum + l.N, 9990)) - ), - MonitorCard(), - delete ArSun[k], - oSym.addTask(20, ClearChild, [$(k)])); - })(b, c, e, i, d, h, 1, g, f); - }), - (AutoClickSun = function () { - var a, b; - for (b in ArSun) { - ArSun[b].C && ClickSun(b); - } - }), - (ShowLargeWave = function (a) { - PlayAudio("hugewave"); - NewImg( - "LargeWave", - "images/interface/LargeWave.gif", - "left:71px;top:249px;width:400px;height:200px;z-index:50", - EDAll - ); - oSym.addTask( - 4, - function (b, c, d) { - SetStyle($("LargeWave"), { - width: (b -= 57.2) + "px", - height: (c -= 6.8) + "px", - left: 500 - b * 0.5 + "px", - top: 300 - c * 0.5 + "px", - }); - b > 286 - ? oSym.addTask(4, arguments.callee, [b, c, d]) - : (oSym.addTask( - 460, - function () { - ClearChild($("LargeWave")); - }, - [] - ), - d && d()); - }, - [858, 102, a] - ); - }), - (ShowFinalWave = function () { - var a = function (b) { - PlayAudio("finalwave"); - NewImg( - "FinalWave", - "images/interface/FinalWave.gif", - "left:122px;top:194px;width:756px;height:213px;z-index:50", - EDAll - ); - oSym.addTask( - 4, - function (c, e, d) { - SetStyle($("FinalWave"), { - width: (c -= 50.4) + "px", - height: (e -= 14.2) + "px", - left: 500 - c * 0.5 + "px", - top: 300 - e * 0.5 + "px", - }); - c > 252 - ? oSym.addTask(4, arguments.callee, [c, e, d]) - : oSym.addTask( - d, - function () { - ClearChild($("FinalWave")); - }, - [] - ); - }, - [756, 213, b] - ); - }; - oP.FlagNum in oS.LargeWaveFlag - ? ShowLargeWave(function () { - oSym.addTask(560, a, [150]); - }) - : a(500); - }), - (ShowBOSS = function (a) { - PlayAudio("finalwave"); - NewImg( - "ShowBOSS", - "images/interface/BOSSWave.gif", - "left:71px;top:249px;width:858px;height:102px;z-index:50", - EDAll - ); - oSym.addTask( - 4, - function (b, c, d) { - SetStyle($("LargeWave"), { - width: (b -= 57.2) + "px", - height: (c -= 6.8) + "px", - left: 500 - b * 0.5 + "px", - top: 300 - c * 0.5 + "px", - }); - b > 286 - ? oSym.addTask(4, arguments.callee, [b, c, d]) - : (oSym.addTask( - 460, - function () { - ClearChild($("ShowBOSS")); - }, - [] - ), - d && d()); - }, - [858, 102, a] - ); - }), - (GameOver = function () { - PlayAudio("scream"); - NewImg( - "iGameOver", - "images/interface/ZombiesWon.png", - "width:900px;height:600px;z-index:255", - EDAll, - { - onclick: function () { - SelectModal(oS.Lvl); - }, - } - ); - oSym.Stop(); - }), - (PrepareGrowPlants = function (a) { - var b = function () { - PlayAudio("readysetplant"); - oSym.addTask( - 60, - function (d, c) { - var e = d.style; - e.backgroundPosition = "0 -108px"; - oSym.addTask( - 40, - function (g, h, f) { - h.backgroundPosition = "0 -216px"; - oSym.addTask( - 100, - function (j, i) { - ClearChild(j); - i(); - }, - [g, f] - ); - }, - [d, e, c] - ); - }, - [ - NewEle( - 0, - "div", - "position:absolute;overflow:hidden;background:url(images/interface/PrepareGrowPlants.png) no-repeat;width:255px;height:108px;z-index:50;left:" + - (oS.W * 0.5 - 77) + - "px;top:" + - (oS.H * 0.5 - 54) + - "px", - 0, - EDAll - ), - a, - ] - ); - }; - oS.HaveFog ? oGd.MoveFogLeft(b) : b(); - }), - (CustomPlants = function (b, a, c) { - new ArCard[b].PName().Birth(GetX(c), GetY(a), a, c, []); - }), - (CustomSpecial = function (c, b, d, a) { - new c().Birth(GetX(d), GetY(b), b, d, [], a); - }), - (CheckAutoSun = function (a) { - var b = a.checked ? 1 : 0; - b != oS.AutoSun && - (addCookie("JSPVZAutoSun", (oS.AutoSun = b)), b && AutoClickSun()); - }), - (GetNewCard = function (a, b, c) { - StopMusic(); - PlayAudio("winmusic"); - oSym.Clear(); - SetStyle(a, { - left: "350px", - top: "131px", - width: "200px", - height: "240px", - clip: "rect(0,auto,120px,0)", - cursor: "default", - }).onclick = null; - oSym.Init( - function (d, e) { - ++d < 100 - ? (SetAlpha(e, d, d * 0.01), - oSym.addTask(4, arguments.callee, [d, e])) - : (function () { - StopAudio("winmusic"); - PlayAudio("plantsgarden", true); - SetHidden(EDAll, $("dTop")); - var f = b.prototype; - $("iNewPlantCard").src = f.PicArr[f.CardGif]; - $("iNewPlantCard").style.width = 100 + "px"; - $("iNewPlantCard").style.height = 120 + "px"; - $("iNewPlantCard").style.top = 0 + "px"; - // $("iNewPlantCard").style.marginTop = - // 180 - f.height + "px"; - innerText($("dNewPlantName"), f.CName); - $("dNewPlantTooltip").innerHTML = f.Tooltip; - $("btnNextLevel").onclick = function () { - StopAudio("plantsgarden"); - SetHidden($("bMainMenu")); - SelectModal(c); - }; - SetStyle($("dNewPlant"), { - visibility: "visible", - zIndex: 255, - }); - SetVisible($("bMainMenu")); - })(); - }, - [0, $("DivA")] - ); - }), - (getCookie1 = function (b, g) { - var d = document.cookie, - f = d.split(";"), - c = f.length, - a, - e, - h; - while (c--) { - h = (a = f[c]).split("="); - if (h[0].replace(" ", "") == b) { - if ((e = h.length) == 2) { - return unescape(h[1]); - } else { - h.shift(); - h = h.join("=").split("&"); - if (g == undefined) { - return unescape(h); - } else { - e = h.length; - while (e--) { - if ( - (a = h[e].split("="))[0].replace(" ", "") == g - ) { - return unescape(a[1]); - } - } - } - } - } - } - return 0; - }), - (getCookie = function (b) { - var a = document.cookie.match( - new RegExp("(^| )" + b + "=([^;]*)(;|$)") - ); - if (a != null) { - return unescape(a[2]); - } - return 0; - }), - (addCookie = function (b, d, e) { - var c = b + "=" + escape(d); - if (e) { - var a = new Date(); - a.setTime(a.getTime + e * 3600 * 1e3); - c += ";expire=" + a.toGMTString(); - } - document.cookie = c; - }), - (deleteCookie = function (a) { - document.cookie = a + "=0;"; - }), - (WordUTF8 = - ''); + (AppearSun = function (h, f, e, a) { + var b, + d, + g = "Sun" + Math.random(), + c = + "cursor:pointer;z-index:25;filter:alpha(opacity=80);opacity:0.8;left:" + + h + + "px;"; + switch (e) { + case 25: + c += "width:78px;height:78px"; + b = 39; + break; + case 15: + c += "width:46px;height:46px"; + b = 23; + break; + default: + c += "width:100px;height:100px"; + b = 55; + } + a + ? ((d = 0), oSym.addTask(10, MoveDropSun, [g, f])) + : ((d = f - b - 20), + (c += ";top:" + d + "px"), + oSym.addTask( + 1, + function (q, p, n, j, l, k, m, i) { + if (ArSun[q] && ArSun[q].C) { + SetStyle($(q), { + left: (p = p + j * k) + "px", + top: (n = n + Number(l[0])) + "px", + }); + l.shift(); + --m; + m > 0 && + (l.length == 0 && (l = [8, 16, 24, 32]), + oSym.addTask(i, arguments.callee, [ + q, + p, + n, + j, + l, + k, + m, + ++i, + ])); + } + }, + [ + g, + h, + d, + Math.floor(Math.random() * 4), + [-32, -24, -16, -8], + [-1, 1][Math.floor(Math.random() * 2)], + 8, + 2, + ] + ), + oSym.addTask(800, DisappearSun, [g], 3)); + ArSun[g] = { id: g, N: e, C: 1, left: h, top: d }; + NewImg(g, "images/interface/Sun.png", c, EDAll, { + onclick: function () { + ClickSun(this.id); + }, + }); + oS.AutoSun && oSym.addTask(100, ClickSun, [g]); + }), + (MoveDropSun = function (c, b) { + var a = ArSun[c]; + a && + a.C && + (a.top < b - 53 + ? (($(c).style.top = (a.top += 3) + "px"), + oSym.addTask(5, MoveDropSun, [c, b])) + : oSym.addTask(800, DisappearSun, [c])); + }), + (DisappearSun = function (b) { + var a = ArSun[b]; + a && a.C && (delete ArSun[b], ClearChild($(b))); + }), + (ClickSun = function (b) { + PlayAudio("points"); + var a = ArSun[b]; + a && a.C && ((a.C = 0), oSym.addTask(0, MoveClickSun, [b])); + }), + (MoveClickSun = function (b) { + var a = 15, + c = ArSun[b], + e = 85, + i = -20, + d = c.left, + h = c.top, + g = Math.round((d - e) / a), + f = Math.round((h - i) / a); + (function (k, l, n, s, m, r, j, q, p) { + (m -= q) > n + ? (SetStyle($(k), { left: m + "px", top: (r -= p) + "px" }), + oSym.addTask(j, arguments.callee, [ + k, + l, + n, + s, + m, + r, + (j += 0.3), + q, + p, + ])) + : (SetStyle($(k), { left: n + "px", top: s + "px" }), + Number(ESSunNum.innerHTML) != oS.SunNum && + (oS.SunNum = Math.min( + Number(ESSunNum.innerHTML), + oS.SunNum + )), + innerText( + ESSunNum, + (oS.SunNum = Math.min(oS.SunNum + l.N, 9990)) + ), + MonitorCard(), + delete ArSun[k], + oSym.addTask(20, ClearChild, [$(k)])); + })(b, c, e, i, d, h, 1, g, f); + }), + (AutoClickSun = function () { + var a, b; + for (b in ArSun) { + ArSun[b].C && ClickSun(b); + } + }), + (ShowLargeWave = function (a) { + PlayAudio("hugewave"); + NewImg( + "LargeWave", + "images/interface/LargeWave.gif", + "left:71px;top:249px;width:400px;height:200px;z-index:50", + EDAll + ); + oSym.addTask( + 4, + function (b, c, d) { + SetStyle($("LargeWave"), { + width: (b -= 57.2) + "px", + height: (c -= 6.8) + "px", + left: 500 - b * 0.5 + "px", + top: 300 - c * 0.5 + "px", + }); + b > 286 + ? oSym.addTask(4, arguments.callee, [b, c, d]) + : (oSym.addTask( + 460, + function () { + ClearChild($("LargeWave")); + }, + [] + ), + d && d()); + }, + [858, 102, a] + ); + }), + (ShowFinalWave = function () { + var a = function (b) { + PlayAudio("finalwave"); + NewImg( + "FinalWave", + "images/interface/FinalWave.gif", + "left:122px;top:194px;width:756px;height:213px;z-index:50", + EDAll + ); + oSym.addTask( + 4, + function (c, e, d) { + SetStyle($("FinalWave"), { + width: (c -= 50.4) + "px", + height: (e -= 14.2) + "px", + left: 500 - c * 0.5 + "px", + top: 300 - e * 0.5 + "px", + }); + c > 252 + ? oSym.addTask(4, arguments.callee, [c, e, d]) + : oSym.addTask( + d, + function () { + ClearChild($("FinalWave")); + }, + [] + ); + }, + [756, 213, b] + ); + }; + oP.FlagNum in oS.LargeWaveFlag + ? ShowLargeWave(function () { + oSym.addTask(560, a, [150]); + }) + : a(500); + }), + (ShowBOSS = function (a) { + PlayAudio("finalwave"); + NewImg( + "ShowBOSS", + "images/interface/BOSSWave.gif", + "left:71px;top:249px;width:858px;height:102px;z-index:50", + EDAll + ); + oSym.addTask( + 4, + function (b, c, d) { + SetStyle($("LargeWave"), { + width: (b -= 57.2) + "px", + height: (c -= 6.8) + "px", + left: 500 - b * 0.5 + "px", + top: 300 - c * 0.5 + "px", + }); + b > 286 + ? oSym.addTask(4, arguments.callee, [b, c, d]) + : (oSym.addTask( + 460, + function () { + ClearChild($("ShowBOSS")); + }, + [] + ), + d && d()); + }, + [858, 102, a] + ); + }), + (GameOver = function () { + PlayAudio("scream"); + NewImg( + "iGameOver", + "images/interface/ZombiesWon.png", + "width:900px;height:600px;z-index:255", + EDAll, + { + onclick: function () { + SelectModal(oS.Lvl); + }, + } + ); + oSym.Stop(); + }), + (PrepareGrowPlants = function (a) { + var b = function () { + PlayAudio("readysetplant"); + oSym.addTask( + 60, + function (d, c) { + var e = d.style; + e.backgroundPosition = "0 -108px"; + oSym.addTask( + 40, + function (g, h, f) { + h.backgroundPosition = "0 -216px"; + oSym.addTask( + 100, + function (j, i) { + ClearChild(j); + i(); + }, + [g, f] + ); + }, + [d, e, c] + ); + }, + [ + NewEle( + 0, + "div", + "position:absolute;overflow:hidden;background:url(images/interface/PrepareGrowPlants.png) no-repeat;width:255px;height:108px;z-index:50;left:" + + (oS.W * 0.5 - 77) + + "px;top:" + + (oS.H * 0.5 - 54) + + "px", + 0, + EDAll + ), + a, + ] + ); + }; + oS.HaveFog ? oGd.MoveFogLeft(b) : b(); + }), + (CustomPlants = function (b, a, c) { + new ArCard[b].PName().Birth(GetX(c), GetY(a), a, c, []); + }), + (CustomSpecial = function (c, b, d, a) { + new c().Birth(GetX(d), GetY(b), b, d, [], a); + }), + (CheckAutoSun = function (a) { + var b = a.checked ? 1 : 0; + b != oS.AutoSun && + (addCookie("JSPVZAutoSun", (oS.AutoSun = b)), b && AutoClickSun()); + }), + (GetNewCard = function (a, b, c) { + StopMusic(); + PlayAudio("winmusic"); + oSym.Clear(); + SetStyle(a, { + left: "350px", + top: "131px", + width: "200px", + height: "240px", + clip: "rect(0,auto,120px,0)", + cursor: "default", + }).onclick = null; + oSym.Init( + function (d, e) { + ++d < 100 + ? (SetAlpha(e, d, d * 0.01), + oSym.addTask(4, arguments.callee, [d, e])) + : (function () { + StopAudio("winmusic"); + PlayAudio("plantsgarden", true); + SetHidden(EDAll, $("dTop")); + var f = b.prototype; + $("iNewPlantCard").src = f.PicArr[f.CardGif]; + $("iNewPlantCard").style.width = 100 + "px"; + $("iNewPlantCard").style.height = 120 + "px"; + $("iNewPlantCard").style.top = 0 + "px"; + // $("iNewPlantCard").style.marginTop = + // 180 - f.height + "px"; + innerText($("dNewPlantName"), f.CName); + $("dNewPlantTooltip").innerHTML = f.Tooltip; + $("btnNextLevel").onclick = function () { + StopAudio("plantsgarden"); + SetHidden($("bMainMenu")); + SelectModal(c); + }; + SetStyle($("dNewPlant"), { + visibility: "visible", + zIndex: 255, + }); + SetVisible($("bMainMenu")); + })(); + }, + [0, $("DivA")] + ); + }), + (getCookie1 = function (b, g) { + var d = document.cookie, + f = d.split(";"), + c = f.length, + a, + e, + h; + while (c--) { + h = (a = f[c]).split("="); + if (h[0].replace(" ", "") == b) { + if ((e = h.length) == 2) { + return unescape(h[1]); + } else { + h.shift(); + h = h.join("=").split("&"); + if (g == undefined) { + return unescape(h); + } else { + e = h.length; + while (e--) { + if ( + (a = h[e].split("="))[0].replace(" ", "") == g + ) { + return unescape(a[1]); + } + } + } + } + } + } + return 0; + }), + (getCookie = function (b) { + var a = document.cookie.match( + new RegExp("(^| )" + b + "=([^;]*)(;|$)") + ); + if (a != null) { + return unescape(a[2]); + } + return 0; + }), + (addCookie = function (b, d, e) { + var c = b + "=" + escape(d); + if (e) { + var a = new Date(); + a.setTime(a.getTime + e * 3600 * 1e3); + c += ";expire=" + a.toGMTString(); + } + document.cookie = c; + }), + (deleteCookie = function (a) { + document.cookie = a + "=0;"; + }), + (WordUTF8 = + ''); (ShowNameDiv = function () { - oSym.Start(); - (function (c) { - var b = c[0], - d = 3; - c.shift(); - while (d--) { - SetStyle(($("dNameDiv" + d).style.top = b[d] + "px")); - } - c.length && oSym.addTask(b[3], arguments.callee, [c]); - })([ - [-260, 96, 136, 10], - [-94, 96, 136, 10], - [-6, 127, 176, 10], - [-8, 134, 188, 17], - [-8, 130, 179, 17], - [-8, 136, 189, 17], - [-8, 134, 187, 10], - ]); + oSym.Start(); + (function (c) { + var b = c[0], + d = 3; + c.shift(); + while (d--) { + SetStyle(($("dNameDiv" + d).style.top = b[d] + "px")); + } + c.length && oSym.addTask(b[3], arguments.callee, [c]); + })([ + [-260, 96, 136, 10], + [-94, 96, 136, 10], + [-6, 127, 176, 10], + [-8, 134, 188, 17], + [-8, 130, 179, 17], + [-8, 136, 189, 17], + [-8, 134, 187, 10], + ]); }), - (ShowLoginDiv = function () { - $User.isAuthorWebsite ? PlayAudio("tap") : GotoAuthorWebsite(""); - }), - (CheckLogin = function () { - var c = $("txtName").value, - e = $("txtPass").value, - a = /^\w{3,10}$/, - b = /^[\u4e00-\u9fa5\w]{3,10}$/, - d = /^\w{3,20}$/; - return (a.exec(c) || b.exec(c)) && d.exec(e) ? true : false; - }), - (SelectModal = function (g) { - HiddenLevel(); - HiddenMiniGame(1); - HiddenRiddleGame(1); - StopMusic(); - PausedAudioArr = []; - g == undefined && (g = $User.Visitor.Progress); - oS.LvlClearFunc && oS.LvlClearFunc(); - var b = oS.GlobalVariables, - c = oS.LvlVariables, - e = oS.SelfVariables, - a = window, - d; - for (d in b) { - a[d] = b[d]; - } - for (d in c) { - a[d] = null; - } - for (d = e.length; d--; delete oS[e[d]]) {} - for (d in $Pn) { - $Pn[d] = null; - } - oS.GlobalVariables = {}; - oS.LvlVariables = {}; - oS.SelfVariables.length = 0; - SetHidden( - $("dCardList"), - $("tGround"), - $("dSelectCard"), - $("dTop"), - $("dMenu"), - $("dHandBook"), - $("dNewPlant"), - $("dProcess") - ); - SetNone($("dSurface"), $("iSurfaceBackground")); - ClearChild($("dFlagMeterTitleB").firstChild); - EDAll = $("dBody").replaceChild(EDNewAll, EDAll); - $("dBody").replaceChild(EDNewFlagMeter, $("dFlagMeter")); - LoadLvl(g); - }), - (GotoAuthorWebsite = function () { - window.open("https://github.com/ROBlNET13/pvz"); - return; - }), - (InitGame = function () { - var e = NewEle( - "dServer", - "div", - "position:absolute;line-height:28px;left:706px;top:245px;width:700px;height:100px;font-size:16px;color:#040;font-family:Tahoma;font-weight:bold;z-index:2;display:none", - 0, - $("dAll") - ), - c = $User.Server, - b = c.List, - a = $("dProcess"); - !$("dText1") && - a.insertBefore( - NewEle( - "dText1", - "div", - 0, - { - innerHTML: - 'Welcome to experienceThe new version of Plants vs. Zombies JS,The program is made by the player, not affiliated with any for-profit company.LonelyStar and Jiangnan Game Development Company and ROBLNET13 and ClaytonTDMAll rights reserved to the program,The game theme, material and sound effects are owned by Popcap Games, Electronic Arts, and individual background music sources are free music websites. If you need to reprint, please keep the above copyright instructions, otherwise it will be treated as piracy. The modded version is by ROBLNET13 and ClaytonTDM on Github. Do not remove this warning.', - }, - 0 - ), - a.firstChild - ); - LoadLvl(); - }), - (LoadLvl = function (e, c) { - oSym.Timer && oSym.Stop(); - var b = oSym.Now == c, - d = $User, - a = d.Visitor; - oS.CenterContent && ((e == 0 && b) || e != 0) && (oS.DisplayAD = true); - e = e || 0; - $("dServer") && e != 0 && SetNone($("dServer")); - oSym.Init( - function (g, f) { - (f = $("JSPVZ")) && ClearChild(f); - NewEle( - "JSPVZ", - "script", - 0, - { - src: "level/" + (oS.Lvl = g) + ".js", - type: "text/javascript", - }, - document.getElementsByTagName("head").item(0) - ); - }, - [e && b ? 0 : e] - ); - /* $("aLvlLink").href = + (ShowLoginDiv = function () { + $User.isAuthorWebsite ? PlayAudio("tap") : GotoAuthorWebsite(""); + }), + (CheckLogin = function () { + var c = $("txtName").value, + e = $("txtPass").value, + a = /^\w{3,10}$/, + b = /^[\u4e00-\u9fa5\w]{3,10}$/, + d = /^\w{3,20}$/; + return (a.exec(c) || b.exec(c)) && d.exec(e) ? true : false; + }), + (SelectModal = function (g) { + HiddenLevel(); + HiddenMiniGame(1); + HiddenRiddleGame(1); + StopMusic(); + PausedAudioArr = []; + g == undefined && (g = $User.Visitor.Progress); + oS.LvlClearFunc && oS.LvlClearFunc(); + var b = oS.GlobalVariables, + c = oS.LvlVariables, + e = oS.SelfVariables, + a = window, + d; + for (d in b) { + a[d] = b[d]; + } + for (d in c) { + a[d] = null; + } + for (d = e.length; d--; delete oS[e[d]]) {} + for (d in $Pn) { + $Pn[d] = null; + } + oS.GlobalVariables = {}; + oS.LvlVariables = {}; + oS.SelfVariables.length = 0; + SetHidden( + $("dCardList"), + $("tGround"), + $("dSelectCard"), + $("dTop"), + $("dMenu"), + $("dHandBook"), + $("dNewPlant"), + $("dProcess") + ); + SetNone($("dSurface"), $("iSurfaceBackground")); + ClearChild($("dFlagMeterTitleB").firstChild); + EDAll = $("dBody").replaceChild(EDNewAll, EDAll); + $("dBody").replaceChild(EDNewFlagMeter, $("dFlagMeter")); + LoadLvl(g); + }), + (GotoAuthorWebsite = function () { + window.open("https://github.com/ROBlNET13/pvz"); + return; + }), + (InitGame = function () { + var e = NewEle( + "dServer", + "div", + "position:absolute;line-height:28px;left:706px;top:245px;width:700px;height:100px;font-size:16px;color:#040;font-family:Tahoma;font-weight:bold;z-index:2;display:none", + 0, + $("dAll") + ), + c = $User.Server, + b = c.List, + a = $("dProcess"); + !$("dText1") && + a.insertBefore( + NewEle( + "dText1", + "div", + 0, + { + innerHTML: + 'Welcome to experienceThe new version of Plants vs. Zombies JS,The program is made by the player, not affiliated with any for-profit company.LonelyStar and Jiangnan Game Development Company and ROBLNET13 and ClaytonTDMAll rights reserved to the program,The game theme, material and sound effects are owned by Popcap Games, Electronic Arts, and individual background music sources are free music websites. If you need to reprint, please keep the above copyright instructions, otherwise it will be treated as piracy. The modded version is by ROBLNET13 and ClaytonTDM on Github. Do not remove this warning.', + }, + 0 + ), + a.firstChild + ); + LoadLvl(); + }), + (LoadLvl = function (e, c) { + oSym.Timer && oSym.Stop(); + var b = oSym.Now == c, + d = $User, + a = d.Visitor; + oS.CenterContent && ((e == 0 && b) || e != 0) && (oS.DisplayAD = true); + e = e || 0; + $("dServer") && e != 0 && SetNone($("dServer")); + oSym.Init( + function (g, f) { + (f = $("JSPVZ")) && ClearChild(f); + NewEle( + "JSPVZ", + "script", + 0, + { + src: "level/" + (oS.Lvl = g) + ".js", + type: "text/javascript", + }, + document.getElementsByTagName("head").item(0) + ); + }, + [e && b ? 0 : e] + ); + /* $("aLvlLink").href = "html/2-1" + (e && !isNaN(e) ? "-" + e : "") + ".htm"; */ - }), - (AppearTombstones = function (n, e, m) { - var r = oGd.$Tombstones, - k = [], - h = oS.R + 1, - b, - d = 0, - q, - a, - g, - f, - s = oGd.$, - l, - p; - while (--h) { - g = e; - while (g >= n) { - !r[h + "_" + g] && (k[d++] = [h, g]); - --g; - } - } - while (m--) { - q = k[(g = Math.floor(Math.random() * k.length))]; - r[(p = (h = q[0]) + "_" + (b = q[1]))] = 1; - for (f = 0; f < 4; f++) { - (l = s[p + "_" + f]) && l.Die(); - } - k.splice(g, 1); - a = NewEle( - "dTombstones" + h + "_" + b, - "div", - "position:absolute;width:86px;height:91px;left:" + - (GetX(b) - 43) + - "px;top:" + - (GetY(h) - 91) + - "px", - 0, - EDAll - ); - h = Math.floor(Math.random() * 4); - b = Math.floor(Math.random() * 2); - var c; - a.appendChild( - (c = NewEle( - "", - "div", - "background-position:-" + 86 * h + "px -" + 91 * b + "px", - { className: "Tom1" }, - a - ).cloneNode(false)) - ).className = "Tom2"; - } - }), - (ResetGame = function (b) { - AllAudioPauseCanceled(); - var a = oSym; - a.Start(); - innerText(b, "Speed"); - $("dMenu1").onclick = ClickMenu; - $("dMenu0").onclick = ShowSpeed; - SetNone($("dSurface"), $("dPause")); - $("dPauseAD").innerHTML = ""; - }), - (PauseGame = function (c, a) { - var b = oSym; - AllAudioPaused(); - b.Stop(); - innerText(c, "Speed"); - $("dMenu1").onclick = null; - $("dMenu0").onclick = null; - !a && SetBlock($("dSurface"), $("dPause")); - }), - (ClickMenu = function () { - oSym.Timer && - (AllAudioPaused(), - PlayAudio("pause"), - oSym.Stop(), - SetBlock($("dSurface")), - innerText($("dMenu0"), "Speed"), - ShowOptions()); - }), - (OptionsMenuDown = function (b, a) { - b.className = "OptionsMenuButtonDown"; - a.style.lineHeight = "102px"; - }), - (OptionsMenuUP = function (b, a) { - b.className = "OptionsMenuButton"; - a.style.lineHeight = "100px"; - }), - (ShowSpeed = function () { - var b = oSym; - b.Stop(); - PlayAudio("gravebutton"); - SetNone($("dOptionsMenuback"), $("dOptionsMenu")); - SetBlock($("dSpeedContainer")); - }), - (HiddenSpeed = function () { - PlayAudio("tap"); - SetNone($("dSpeedContainer")); - oS.Lvl && ResetGame($("dMenu0")); - }), - (CSpeed = function (a, c, b) { - $User.Visitor.NowStep = oSym.NowStep = a; - $User.Visitor.TimeStep = oSym.TimeStep = c; - $("dDisplaySpeed").innerHTML = b; - }), - (ShowLevel = function () { - PlayAudio("gravebutton"); - SetNone($("dOptionsMenu")); - SetBlock($("dAdvSmallContainer")); - }), - (HiddenLevel = function () { - PlayAudio("tap"); - SetNone($("dOptionsMenuback"), $("dAdvSmallContainer")); - oS.Lvl && (SetNone($("dSurface")), ResetGame($("dMenu0"))); - }), - (ShowMiniGame = function () { - PlayAudio("gravebutton"); - SetBlock($("dMiniSmallContainer")); - }), - (HiddenMiniGame = function (a) { - !a && PlayAudio("tap"); - SetNone($("dMiniSmallContainer")); - }), - (ShowRiddleGame = function () { - PlayAudio("gravebutton"); - SetBlock($("dRiddleSmallContainer")); - }), - (HiddenRiddleGame = function (a) { - !a && PlayAudio("tap"); - SetNone($("dRiddleSmallContainer")); - }), - (ShowOptions = function () { - PlayAudio(oS.Lvl ? "gravebutton" : "tap"); - SetBlock($("dOptionsMenuback"), $("dOptionsMenu")); - }), - (HiddenOptions = function () { - PlayAudio("gravebutton"); - PlayAudio("buttonclick"); - SetNone($("dOptionsMenuback"), $("dOptionsMenu")); - oS.Lvl && (SetNone($("dSurface")), ResetGame($("dMenu0"))); - }), - (ViewHandBook = function () { - SetNone($("dOptionsMenuback"), $("dOptionsMenu")); - oS.Lvl - ? (AllAudioPaused(), - PlayAudio("gravebutton"), - SetNone($("dSurface")), - oSym.Stop(), - innerText($("dMenu0"), "back to game"), - ($("dMenu1").onclick = null)) - : (AllAudioPaused(), PlayAudio("tap")); - PlayAudio("ChooseYourSeeds"); - SetVisible($("dHandBook")); - }), - (ReturnHandBookInx = function () { - PlayAudio("tap"); - SetNone($("dHandBookP"), $("dHandBookZ")); - SetHidden($("dHandBookPZ")); - }), - (CloseHandBook = function () { - PlayAudio("tap"); - StopAudio("ChooseYourSeeds"); - oS.Lvl - ? ResetGame($("dMenu0")) - : oSym.addTask(100, AllAudioPauseCanceled); - SetNone($("dHandBookP"), $("dHandBookZ")); - SetHidden($("dHandBookPZ"), $("dHandBook")); - }), - (ShowHelp = function () { - PlayAudio("tap"); - SetBlock($("dHelp")); - }), - (HiddenHelp = function () { - PlayAudio("tap"); - SetNone($("dHelp")); - }), - ($ = function (a) { - return document.getElementById(a); - }), - ($n = function (a) { - return document.createElement(a); - }), - (ClearChild = function () { - var a = arguments.length, - c; - while (a--) { - try { - c = arguments[a]; - c.parentNode.removeChild(c); - c = null; - } catch (b) {} - } - }), - (SetBlock = function () { - var a = arguments.length; - while (a--) { - arguments[a].style.display = "block"; - } - }), - (SetNone = function () { - var a = arguments.length; - while (a--) { - if (arguments[a] && arguments[a].style) { - arguments[a].style.display = "none"; - } - } - }), - (SetHidden = function () { - var a = arguments.length; - while (a--) { - arguments[a].style.visibility = "hidden"; - } - }), - (SetVisible = function () { - var a = arguments.length; - while (a--) { - arguments[a].style.visibility = "visible"; - } - }), - (SetAlpha = $User.Browser.IE6 - ? function (c, b, a) { - c.style.filter = "alpha(opacity=" + b + ")"; - } - : function (c, b, a) { - c.style.opacity = a; - }), - (SetStyle = function (d, b) { - var c = d.style, - a; - for (a in b) { - c[a] = b[a]; - } - return d; - }), - (NewImg = function (f, e, b, c, d) { - var a = $n("img"); - a.src = e; - b && (a.style.cssText = b); - if (d) { - for (v in d) { - a[v] = d[v]; - } - } - f && (a.id = f); - c && c.appendChild(a); - return a; - }), - (EditImg = function (e, f, c, b, a) { - f && (e.id = f); - c && (e.src = c); - b && SetStyle(e, b); - a && a.appendChild(e); - return e; - }), - (NewEle = function (h, b, d, a, e, f, g, c) { - g = $n(b); - h && (g.id = h); - d && (g.style.cssText = d); - if (a) { - for (c in a) { - g[c] = a[c]; - } - } - if (f) { - for (c in f) { - g.setAttribute(c, f[c]); - } - } - e && e.appendChild(g); - return g; - }), - (EditEle = function (g, f, a, e, b, c) { - if (f) { - for (c in f) { - g.setAttribute(c, f[c]); - } - } - a && SetStyle(g, a); - if (b) { - for (c in b) { - g[c] = b[c]; - } - } - e && e.appendChild(g); - return g; - }), - (NewO = function (b, a) { - return ((a = function () {}).prototype = b), a; - }), - (SetPrototype = function (d, c, a) { - a = d.prototype; - for (var b in c) { - a[b] = c[b]; - } - }), - (InheritO = function (d, i, c, g, b, h, f, e, a) { - var g = function () {}; - g.prototype = new d(); - i && SetPrototype(g, i); - if (c) { - a = g.prototype; - for (f in c) { - b = a[f].slice(0); - h = c[f]; - for (e in h) { - b[e] = h[e]; - } - g.prototype[f] = b; - } - } - return g; - }), - (Compare = function (e, b, a, c, d) { - return (d = e < b ? b : e > a ? a : e), c ? [c(d), d] : [d]; - }), - ($Switch = function (h, d, c, a, g, b, e) { - b = 0; - g = d.length; - e = c; - while (b < g) { - if (e(h, d[b])) { - break; - } - ++b; - } - return a[b]; - }), - ($SEql = function (c, b, a) { - return c in b ? b[c] : b["default"]; - }); + }), + (AppearTombstones = function (n, e, m) { + var r = oGd.$Tombstones, + k = [], + h = oS.R + 1, + b, + d = 0, + q, + a, + g, + f, + s = oGd.$, + l, + p; + while (--h) { + g = e; + while (g >= n) { + !r[h + "_" + g] && (k[d++] = [h, g]); + --g; + } + } + while (m--) { + q = k[(g = Math.floor(Math.random() * k.length))]; + r[(p = (h = q[0]) + "_" + (b = q[1]))] = 1; + for (f = 0; f < 4; f++) { + (l = s[p + "_" + f]) && l.Die(); + } + k.splice(g, 1); + a = NewEle( + "dTombstones" + h + "_" + b, + "div", + "position:absolute;width:86px;height:91px;left:" + + (GetX(b) - 43) + + "px;top:" + + (GetY(h) - 91) + + "px", + 0, + EDAll + ); + h = Math.floor(Math.random() * 4); + b = Math.floor(Math.random() * 2); + var c; + a.appendChild( + (c = NewEle( + "", + "div", + "background-position:-" + 86 * h + "px -" + 91 * b + "px", + { className: "Tom1" }, + a + ).cloneNode(false)) + ).className = "Tom2"; + } + }), + (ResetGame = function (b) { + AllAudioPauseCanceled(); + var a = oSym; + a.Start(); + innerText(b, "Speed"); + $("dMenu1").onclick = ClickMenu; + $("dMenu0").onclick = ShowSpeed; + SetNone($("dSurface"), $("dPause")); + $("dPauseAD").innerHTML = ""; + }), + (PauseGame = function (c, a) { + var b = oSym; + AllAudioPaused(); + b.Stop(); + innerText(c, "Speed"); + $("dMenu1").onclick = null; + $("dMenu0").onclick = null; + !a && SetBlock($("dSurface"), $("dPause")); + }), + (ClickMenu = function () { + oSym.Timer && + (AllAudioPaused(), + PlayAudio("pause"), + oSym.Stop(), + SetBlock($("dSurface")), + innerText($("dMenu0"), "Speed"), + ShowOptions()); + }), + (OptionsMenuDown = function (b, a) { + b.className = "OptionsMenuButtonDown"; + a.style.lineHeight = "102px"; + }), + (OptionsMenuUP = function (b, a) { + b.className = "OptionsMenuButton"; + a.style.lineHeight = "100px"; + }), + (ShowSpeed = function () { + var b = oSym; + b.Stop(); + PlayAudio("gravebutton"); + SetNone($("dOptionsMenuback"), $("dOptionsMenu")); + SetBlock($("dSpeedContainer")); + }), + (HiddenSpeed = function () { + PlayAudio("tap"); + SetNone($("dSpeedContainer")); + oS.Lvl && ResetGame($("dMenu0")); + }), + (CSpeed = function (a, c, b) { + $User.Visitor.NowStep = oSym.NowStep = a; + $User.Visitor.TimeStep = oSym.TimeStep = c; + $("dDisplaySpeed").innerHTML = b; + }), + (ShowLevel = function () { + PlayAudio("gravebutton"); + SetNone($("dOptionsMenu")); + SetBlock($("dAdvSmallContainer")); + }), + (HiddenLevel = function () { + PlayAudio("tap"); + SetNone($("dOptionsMenuback"), $("dAdvSmallContainer")); + oS.Lvl && (SetNone($("dSurface")), ResetGame($("dMenu0"))); + }), + (ShowMiniGame = function () { + PlayAudio("gravebutton"); + SetBlock($("dMiniSmallContainer")); + }), + (HiddenMiniGame = function (a) { + !a && PlayAudio("tap"); + SetNone($("dMiniSmallContainer")); + }), + (ShowRiddleGame = function () { + PlayAudio("gravebutton"); + SetBlock($("dRiddleSmallContainer")); + }), + (HiddenRiddleGame = function (a) { + !a && PlayAudio("tap"); + SetNone($("dRiddleSmallContainer")); + }), + (ShowOptions = function () { + PlayAudio(oS.Lvl ? "gravebutton" : "tap"); + SetBlock($("dOptionsMenuback"), $("dOptionsMenu")); + }), + (HiddenOptions = function () { + PlayAudio("gravebutton"); + PlayAudio("buttonclick"); + SetNone($("dOptionsMenuback"), $("dOptionsMenu")); + oS.Lvl && (SetNone($("dSurface")), ResetGame($("dMenu0"))); + }), + (ViewHandBook = function () { + SetNone($("dOptionsMenuback"), $("dOptionsMenu")); + oS.Lvl + ? (AllAudioPaused(), + PlayAudio("gravebutton"), + SetNone($("dSurface")), + oSym.Stop(), + innerText($("dMenu0"), "back to game"), + ($("dMenu1").onclick = null)) + : (AllAudioPaused(), PlayAudio("tap")); + PlayAudio("ChooseYourSeeds"); + SetVisible($("dHandBook")); + }), + (ReturnHandBookInx = function () { + PlayAudio("tap"); + SetNone($("dHandBookP"), $("dHandBookZ")); + SetHidden($("dHandBookPZ")); + }), + (CloseHandBook = function () { + PlayAudio("tap"); + StopAudio("ChooseYourSeeds"); + oS.Lvl + ? ResetGame($("dMenu0")) + : oSym.addTask(100, AllAudioPauseCanceled); + SetNone($("dHandBookP"), $("dHandBookZ")); + SetHidden($("dHandBookPZ"), $("dHandBook")); + }), + (ShowHelp = function () { + PlayAudio("tap"); + SetBlock($("dHelp")); + }), + (HiddenHelp = function () { + PlayAudio("tap"); + SetNone($("dHelp")); + }), + ($ = function (a) { + return document.getElementById(a); + }), + ($n = function (a) { + return document.createElement(a); + }), + (ClearChild = function () { + var a = arguments.length, + c; + while (a--) { + try { + c = arguments[a]; + c.parentNode.removeChild(c); + c = null; + } catch (b) {} + } + }), + (SetBlock = function () { + var a = arguments.length; + while (a--) { + arguments[a].style.display = "block"; + } + }), + (SetNone = function () { + var a = arguments.length; + while (a--) { + if (arguments[a] && arguments[a].style) { + arguments[a].style.display = "none"; + } + } + }), + (SetHidden = function () { + var a = arguments.length; + while (a--) { + arguments[a].style.visibility = "hidden"; + } + }), + (SetVisible = function () { + var a = arguments.length; + while (a--) { + arguments[a].style.visibility = "visible"; + } + }), + (SetAlpha = $User.Browser.IE6 + ? function (c, b, a) { + c.style.filter = "alpha(opacity=" + b + ")"; + } + : function (c, b, a) { + c.style.opacity = a; + }), + (SetStyle = function (d, b) { + var c = d.style, + a; + for (a in b) { + c[a] = b[a]; + } + return d; + }), + (NewImg = function (f, e, b, c, d) { + var a = $n("img"); + a.src = e; + b && (a.style.cssText = b); + if (d) { + for (v in d) { + a[v] = d[v]; + } + } + f && (a.id = f); + c && c.appendChild(a); + return a; + }), + (EditImg = function (e, f, c, b, a) { + f && (e.id = f); + c && (e.src = c); + b && SetStyle(e, b); + a && a.appendChild(e); + return e; + }), + (NewEle = function (h, b, d, a, e, f, g, c) { + g = $n(b); + h && (g.id = h); + d && (g.style.cssText = d); + if (a) { + for (c in a) { + g[c] = a[c]; + } + } + if (f) { + for (c in f) { + g.setAttribute(c, f[c]); + } + } + e && e.appendChild(g); + return g; + }), + (EditEle = function (g, f, a, e, b, c) { + if (f) { + for (c in f) { + g.setAttribute(c, f[c]); + } + } + a && SetStyle(g, a); + if (b) { + for (c in b) { + g[c] = b[c]; + } + } + e && e.appendChild(g); + return g; + }), + (NewO = function (b, a) { + return ((a = function () {}).prototype = b), a; + }), + (SetPrototype = function (d, c, a) { + a = d.prototype; + for (var b in c) { + a[b] = c[b]; + } + }), + (InheritO = function (d, i, c, g, b, h, f, e, a) { + var g = function () {}; + g.prototype = new d(); + i && SetPrototype(g, i); + if (c) { + a = g.prototype; + for (f in c) { + b = a[f].slice(0); + h = c[f]; + for (e in h) { + b[e] = h[e]; + } + g.prototype[f] = b; + } + } + return g; + }), + (Compare = function (e, b, a, c, d) { + return (d = e < b ? b : e > a ? a : e), c ? [c(d), d] : [d]; + }), + ($Switch = function (h, d, c, a, g, b, e) { + b = 0; + g = d.length; + e = c; + while (b < g) { + if (e(h, d[b])) { + break; + } + ++b; + } + return a[b]; + }), + ($SEql = function (c, b, a) { + return c in b ? b[c] : b["default"]; + }); ($SSml = function (d, c, a) { - var b = 0; - LX = c.length; - while (b < LX) { - if (d < c[b]) { - break; - } - ++b; - } - return a[b]; + var b = 0; + LX = c.length; + while (b < LX) { + if (d < c[b]) { + break; + } + ++b; + } + return a[b]; }), - ($SGrt = function (d, c, a) { - var b = 0; - LX = c.length; - while (b < LX) { - if (d > c[b]) { - break; - } - ++b; - } - return a[b]; - }), - (ImgSpriter = function (h, c, e, f, g) { - var b = e[f], - d = b[2], - a = $(h); - a && - ((a.style.backgroundPosition = b[0]), - oSym.addTask( - b[1], - function (j) { - j > -1 ? ImgSpriter(h, c, e, j, g) : g(h, c); - }, - [d] - )); - }), - (Ajax = function () {}), - (Date.prototype.format = function (b) { - var c = { - "M+": this.getMonth() + 1, - "d+": this.getDate(), - "h+": this.getHours(), - "m+": this.getMinutes(), - "s+": this.getSeconds(), - "q+": Math.floor((this.getMonth() + 3) / 3), - S: this.getMilliseconds(), - }; - if (/(y+)/.test(b)) { - b = b.replace( - RegExp.$1, - (this.getFullYear() + "").substr(4 - RegExp.$1.length) - ); - } - for (var a in c) { - if (new RegExp("(" + a + ")").test(b)) { - b = b.replace( - RegExp.$1, - RegExp.$1.length == 1 - ? c[a] - : ("00" + c[a]).substr(("" + c[a]).length) - ); - } - } - return b; - }), - (NewMusic = $User.HTML5 - ? function (a) { - NewAudio({ autoplay: true, loop: true, source: a }); - } - : function (a) { - !oS.Silence && ($("oEmbed").innerHTML = ""); - }), - (PauseMusic = $User.HTML5 - ? function () { - var a = oAudio[oS.LoadMusic]; - a.currentTime = 0; - a.pause(); - } - : function () { - $("oEmbed").innerHTML = ""; - }), - (StartAdventure = function (d) { - var c = $("ZombieHand"), - b = $("dAdventure"), - a = NewImg( - "", - "images/interface/ZombieHand.png", - "position:absolute;left:0", - c - ); - b.onclick = b.onmouseover = b.onmouseout = null; - SetBlock(c); - StopMusic(); - PlayAudio("losemusic"); - oSym.addTask( - 120, - function () { - PlayAudio("evillaugh"); - }, - [] - ); - oSym.addTask( - 7, - function (f, e, g) { - e.style.left = (g -= 330) + "px"; - --f && oSym.addTask(7, arguments.callee, [f, e, g]); - }, - [6, a, 0] - ); - $User.HTML5 - ? (function (g, h, e) { - var f = oAudio.evillaugh; - if (--e) { - g.style.backgroundPosition = ["top", "bottom"][h]; - oSym.addTask(10, arguments.callee, [g, h ? 0 : 1, e]); - } else { - (g.style.backgroundPosition = "top"), - (g.onclick = StartAdventure); - g.onmouseover = function () { - this.style.backgroundPosition = "bottom"; - }; - g.onmouseout = function () { - this.style.backgroundPosition = "top"; - }; - StopAudio("evillaugh"); - SelectModal(d); - c.innerHTML = ""; - } - })(b, 1, 50) - : (NewMusic("evillaugh"), - (function (f, g, e) { - if (--e) { - f.style.backgroundPosition = ["top", "bottom"][g]; - oSym.addTask(10, arguments.callee, [f, g ? 0 : 1, e]); - } else { - (f.style.backgroundPosition = "top"), - (f.onclick = StartAdventure); - f.onmouseover = function () { - this.style.backgroundPosition = "bottom"; - }; - f.onmouseout = function () { - this.style.backgroundPosition = "top"; - }; - SelectModal(d); - c.innerHTML = ""; - } - })(b, 1, 50)); - }), - (oAudio = {}), - (PausedAudioArr = []), - (NewAudio = $User.HTML5 - ? function (b) { - var a = b.source; - if (oAudio[a]) { - return; - } - var f = document.createElement("audio"), - c = b.autoplay, - g = b.loop, - m, - h = { mp3: "audio/mpeg" }, - k = b.preload, - l = b.callback, - j = ["mp3"], - e = j.length, - d; - f.autoplay = c ? true : false; - g && - f.addEventListener( - "ended", - function () { - f.play(); - }, - false - ); - while (e--) { - (m = document.createElement("source")).type = h[(d = j[e])]; - m.src = "audio/" + a + "." + "mp3"; - f.appendChild(m); - } - f.preload = k == undefined ? "auto" : ["auto", "meta", "none"][k]; - f.muted = oS.Silence; - l && f.addEventListener("canplaythrough", l, false); - return (oAudio[a] = f); - } - : function () {}), - (PlayMusic = $User.HTML5 - ? function (b) { - var a = oAudio[b]; - if (a) { - try { - a.currentTime = 0; - } catch (c) {} - a.play(); - } else { - NewMusic(b); - oAudio[b].play(); - } - } - : function (a) { - NewMusic(a); - }), - (PlayAudio = $User.HTML5 - ? function (c, a) { - var b = oAudio[c]; - b - ? ((b.loop = !!a), b.play()) - : NewAudio({ source: c, loop: !!a }).play(); - } - : function () {}), - (PauseAudio = $User.HTML5 - ? function (a) { - oAudio[a].pause(); - } - : function () {}), - (StopMusic = $User.HTML5 - ? function () { - var a = oAudio[oS.LoadMusic]; - try { - a.currentTime = 0; - } catch (b) {} - a.pause(); - } - : function () {}), - (StopAudio = $User.HTML5 - ? function (b) { - var a = oAudio[b]; - try { - a.currentTime = 0; - } catch (c) {} - a.pause(); - } - : function () {}), - (AllAudioPaused = $User.HTML5 - ? function () { - var a, b; - for (a in oAudio) { - b = oAudio[a]; - !(b.paused || b.ended) && (PausedAudioArr.push(a), b.pause()); - } - } - : function () {}), - (AllAudioPauseCanceled = $User.HTML5 - ? function () { - var a = PausedAudioArr.length; - while (a--) { - oAudio[PausedAudioArr[a]].play(); - } - PausedAudioArr.length = 0; - } - : function () {}), - (AllAudioMuted = function () { - var a; - for (a in oAudio) { - oAudio[a].muted = true; - } - }), - (AllAudioMuteCanceled = function () { - var a; - for (a in oAudio) { - oAudio[a].muted = false; - } - }), - (CheckSilence = $User.HTML5 - ? function (a) { - var b = a.checked ? 1 : 0; - b != oS.Silence && - (addCookie("JSPVZSilence", (oS.Silence = b)), - b ? AllAudioMuted() : AllAudioMuteCanceled()); - } - : function (a) { - var b = a.checked ? 1 : 0; - b != oS.Silence && - (addCookie("JSPVZSilence", (oS.Silence = b)), - b ? PauseMusic() : NewMusic(oS.StartGameMusic)); - }), - (AppearCard = function (h, f, e, a, t) { - // x, y, 植物id, 移动卡槽类型, 消失时间(默认 15s) - var b, - d, - g = "dCard" + Math.random(), - c = - "opacity:1;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto);left:" + - h + - "px;top:-1000", - t = t || 1500; + ($SGrt = function (d, c, a) { + var b = 0; + LX = c.length; + while (b < LX) { + if (d > c[b]) { + break; + } + ++b; + } + return a[b]; + }), + (ImgSpriter = function (h, c, e, f, g) { + var b = e[f], + d = b[2], + a = $(h); + a && + ((a.style.backgroundPosition = b[0]), + oSym.addTask( + b[1], + function (j) { + j > -1 ? ImgSpriter(h, c, e, j, g) : g(h, c); + }, + [d] + )); + }), + (Ajax = function () {}), + (Date.prototype.format = function (b) { + var c = { + "M+": this.getMonth() + 1, + "d+": this.getDate(), + "h+": this.getHours(), + "m+": this.getMinutes(), + "s+": this.getSeconds(), + "q+": Math.floor((this.getMonth() + 3) / 3), + S: this.getMilliseconds(), + }; + if (/(y+)/.test(b)) { + b = b.replace( + RegExp.$1, + (this.getFullYear() + "").substr(4 - RegExp.$1.length) + ); + } + for (var a in c) { + if (new RegExp("(" + a + ")").test(b)) { + b = b.replace( + RegExp.$1, + RegExp.$1.length == 1 + ? c[a] + : ("00" + c[a]).substr(("" + c[a]).length) + ); + } + } + return b; + }), + (NewMusic = $User.HTML5 + ? function (a) { + NewAudio({ autoplay: true, loop: true, source: a }); + } + : function (a) { + !oS.Silence && ($("oEmbed").innerHTML = ""); + }), + (PauseMusic = $User.HTML5 + ? function () { + var a = oAudio[oS.LoadMusic]; + a.currentTime = 0; + a.pause(); + } + : function () { + $("oEmbed").innerHTML = ""; + }), + (StartAdventure = function (d) { + var c = $("ZombieHand"), + b = $("dAdventure"), + a = NewImg( + "", + "images/interface/ZombieHand.png", + "position:absolute;left:0", + c + ); + b.onclick = b.onmouseover = b.onmouseout = null; + SetBlock(c); + StopMusic(); + PlayAudio("losemusic"); + oSym.addTask( + 120, + function () { + PlayAudio("evillaugh"); + }, + [] + ); + oSym.addTask( + 7, + function (f, e, g) { + e.style.left = (g -= 330) + "px"; + --f && oSym.addTask(7, arguments.callee, [f, e, g]); + }, + [6, a, 0] + ); + $User.HTML5 + ? (function (g, h, e) { + var f = oAudio.evillaugh; + if (--e) { + g.style.backgroundPosition = ["top", "bottom"][h]; + oSym.addTask(10, arguments.callee, [g, h ? 0 : 1, e]); + } else { + (g.style.backgroundPosition = "top"), + (g.onclick = StartAdventure); + g.onmouseover = function () { + this.style.backgroundPosition = "bottom"; + }; + g.onmouseout = function () { + this.style.backgroundPosition = "top"; + }; + StopAudio("evillaugh"); + SelectModal(d); + c.innerHTML = ""; + } + })(b, 1, 50) + : (NewMusic("evillaugh"), + (function (f, g, e) { + if (--e) { + f.style.backgroundPosition = ["top", "bottom"][g]; + oSym.addTask(10, arguments.callee, [f, g ? 0 : 1, e]); + } else { + (f.style.backgroundPosition = "top"), + (f.onclick = StartAdventure); + f.onmouseover = function () { + this.style.backgroundPosition = "bottom"; + }; + f.onmouseout = function () { + this.style.backgroundPosition = "top"; + }; + SelectModal(d); + c.innerHTML = ""; + } + })(b, 1, 50)); + }), + (oAudio = {}), + (PausedAudioArr = []), + (NewAudio = $User.HTML5 + ? function (b) { + var a = b.source; + if (oAudio[a]) { + return; + } + var f = document.createElement("audio"), + c = b.autoplay, + g = b.loop, + m, + h = { mp3: "audio/mpeg" }, + k = b.preload, + l = b.callback, + j = ["mp3"], + e = j.length, + d; + f.autoplay = c ? true : false; + g && + f.addEventListener( + "ended", + function () { + f.play(); + }, + false + ); + while (e--) { + (m = document.createElement("source")).type = h[(d = j[e])]; + m.src = "audio/" + a + "." + "mp3"; + f.appendChild(m); + } + f.preload = + k == undefined ? "auto" : ["auto", "meta", "none"][k]; + f.muted = oS.Silence; + l && f.addEventListener("canplaythrough", l, false); + return (oAudio[a] = f); + } + : function () {}), + (PlayMusic = $User.HTML5 + ? function (b) { + var a = oAudio[b]; + if (a) { + try { + a.currentTime = 0; + } catch (c) {} + a.play(); + } else { + NewMusic(b); + oAudio[b].play(); + } + } + : function (a) { + NewMusic(a); + }), + (PlayAudio = $User.HTML5 + ? function (c, a) { + var b = oAudio[c]; + b + ? ((b.loop = !!a), b.play()) + : NewAudio({ source: c, loop: !!a }).play(); + } + : function () {}), + (PauseAudio = $User.HTML5 + ? function (a) { + oAudio[a].pause(); + } + : function () {}), + (StopMusic = $User.HTML5 + ? function () { + var a = oAudio[oS.LoadMusic]; + try { + a.currentTime = 0; + } catch (b) {} + a.pause(); + } + : function () {}), + (StopAudio = $User.HTML5 + ? function (b) { + var a = oAudio[b]; + try { + a.currentTime = 0; + } catch (c) {} + a.pause(); + } + : function () {}), + (AllAudioPaused = $User.HTML5 + ? function () { + var a, b; + for (a in oAudio) { + b = oAudio[a]; + !(b.paused || b.ended) && + (PausedAudioArr.push(a), b.pause()); + } + } + : function () {}), + (AllAudioPauseCanceled = $User.HTML5 + ? function () { + var a = PausedAudioArr.length; + while (a--) { + oAudio[PausedAudioArr[a]].play(); + } + PausedAudioArr.length = 0; + } + : function () {}), + (AllAudioMuted = function () { + var a; + for (a in oAudio) { + oAudio[a].muted = true; + } + }), + (AllAudioMuteCanceled = function () { + var a; + for (a in oAudio) { + oAudio[a].muted = false; + } + }), + (CheckSilence = $User.HTML5 + ? function (a) { + var b = a.checked ? 1 : 0; + b != oS.Silence && + (addCookie("JSPVZSilence", (oS.Silence = b)), + b ? AllAudioMuted() : AllAudioMuteCanceled()); + } + : function (a) { + var b = a.checked ? 1 : 0; + b != oS.Silence && + (addCookie("JSPVZSilence", (oS.Silence = b)), + b ? PauseMusic() : NewMusic(oS.StartGameMusic)); + }), + (AppearCard = function (h, f, e, a, t) { + // x, y, 植物id, 移动卡槽类型, 消失时间(默认 15s) + var b, + d, + g = "dCard" + Math.random(), + c = + "opacity:1;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto);left:" + + h + + "px;top:-1000", + t = t || 1500; - if (a) (d = 0), oSym.addTask(1, MoveDropCard, [g, f, t]); - // 从天而降,反之抛物线掉落 - else - (d = f - 15 - 20), - (c += ";top:" + d + "px"), - oSym.addTask(1, DisappearCard, [g, t]), - oSym.addTask( - 1, - function (q, p, n, j, l, k, m, i) { - if (ArCard[q] && $(q)) { - SetStyle($(q), { - left: (p = p + j * k) + "px", - top: (n = n + Number(l[0])) + "px", - }); - l.shift(); - --m; - m > 0 && - (l.length == 0 && (l = [8, 16, 24, 32]), - oSym.addTask(i, arguments.callee, [ - q, - p, - n, - j, - l, - k, - m, - ++i, - ])); - } - }, - [ - g, - h, - d, - Math.floor(Math.random() * 4), - [-32, -24, -16, -8], - [-1, 1][Math.floor(Math.random() * 2)], - 8, - 2, - ] - ); // 开始记时,确定抛物线,与阳光部分相似故压缩 + if (a) (d = 0), oSym.addTask(1, MoveDropCard, [g, f, t]); + // 从天而降,反之抛物线掉落 + else + (d = f - 15 - 20), + (c += ";top:" + d + "px"), + oSym.addTask(1, DisappearCard, [g, t]), + oSym.addTask( + 1, + function (q, p, n, j, l, k, m, i) { + if (ArCard[q] && $(q)) { + SetStyle($(q), { + left: (p = p + j * k) + "px", + top: (n = n + Number(l[0])) + "px", + }); + l.shift(); + --m; + m > 0 && + (l.length == 0 && (l = [8, 16, 24, 32]), + oSym.addTask(i, arguments.callee, [ + q, + p, + n, + j, + l, + k, + m, + ++i, + ])); + } + }, + [ + g, + h, + d, + Math.floor(Math.random() * 4), + [-32, -24, -16, -8], + [-1, 1][Math.floor(Math.random() * 2)], + 8, + 2, + ] + ); // 开始记时,确定抛物线,与阳光部分相似故压缩 - ArCard[g] = { - DID: g, - PName: e, - PixelTop: 600, - CDReady: 1, - SunReady: 1, - top: d, - HasChosen: false, - Kind: 1, - }; // 生成卡片数据,是否被点击过 - NewImg(g, e.prototype.PicArr[e.prototype.CardGif], c, $("dCardList"), { - // 生成卡片 ele - onclick: function (g) { - var self = this, - style = self.style, - id = self.id; - ClearChild($("MovePlant"), $("MovePlantAlpha")), - CancelPlant(), - style && (style.opacity = 0.5), - ChosePlant(g, id), - ArCard[id] && (ArCard[id].HasChosen = true); - }, - }); - }), - (MoveDropCard = function (c, b, t) { - // 掉落目标 - var a = ArCard[c], - ele = $(c); - a && - ele && - (!a.HasChosen && a.top < b - 52 - ? ((ele.style.top = (a.top += 2) + "px"), - oSym.addTask(5, MoveDropCard, [c, b, t])) - : DisappearCard(c, t)); - }), - (DisappearCard = function (d, r) { - var q = 5, - e = $(d), - f = function (t) { - switch (true) { - case !ArCard[d] || !e: - return; // 卡片已经消失,不做处理 - case oS.Chose == 1 && oS.ChoseCard == d: - break; // 选中 - case t > 500: - e.style.opacity = 1; - break; // 未到闪烁时间 - case t > 0: - e.style.opacity = [1, 0.5][Math.ceil(t / 50) % 2]; - break; // 闪烁 - default: - delete ArCard[d], ClearChild(e); - return; - } - (e = $(d)), oSym.addTask(q, arguments.callee, [t - q]); - }; - f(r); - }); + ArCard[g] = { + DID: g, + PName: e, + PixelTop: 600, + CDReady: 1, + SunReady: 1, + top: d, + HasChosen: false, + Kind: 1, + }; // 生成卡片数据,是否被点击过 + NewImg(g, e.prototype.PicArr[e.prototype.CardGif], c, $("dCardList"), { + // 生成卡片 ele + onclick: function (g) { + var self = this, + style = self.style, + id = self.id; + ClearChild($("MovePlant"), $("MovePlantAlpha")), + CancelPlant(), + style && (style.opacity = 0.5), + ChosePlant(g, id), + ArCard[id] && (ArCard[id].HasChosen = true); + }, + }); + }), + (MoveDropCard = function (c, b, t) { + // 掉落目标 + var a = ArCard[c], + ele = $(c); + a && + ele && + (!a.HasChosen && a.top < b - 52 + ? ((ele.style.top = (a.top += 2) + "px"), + oSym.addTask(5, MoveDropCard, [c, b, t])) + : DisappearCard(c, t)); + }), + (DisappearCard = function (d, r) { + var q = 5, + e = $(d), + f = function (t) { + switch (true) { + case !ArCard[d] || !e: + return; // 卡片已经消失,不做处理 + case oS.Chose == 1 && oS.ChoseCard == d: + break; // 选中 + case t > 500: + e.style.opacity = 1; + break; // 未到闪烁时间 + case t > 0: + e.style.opacity = [1, 0.5][Math.ceil(t / 50) % 2]; + break; // 闪烁 + default: + delete ArCard[d], ClearChild(e); + return; + } + (e = $(d)), oSym.addTask(q, arguments.callee, [t - q]); + }; + f(r); + }); diff --git a/game/js/Cheatcodes.js b/game/js/Cheatcodes.js index c26e45c4..8eddfacb 100644 --- a/game/js/Cheatcodes.js +++ b/game/js/Cheatcodes.js @@ -1,39 +1,39 @@ let keysPressed = {}; document.addEventListener("keydown", (event) => { - keysPressed[event.key] = true; - // super fast - if (keysPressed["s"] && keysPressed["f"]) { - CSpeed(1000, 10, 1000); - } - // balloon - if (keysPressed["b"] && keysPressed["l"] && keysPressed["n"]) { - oP.Balloon(); - } - // restart - if (keysPressed["r"]) { - SelectModal(oS.Lvl); - } - // almanac (handbook) - if (keysPressed["k"]) { - ViewHandBook(); - } - // sun - if (keysPressed["j"]) { - AppearSun( - GetX(Math.floor(1 + Math.random() * oS.C)), - GetY(Math.floor(1 + Math.random() * oS.R)), - 25, - 1 - ); - } - // oneko - if (keysPressed["c"] && keysPressed["a"] && keysPressed["t"]) { - // remove .hidden from #oneko - document.getElementById("oneko").classList.remove("hidden"); - } + keysPressed[event.key] = true; + // super fast + if (keysPressed["s"] && keysPressed["f"]) { + CSpeed(1000, 10, 1000); + } + // balloon + if (keysPressed["b"] && keysPressed["l"] && keysPressed["n"]) { + oP.Balloon(); + } + // restart + if (keysPressed["r"]) { + SelectModal(oS.Lvl); + } + // almanac (handbook) + if (keysPressed["k"]) { + ViewHandBook(); + } + // sun + if (keysPressed["j"]) { + AppearSun( + GetX(Math.floor(1 + Math.random() * oS.C)), + GetY(Math.floor(1 + Math.random() * oS.R)), + 25, + 1 + ); + } + // oneko + if (keysPressed["c"] && keysPressed["a"] && keysPressed["t"]) { + // remove .hidden from #oneko + document.getElementById("oneko").classList.remove("hidden"); + } }); document.addEventListener("keyup", (event) => { - keysPressed[event.key] = false; + keysPressed[event.key] = false; }); diff --git a/game/js/Custom.js b/game/js/Custom.js index fb1f8105..ddfbf6ef 100644 --- a/game/js/Custom.js +++ b/game/js/Custom.js @@ -1,229 +1,229 @@ const saveWhitelist = [ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - "1", - "2", - "3", - "4", - "5", - "6", - "7", - "8", - "9", - "10", - "11", - "12", - "13", - "14", - "15", - "16", - "17", - "18", - "19", - "20", - "21", - "22", - "23", - "24", - "25", - "26", - "27", - "28", - "29", - "30", - "31", - "32", - "33", - "34", - "35", - "36", - "37", - "38", - "39", - "40", - "41", - "42", - "43", - "44", - "45", - "46", - "47", - "48", - "49", - "50", + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12", + "13", + "14", + "15", + "16", + "17", + "18", + "19", + "20", + "21", + "22", + "23", + "24", + "25", + "26", + "27", + "28", + "29", + "30", + "31", + "32", + "33", + "34", + "35", + "36", + "37", + "38", + "39", + "40", + "41", + "42", + "43", + "44", + "45", + "46", + "47", + "48", + "49", + "50", ]; console.log("Setting up intervals to monitor changes..."); let checkInterval = setInterval(() => { - console.log("Checking if oS is defined..."); - if (typeof oS !== "undefined") { - console.log("oS is defined."); - let previousValue = oS.Lvl; - console.log(`Initial oS.Lvl: ${previousValue}`); + console.log("Checking if oS is defined..."); + if (typeof oS !== "undefined") { + console.log("oS is defined."); + let previousValue = oS.Lvl; + console.log(`Initial oS.Lvl: ${previousValue}`); - const checkForChange = () => { - // console.log("Checking for change in oS.Lvl..."); - if (oS.Lvl !== previousValue) { - if (String(oS.Lvl).startsWith("[object")) { - console.log( - `Change detected: ${previousValue} to ${oS.Lvl}` - ); - console.log("Invalid oS.Lvl format detected, reverting..."); - oS.Lvl = previousValue; - } else if (saveWhitelist.includes(oS.Lvl)) { - console.log( - `Change detected: ${previousValue} to ${oS.Lvl}` - ); - previousValue = oS.Lvl; - console.log(`New previousValue set to: ${previousValue}`); - if ($ && $("dAdventure")) { - let hLvl = oS.Lvl; - console.log(`Setting onclick with level: ${hLvl}`); - if (saveWhitelist.includes(hLvl)) { - $("dAdventure").onclick = function () { - console.log( - `Starting adventure with level: ${hLvl}` - ); - StartAdventure(hLvl); - }; - } else if ( - typeof localStorage.getItem("level") === "undefined" - ) { - $("dAdventure").onclick = function () { - console.log( - "Starting adventure with level: " + - localStorage.getItem("level") + - " (from localStorage)" - ); - StartAdventure(localStorage.getItem("level")); - }; - } else { - $("dAdventure").onclick = function () { - console.log("Starting adventure with level: 1"); - StartAdventure(1); - }; - } - } - if (saveWhitelist.includes(oS.Lvl)) { - console.log(`Saving level ${oS.Lvl} to localStorage.`); - localStorage.setItem("level", oS.Lvl); - } else { - console.log( - `Level ${oS.Lvl} isn't whitelisted, not saving to localStorage.` - ); - } - } - } - }; + const checkForChange = () => { + // console.log("Checking for change in oS.Lvl..."); + if (oS.Lvl !== previousValue) { + if (String(oS.Lvl).startsWith("[object")) { + console.log( + `Change detected: ${previousValue} to ${oS.Lvl}` + ); + console.log("Invalid oS.Lvl format detected, reverting..."); + oS.Lvl = previousValue; + } else if (saveWhitelist.includes(oS.Lvl)) { + console.log( + `Change detected: ${previousValue} to ${oS.Lvl}` + ); + previousValue = oS.Lvl; + console.log(`New previousValue set to: ${previousValue}`); + if ($ && $("dAdventure")) { + let hLvl = oS.Lvl; + console.log(`Setting onclick with level: ${hLvl}`); + if (saveWhitelist.includes(hLvl)) { + $("dAdventure").onclick = function () { + console.log( + `Starting adventure with level: ${hLvl}` + ); + StartAdventure(hLvl); + }; + } else if ( + typeof localStorage.getItem("level") === "undefined" + ) { + $("dAdventure").onclick = function () { + console.log( + "Starting adventure with level: " + + localStorage.getItem("level") + + " (from localStorage)" + ); + StartAdventure(localStorage.getItem("level")); + }; + } else { + $("dAdventure").onclick = function () { + console.log("Starting adventure with level: 1"); + StartAdventure(1); + }; + } + } + if (saveWhitelist.includes(oS.Lvl)) { + console.log(`Saving level ${oS.Lvl} to localStorage.`); + localStorage.setItem("level", oS.Lvl); + } else { + console.log( + `Level ${oS.Lvl} isn't whitelisted, not saving to localStorage.` + ); + } + } + } + }; - const changeInterval = setInterval(checkForChange, 1); - clearInterval(checkInterval); - } + const changeInterval = setInterval(checkForChange, 1); + clearInterval(checkInterval); + } }, 100); function startInterval2() { - let checkInterval2 = setInterval(() => { - /*console.log( + let checkInterval2 = setInterval(() => { + /*console.log( "Checking if dAdventure is defined and saved level exists & is not blacklisted..." );*/ - if ( - $("dAdventure") && - localStorage.getItem("level") && - saveWhitelist.includes(localStorage.getItem("level")) - ) { - console.log( - "dAdventure is defined and level is valid, setting onclick..." - ); - $("dAdventure").onclick = function () { - console.log( - `Starting adventure with level from localStorage: ${localStorage.getItem( - "level" - )}` - ); - StartAdventure(localStorage.getItem("level")); - }; - clearInterval(checkInterval2); - } - }, 100); + if ( + $("dAdventure") && + localStorage.getItem("level") && + saveWhitelist.includes(localStorage.getItem("level")) + ) { + console.log( + "dAdventure is defined and level is valid, setting onclick..." + ); + $("dAdventure").onclick = function () { + console.log( + `Starting adventure with level from localStorage: ${localStorage.getItem( + "level" + )}` + ); + StartAdventure(localStorage.getItem("level")); + }; + clearInterval(checkInterval2); + } + }, 100); } checkInterval2; let playingSounds = []; function PlaySound2(path, name, loop = false) { - path = `audio/${path}`; - // console.log(`Playing sound: ${path}`); - let audio = new Audio(path); - audio.loop = loop; - audio.play(); - playingSounds.push(audio); - // remove it after it's done playing - audio.onended = function () { - playingSounds.splice(playingSounds.indexOf(audio), 1); - }; + path = `audio/${path}`; + // console.log(`Playing sound: ${path}`); + let audio = new Audio(path); + audio.loop = loop; + audio.play(); + playingSounds.push(audio); + // remove it after it's done playing + audio.onended = function () { + playingSounds.splice(playingSounds.indexOf(audio), 1); + }; } function StopSound2(name) { - // console.log(`Stopping sound: ${name}`); - playingSounds.forEach((audio) => { - if (audio.src.includes(name)) { - audio.pause(); - } - }); + // console.log(`Stopping sound: ${name}`); + playingSounds.forEach((audio) => { + if (audio.src.includes(name)) { + audio.pause(); + } + }); } function EditSound2(name, loop = false) { - // console.log(`Editing sound: ${name}`); - playingSounds.forEach((audio) => { - if (audio.src.includes(name)) { - audio.loop = loop; - } - }); + // console.log(`Editing sound: ${name}`); + playingSounds.forEach((audio) => { + if (audio.src.includes(name)) { + audio.loop = loop; + } + }); } diff --git a/game/js/Welcome.js b/game/js/Welcome.js index 285bcb10..52a47ce7 100644 --- a/game/js/Welcome.js +++ b/game/js/Welcome.js @@ -1,33 +1,33 @@ Bye = function () { - var run = $("preloader", "status"); - var speed = 1; - var timer = null; - var alpha = 100; - startrun(0); - function startrun(target) { - clearInterval(timer); - timer = setInterval(function () { - if (target > alpha) { - speed = 2; - } else { - speed = -2; - } - if (alpha == target) { - clearInterval(timer); - } else { - alpha = alpha + speed; - /* run.style.filter = "alpha(opacity=" + alpha + ")"; + var run = $("preloader", "status"); + var speed = 1; + var timer = null; + var alpha = 100; + startrun(0); + function startrun(target) { + clearInterval(timer); + timer = setInterval(function () { + if (target > alpha) { + speed = 2; + } else { + speed = -2; + } + if (alpha == target) { + clearInterval(timer); + } else { + alpha = alpha + speed; + /* run.style.filter = "alpha(opacity=" + alpha + ")"; run.style.opacity = alpha / 100; */ - } - }, 30); - } + } + }, 30); + } }; document.onreadystatechange = subSomething; function subSomething() { - if (document.readyState == "complete") { - Bye(); - setTimeout(function () { - SetNone($("preloader"), $("status")); - }, 2e3); - } + if (document.readyState == "complete") { + Bye(); + setTimeout(function () { + SetNone($("preloader"), $("status")); + }, 2e3); + } } diff --git a/game/js/html2canvas.js b/game/js/html2canvas.js new file mode 100644 index 00000000..c2762d40 --- /dev/null +++ b/game/js/html2canvas.js @@ -0,0 +1,6 @@ +!function(A,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(A="undefined"!=typeof globalThis?globalThis:A||self).html2canvas=e()}(this,function(){"use strict";function A(A,e){function t(){this.constructor=A}if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");PA(A,e),A.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}function e(A,e,t,B){return new(t=t||Promise)(function(r,n){function s(A){try{i(B.next(A))}catch(A){n(A)}}function o(A){try{i(B.throw(A))}catch(A){n(A)}}function i(A){var e;A.done?r(A.value):((e=A.value)instanceof t?e:new t(function(A){A(e)})).then(s,o)}i((B=B.apply(A,e||[])).next())})}function t(A,e){function t(t){return function(o){return function(t){if(B)throw new TypeError("Generator is already executing.");for(;s;)try{if(B=1,r&&(n=2&t[0]?r.return:t[0]?r.throw||((n=r.return)&&n.call(r),0):r.next)&&!(n=n.call(r,t[1])).done)return n;switch(r=0,(t=n?[2&t[0],n.value]:t)[0]){case 0:case 1:n=t;break;case 4:return s.label++,{value:t[1],done:!1};case 5:s.label++,r=t[1],t=[0];continue;case 7:t=s.ops.pop(),s.trys.pop();continue;default:if(!(n=0<(n=s.trys).length&&n[n.length-1])&&(6===t[0]||2===t[0])){s=0;continue}if(3===t[0]&&(!n||t[1]>n[0]&&t[1]>8,B=255&A>>16;A=255&A>>24;return e<255?"rgba("+A+","+B+","+t+","+e/255+")":"rgb("+A+","+B+","+t+")"}function O(A,e){if(17===A.type)return A.number;if(16!==A.type)return 0;var t=3===e?1:255;return 3===e?A.number/100*t:Math.round(A.number/100*t)}function V(A,e,t){return t<0&&(t+=1),1<=t&&--t,t<1/6?(e-A)*t*6+A:t<.5?e:t<2/3?6*(e-A)*(2/3-t)+A:A}function k(A,e){return Ht(A,Ut.create(e).parseComponentValue())}function R(A,e){return A=Ht(A,e[0]),(e=e[1])&&D(e)?{color:A,stop:e}:{color:A,stop:null}}function N(A,e){var t=A[0],B=A[A.length-1];null===t.stop&&(t.stop=Ct),null===B.stop&&(B.stop=Ft);for(var r=[],n=0,s=0;sA.optimumDistance)?{optimumCorner:e,optimumDistance:s}:A},{optimumDistance:r?1/0:-1/0,optimumCorner:null}).optimumCorner}function Y(A,e){return E(A)&&"normal"===A.value?1.2*e:17===A.type?e*A.number:D(A)?ht(A,e):e}function W(A,e){return 0!=(A&e)}function Z(A,e,t){return(A=A&&A[Math.min(e,A.length-1)])?t?A.open:A.close:""}function _(A,e){this.animationDuration=ir(A,$B,e.animationDuration),this.backgroundClip=ir(A,mt,e.backgroundClip),this.backgroundColor=ir(A,Lt,e.backgroundColor),this.backgroundImage=ir(A,Ot,e.backgroundImage),this.backgroundOrigin=ir(A,Vt,e.backgroundOrigin),this.backgroundPosition=ir(A,kt,e.backgroundPosition),this.backgroundRepeat=ir(A,Rt,e.backgroundRepeat),this.backgroundSize=ir(A,Jt,e.backgroundSize),this.borderTopColor=ir(A,Wt,e.borderTopColor),this.borderRightColor=ir(A,Zt,e.borderRightColor),this.borderBottomColor=ir(A,_t,e.borderBottomColor),this.borderLeftColor=ir(A,qt,e.borderLeftColor),this.borderTopLeftRadius=ir(A,jt,e.borderTopLeftRadius),this.borderTopRightRadius=ir(A,zt,e.borderTopRightRadius),this.borderBottomRightRadius=ir(A,$t,e.borderBottomRightRadius),this.borderBottomLeftRadius=ir(A,AB,e.borderBottomLeftRadius),this.borderTopStyle=ir(A,eB,e.borderTopStyle),this.borderRightStyle=ir(A,tB,e.borderRightStyle),this.borderBottomStyle=ir(A,BB,e.borderBottomStyle),this.borderLeftStyle=ir(A,rB,e.borderLeftStyle),this.borderTopWidth=ir(A,nB,e.borderTopWidth),this.borderRightWidth=ir(A,sB,e.borderRightWidth),this.borderBottomWidth=ir(A,oB,e.borderBottomWidth),this.borderLeftWidth=ir(A,iB,e.borderLeftWidth),this.boxShadow=ir(A,er,e.boxShadow),this.color=ir(A,QB,e.color),this.direction=ir(A,cB,e.direction),this.display=ir(A,aB,e.display),this.float=ir(A,wB,e.cssFloat),this.fontFamily=ir(A,JB,e.fontFamily),this.fontSize=ir(A,YB,e.fontSize),this.fontStyle=ir(A,_B,e.fontStyle),this.fontVariant=ir(A,ZB,e.fontVariant),this.fontWeight=ir(A,WB,e.fontWeight),this.letterSpacing=ir(A,UB,e.letterSpacing),this.lineBreak=ir(A,lB,e.lineBreak),this.lineHeight=ir(A,CB,e.lineHeight),this.listStyleImage=ir(A,uB,e.listStyleImage),this.listStylePosition=ir(A,FB,e.listStylePosition),this.listStyleType=ir(A,hB,e.listStyleType),this.marginTop=ir(A,dB,e.marginTop),this.marginRight=ir(A,fB,e.marginRight),this.marginBottom=ir(A,HB,e.marginBottom),this.marginLeft=ir(A,pB,e.marginLeft),this.opacity=ir(A,NB,e.opacity);var t=ir(A,EB,e.overflow);this.overflowX=t[0],this.overflowY=t[1>10),s%1024+56320)),(r+1===t||16384e.height?new JA(e.left+(e.width-e.height)/2,e.top,e.height,e.height):e.width>10),s%1024+56320)),(r+1===t||16384>5],this.data[e=(e<<2)+(31&A)];if(A<=65535)return e=this.index[2048+(A-55296>>5)],this.data[e=(e<<2)+(31&A)];if(A>11)],e=this.index[e+=A>>5&63],this.data[e=(e<<2)+(31&A)];if(A<=1114111)return this.data[this.highValueIndex]}return this.errorValue},s),te="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Be="undefined"==typeof Uint8Array?[]:new Uint8Array(256),re=0;re>4,i[o++]=(15&t)<<4|B>>2,i[o++]=(3&B)<<6|63&r;return n +}(ne="KwAAAAAAAAAACA4AUD0AADAgAAACAAAAAAAIABAAGABAAEgAUABYAGAAaABgAGgAYgBqAF8AZwBgAGgAcQB5AHUAfQCFAI0AlQCdAKIAqgCyALoAYABoAGAAaABgAGgAwgDKAGAAaADGAM4A0wDbAOEA6QDxAPkAAQEJAQ8BFwF1AH0AHAEkASwBNAE6AUIBQQFJAVEBWQFhAWgBcAF4ATAAgAGGAY4BlQGXAZ8BpwGvAbUBvQHFAc0B0wHbAeMB6wHxAfkBAQIJAvEBEQIZAiECKQIxAjgCQAJGAk4CVgJeAmQCbAJ0AnwCgQKJApECmQKgAqgCsAK4ArwCxAIwAMwC0wLbAjAA4wLrAvMC+AIAAwcDDwMwABcDHQMlAy0DNQN1AD0DQQNJA0kDSQNRA1EDVwNZA1kDdQB1AGEDdQBpA20DdQN1AHsDdQCBA4kDkQN1AHUAmQOhA3UAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AKYDrgN1AHUAtgO+A8YDzgPWAxcD3gPjA+sD8wN1AHUA+wMDBAkEdQANBBUEHQQlBCoEFwMyBDgEYABABBcDSARQBFgEYARoBDAAcAQzAXgEgASIBJAEdQCXBHUAnwSnBK4EtgS6BMIEyAR1AHUAdQB1AHUAdQCVANAEYABgAGAAYABgAGAAYABgANgEYADcBOQEYADsBPQE/AQEBQwFFAUcBSQFLAU0BWQEPAVEBUsFUwVbBWAAYgVgAGoFcgV6BYIFigWRBWAAmQWfBaYFYABgAGAAYABgAKoFYACxBbAFuQW6BcEFwQXHBcEFwQXPBdMF2wXjBeoF8gX6BQIGCgYSBhoGIgYqBjIGOgZgAD4GRgZMBmAAUwZaBmAAYABgAGAAYABgAGAAYABgAGAAYABgAGIGYABpBnAGYABgAGAAYABgAGAAYABgAGAAYAB4Bn8GhQZgAGAAYAB1AHcDFQSLBmAAYABgAJMGdQA9A3UAmwajBqsGqwaVALMGuwbDBjAAywbSBtIG1QbSBtIG0gbSBtIG0gbdBuMG6wbzBvsGAwcLBxMHAwcbByMHJwcsBywHMQcsB9IGOAdAB0gHTgfSBkgHVgfSBtIG0gbSBtIG0gbSBtIG0gbSBiwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdgAGAALAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdbB2MHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB2kH0gZwB64EdQB1AHUAdQB1AHUAdQB1AHUHfQdgAIUHjQd1AHUAlQedB2AAYAClB6sHYACzB7YHvgfGB3UAzgfWBzMB3gfmB1EB7gf1B/0HlQENAQUIDQh1ABUIHQglCBcDLQg1CD0IRQhNCEEDUwh1AHUAdQBbCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIcAh3CHoIMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIgggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAALAcsBywHLAcsBywHLAcsBywHLAcsB4oILAcsB44I0gaWCJ4Ipgh1AHUAqgiyCHUAdQB1AHUAdQB1AHUAdQB1AHUAtwh8AXUAvwh1AMUIyQjRCNkI4AjoCHUAdQB1AO4I9gj+CAYJDgkTCS0HGwkjCYIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiAAIAAAAFAAYABgAGIAXwBgAHEAdQBFAJUAogCyAKAAYABgAEIA4ABGANMA4QDxAMEBDwE1AFwBLAE6AQEBUQF4QkhCmEKoQrhCgAHIQsAB0MLAAcABwAHAAeDC6ABoAHDCwMMAAcABwAHAAdDDGMMAAcAB6MM4wwjDWMNow3jDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEjDqABWw6bDqABpg6gAaABoAHcDvwOPA+gAaABfA/8DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DpcPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB9cPKwkyCToJMAB1AHUAdQBCCUoJTQl1AFUJXAljCWcJawkwADAAMAAwAHMJdQB2CX4JdQCECYoJjgmWCXUAngkwAGAAYABxAHUApgn3A64JtAl1ALkJdQDACTAAMAAwADAAdQB1AHUAdQB1AHUAdQB1AHUAowYNBMUIMAAwADAAMADICcsJ0wnZCRUE4QkwAOkJ8An4CTAAMAB1AAAKvwh1AAgKDwoXCh8KdQAwACcKLgp1ADYKqAmICT4KRgowADAAdQB1AE4KMAB1AFYKdQBeCnUAZQowADAAMAAwADAAMAAwADAAMAAVBHUAbQowADAAdQC5CXUKMAAwAHwBxAijBogEMgF9CoQKiASMCpQKmgqIBKIKqgquCogEDQG2Cr4KxgrLCjAAMADTCtsKCgHjCusK8Qr5CgELMAAwADAAMAB1AIsECQsRC3UANAEZCzAAMAAwADAAMAB1ACELKQswAHUANAExCzkLdQBBC0kLMABRC1kLMAAwADAAMAAwADAAdQBhCzAAMAAwAGAAYABpC3ELdwt/CzAAMACHC4sLkwubC58Lpwt1AK4Ltgt1APsDMAAwADAAMAAwADAAMAAwAL4LwwvLC9IL1wvdCzAAMADlC+kL8Qv5C/8LSQswADAAMAAwADAAMAAwADAAMAAHDDAAMAAwADAAMAAODBYMHgx1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1ACYMMAAwADAAdQB1AHUALgx1AHUAdQB1AHUAdQA2DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AD4MdQBGDHUAdQB1AHUAdQB1AEkMdQB1AHUAdQB1AFAMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQBYDHUAdQB1AF8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUA+wMVBGcMMAAwAHwBbwx1AHcMfwyHDI8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAYABgAJcMMAAwADAAdQB1AJ8MlQClDDAAMACtDCwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB7UMLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AA0EMAC9DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAsBywHLAcsBywHLAcsBywHLQcwAMEMyAwsBywHLAcsBywHLAcsBywHLAcsBywHzAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1ANQM2QzhDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMABgAGAAYABgAGAAYABgAOkMYADxDGAA+AwADQYNYABhCWAAYAAODTAAMAAwADAAFg1gAGAAHg37AzAAMAAwADAAYABgACYNYAAsDTQNPA1gAEMNPg1LDWAAYABgAGAAYABgAGAAYABgAGAAUg1aDYsGVglhDV0NcQBnDW0NdQ15DWAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAlQCBDZUAiA2PDZcNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAnw2nDTAAMAAwADAAMAAwAHUArw23DTAAMAAwADAAMAAwADAAMAAwADAAMAB1AL8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQDHDTAAYABgAM8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA1w11ANwNMAAwAD0B5A0wADAAMAAwADAAMADsDfQN/A0EDgwOFA4wABsOMAAwADAAMAAwADAAMAAwANIG0gbSBtIG0gbSBtIG0gYjDigOwQUuDsEFMw7SBjoO0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGQg5KDlIOVg7SBtIGXg5lDm0OdQ7SBtIGfQ6EDooOjQ6UDtIGmg6hDtIG0gaoDqwO0ga0DrwO0gZgAGAAYADEDmAAYAAkBtIGzA5gANIOYADaDokO0gbSBt8O5w7SBu8O0gb1DvwO0gZgAGAAxA7SBtIG0gbSBtIGYABgAGAAYAAED2AAsAUMD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHJA8sBywHLAcsBywHLAccDywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywPLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAc0D9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHPA/SBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gYUD0QPlQCVAJUAMAAwADAAMACVAJUAlQCVAJUAlQCVAEwPMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA//8EAAQABAAEAAQABAAEAAQABAANAAMAAQABAAIABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQACgATABcAHgAbABoAHgAXABYAEgAeABsAGAAPABgAHABLAEsASwBLAEsASwBLAEsASwBLABgAGAAeAB4AHgATAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAGwASAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWAA0AEQAeAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAFAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJABYAGgAbABsAGwAeAB0AHQAeAE8AFwAeAA0AHgAeABoAGwBPAE8ADgBQAB0AHQAdAE8ATwAXAE8ATwBPABYAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwBWAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsABAAbABsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEAA0ADQBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABABQACsAKwArACsAKwArACsAKwAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUAAaABoAUABQAFAAUABQAEwAHgAbAFAAHgAEACsAKwAEAAQABAArAFAAUABQAFAAUABQACsAKwArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQACsAUABQACsAKwAEACsABAAEAAQABAAEACsAKwArACsABAAEACsAKwAEAAQABAArACsAKwAEACsAKwArACsAKwArACsAUABQAFAAUAArAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAAQABABQAFAAUAAEAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAArACsAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AGwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAKwArACsAKwArAAQABAAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAAQAUAArAFAAUABQAFAAUABQACsAKwArAFAAUABQACsAUABQAFAAUAArACsAKwBQAFAAKwBQACsAUABQACsAKwArAFAAUAArACsAKwBQAFAAUAArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAArACsAKwAEAAQABAArAAQABAAEAAQAKwArAFAAKwArACsAKwArACsABAArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAHgAeAB4AHgAeAB4AGwAeACsAKwArACsAKwAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAUABQAFAAKwArACsAKwArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwAOAFAAUABQAFAAUABQAFAAHgBQAAQABAAEAA4AUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAKwArAAQAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAKwArACsAKwArACsAUAArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAXABcAFwAXABcACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAXAArAFwAXABcAFwAXABcAFwAXABcAFwAKgBcAFwAKgAqACoAKgAqACoAKgAqACoAXAArACsAXABcAFwAXABcACsAXAArACoAKgAqACoAKgAqACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwBcAFwAXABcAFAADgAOAA4ADgAeAA4ADgAJAA4ADgANAAkAEwATABMAEwATAAkAHgATAB4AHgAeAAQABAAeAB4AHgAeAB4AHgBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAADQAEAB4ABAAeAAQAFgARABYAEQAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAAQABAAEAAQADQAEAAQAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAA0ADQAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeACsAHgAeAA4ADgANAA4AHgAeAB4AHgAeAAkACQArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgBcAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4AHgAeAB4AXABcAFwAXABcAFwAKgAqACoAKgBcAFwAXABcACoAKgAqAFwAKgAqACoAXABcACoAKgAqACoAKgAqACoAXABcAFwAKgAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwAKgBLAEsASwBLAEsASwBLAEsASwBLACoAKgAqACoAKgAqAFAAUABQAFAAUABQACsAUAArACsAKwArACsAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAKwBQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsABAAEAAQAHgANAB4AHgAeAB4AHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUAArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWABEAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAANAA0AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUAArAAQABAArACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAA0ADQAVAFwADQAeAA0AGwBcACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwAeAB4AEwATAA0ADQAOAB4AEwATAB4ABAAEAAQACQArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAHgArACsAKwATABMASwBLAEsASwBLAEsASwBLAEsASwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAXABcAFwAXABcACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXAArACsAKwAqACoAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsAHgAeAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKwArAAQASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACoAKgAqACoAKgAqACoAXAAqACoAKgAqACoAKgArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABABQAFAAUABQAFAAUABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgANAA0ADQANAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwAeAB4AHgAeAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArAA0ADQANAA0ADQBLAEsASwBLAEsASwBLAEsASwBLACsAKwArAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUAAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAAQAUABQAFAAUABQAFAABABQAFAABAAEAAQAUAArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQACsAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQACsAKwAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQACsAHgAeAB4AHgAeAB4AHgAOAB4AKwANAA0ADQANAA0ADQANAAkADQANAA0ACAAEAAsABAAEAA0ACQANAA0ADAAdAB0AHgAXABcAFgAXABcAFwAWABcAHQAdAB4AHgAUABQAFAANAAEAAQAEAAQABAAEAAQACQAaABoAGgAaABoAGgAaABoAHgAXABcAHQAVABUAHgAeAB4AHgAeAB4AGAAWABEAFQAVABUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ADQAeAA0ADQANAA0AHgANAA0ADQAHAB4AHgAeAB4AKwAEAAQABAAEAAQABAAEAAQABAAEAFAAUAArACsATwBQAFAAUABQAFAAHgAeAB4AFgARAE8AUABPAE8ATwBPAFAAUABQAFAAUAAeAB4AHgAWABEAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArABsAGwAbABsAGwAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGgAbABsAGwAbABoAGwAbABoAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAFAAGgAeAB0AHgBQAB4AGgAeAB4AHgAeAB4AHgAeAB4AHgBPAB4AUAAbAB4AHgBQAFAAUABQAFAAHgAeAB4AHQAdAB4AUAAeAFAAHgBQAB4AUABPAFAAUAAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgBQAFAAUABQAE8ATwBQAFAAUABQAFAATwBQAFAATwBQAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAUABQAFAATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABPAB4AHgArACsAKwArAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAdAB4AHgAeAB0AHQAeAB4AHQAeAB4AHgAdAB4AHQAbABsAHgAdAB4AHgAeAB4AHQAeAB4AHQAdAB0AHQAeAB4AHQAeAB0AHgAdAB0AHQAdAB0AHQAeAB0AHgAeAB4AHgAeAB0AHQAdAB0AHgAeAB4AHgAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB0AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAdAB0AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHQAdAB0AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHQAdAB4AHgAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AJQAlAB0AHQAlAB4AJQAlACUAIAAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAeAB0AJQAdAB0AHgAdAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAdAB0AHQAdACUAHgAlACUAJQAdACUAJQAdAB0AHQAlACUAHQAdACUAHQAdACUAJQAlAB4AHQAeAB4AHgAeAB0AHQAlAB0AHQAdAB0AHQAdACUAJQAlACUAJQAdACUAJQAgACUAHQAdACUAJQAlACUAJQAlACUAJQAeAB4AHgAlACUAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AFwAXABcAFwAXABcAHgATABMAJQAeAB4AHgAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARABYAEQAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANAA0AHgANAB4ADQANAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwAlACUAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACsAKwArACsAKwArACsAKwArACsAKwArAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBPAE8ATwBPAE8ATwBPAE8AJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeAAQAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUABQAAQAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAUABQAFAAUABQAAQABAAEACsABAAEACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAKwBQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAA0ADQANAA0ADQANAA0ADQAeACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAArACsAKwArAFAAUABQAFAAUAANAA0ADQANAA0ADQAUACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQANAA0ADQANAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAANACsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAB4AHgAeAB4AHgArACsAKwArACsAKwAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANAFAABAAEAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAEAAQABAAEAB4ABAAEAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsABAAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLAA0ADQArAB4ABABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUAAeAFAAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAAEAAQADgANAA0AEwATAB4AHgAeAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAFAAUABQAFAABAAEACsAKwAEAA0ADQAeAFAAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcAFwADQANAA0AKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQAKwAEAAQAKwArAAQABAAEAAQAUAAEAFAABAAEAA0ADQANACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABABQAA4AUAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANAFAADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAaABoAGgAaAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAJAAkACQAJAAkACQAJABYAEQArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AHgAeACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAARwBHABUARwAJACsAKwArACsAKwArACsAKwArACsAKwAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAKwArACsAKwArACsAKwArACsAKwArACsAKwBRAFEAUQBRACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAHgAEAAQADQAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAeAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQAHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAKwArAFAAKwArAFAAUAArACsAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAHgAeAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeACsAKwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4ABAAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAHgAeAA0ADQANAA0AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArAAQABAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwBQAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArABsAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAB4AHgAeAB4ABAAEAAQABAAEAAQABABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArABYAFgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAGgBQAFAAUAAaAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUAArACsAKwArACsAKwBQACsAKwArACsAUAArAFAAKwBQACsAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUAArAFAAKwBQACsAUAArAFAAUAArAFAAKwArAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAKwBQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeACUAJQAlAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAHgAlACUAJQAlACUAIAAgACAAJQAlACAAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACEAIQAhACEAIQAlACUAIAAgACUAJQAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAlACUAJQAlACAAIAAgACUAIAAgACAAJQAlACUAJQAlACUAJQAgACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAlAB4AJQAeACUAJQAlACUAJQAgACUAJQAlACUAHgAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACAAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABcAFwAXABUAFQAVAB4AHgAeAB4AJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAgACUAJQAgACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAIAAgACUAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACAAIAAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACAAIAAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAA=="), +ie=Array.isArray(oe)?function(A){for(var e=A.length,t=[],B=0;B=this._value.length?-1:this._value[A]},d.prototype.consumeUnicodeRangeToken=function(){for(var A=[],e=this.consumeCodePoint();w(e)&&A.length<6;)A.push(e),e=this.consumeCodePoint();for(var t=!1;63===e&&A.length<6;)A.push(e),e=this.consumeCodePoint(),t=!0;if(t)return{type:30,start:parseInt(ZA.apply(void 0,A.map(function(A){return 63===A?48:A})),16),end:parseInt(ZA.apply(void 0,A.map(function(A){return 63===A?70:A})),16)};var B=parseInt(ZA.apply(void 0,A),16);if(45===this.peekCodePoint(0)&&w(this.peekCodePoint(1))){this.consumeCodePoint();e=this.consumeCodePoint();for(var r=[];w(e)&&r.length<6;)r.push(e),e=this.consumeCodePoint();return{type:30,start:B,end:parseInt(ZA.apply(void 0,r),16)}}return{type:30,start:B,end:B}},d.prototype.consumeIdentLikeToken=function(){var A=this.consumeName();return"url"===A.toLowerCase()&&40===this.peekCodePoint(0)?(this.consumeCodePoint(),this.consumeUrlToken()):40===this.peekCodePoint(0)?(this.consumeCodePoint(),{type:19,value:A}):{type:20,value:A}},d.prototype.consumeUrlToken=function(){var A=[];if(this.consumeWhiteSpace(),-1===this.peekCodePoint(0))return{type:22,value:""};var e,t=this.peekCodePoint(0);if(39===t||34===t)return t=this.consumeStringToken(this.consumeCodePoint()),0===t.type&&(this.consumeWhiteSpace(),-1===this.peekCodePoint(0)||41===this.peekCodePoint(0))?(this.consumeCodePoint(),{type:22,value:t.value}):(this.consumeBadUrlRemnants(),Bt);for(;;){var B=this.consumeCodePoint();if(-1===B||41===B)return{type:22,value:ZA.apply(void 0,A)};if(U(B))return this.consumeWhiteSpace(),-1===this.peekCodePoint(0)||41===this.peekCodePoint(0)?(this.consumeCodePoint(),{type:22,value:ZA.apply(void 0,A)}):(this.consumeBadUrlRemnants(),Bt);if(34===B||39===B||40===B||0<=(e=B)&&e<=8||11===e||14<=e&&e<=31||127===e)return this.consumeBadUrlRemnants(),Bt;if(92===B){if(!u(B,this.peekCodePoint(0)))return this.consumeBadUrlRemnants(),Bt;A.push(this.consumeEscapedCodePoint())}else A.push(B)}},d.prototype.consumeWhiteSpace=function(){for(;U(this.peekCodePoint(0));)this.consumeCodePoint()},d.prototype.consumeBadUrlRemnants=function(){for(;;){var A=this.consumeCodePoint();if(41===A||-1===A)return;u(A,this.peekCodePoint(0))&&this.consumeEscapedCodePoint()}},d.prototype.consumeStringSlice=function(A){for(var e="";0>>0},Et=function(A,e){if(e=e.filter(m),3===e.length){var t=e.map(O),B=t[0],r=t[1];t=t[2];return pt(B,r,t,1)}return 4!==e.length?0:(e=e.map(O),B=e[0],r=e[1],t=e[2],e=e[3],pt(B,r,t,e))},It=function(A,e){var t=e.filter(m),B=t[0],r=t[1],n=t[2];e=t[3],t=(17===B.type?ft(B.number):dt(A,B))/(2*Math.PI),A=D(r)?r.number/100:0,B=D(n)?n.number/100:0,r=void 0!==e&&D(e)?ht(e,1):1;return 0==A?pt(255*B,255*B,255*B,1):(n=B<=.5?B*(1+A):B+A-B*A,e=2*B-n,A=V(e,n,t+1/3),B=V(e,n,t),t=V(e,n,t-1/3),pt(255*A,255*B,255*t,r))},yt={hsl:It,hsla:It,rgb:Et,rgba:Et},Kt={ALICEBLUE:4042850303,ANTIQUEWHITE:4209760255,AQUA:16777215,AQUAMARINE:2147472639,AZURE:4043309055,BEIGE:4126530815,BISQUE:4293182719,BLACK:255,BLANCHEDALMOND:4293643775,BLUE:65535,BLUEVIOLET:2318131967,BROWN:2771004159,BURLYWOOD:3736635391,CADETBLUE:1604231423,CHARTREUSE:2147418367,CHOCOLATE:3530104575,CORAL:4286533887,CORNFLOWERBLUE:1687547391,CORNSILK:4294499583,CRIMSON:3692313855,CYAN:16777215,DARKBLUE:35839,DARKCYAN:9145343,DARKGOLDENROD:3095837695,DARKGRAY:2846468607,DARKGREEN:6553855,DARKGREY:2846468607,DARKKHAKI:3182914559,DARKMAGENTA:2332068863,DARKOLIVEGREEN:1433087999,DARKORANGE:4287365375,DARKORCHID:2570243327,DARKRED:2332033279,DARKSALMON:3918953215,DARKSEAGREEN:2411499519,DARKSLATEBLUE:1211993087,DARKSLATEGRAY:793726975,DARKSLATEGREY:793726975,DARKTURQUOISE:13554175,DARKVIOLET:2483082239,DEEPPINK:4279538687,DEEPSKYBLUE:12582911,DIMGRAY:1768516095,DIMGREY:1768516095,DODGERBLUE:512819199,FIREBRICK:2988581631,FLORALWHITE:4294635775,FORESTGREEN:579543807,FUCHSIA:4278255615,GAINSBORO:3705462015,GHOSTWHITE:4177068031,GOLD:4292280575,GOLDENROD:3668254975,GRAY:2155905279,GREEN:8388863,GREENYELLOW:2919182335,GREY:2155905279,HONEYDEW:4043305215,HOTPINK:4285117695,INDIANRED:3445382399,INDIGO:1258324735,IVORY:4294963455,KHAKI:4041641215,LAVENDER:3873897215,LAVENDERBLUSH:4293981695,LAWNGREEN:2096890111,LEMONCHIFFON:4294626815,LIGHTBLUE:2916673279,LIGHTCORAL:4034953471,LIGHTCYAN:3774873599,LIGHTGOLDENRODYELLOW:4210742015,LIGHTGRAY:3553874943,LIGHTGREEN:2431553791,LIGHTGREY:3553874943,LIGHTPINK:4290167295,LIGHTSALMON:4288707327,LIGHTSEAGREEN:548580095,LIGHTSKYBLUE:2278488831,LIGHTSLATEGRAY:2005441023,LIGHTSLATEGREY:2005441023,LIGHTSTEELBLUE:2965692159,LIGHTYELLOW:4294959359,LIME:16711935,LIMEGREEN:852308735,LINEN:4210091775,MAGENTA:4278255615,MAROON:2147483903,MEDIUMAQUAMARINE:1724754687,MEDIUMBLUE:52735,MEDIUMORCHID:3126187007,MEDIUMPURPLE:2473647103,MEDIUMSEAGREEN:1018393087,MEDIUMSLATEBLUE:2070474495,MEDIUMSPRINGGREEN:16423679,MEDIUMTURQUOISE:1221709055,MEDIUMVIOLETRED:3340076543,MIDNIGHTBLUE:421097727,MINTCREAM:4127193855,MISTYROSE:4293190143,MOCCASIN:4293178879,NAVAJOWHITE:4292783615,NAVY:33023,OLDLACE:4260751103,OLIVE:2155872511,OLIVEDRAB:1804477439,ORANGE:4289003775,ORANGERED:4282712319,ORCHID:3664828159,PALEGOLDENROD:4008225535,PALEGREEN:2566625535,PALETURQUOISE:2951671551,PALEVIOLETRED:3681588223,PAPAYAWHIP:4293907967,PEACHPUFF:4292524543,PERU:3448061951,PINK:4290825215,PLUM:3718307327,POWDERBLUE:2967529215,PURPLE:2147516671,REBECCAPURPLE:1714657791,RED:4278190335,ROSYBROWN:3163525119,ROYALBLUE:1097458175,SADDLEBROWN:2336560127,SALMON:4202722047,SANDYBROWN:4104413439,SEAGREEN:780883967,SEASHELL:4294307583,SIENNA:2689740287,SILVER:3233857791,SKYBLUE:2278484991,SLATEBLUE:1784335871,SLATEGRAY:1887473919,SLATEGREY:1887473919,SNOW:4294638335,SPRINGGREEN:16744447,STEELBLUE:1182971135,TAN:3535047935,TEAL:8421631,THISTLE:3636451583,TOMATO:4284696575,TRANSPARENT:0,TURQUOISE:1088475391,VIOLET:4001558271,WHEAT:4125012991,WHITE:4294967295,WHITESMOKE:4126537215,YELLOW:4294902015,YELLOWGREEN:2597139199},mt={name:"background-clip",initialValue:"border-box",prefix:!1,type:1,parse:function(A,e){return e.map(function(A){if(E(A))switch(A.value){case"padding-box":return 1;case"content-box":return 2}return 0})}},Lt={name:"background-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},bt=(It=function(A,e){var t=ft(180),B=[];return L(e).forEach(function(e,r){if(0===r){if(r=e[0],20===r.type&&-1!==["top","left","right","bottom"].indexOf(r.value))return void(t=S(e));if(M(r))return void(t=(dt(A,r)+ft(270))%ft(360))}e=R(A,e),B.push(e)}),{angle:t,stops:B,type:1}},"closest-side"),Dt="farthest-side",vt="closest-corner",xt="farthest-corner",Mt="ellipse",St="contain",Tt=(Et=function(A,e){var t=0,B=3,r=[],n=[];return L(e).forEach(function(e,s){var o=!0;0===s?o=e.reduce(function(A,e){if(E(e))switch(e.value){case"center":return n.push(ut),!1;case"top":case"left":return n.push(Ct),!1;case"right":case"bottom":return n.push(Ft),!1}else if(D(e)||b(e))return n.push(e),!1;return A},o):1===s&&(o=e.reduce(function(A,e){if(E(e))switch(e.value){case"circle":return t=0,!1;case Mt:return!(t=1);case St:case bt:return B=0,!1;case Dt:return!(B=1);case vt:return!(B=2);case"cover":case xt:return!(B=3)}else if(b(e)||D(e))return(B=Array.isArray(B)?B:[]).push(e),!1;return A},o)),o&&(e=R(A,e),r.push(e))}),{size:B,shape:t,stops:r,position:n,type:2}},function(A,e){if(22===e.type){var t={url:e.value,type:0};return A.cache.addImage(e.value),t}if(18!==e.type)throw new Error("Unsupported image type "+e.type);if(t=Gt[e.name],void 0===t)throw new Error('Attempting to parse an unsupported image function "'+e.name+'"');return t(A,e.values)}),Gt={"linear-gradient":function(A,e){var t=ft(180),B=[];return L(e).forEach(function(e,r){if(0===r){if(r=e[0],20===r.type&&"to"===r.value)return void(t=S(e));if(M(r))return void(t=dt(A,r))}e=R(A,e),B.push(e)}),{angle:t,stops:B,type:1}},"-moz-linear-gradient":It,"-ms-linear-gradient":It,"-o-linear-gradient":It,"-webkit-linear-gradient":It,"radial-gradient":function(A,e){var t=0,B=3,r=[],n=[];return L(e).forEach(function(e,s){var o,i=!0;0===s&&(o=!1,i=e.reduce(function(A,e){if(o)if(E(e))switch(e.value){case"center":return n.push(ut),A;case"top":case"left":return n.push(Ct),A;case"right":case"bottom":return n.push(Ft),A}else(D(e)||b(e))&&n.push(e);else if(E(e))switch(e.value){case"circle":return t=0,!1;case Mt:return!(t=1);case"at":return!(o=!0);case bt:return B=0,!1;case"cover":case Dt:return!(B=1);case St:case vt:return!(B=2);case xt:return!(B=3)}else if(b(e)||D(e))return(B=Array.isArray(B)?B:[]).push(e),!1;return A},i)),i&&(e=R(A,e),r.push(e))}),{size:B,shape:t,stops:r,position:n,type:2}},"-moz-radial-gradient":Et,"-ms-radial-gradient":Et,"-o-radial-gradient":Et,"-webkit-radial-gradient":Et,"-webkit-gradient":function(A,e){var t=ft(180),B=[],r=1;return L(e).forEach(function(e,t){var n;e=e[0];if(0===t){if(E(e)&&"linear"===e.value)return void(r=1);if(E(e)&&"radial"===e.value)return void(r=2)}18===e.type&&("from"===e.name?(n=Ht(A,e.values[0]),B.push({stop:Ct,color:n})):"to"===e.name?(n=Ht(A,e.values[0]),B.push({stop:Ft,color:n})):"color-stop"!==e.name||2===(e=e.values.filter(m)).length&&(n=Ht(A,e[1]),e=e[0],p(e)&&B.push({stop:{type:16,number:100*e.number,flags:e.flags},color:n})))}),1===r?{angle:(t+ft(180))%ft(360),stops:B,type:r}:{size:3,shape:0,stops:B,position:[],type:r}}},Ot={name:"background-image",initialValue:"none",type:1,prefix:!1,parse:function(A,e){if(0===e.length)return[];var t=e[0];return 20===t.type&&"none"===t.value?[]:e.filter(function(A){return m(A)&&!(20===(A=A).type&&"none"===A.value||18===A.type&&!Gt[A.name])}).map(function(e){return Tt(A,e)})}},Vt={name:"background-origin",initialValue:"border-box",prefix:!1,type:1,parse:function(A,e){return e.map(function(A){if(E(A))switch(A.value){case"padding-box":return 1;case"content-box":return 2}return 0})}},kt={name:"background-position",initialValue:"0% 0%",type:1,prefix:!1,parse:function(A,e){return L(e).map(function(A){return A.filter(D)}).map(v)}},Rt={name:"background-repeat",initialValue:"repeat",prefix:!1,type:1,parse:function(A,e){return L(e).map(function(A){return A.filter(E).map(function(A){return A.value}).join(" ")}).map(Nt)}},Nt=function(A){switch(A){case"no-repeat":return 1;case"repeat-x":case"repeat no-repeat":return 2;case"repeat-y":case"no-repeat repeat":return 3;default:return 0}};(Et=ce=ce||{}).AUTO="auto",Et.CONTAIN="contain";var Pt,Xt,Jt={name:"background-size",initialValue:"0",prefix:!(Et.COVER="cover"),type:1,parse:function(A,e){return L(e).map(function(A){return A.filter(Yt)})}},Yt=function(A){return E(A)||D(A)},Wt=(Et=function(A){return{name:"border-"+A+"-color",initialValue:"transparent",prefix:!1,type:3,format:"color"}},Et("top")),Zt=Et("right"),_t=Et("bottom"),qt=Et("left"),jt=(Et=function(A){return{name:"border-radius-"+A,initialValue:"0 0",prefix:!1,type:1,parse:function(A,e){return v(e.filter(D))}}},Et("top-left")),zt=Et("top-right"),$t=Et("bottom-right"),AB=Et("bottom-left"),eB=(Et=function(A){return{name:"border-"+A+"-style",initialValue:"solid",prefix:!1,type:2,parse:function(A,e){switch(e){case"none":return 0;case"dashed":return 2;case"dotted":return 3;case"double":return 4}return 1}}},Et("top")),tB=Et("right"),BB=Et("bottom"),rB=Et("left"),nB=(Et=function(A){return{name:"border-"+A+"-width",initialValue:"0",type:0,prefix:!1,parse:function(A,e){return H(e)?e.number:0}}},Et("top")),sB=Et("right"),oB=Et("bottom"),iB=Et("left"),QB={name:"color",initialValue:"transparent",prefix:!1,type:3,format:"color"},cB={name:"direction",initialValue:"ltr",prefix:!1,type:2,parse:function(A,e){return"rtl"!==e?0:1}},aB={name:"display",initialValue:"inline-block",prefix:!1,type:1,parse:function(A,e){return e.filter(E).reduce(function(A,e){return A|gB(e.value)},0)}},gB=function(A){switch(A){case"block":case"-webkit-box":return 2;case"inline":return 4;case"run-in":return 8;case"flow":return 16;case"flow-root":return 32;case"table":return 64;case"flex":case"-webkit-flex":return 128;case"grid":case"-ms-grid":return 256;case"ruby":return 512;case"subgrid":return 1024;case"list-item":return 2048;case"table-row-group":return 4096;case"table-header-group":return 8192;case"table-footer-group":return 16384;case"table-row":return 32768;case"table-cell":return 65536;case"table-column-group":return 131072;case"table-column":return 262144;case"table-caption":return 524288;case"ruby-base":return 1048576;case"ruby-text":return 2097152;case"ruby-base-container":return 4194304;case"ruby-text-container":return 8388608;case"contents":return 16777216;case"inline-block":return 33554432;case"inline-list-item":return 67108864;case"inline-table":return 134217728;case"inline-flex":return 268435456;case"inline-grid":return 536870912}return 0},wB={name:"float",initialValue:"none",prefix:!1,type:2,parse:function(A,e){switch(e){case"left":return 1;case"right":return 2;case"inline-start":return 3;case"inline-end":return 4}return 0}},UB={name:"letter-spacing",initialValue:"0",prefix:!1,type:0,parse:function(A,e){return 20===e.type&&"normal"===e.value||17!==e.type&&15!==e.type?0:e.number}},lB={name:"line-break",initialValue:(Et=Pt=Pt||{}).NORMAL="normal",prefix:!(Et.STRICT="strict"),type:2,parse:function(A,e){return"strict"!==e?Pt.NORMAL:Pt.STRICT}},CB={name:"line-height",initialValue:"normal",prefix:!1,type:4},uB={name:"list-style-image",initialValue:"none",type:0,prefix:!1,parse:function(A,e){return 20===e.type&&"none"===e.value?null:Tt(A,e)}},FB={name:"list-style-position",initialValue:"outside",prefix:!1,type:2,parse:function(A,e){return"inside"!==e?1:0}},hB={name:"list-style-type",initialValue:"none",prefix:!1,type:2,parse:function(A,e){switch(e){case"disc":return 0;case"circle":return 1;case"square":return 2;case"decimal":return 3;case"cjk-decimal":return 4;case"decimal-leading-zero":return 5;case"lower-roman":return 6;case"upper-roman":return 7;case"lower-greek":return 8;case"lower-alpha":return 9;case"upper-alpha":return 10;case"arabic-indic":return 11;case"armenian":return 12;case"bengali":return 13;case"cambodian":return 14;case"cjk-earthly-branch":return 15;case"cjk-heavenly-stem":return 16;case"cjk-ideographic":return 17;case"devanagari":return 18;case"ethiopic-numeric":return 19;case"georgian":return 20;case"gujarati":return 21;case"gurmukhi":case"hebrew":return 22;case"hiragana":return 23;case"hiragana-iroha":return 24;case"japanese-formal":return 25;case"japanese-informal":return 26;case"kannada":return 27;case"katakana":return 28;case"katakana-iroha":return 29;case"khmer":return 30;case"korean-hangul-formal":return 31;case"korean-hanja-formal":return 32;case"korean-hanja-informal":return 33;case"lao":return 34;case"lower-armenian":return 35;case"malayalam":return 36;case"mongolian":return 37;case"myanmar":return 38;case"oriya":return 39;case"persian":return 40;case"simp-chinese-formal":return 41;case"simp-chinese-informal":return 42;case"tamil":return 43;case"telugu":return 44;case"thai":return 45;case"tibetan":return 46;case"trad-chinese-formal":return 47;case"trad-chinese-informal":return 48;case"upper-armenian":return 49;case"disclosure-open":return 50;case"disclosure-closed":return 51;default:return-1}}},dB=(Et=function(A){return{name:"margin-"+A,initialValue:"0",prefix:!1,type:4}},Et("top")),fB=Et("right"),HB=Et("bottom"),pB=Et("left"),EB={name:"overflow",initialValue:"visible",prefix:!1,type:1,parse:function(A,e){return e.filter(E).map(function(A){switch(A.value){case"hidden":return 1;case"scroll":return 2;case"clip":return 3;case"auto":return 4;default:return 0}})}},IB={name:"overflow-wrap",initialValue:"normal",prefix:!1,type:2,parse:function(A,e){return"break-word"!==e?"normal":"break-word"}},yB=(Et=function(A){return{name:"padding-"+A,initialValue:"0",prefix:!1,type:3,format:"length-percentage"}},Et("top")),KB=Et("right"),mB=Et("bottom"),LB=Et("left"),bB={name:"text-align",initialValue:"left",prefix:!1,type:2,parse:function(A,e){switch(e){case"right":return 2;case"center":case"justify":return 1;default:return 0}}},DB={name:"position",initialValue:"static",prefix:!1,type:2,parse:function(A,e){switch(e){case"relative":return 1;case"absolute":return 2;case"fixed":return 3;case"sticky":return 4}return 0}},vB={name:"text-shadow",initialValue:"none",type:1,prefix:!1,parse:function(A,e){return 1===e.length&&y(e[0],"none")?[]:L(e).map(function(e){for(var t={color:Kt.TRANSPARENT,offsetX:Ct,offsetY:Ct,blur:Ct},B=0,r=0;r>5],this.data[e=(e<<2)+(31&A)];if(A<=65535)return e=this.index[2048+(A-55296>>5)],this.data[e=(e<<2)+(31&A)];if(A>11)],e=this.index[e+=A>>5&63],this.data[e=(e<<2)+(31&A)];if(A<=1114111)return this.data[this.highValueIndex]}return this.errorValue},j),lr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Cr="undefined"==typeof Uint8Array?[]:new Uint8Array(256),ur=0;ur>4,i[o++]=(15&t)<<4|B>>2,i[o++]=(3&B)<<6|63&r;return n}(Fr="AAAAAAAAAAAAEA4AGBkAAFAaAAACAAAAAAAIABAAGAAwADgACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAAQABIAEQATAAIABAACAAQAAgAEAAIABAAVABcAAgAEAAIABAACAAQAGAAaABwAHgAgACIAI4AlgAIABAAmwCjAKgAsAC2AL4AvQDFAMoA0gBPAVYBWgEIAAgACACMANoAYgFkAWwBdAF8AX0BhQGNAZUBlgGeAaMBlQGWAasBswF8AbsBwwF0AcsBYwHTAQgA2wG/AOMBdAF8AekB8QF0AfkB+wHiAHQBfAEIAAMC5gQIAAsCEgIIAAgAFgIeAggAIgIpAggAMQI5AkACygEIAAgASAJQAlgCYAIIAAgACAAKBQoFCgUTBRMFGQUrBSsFCAAIAAgACAAIAAgACAAIAAgACABdAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABoAmgCrwGvAQgAbgJ2AggAHgEIAAgACADnAXsCCAAIAAgAgwIIAAgACAAIAAgACACKAggAkQKZAggAPADJAAgAoQKkAqwCsgK6AsICCADJAggA0AIIAAgACAAIANYC3gIIAAgACAAIAAgACABAAOYCCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAkASoB+QIEAAgACAA8AEMCCABCBQgACABJBVAFCAAIAAgACAAIAAgACAAIAAgACABTBVoFCAAIAFoFCABfBWUFCAAIAAgACAAIAAgAbQUIAAgACAAIAAgACABzBXsFfQWFBYoFigWKBZEFigWKBYoFmAWfBaYFrgWxBbkFCAAIAAgACAAIAAgACAAIAAgACAAIAMEFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAMgFCADQBQgACAAIAAgACAAIAAgACAAIAAgACAAIAO4CCAAIAAgAiQAIAAgACABAAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAD0AggACAD8AggACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIANYFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAMDvwAIAAgAJAIIAAgACAAIAAgACAAIAAgACwMTAwgACAB9BOsEGwMjAwgAKwMyAwsFYgE3A/MEPwMIAEUDTQNRAwgAWQOsAGEDCAAIAAgACAAIAAgACABpAzQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFIQUoBSwFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABtAwgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABMAEwACAAIAAgACAAIABgACAAIAAgACAC/AAgACAAyAQgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACAAIAAwAAgACAAIAAgACAAIAAgACAAIAAAARABIAAgACAAIABQASAAIAAgAIABwAEAAjgCIABsAqAC2AL0AigDQAtwC+IJIQqVAZUBWQqVAZUBlQGVAZUBlQGrC5UBlQGVAZUBlQGVAZUBlQGVAXsKlQGVAbAK6wsrDGUMpQzlDJUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAfAKAAuZA64AtwCJALoC6ADwAAgAuACgA/oEpgO6AqsD+AAIAAgAswMIAAgACAAIAIkAuwP5AfsBwwPLAwgACAAIAAgACADRA9kDCAAIAOED6QMIAAgACAAIAAgACADuA/YDCAAIAP4DyQAIAAgABgQIAAgAXQAOBAgACAAIAAgACAAIABMECAAIAAgACAAIAAgACAD8AAQBCAAIAAgAGgQiBCoECAExBAgAEAEIAAgACAAIAAgACAAIAAgACAAIAAgACAA4BAgACABABEYECAAIAAgATAQYAQgAVAQIAAgACAAIAAgACAAIAAgACAAIAFoECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAOQEIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAB+BAcACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAEABhgSMBAgACAAIAAgAlAQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAwAEAAQABAADAAMAAwADAAQABAAEAAQABAAEAAQABHATAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAdQMIAAgACAAIAAgACAAIAMkACAAIAAgAfQMIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACFA4kDCAAIAAgACAAIAOcBCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAIcDCAAIAAgACAAIAAgACAAIAAgACAAIAJEDCAAIAAgACADFAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABgBAgAZgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAbAQCBXIECAAIAHkECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABAAJwEQACjBKoEsgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAC6BMIECAAIAAgACAAIAAgACABmBAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAxwQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAGYECAAIAAgAzgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBd0FXwUIAOIF6gXxBYoF3gT5BQAGCAaKBYoFigWKBYoFigWKBYoFigWKBYoFigXWBIoFigWKBYoFigWKBYoFigWKBYsFEAaKBYoFigWKBYoFigWKBRQGCACKBYoFigWKBQgACAAIANEECAAIABgGigUgBggAJgYIAC4GMwaKBYoF0wQ3Bj4GigWKBYoFigWKBYoFigWKBYoFigWKBYoFigUIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWLBf///////wQABAAEAAQABAAEAAQABAAEAAQAAwAEAAQAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAQADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUAAAAFAAUAAAAFAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAQAAAAUABQAFAAUABQAFAAAAAAAFAAUAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAFAAUAAQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAAABwAHAAcAAAAHAAcABwAFAAEAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAcABwAFAAUAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQABAAAAAAAAAAAAAAAFAAUABQAFAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAHAAcAAAAHAAcAAAAAAAUABQAHAAUAAQAHAAEABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwABAAUABQAFAAUAAAAAAAAAAAAAAAEAAQABAAEAAQABAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABQANAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAABQAHAAUABQAFAAAAAAAAAAcABQAFAAUABQAFAAQABAAEAAQABAAEAAQABAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUAAAAFAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAUAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAcABwAFAAcABwAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUABwAHAAUABQAFAAUAAAAAAAcABwAAAAAABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAAAAAAAAAAABQAFAAAAAAAFAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAFAAUABQAFAAUAAAAFAAUABwAAAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABwAFAAUABQAFAAAAAAAHAAcAAAAAAAcABwAFAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAAAAAAAAAHAAcABwAAAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAUABQAFAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAHAAcABQAHAAcAAAAFAAcABwAAAAcABwAFAAUAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAFAAcABwAFAAUABQAAAAUAAAAHAAcABwAHAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAHAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAUAAAAFAAUAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABwAFAAUABQAFAAUABQAAAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABQAFAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAFAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAHAAUABQAFAAUABQAFAAUABwAHAAcABwAHAAcABwAHAAUABwAHAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABwAHAAcABwAFAAUABwAHAAcAAAAAAAAAAAAHAAcABQAHAAcABwAHAAcABwAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAUABQAFAAUABQAFAAUAAAAFAAAABQAAAAAABQAFAAUABQAFAAUABQAFAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAUABQAFAAUABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABwAFAAcABwAHAAcABwAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAUABQAFAAUABwAHAAUABQAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABQAFAAcABwAHAAUABwAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAcABQAFAAUABQAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAAAAAABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAAAAAAAAAFAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAUABQAHAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAFAAUABQAFAAcABwAFAAUABwAHAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAcABwAFAAUABwAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABQAAAAAABQAFAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAcABwAAAAAAAAAAAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAcABwAFAAcABwAAAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAFAAUABQAAAAUABQAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABwAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAHAAcABQAHAAUABQAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAAABwAHAAAAAAAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAFAAUABwAFAAcABwAFAAcABQAFAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAAAAAABwAHAAcABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAFAAcABwAFAAUABQAFAAUABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAUABQAFAAcABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABQAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAAAAAAFAAUABwAHAAcABwAFAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAHAAUABQAFAAUABQAFAAUABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAABQAAAAUABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAHAAcAAAAFAAUAAAAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABQAFAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAABQAFAAUABQAFAAUABQAAAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAFAAUABQAFAAUADgAOAA4ADgAOAA4ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAMAAwADAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAAAAAAAAAAAAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAAAAAAAAAAAAsADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwACwAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAADgAOAA4AAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAAAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4AAAAOAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAAAAAAAAAAAA4AAAAOAAAAAAAAAAAADgAOAA4AAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAA="),fr=Array.isArray(dr)?function(A){for(var e=A.length,t=[],B=0;Bs.x||r.y>s.y,s=r,0===e||A});return A.body.removeChild(e),r}(document);return Object.defineProperty(Rr,"SUPPORT_WORD_BREAKING",{value:A}),A},get SUPPORT_SVG_DRAWING(){var A=function(A){var e=new Image,t=A.createElement("canvas");A=t.getContext("2d");if(!A)return!1;e.src="data:image/svg+xml,";try{A.drawImage(e,0,0),t.toDataURL()}catch(A){return!1}return!0}(document);return Object.defineProperty(Rr,"SUPPORT_SVG_DRAWING",{value:A}),A},get SUPPORT_FOREIGNOBJECT_DRAWING(){var A="function"==typeof Array.from&&"function"==typeof window.fetch?function(A){var e=A.createElement("canvas"),t=100;e.width=t,e.height=t;var B=e.getContext("2d");if(!B)return Promise.reject(!1);B.fillStyle="rgb(0, 255, 0)",B.fillRect(0,0,t,t);var r=new Image,n=e.toDataURL();return r.src=n,r=Vr(t,t,0,0,r),B.fillStyle="red",B.fillRect(0,0,t,t),kr(r).then(function(e){B.drawImage(e,0,0);var r=B.getImageData(0,0,t,t).data;return B.fillStyle="red",B.fillRect(0,0,t,t),e=A.createElement("div"),e.style.backgroundImage="url("+n+")",e.style.height="100px",AA(r)?kr(Vr(t,t,0,0,e)):Promise.reject(!1)}).then(function(A){return B.drawImage(A,0,0), +AA(B.getImageData(0,0,t,t).data)}).catch(function(){return!1})}(document):Promise.resolve(!1);return Object.defineProperty(Rr,"SUPPORT_FOREIGNOBJECT_DRAWING",{value:A}),A},get SUPPORT_CORS_IMAGES(){var A=void 0!==(new Image).crossOrigin;return Object.defineProperty(Rr,"SUPPORT_CORS_IMAGES",{value:A}),A},get SUPPORT_RESPONSE_TYPE(){var A="string"==typeof(new XMLHttpRequest).responseType;return Object.defineProperty(Rr,"SUPPORT_RESPONSE_TYPE",{value:A}),A},get SUPPORT_CORS_XHR(){var A="withCredentials"in new XMLHttpRequest;return Object.defineProperty(Rr,"SUPPORT_CORS_XHR",{value:A}),A},get SUPPORT_NATIVE_TEXT_SEGMENTATION(){var A=!("undefined"==typeof Intl||!Intl.Segmenter);return Object.defineProperty(Rr,"SUPPORT_NATIVE_TEXT_SEGMENTATION",{value:A}),A}},Nr=function(A,e){this.text=A,this.bounds=e},Pr=function(A,e){var t=e.ownerDocument;if(t){var B=t.createElement("html2canvaswrapper");if(B.appendChild(e.cloneNode(!0)),t=e.parentNode,t)return t.replaceChild(B,e),A=YA(A,B),B.firstChild&&t.replaceChild(B.firstChild,B),A}return JA.EMPTY},Xr=function(A,e,t){var B=A.ownerDocument;if(!B)throw new Error("Node has no owner document");return B=B.createRange(),B.setStart(A,e),B.setEnd(A,e+t),B},Jr=function(A){if(Rr.SUPPORT_NATIVE_TEXT_SEGMENTATION){var e=new Intl.Segmenter(void 0,{granularity:"grapheme"});return Array.from(e.segment(A)).map(function(A){return A.segment})}return function(A){for(var e,t=$(A),B=[];!(e=t.next()).done;)e.value&&B.push(e.value.slice());return B}(A)},Yr=function(A,e){return 0!==e.letterSpacing?Jr(A):function(A,e){if(Rr.SUPPORT_NATIVE_TEXT_SEGMENTATION){var t=new Intl.Segmenter(void 0,{granularity:"word"});return Array.from(t.segment(A)).map(function(A){return A.segment})}return Zr(A,e)}(A,e)},Wr=[32,160,4961,65792,65793,4153,4241],Zr=function(A,e){for(var t,B=a(A,{lineBreak:e.lineBreak,wordBreak:"break-word"===e.overflowWrap?"break-word":e.wordBreak}),r=[];!(t=B.next()).done;)!function(){var A,e;t.value&&(A=t.value.slice(),A=WA(A),e="",A.forEach(function(A){-1===Wr.indexOf(A)?e+=ZA(A):(e.length&&r.push(e),r.push(ZA(A)),e="")}),e.length&&r.push(e))}();return r},_r=function(A,e,t){var B,r,n,s,o;this.text=qr(e.data,t.textTransform),this.textBounds=(B=A,A=this.text,n=e,A=Yr(A,r=t),s=[],o=0,A.forEach(function(A){var e,t,i;r.textDecorationLine.length||0"),zn(this.referenceElement.ownerDocument,s,o),Q.replaceChild(Q.adoptNode(this.documentElement),Q.documentElement),Q.close(),A},hA.prototype.createElementClone=function(A){if(Qr(A,2),bn(A))return this.createCanvasClone(A);if(cA(A))return this.createVideoClone(A);if(aA(A))return this.createStyleClone(A);var e=A.cloneNode(!1);return Dn(e)&&(Dn(A)&&A.currentSrc&&A.currentSrc!==A.src&&(e.src=A.currentSrc,e.srcset=""),"lazy"===e.loading&&(e.loading="eager")),gA(e)?this.createCustomElementClone(e):e},hA.prototype.createCustomElementClone=function(A){var e=document.createElement("html2canvascustomelement");return qn(A.style,e),e},hA.prototype.createStyleClone=function(A){try{var e=A.sheet;if(e&&e.cssRules){var t=[].slice.call(e.cssRules,0).reduce(function(A,e){return e&&"string"==typeof e.cssText?A+e.cssText:A},""),B=A.cloneNode(!1);return B.textContent=t,B}}catch(A){if(this.context.logger.error("Unable to access cssRules property",A),"SecurityError"!==A.name)throw A}return A.cloneNode(!1)},hA.prototype.createCanvasClone=function(A){var e;if(this.options.inlineImages&&A.ownerDocument){var t=A.ownerDocument.createElement("img");try{return t.src=A.toDataURL(),t}catch(e){this.context.logger.info("Unable to inline canvas contents, canvas is tainted",A)}}t=A.cloneNode(!1);try{t.width=A.width,t.height=A.height;var B,r,n=A.getContext("2d"),s=t.getContext("2d");return s&&(!this.options.allowTaint&&n?s.putImageData(n.getImageData(0,0,A.width,A.height),0,0):(!(B=null!==(e=A.getContext("webgl2"))&&void 0!==e?e:A.getContext("webgl"))||!1===(null==(r=B.getContextAttributes())?void 0:r.preserveDrawingBuffer)&&this.context.logger.warn("Unable to clone WebGL context as it has preserveDrawingBuffer=false",A),s.drawImage(A,0,0))),t}catch(e){this.context.logger.info("Unable to clone canvas as it is tainted",A)}return t},hA.prototype.createVideoClone=function(A){var e=A.ownerDocument.createElement("canvas");e.width=A.offsetWidth,e.height=A.offsetHeight;var t=e.getContext("2d");try{return t&&(t.drawImage(A,0,0,e.width,e.height),this.options.allowTaint||t.getImageData(0,0,e.width,e.height)),e}catch(e){this.context.logger.info("Unable to clone video as it is tainted",A)}return e=A.ownerDocument.createElement("canvas"),e.width=A.offsetWidth,e.height=A.offsetHeight,e},hA.prototype.appendChildNode=function(A,e,t){Hn(e)&&("SCRIPT"===e.tagName||e.hasAttribute(Pn)||"function"==typeof this.options.ignoreElements&&this.options.ignoreElements(e))||this.options.copyStyles&&Hn(e)&&aA(e)||A.appendChild(this.cloneNode(e,t))},hA.prototype.cloneChildNodes=function(A,e,t){for(var B,r=this,n=(A.shadowRoot||A).firstChild;n;n=n.nextSibling)Hn(n)&&Sn(n)&&"function"==typeof n.assignedNodes?(B=n.assignedNodes()).length&&B.forEach(function(A){return r.appendChildNode(e,A,t)}):this.appendChildNode(e,n,t)},hA.prototype.cloneNode=function(A,e){if(fn(A))return document.createTextNode(A.data);if(!A.ownerDocument)return A.cloneNode(!1);var t=A.ownerDocument.defaultView;if(t&&Hn(A)&&(pn(A)||En(A))){var B=this.createElementClone(A);B.style.transitionProperty="none";var r=t.getComputedStyle(A),n=t.getComputedStyle(A,":before"),s=t.getComputedStyle(A,":after");return this.referenceElement===A&&pn(B)&&(this.clonedReferenceElement=B),Ln(B)&&Bs(B),t=this.counters.parse(new or(this.context,r)),n=this.resolvePseudoContent(A,B,n,vr.BEFORE),gA(A)&&(e=!0),cA(A)||this.cloneChildNodes(A,B,e),n&&B.insertBefore(n,B.firstChild),s=this.resolvePseudoContent(A,B,s,vr.AFTER),s&&B.appendChild(s),this.counters.pop(t),(r&&(this.options.copyStyles||En(A))&&!vn(A)||e)&&qn(r,B),0===A.scrollTop&&0===A.scrollLeft||this.scrolledElements.push([B,A.scrollLeft,A.scrollTop]),(xn(A)||Mn(A))&&(xn(B)||Mn(B))&&(B.value=A.value),B}return A.cloneNode(!1)},hA.prototype.resolvePseudoContent=function(A,e,t,B){var r=this;if(t){var n=t.content,s=e.ownerDocument;if(s&&n&&"none"!==n&&"-moz-alt-content"!==n&&"none"!==t.display){this.counters.parse(new or(this.context,t));var o=new sr(this.context,t),i=s.createElement("html2canvaspseudoelement");return qn(t,i),o.content.forEach(function(e){if(0===e.type)i.appendChild(s.createTextNode(e.value));else if(22===e.type){var t=s.createElement("img");t.src=e.value,t.style.opacity="1",i.appendChild(t)}else if(18===e.type){var B,n,Q,c,a;"attr"===e.name?(t=e.values.filter(E)).length&&i.appendChild(s.createTextNode(A.getAttribute(t[0].value)||"")):"counter"===e.name?(Q=(n=e.values.filter(m))[0],n=n[1],Q&&E(Q)&&(B=r.counters.getCounterValue(Q.value),a=n&&E(n)?hB.parse(r.context,n.value):3,i.appendChild(s.createTextNode(Nn(B,a,!1))))):"counters"===e.name&&(Q=(B=e.values.filter(m))[0],a=B[1],n=B[2],Q&&E(Q)&&(Q=r.counters.getCounterValues(Q.value),c=n&&E(n)?hB.parse(r.context,n.value):3,a=a&&0===a.type?a.value:"",a=Q.map(function(A){return Nn(A,c,!1)}).join(a),i.appendChild(s.createTextNode(a))))}else if(20===e.type)switch(e.value){case"open-quote":i.appendChild(s.createTextNode(Z(o.quotes,r.quoteDepth++,!0)));break;case"close-quote":i.appendChild(s.createTextNode(Z(o.quotes,--r.quoteDepth,!1)));break;default:i.appendChild(s.createTextNode(e.value))}}),i.className=As+" "+es,B=B===vr.BEFORE?" "+As:" "+es,En(e)?e.className.baseValue+=B:e.className+=B,i}}},hA.destroy=function(A){return!!A.parentNode&&(A.parentNode.removeChild(A),!0)},hA);(Et=vr=vr||{})[Et.BEFORE=0]="BEFORE",Et[Et.AFTER=1]="AFTER";var Jn,Yn=function(A,e){var t=A.createElement("iframe");return t.className="html2canvas-container",t.style.visibility="hidden",t.style.position="fixed",t.style.left="-10000px",t.style.top="0px",t.style.border="0",t.width=e.width.toString(),t.height=e.height.toString(),t.scrolling="no",t.setAttribute(Pn,"true"),A.body.appendChild(t),t},Wn=function(A){return Promise.all([].slice.call(A.images,0).map(dA))},Zn=function(A){return new Promise(function(e,t){var B=A.contentWindow;if(!B)return t("No window assigned for iframe");var r=B.document;B.onload=A.onload=function(){B.onload=A.onload=null;var t=setInterval(function(){0"),e},zn=function(A,e,t){A&&A.defaultView&&(e!==A.defaultView.pageXOffset||t!==A.defaultView.pageYOffset)&&A.defaultView.scrollTo(e,t)},$n=function(A){var e=A[0],t=A[1];A=A[2];e.scrollLeft=t,e.scrollTop=A},As="___html2canvas___pseudoelement_before",es="___html2canvas___pseudoelement_after",ts='{\n content: "" !important;\n display: none !important;\n}',Bs=function(A){rs(A,"."+As+":before"+ts+"\n ."+es+":after"+ts)},rs=function(A,e){var t=A.ownerDocument;t&&((t=t.createElement("style")).textContent=e,A.appendChild(t))},ns=(fA.getOrigin=function(A){var e=fA._link;return e?(e.href=A,e.href=e.href,e.protocol+e.hostname+e.port):"about:blank"},fA.isSameOrigin=function(A){return fA.getOrigin(A)===fA._origin},fA.setContext=function(A){fA._link=A.document.createElement("a"),fA._origin=fA.getOrigin(A.location.href)},fA._origin="about:blank",fA),ss=(HA.prototype.addImage=function(A){var e=Promise.resolve();return this.has(A)||(ws(A)||cs(A))&&(this._cache[A]=this.loadImage(A)).catch(function(){}),e},HA.prototype.match=function(A){return this._cache[A]},HA.prototype.loadImage=function(A){return e(this,void 0,void 0,function(){var e,B,r,n,s=this;return t(this,function(t){switch(t.label){case 0:return e=ns.isSameOrigin(A),B=!as(A)&&!0===this._options.useCORS&&Rr.SUPPORT_CORS_IMAGES&&!e,r=!as(A)&&!e&&!ws(A)&&"string"==typeof this._options.proxy&&Rr.SUPPORT_CORS_XHR&&!B,e||!1!==this._options.allowTaint||as(A)||ws(A)||r||B?(n=A,r?[4,this.proxy(n)]:[3,2]):[2];case 1:n=t.sent(),t.label=2;case 2:return this.context.logger.debug("Added image "+A.substring(0,256)),[4,new Promise(function(A,e){var t=new Image;t.onload=function(){return A(t)},t.onerror=e,(gs(n)||B)&&(t.crossOrigin="anonymous"),t.src=n,!0===t.complete&&setTimeout(function(){return A(t)},500),0t.width+C?0:Math.max(0,n-C),Math.max(0,s-l),Jn.TOP_RIGHT):new ls(t.left+t.width-C,t.top+l),this.bottomRightPaddingBox=0t.width+F+A?0:n-F+A,s-(l+h),Jn.TOP_RIGHT):new ls(t.left+t.width-(C+d),t.top+l+h),this.bottomRightContentBox=0A.element.container.styles.zIndex.order?(c=e,!1):0=A.element.container.styles.zIndex.order?(a=e+1,!1):0= 0; ) t[e] = 0; - } - const a = 256, - i = 286, - n = 30, - s = 15, - r = new Uint8Array([ - 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, - 4, 5, 5, 5, 5, 0, - ]), - l = new Uint8Array([ - 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, - 10, 10, 11, 11, 12, 12, 13, 13, - ]), - o = new Uint8Array([ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7, - ]), - h = new Uint8Array([ - 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15, - ]), - d = new Array(576); - e(d); - const _ = new Array(60); - e(_); - const f = new Array(512); - e(f); - const c = new Array(256); - e(c); - const u = new Array(29); - e(u); - const w = new Array(n); - function b(t, e, a, i, n) { - (this.static_tree = t), - (this.extra_bits = e), - (this.extra_base = a), - (this.elems = i), - (this.max_length = n), - (this.has_stree = t && t.length); - } - let g, p, m; - function k(t, e) { - (this.dyn_tree = t), (this.max_code = 0), (this.stat_desc = e); - } - e(w); - const v = (t) => (t < 256 ? f[t] : f[256 + (t >>> 7)]), - y = (t, e) => { - (t.pending_buf[t.pending++] = 255 & e), - (t.pending_buf[t.pending++] = (e >>> 8) & 255); - }, - x = (t, e, a) => { - t.bi_valid > 16 - a - ? ((t.bi_buf |= (e << t.bi_valid) & 65535), - y(t, t.bi_buf), - (t.bi_buf = e >> (16 - t.bi_valid)), - (t.bi_valid += a - 16)) - : ((t.bi_buf |= (e << t.bi_valid) & 65535), (t.bi_valid += a)); - }, - z = (t, e, a) => { - x(t, a[2 * e], a[2 * e + 1]); - }, - A = (t, e) => { - let a = 0; - do { - (a |= 1 & t), (t >>>= 1), (a <<= 1); - } while (--e > 0); - return a >>> 1; - }, - E = (t, e, a) => { - const i = new Array(16); - let n, - r, - l = 0; - for (n = 1; n <= s; n++) i[n] = l = (l + a[n - 1]) << 1; - for (r = 0; r <= e; r++) { - let e = t[2 * r + 1]; - 0 !== e && (t[2 * r] = A(i[e]++, e)); - } - }, - R = (t) => { - let e; - for (e = 0; e < i; e++) t.dyn_ltree[2 * e] = 0; - for (e = 0; e < n; e++) t.dyn_dtree[2 * e] = 0; - for (e = 0; e < 19; e++) t.bl_tree[2 * e] = 0; - (t.dyn_ltree[512] = 1), - (t.opt_len = t.static_len = 0), - (t.last_lit = t.matches = 0); - }, - Z = (t) => { - t.bi_valid > 8 - ? y(t, t.bi_buf) - : t.bi_valid > 0 && (t.pending_buf[t.pending++] = t.bi_buf), - (t.bi_buf = 0), - (t.bi_valid = 0); - }, - U = (t, e, a, i) => { - const n = 2 * e, - s = 2 * a; - return t[n] < t[s] || (t[n] === t[s] && i[e] <= i[a]); - }, - S = (t, e, a) => { - const i = t.heap[a]; - let n = a << 1; - for ( - ; - n <= t.heap_len && - (n < t.heap_len && - U(e, t.heap[n + 1], t.heap[n], t.depth) && - n++, - !U(e, i, t.heap[n], t.depth)); - - ) - (t.heap[a] = t.heap[n]), (a = n), (n <<= 1); - t.heap[a] = i; - }, - D = (t, e, i) => { - let n, - s, - o, - h, - d = 0; - if (0 !== t.last_lit) - do { - (n = - (t.pending_buf[t.d_buf + 2 * d] << 8) | - t.pending_buf[t.d_buf + 2 * d + 1]), - (s = t.pending_buf[t.l_buf + d]), - d++, - 0 === n - ? z(t, s, e) - : ((o = c[s]), - z(t, o + a + 1, e), - (h = r[o]), - 0 !== h && ((s -= u[o]), x(t, s, h)), - n--, - (o = v(n)), - z(t, o, i), - (h = l[o]), - 0 !== h && ((n -= w[o]), x(t, n, h))); - } while (d < t.last_lit); - z(t, 256, e); - }, - T = (t, e) => { - const a = e.dyn_tree, - i = e.stat_desc.static_tree, - n = e.stat_desc.has_stree, - r = e.stat_desc.elems; - let l, - o, - h, - d = -1; - for (t.heap_len = 0, t.heap_max = 573, l = 0; l < r; l++) - 0 !== a[2 * l] - ? ((t.heap[++t.heap_len] = d = l), (t.depth[l] = 0)) - : (a[2 * l + 1] = 0); - for (; t.heap_len < 2; ) - (h = t.heap[++t.heap_len] = d < 2 ? ++d : 0), - (a[2 * h] = 1), - (t.depth[h] = 0), - t.opt_len--, - n && (t.static_len -= i[2 * h + 1]); - for (e.max_code = d, l = t.heap_len >> 1; l >= 1; l--) S(t, a, l); - h = r; - do { - (l = t.heap[1]), - (t.heap[1] = t.heap[t.heap_len--]), - S(t, a, 1), - (o = t.heap[1]), - (t.heap[--t.heap_max] = l), - (t.heap[--t.heap_max] = o), - (a[2 * h] = a[2 * l] + a[2 * o]), - (t.depth[h] = - (t.depth[l] >= t.depth[o] ? t.depth[l] : t.depth[o]) + - 1), - (a[2 * l + 1] = a[2 * o + 1] = h), - (t.heap[1] = h++), - S(t, a, 1); - } while (t.heap_len >= 2); - (t.heap[--t.heap_max] = t.heap[1]), - ((t, e) => { - const a = e.dyn_tree, - i = e.max_code, - n = e.stat_desc.static_tree, - r = e.stat_desc.has_stree, - l = e.stat_desc.extra_bits, - o = e.stat_desc.extra_base, - h = e.stat_desc.max_length; - let d, - _, - f, - c, - u, - w, - b = 0; - for (c = 0; c <= s; c++) t.bl_count[c] = 0; - for ( - a[2 * t.heap[t.heap_max] + 1] = 0, d = t.heap_max + 1; - d < 573; - d++ - ) - (_ = t.heap[d]), - (c = a[2 * a[2 * _ + 1] + 1] + 1), - c > h && ((c = h), b++), - (a[2 * _ + 1] = c), - _ > i || - (t.bl_count[c]++, - (u = 0), - _ >= o && (u = l[_ - o]), - (w = a[2 * _]), - (t.opt_len += w * (c + u)), - r && (t.static_len += w * (n[2 * _ + 1] + u))); - if (0 !== b) { - do { - for (c = h - 1; 0 === t.bl_count[c]; ) c--; - t.bl_count[c]--, - (t.bl_count[c + 1] += 2), - t.bl_count[h]--, - (b -= 2); - } while (b > 0); - for (c = h; 0 !== c; c--) - for (_ = t.bl_count[c]; 0 !== _; ) - (f = t.heap[--d]), - f > i || - (a[2 * f + 1] !== c && - ((t.opt_len += - (c - a[2 * f + 1]) * a[2 * f]), - (a[2 * f + 1] = c)), - _--); - } - })(t, e), - E(a, d, t.bl_count); - }, - O = (t, e, a) => { - let i, - n, - s = -1, - r = e[1], - l = 0, - o = 7, - h = 4; - for ( - 0 === r && ((o = 138), (h = 3)), - e[2 * (a + 1) + 1] = 65535, - i = 0; - i <= a; - i++ - ) - (n = r), - (r = e[2 * (i + 1) + 1]), - (++l < o && n === r) || - (l < h - ? (t.bl_tree[2 * n] += l) - : 0 !== n - ? (n !== s && t.bl_tree[2 * n]++, t.bl_tree[32]++) - : l <= 10 - ? t.bl_tree[34]++ - : t.bl_tree[36]++, - (l = 0), - (s = n), - 0 === r - ? ((o = 138), (h = 3)) - : n === r - ? ((o = 6), (h = 3)) - : ((o = 7), (h = 4))); - }, - I = (t, e, a) => { - let i, - n, - s = -1, - r = e[1], - l = 0, - o = 7, - h = 4; - for (0 === r && ((o = 138), (h = 3)), i = 0; i <= a; i++) - if ( - ((n = r), (r = e[2 * (i + 1) + 1]), !(++l < o && n === r)) - ) { - if (l < h) - do { - z(t, n, t.bl_tree); - } while (0 != --l); - else - 0 !== n - ? (n !== s && (z(t, n, t.bl_tree), l--), - z(t, 16, t.bl_tree), - x(t, l - 3, 2)) - : l <= 10 - ? (z(t, 17, t.bl_tree), x(t, l - 3, 3)) - : (z(t, 18, t.bl_tree), x(t, l - 11, 7)); - (l = 0), - (s = n), - 0 === r - ? ((o = 138), (h = 3)) - : n === r - ? ((o = 6), (h = 3)) - : ((o = 7), (h = 4)); - } - }; - let F = !1; - const L = (t, e, a, i) => { - x(t, 0 + (i ? 1 : 0), 3), - ((t, e, a, i) => { - Z(t), - y(t, a), - y(t, ~a), - t.pending_buf.set(t.window.subarray(e, e + a), t.pending), - (t.pending += a); - })(t, e, a, !0); - }; - var N = { - _tr_init: (t) => { - F || - ((() => { - let t, e, a, h, k; - const v = new Array(16); - for (a = 0, h = 0; h < 28; h++) - for (u[h] = a, t = 0; t < 1 << r[h]; t++) - c[a++] = h; - for (c[a - 1] = h, k = 0, h = 0; h < 16; h++) - for (w[h] = k, t = 0; t < 1 << l[h]; t++) - f[k++] = h; - for (k >>= 7; h < n; h++) - for (w[h] = k << 7, t = 0; t < 1 << (l[h] - 7); t++) - f[256 + k++] = h; - for (e = 0; e <= s; e++) v[e] = 0; - for (t = 0; t <= 143; ) (d[2 * t + 1] = 8), t++, v[8]++; - for (; t <= 255; ) (d[2 * t + 1] = 9), t++, v[9]++; - for (; t <= 279; ) (d[2 * t + 1] = 7), t++, v[7]++; - for (; t <= 287; ) (d[2 * t + 1] = 8), t++, v[8]++; - for (E(d, 287, v), t = 0; t < n; t++) - (_[2 * t + 1] = 5), (_[2 * t] = A(t, 5)); - (g = new b(d, r, 257, i, s)), - (p = new b(_, l, 0, n, s)), - (m = new b(new Array(0), o, 0, 19, 7)); - })(), - (F = !0)), - (t.l_desc = new k(t.dyn_ltree, g)), - (t.d_desc = new k(t.dyn_dtree, p)), - (t.bl_desc = new k(t.bl_tree, m)), - (t.bi_buf = 0), - (t.bi_valid = 0), - R(t); - }, - _tr_stored_block: L, - _tr_flush_block: (t, e, i, n) => { - let s, - r, - l = 0; - t.level > 0 - ? (2 === t.strm.data_type && - (t.strm.data_type = ((t) => { - let e, - i = 4093624447; - for (e = 0; e <= 31; e++, i >>>= 1) - if (1 & i && 0 !== t.dyn_ltree[2 * e]) - return 0; - if ( - 0 !== t.dyn_ltree[18] || - 0 !== t.dyn_ltree[20] || - 0 !== t.dyn_ltree[26] - ) - return 1; - for (e = 32; e < a; e++) - if (0 !== t.dyn_ltree[2 * e]) return 1; - return 0; - })(t)), - T(t, t.l_desc), - T(t, t.d_desc), - (l = ((t) => { - let e; - for ( - O(t, t.dyn_ltree, t.l_desc.max_code), - O(t, t.dyn_dtree, t.d_desc.max_code), - T(t, t.bl_desc), - e = 18; - e >= 3 && 0 === t.bl_tree[2 * h[e] + 1]; - e-- - ); - return (t.opt_len += 3 * (e + 1) + 5 + 5 + 4), e; - })(t)), - (s = (t.opt_len + 3 + 7) >>> 3), - (r = (t.static_len + 3 + 7) >>> 3), - r <= s && (s = r)) - : (s = r = i + 5), - i + 4 <= s && -1 !== e - ? L(t, e, i, n) - : 4 === t.strategy || r === s - ? (x(t, 2 + (n ? 1 : 0), 3), D(t, d, _)) - : (x(t, 4 + (n ? 1 : 0), 3), - ((t, e, a, i) => { - let n; - for ( - x(t, e - 257, 5), - x(t, a - 1, 5), - x(t, i - 4, 4), - n = 0; - n < i; - n++ - ) - x(t, t.bl_tree[2 * h[n] + 1], 3); - I(t, t.dyn_ltree, e - 1), - I(t, t.dyn_dtree, a - 1); - })( - t, - t.l_desc.max_code + 1, - t.d_desc.max_code + 1, - l + 1 - ), - D(t, t.dyn_ltree, t.dyn_dtree)), - R(t), - n && Z(t); - }, - _tr_tally: (t, e, i) => ( - (t.pending_buf[t.d_buf + 2 * t.last_lit] = (e >>> 8) & 255), - (t.pending_buf[t.d_buf + 2 * t.last_lit + 1] = 255 & e), - (t.pending_buf[t.l_buf + t.last_lit] = 255 & i), - t.last_lit++, - 0 === e - ? t.dyn_ltree[2 * i]++ - : (t.matches++, - e--, - t.dyn_ltree[2 * (c[i] + a + 1)]++, - t.dyn_dtree[2 * v(e)]++), - t.last_lit === t.lit_bufsize - 1 - ), - _tr_align: (t) => { - x(t, 2, 3), - z(t, 256, d), - ((t) => { - 16 === t.bi_valid - ? (y(t, t.bi_buf), (t.bi_buf = 0), (t.bi_valid = 0)) - : t.bi_valid >= 8 && - ((t.pending_buf[t.pending++] = 255 & t.bi_buf), - (t.bi_buf >>= 8), - (t.bi_valid -= 8)); - })(t); - }, - }, - B = (t, e, a, i) => { - let n = (65535 & t) | 0, - s = ((t >>> 16) & 65535) | 0, - r = 0; - for (; 0 !== a; ) { - (r = a > 2e3 ? 2e3 : a), (a -= r); - do { - (n = (n + e[i++]) | 0), (s = (s + n) | 0); - } while (--r); - (n %= 65521), (s %= 65521); - } - return n | (s << 16) | 0; - }; - const C = new Uint32Array( - (() => { - let t, - e = []; - for (var a = 0; a < 256; a++) { - t = a; - for (var i = 0; i < 8; i++) - t = 1 & t ? 3988292384 ^ (t >>> 1) : t >>> 1; - e[a] = t; - } - return e; - })() - ); - var M = (t, e, a, i) => { - const n = C, - s = i + a; - t ^= -1; - for (let a = i; a < s; a++) t = (t >>> 8) ^ n[255 & (t ^ e[a])]; - return -1 ^ t; - }, - H = { - 2: "need dictionary", - 1: "stream end", - 0: "", - "-1": "file error", - "-2": "stream error", - "-3": "data error", - "-4": "insufficient memory", - "-5": "buffer error", - "-6": "incompatible version", - }, - j = { - Z_NO_FLUSH: 0, - Z_PARTIAL_FLUSH: 1, - Z_SYNC_FLUSH: 2, - Z_FULL_FLUSH: 3, - Z_FINISH: 4, - Z_BLOCK: 5, - Z_TREES: 6, - Z_OK: 0, - Z_STREAM_END: 1, - Z_NEED_DICT: 2, - Z_ERRNO: -1, - Z_STREAM_ERROR: -2, - Z_DATA_ERROR: -3, - Z_MEM_ERROR: -4, - Z_BUF_ERROR: -5, - Z_NO_COMPRESSION: 0, - Z_BEST_SPEED: 1, - Z_BEST_COMPRESSION: 9, - Z_DEFAULT_COMPRESSION: -1, - Z_FILTERED: 1, - Z_HUFFMAN_ONLY: 2, - Z_RLE: 3, - Z_FIXED: 4, - Z_DEFAULT_STRATEGY: 0, - Z_BINARY: 0, - Z_TEXT: 1, - Z_UNKNOWN: 2, - Z_DEFLATED: 8, - }; - const { - _tr_init: K, - _tr_stored_block: P, - _tr_flush_block: Y, - _tr_tally: G, - _tr_align: X, - } = N, - { - Z_NO_FLUSH: W, - Z_PARTIAL_FLUSH: q, - Z_FULL_FLUSH: J, - Z_FINISH: Q, - Z_BLOCK: V, - Z_OK: $, - Z_STREAM_END: tt, - Z_STREAM_ERROR: et, - Z_DATA_ERROR: at, - Z_BUF_ERROR: it, - Z_DEFAULT_COMPRESSION: nt, - Z_FILTERED: st, - Z_HUFFMAN_ONLY: rt, - Z_RLE: lt, - Z_FIXED: ot, - Z_DEFAULT_STRATEGY: ht, - Z_UNKNOWN: dt, - Z_DEFLATED: _t, - } = j, - ft = 258, - ct = 262, - ut = 103, - wt = 113, - bt = 666, - gt = (t, e) => ((t.msg = H[e]), e), - pt = (t) => (t << 1) - (t > 4 ? 9 : 0), - mt = (t) => { - let e = t.length; - for (; --e >= 0; ) t[e] = 0; - }; - let kt = (t, e, a) => ((e << t.hash_shift) ^ a) & t.hash_mask; - const vt = (t) => { - const e = t.state; - let a = e.pending; - a > t.avail_out && (a = t.avail_out), - 0 !== a && - (t.output.set( - e.pending_buf.subarray( - e.pending_out, - e.pending_out + a - ), - t.next_out - ), - (t.next_out += a), - (e.pending_out += a), - (t.total_out += a), - (t.avail_out -= a), - (e.pending -= a), - 0 === e.pending && (e.pending_out = 0)); - }, - yt = (t, e) => { - Y( - t, - t.block_start >= 0 ? t.block_start : -1, - t.strstart - t.block_start, - e - ), - (t.block_start = t.strstart), - vt(t.strm); - }, - xt = (t, e) => { - t.pending_buf[t.pending++] = e; - }, - zt = (t, e) => { - (t.pending_buf[t.pending++] = (e >>> 8) & 255), - (t.pending_buf[t.pending++] = 255 & e); - }, - At = (t, e, a, i) => { - let n = t.avail_in; - return ( - n > i && (n = i), - 0 === n - ? 0 - : ((t.avail_in -= n), - e.set(t.input.subarray(t.next_in, t.next_in + n), a), - 1 === t.state.wrap - ? (t.adler = B(t.adler, e, n, a)) - : 2 === t.state.wrap && - (t.adler = M(t.adler, e, n, a)), - (t.next_in += n), - (t.total_in += n), - n) - ); - }, - Et = (t, e) => { - let a, - i, - n = t.max_chain_length, - s = t.strstart, - r = t.prev_length, - l = t.nice_match; - const o = - t.strstart > t.w_size - ct - ? t.strstart - (t.w_size - ct) - : 0, - h = t.window, - d = t.w_mask, - _ = t.prev, - f = t.strstart + ft; - let c = h[s + r - 1], - u = h[s + r]; - t.prev_length >= t.good_match && (n >>= 2), - l > t.lookahead && (l = t.lookahead); - do { - if ( - ((a = e), - h[a + r] === u && - h[a + r - 1] === c && - h[a] === h[s] && - h[++a] === h[s + 1]) - ) { - (s += 2), a++; - do {} while ( - h[++s] === h[++a] && - h[++s] === h[++a] && - h[++s] === h[++a] && - h[++s] === h[++a] && - h[++s] === h[++a] && - h[++s] === h[++a] && - h[++s] === h[++a] && - h[++s] === h[++a] && - s < f - ); - if (((i = ft - (f - s)), (s = f - ft), i > r)) { - if (((t.match_start = e), (r = i), i >= l)) break; - (c = h[s + r - 1]), (u = h[s + r]); - } - } - } while ((e = _[e & d]) > o && 0 != --n); - return r <= t.lookahead ? r : t.lookahead; - }, - Rt = (t) => { - const e = t.w_size; - let a, i, n, s, r; - do { - if ( - ((s = t.window_size - t.lookahead - t.strstart), - t.strstart >= e + (e - ct)) - ) { - t.window.set(t.window.subarray(e, e + e), 0), - (t.match_start -= e), - (t.strstart -= e), - (t.block_start -= e), - (i = t.hash_size), - (a = i); - do { - (n = t.head[--a]), (t.head[a] = n >= e ? n - e : 0); - } while (--i); - (i = e), (a = i); - do { - (n = t.prev[--a]), (t.prev[a] = n >= e ? n - e : 0); - } while (--i); - s += e; - } - if (0 === t.strm.avail_in) break; - if ( - ((i = At(t.strm, t.window, t.strstart + t.lookahead, s)), - (t.lookahead += i), - t.lookahead + t.insert >= 3) - ) - for ( - r = t.strstart - t.insert, - t.ins_h = t.window[r], - t.ins_h = kt(t, t.ins_h, t.window[r + 1]); - t.insert && - ((t.ins_h = kt(t, t.ins_h, t.window[r + 3 - 1])), - (t.prev[r & t.w_mask] = t.head[t.ins_h]), - (t.head[t.ins_h] = r), - r++, - t.insert--, - !(t.lookahead + t.insert < 3)); - - ); - } while (t.lookahead < ct && 0 !== t.strm.avail_in); - }, - Zt = (t, e) => { - let a, i; - for (;;) { - if (t.lookahead < ct) { - if ((Rt(t), t.lookahead < ct && e === W)) return 1; - if (0 === t.lookahead) break; - } - if ( - ((a = 0), - t.lookahead >= 3 && - ((t.ins_h = kt( - t, - t.ins_h, - t.window[t.strstart + 3 - 1] - )), - (a = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h]), - (t.head[t.ins_h] = t.strstart)), - 0 !== a && - t.strstart - a <= t.w_size - ct && - (t.match_length = Et(t, a)), - t.match_length >= 3) - ) - if ( - ((i = G( - t, - t.strstart - t.match_start, - t.match_length - 3 - )), - (t.lookahead -= t.match_length), - t.match_length <= t.max_lazy_match && t.lookahead >= 3) - ) { - t.match_length--; - do { - t.strstart++, - (t.ins_h = kt( - t, - t.ins_h, - t.window[t.strstart + 3 - 1] - )), - (a = t.prev[t.strstart & t.w_mask] = - t.head[t.ins_h]), - (t.head[t.ins_h] = t.strstart); - } while (0 != --t.match_length); - t.strstart++; - } else - (t.strstart += t.match_length), - (t.match_length = 0), - (t.ins_h = t.window[t.strstart]), - (t.ins_h = kt( - t, - t.ins_h, - t.window[t.strstart + 1] - )); - else - (i = G(t, 0, t.window[t.strstart])), - t.lookahead--, - t.strstart++; - if (i && (yt(t, !1), 0 === t.strm.avail_out)) return 1; - } - return ( - (t.insert = t.strstart < 2 ? t.strstart : 2), - e === Q - ? (yt(t, !0), 0 === t.strm.avail_out ? 3 : 4) - : t.last_lit && (yt(t, !1), 0 === t.strm.avail_out) - ? 1 - : 2 - ); - }, - Ut = (t, e) => { - let a, i, n; - for (;;) { - if (t.lookahead < ct) { - if ((Rt(t), t.lookahead < ct && e === W)) return 1; - if (0 === t.lookahead) break; - } - if ( - ((a = 0), - t.lookahead >= 3 && - ((t.ins_h = kt( - t, - t.ins_h, - t.window[t.strstart + 3 - 1] - )), - (a = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h]), - (t.head[t.ins_h] = t.strstart)), - (t.prev_length = t.match_length), - (t.prev_match = t.match_start), - (t.match_length = 2), - 0 !== a && - t.prev_length < t.max_lazy_match && - t.strstart - a <= t.w_size - ct && - ((t.match_length = Et(t, a)), - t.match_length <= 5 && - (t.strategy === st || - (3 === t.match_length && - t.strstart - t.match_start > 4096)) && - (t.match_length = 2)), - t.prev_length >= 3 && t.match_length <= t.prev_length) - ) { - (n = t.strstart + t.lookahead - 3), - (i = G( - t, - t.strstart - 1 - t.prev_match, - t.prev_length - 3 - )), - (t.lookahead -= t.prev_length - 1), - (t.prev_length -= 2); - do { - ++t.strstart <= n && - ((t.ins_h = kt( - t, - t.ins_h, - t.window[t.strstart + 3 - 1] - )), - (a = t.prev[t.strstart & t.w_mask] = - t.head[t.ins_h]), - (t.head[t.ins_h] = t.strstart)); - } while (0 != --t.prev_length); - if ( - ((t.match_available = 0), - (t.match_length = 2), - t.strstart++, - i && (yt(t, !1), 0 === t.strm.avail_out)) - ) - return 1; - } else if (t.match_available) { - if ( - ((i = G(t, 0, t.window[t.strstart - 1])), - i && yt(t, !1), - t.strstart++, - t.lookahead--, - 0 === t.strm.avail_out) - ) - return 1; - } else (t.match_available = 1), t.strstart++, t.lookahead--; - } - return ( - t.match_available && - ((i = G(t, 0, t.window[t.strstart - 1])), - (t.match_available = 0)), - (t.insert = t.strstart < 2 ? t.strstart : 2), - e === Q - ? (yt(t, !0), 0 === t.strm.avail_out ? 3 : 4) - : t.last_lit && (yt(t, !1), 0 === t.strm.avail_out) - ? 1 - : 2 - ); - }; - function St(t, e, a, i, n) { - (this.good_length = t), - (this.max_lazy = e), - (this.nice_length = a), - (this.max_chain = i), - (this.func = n); - } - const Dt = [ - new St(0, 0, 0, 0, (t, e) => { - let a = 65535; - for ( - a > t.pending_buf_size - 5 && (a = t.pending_buf_size - 5); - ; - - ) { - if (t.lookahead <= 1) { - if ((Rt(t), 0 === t.lookahead && e === W)) return 1; - if (0 === t.lookahead) break; - } - (t.strstart += t.lookahead), (t.lookahead = 0); - const i = t.block_start + a; - if ( - (0 === t.strstart || t.strstart >= i) && - ((t.lookahead = t.strstart - i), - (t.strstart = i), - yt(t, !1), - 0 === t.strm.avail_out) - ) - return 1; - if ( - t.strstart - t.block_start >= t.w_size - ct && - (yt(t, !1), 0 === t.strm.avail_out) - ) - return 1; - } - return ( - (t.insert = 0), - e === Q - ? (yt(t, !0), 0 === t.strm.avail_out ? 3 : 4) - : (t.strstart > t.block_start && - (yt(t, !1), t.strm.avail_out), - 1) - ); - }), - new St(4, 4, 8, 4, Zt), - new St(4, 5, 16, 8, Zt), - new St(4, 6, 32, 32, Zt), - new St(4, 4, 16, 16, Ut), - new St(8, 16, 32, 32, Ut), - new St(8, 16, 128, 128, Ut), - new St(8, 32, 128, 256, Ut), - new St(32, 128, 258, 1024, Ut), - new St(32, 258, 258, 4096, Ut), - ]; - function Tt() { - (this.strm = null), - (this.status = 0), - (this.pending_buf = null), - (this.pending_buf_size = 0), - (this.pending_out = 0), - (this.pending = 0), - (this.wrap = 0), - (this.gzhead = null), - (this.gzindex = 0), - (this.method = _t), - (this.last_flush = -1), - (this.w_size = 0), - (this.w_bits = 0), - (this.w_mask = 0), - (this.window = null), - (this.window_size = 0), - (this.prev = null), - (this.head = null), - (this.ins_h = 0), - (this.hash_size = 0), - (this.hash_bits = 0), - (this.hash_mask = 0), - (this.hash_shift = 0), - (this.block_start = 0), - (this.match_length = 0), - (this.prev_match = 0), - (this.match_available = 0), - (this.strstart = 0), - (this.match_start = 0), - (this.lookahead = 0), - (this.prev_length = 0), - (this.max_chain_length = 0), - (this.max_lazy_match = 0), - (this.level = 0), - (this.strategy = 0), - (this.good_match = 0), - (this.nice_match = 0), - (this.dyn_ltree = new Uint16Array(1146)), - (this.dyn_dtree = new Uint16Array(122)), - (this.bl_tree = new Uint16Array(78)), - mt(this.dyn_ltree), - mt(this.dyn_dtree), - mt(this.bl_tree), - (this.l_desc = null), - (this.d_desc = null), - (this.bl_desc = null), - (this.bl_count = new Uint16Array(16)), - (this.heap = new Uint16Array(573)), - mt(this.heap), - (this.heap_len = 0), - (this.heap_max = 0), - (this.depth = new Uint16Array(573)), - mt(this.depth), - (this.l_buf = 0), - (this.lit_bufsize = 0), - (this.last_lit = 0), - (this.d_buf = 0), - (this.opt_len = 0), - (this.static_len = 0), - (this.matches = 0), - (this.insert = 0), - (this.bi_buf = 0), - (this.bi_valid = 0); - } - const Ot = (t) => { - if (!t || !t.state) return gt(t, et); - (t.total_in = t.total_out = 0), (t.data_type = dt); - const e = t.state; - return ( - (e.pending = 0), - (e.pending_out = 0), - e.wrap < 0 && (e.wrap = -e.wrap), - (e.status = e.wrap ? 42 : wt), - (t.adler = 2 === e.wrap ? 0 : 1), - (e.last_flush = W), - K(e), - $ - ); - }, - It = (t) => { - const e = Ot(t); - var a; - return ( - e === $ && - (((a = t.state).window_size = 2 * a.w_size), - mt(a.head), - (a.max_lazy_match = Dt[a.level].max_lazy), - (a.good_match = Dt[a.level].good_length), - (a.nice_match = Dt[a.level].nice_length), - (a.max_chain_length = Dt[a.level].max_chain), - (a.strstart = 0), - (a.block_start = 0), - (a.lookahead = 0), - (a.insert = 0), - (a.match_length = a.prev_length = 2), - (a.match_available = 0), - (a.ins_h = 0)), - e - ); - }, - Ft = (t, e, a, i, n, s) => { - if (!t) return et; - let r = 1; - if ( - (e === nt && (e = 6), - i < 0 ? ((r = 0), (i = -i)) : i > 15 && ((r = 2), (i -= 16)), - n < 1 || - n > 9 || - a !== _t || - i < 8 || - i > 15 || - e < 0 || - e > 9 || - s < 0 || - s > ot) - ) - return gt(t, et); - 8 === i && (i = 9); - const l = new Tt(); - return ( - (t.state = l), - (l.strm = t), - (l.wrap = r), - (l.gzhead = null), - (l.w_bits = i), - (l.w_size = 1 << l.w_bits), - (l.w_mask = l.w_size - 1), - (l.hash_bits = n + 7), - (l.hash_size = 1 << l.hash_bits), - (l.hash_mask = l.hash_size - 1), - (l.hash_shift = ~~((l.hash_bits + 3 - 1) / 3)), - (l.window = new Uint8Array(2 * l.w_size)), - (l.head = new Uint16Array(l.hash_size)), - (l.prev = new Uint16Array(l.w_size)), - (l.lit_bufsize = 1 << (n + 6)), - (l.pending_buf_size = 4 * l.lit_bufsize), - (l.pending_buf = new Uint8Array(l.pending_buf_size)), - (l.d_buf = 1 * l.lit_bufsize), - (l.l_buf = 3 * l.lit_bufsize), - (l.level = e), - (l.strategy = s), - (l.method = a), - It(t) - ); - }; - var Lt_deflateInit = (t, e) => Ft(t, e, _t, 15, 8, ht), - Lt_deflateInit2 = Ft, - Lt_deflateReset = It, - Lt_deflateResetKeep = Ot, - Lt_deflateSetHeader = (t, e) => - t && t.state - ? 2 !== t.state.wrap - ? et - : ((t.state.gzhead = e), $) - : et, - Lt_deflate = (t, e) => { - let a, i; - if (!t || !t.state || e > V || e < 0) return t ? gt(t, et) : et; - const n = t.state; - if ( - !t.output || - (!t.input && 0 !== t.avail_in) || - (n.status === bt && e !== Q) - ) - return gt(t, 0 === t.avail_out ? it : et); - n.strm = t; - const s = n.last_flush; - if (((n.last_flush = e), 42 === n.status)) - if (2 === n.wrap) - (t.adler = 0), - xt(n, 31), - xt(n, 139), - xt(n, 8), - n.gzhead - ? (xt( - n, - (n.gzhead.text ? 1 : 0) + - (n.gzhead.hcrc ? 2 : 0) + - (n.gzhead.extra ? 4 : 0) + - (n.gzhead.name ? 8 : 0) + - (n.gzhead.comment ? 16 : 0) - ), - xt(n, 255 & n.gzhead.time), - xt(n, (n.gzhead.time >> 8) & 255), - xt(n, (n.gzhead.time >> 16) & 255), - xt(n, (n.gzhead.time >> 24) & 255), - xt( - n, - 9 === n.level - ? 2 - : n.strategy >= rt || n.level < 2 - ? 4 - : 0 - ), - xt(n, 255 & n.gzhead.os), - n.gzhead.extra && - n.gzhead.extra.length && - (xt(n, 255 & n.gzhead.extra.length), - xt(n, (n.gzhead.extra.length >> 8) & 255)), - n.gzhead.hcrc && - (t.adler = M( - t.adler, - n.pending_buf, - n.pending, - 0 - )), - (n.gzindex = 0), - (n.status = 69)) - : (xt(n, 0), - xt(n, 0), - xt(n, 0), - xt(n, 0), - xt(n, 0), - xt( - n, - 9 === n.level - ? 2 - : n.strategy >= rt || n.level < 2 - ? 4 - : 0 - ), - xt(n, 3), - (n.status = wt)); - else { - let e = (_t + ((n.w_bits - 8) << 4)) << 8, - a = -1; - (a = - n.strategy >= rt || n.level < 2 - ? 0 - : n.level < 6 - ? 1 - : 6 === n.level - ? 2 - : 3), - (e |= a << 6), - 0 !== n.strstart && (e |= 32), - (e += 31 - (e % 31)), - (n.status = wt), - zt(n, e), - 0 !== n.strstart && - (zt(n, t.adler >>> 16), zt(n, 65535 & t.adler)), - (t.adler = 1); - } - if (69 === n.status) - if (n.gzhead.extra) { - for ( - a = n.pending; - n.gzindex < (65535 & n.gzhead.extra.length) && - (n.pending !== n.pending_buf_size || - (n.gzhead.hcrc && - n.pending > a && - (t.adler = M( - t.adler, - n.pending_buf, - n.pending - a, - a - )), - vt(t), - (a = n.pending), - n.pending !== n.pending_buf_size)); - - ) - xt(n, 255 & n.gzhead.extra[n.gzindex]), n.gzindex++; - n.gzhead.hcrc && - n.pending > a && - (t.adler = M(t.adler, n.pending_buf, n.pending - a, a)), - n.gzindex === n.gzhead.extra.length && - ((n.gzindex = 0), (n.status = 73)); - } else n.status = 73; - if (73 === n.status) - if (n.gzhead.name) { - a = n.pending; - do { - if ( - n.pending === n.pending_buf_size && - (n.gzhead.hcrc && - n.pending > a && - (t.adler = M( - t.adler, - n.pending_buf, - n.pending - a, - a - )), - vt(t), - (a = n.pending), - n.pending === n.pending_buf_size) - ) { - i = 1; - break; - } - (i = - n.gzindex < n.gzhead.name.length - ? 255 & n.gzhead.name.charCodeAt(n.gzindex++) - : 0), - xt(n, i); - } while (0 !== i); - n.gzhead.hcrc && - n.pending > a && - (t.adler = M(t.adler, n.pending_buf, n.pending - a, a)), - 0 === i && ((n.gzindex = 0), (n.status = 91)); - } else n.status = 91; - if (91 === n.status) - if (n.gzhead.comment) { - a = n.pending; - do { - if ( - n.pending === n.pending_buf_size && - (n.gzhead.hcrc && - n.pending > a && - (t.adler = M( - t.adler, - n.pending_buf, - n.pending - a, - a - )), - vt(t), - (a = n.pending), - n.pending === n.pending_buf_size) - ) { - i = 1; - break; - } - (i = - n.gzindex < n.gzhead.comment.length - ? 255 & n.gzhead.comment.charCodeAt(n.gzindex++) - : 0), - xt(n, i); - } while (0 !== i); - n.gzhead.hcrc && - n.pending > a && - (t.adler = M(t.adler, n.pending_buf, n.pending - a, a)), - 0 === i && (n.status = ut); - } else n.status = ut; - if ( - (n.status === ut && - (n.gzhead.hcrc - ? (n.pending + 2 > n.pending_buf_size && vt(t), - n.pending + 2 <= n.pending_buf_size && - (xt(n, 255 & t.adler), - xt(n, (t.adler >> 8) & 255), - (t.adler = 0), - (n.status = wt))) - : (n.status = wt)), - 0 !== n.pending) - ) { - if ((vt(t), 0 === t.avail_out)) return (n.last_flush = -1), $; - } else if (0 === t.avail_in && pt(e) <= pt(s) && e !== Q) - return gt(t, it); - if (n.status === bt && 0 !== t.avail_in) return gt(t, it); - if ( - 0 !== t.avail_in || - 0 !== n.lookahead || - (e !== W && n.status !== bt) - ) { - let a = - n.strategy === rt - ? ((t, e) => { - let a; - for (;;) { - if ( - 0 === t.lookahead && - (Rt(t), 0 === t.lookahead) - ) { - if (e === W) return 1; - break; - } - if ( - ((t.match_length = 0), - (a = G(t, 0, t.window[t.strstart])), - t.lookahead--, - t.strstart++, - a && (yt(t, !1), 0 === t.strm.avail_out)) - ) - return 1; - } - return ( - (t.insert = 0), - e === Q - ? (yt(t, !0), - 0 === t.strm.avail_out ? 3 : 4) - : t.last_lit && - (yt(t, !1), 0 === t.strm.avail_out) - ? 1 - : 2 - ); - })(n, e) - : n.strategy === lt - ? ((t, e) => { - let a, i, n, s; - const r = t.window; - for (;;) { - if (t.lookahead <= ft) { - if ((Rt(t), t.lookahead <= ft && e === W)) - return 1; - if (0 === t.lookahead) break; - } - if ( - ((t.match_length = 0), - t.lookahead >= 3 && - t.strstart > 0 && - ((n = t.strstart - 1), - (i = r[n]), - i === r[++n] && - i === r[++n] && - i === r[++n])) - ) { - s = t.strstart + ft; - do {} while ( - i === r[++n] && - i === r[++n] && - i === r[++n] && - i === r[++n] && - i === r[++n] && - i === r[++n] && - i === r[++n] && - i === r[++n] && - n < s - ); - (t.match_length = ft - (s - n)), - t.match_length > t.lookahead && - (t.match_length = t.lookahead); - } - if ( - (t.match_length >= 3 - ? ((a = G(t, 1, t.match_length - 3)), - (t.lookahead -= t.match_length), - (t.strstart += t.match_length), - (t.match_length = 0)) - : ((a = G( - t, - 0, - t.window[t.strstart] - )), - t.lookahead--, - t.strstart++), - a && (yt(t, !1), 0 === t.strm.avail_out)) - ) - return 1; - } - return ( - (t.insert = 0), - e === Q - ? (yt(t, !0), - 0 === t.strm.avail_out ? 3 : 4) - : t.last_lit && - (yt(t, !1), 0 === t.strm.avail_out) - ? 1 - : 2 - ); - })(n, e) - : Dt[n.level].func(n, e); - if ( - ((3 !== a && 4 !== a) || (n.status = bt), - 1 === a || 3 === a) - ) - return 0 === t.avail_out && (n.last_flush = -1), $; - if ( - 2 === a && - (e === q - ? X(n) - : e !== V && - (P(n, 0, 0, !1), - e === J && - (mt(n.head), - 0 === n.lookahead && - ((n.strstart = 0), - (n.block_start = 0), - (n.insert = 0)))), - vt(t), - 0 === t.avail_out) - ) - return (n.last_flush = -1), $; - } - return e !== Q - ? $ - : n.wrap <= 0 - ? tt - : (2 === n.wrap - ? (xt(n, 255 & t.adler), - xt(n, (t.adler >> 8) & 255), - xt(n, (t.adler >> 16) & 255), - xt(n, (t.adler >> 24) & 255), - xt(n, 255 & t.total_in), - xt(n, (t.total_in >> 8) & 255), - xt(n, (t.total_in >> 16) & 255), - xt(n, (t.total_in >> 24) & 255)) - : (zt(n, t.adler >>> 16), zt(n, 65535 & t.adler)), - vt(t), - n.wrap > 0 && (n.wrap = -n.wrap), - 0 !== n.pending ? $ : tt); - }, - Lt_deflateEnd = (t) => { - if (!t || !t.state) return et; - const e = t.state.status; - return 42 !== e && - 69 !== e && - 73 !== e && - 91 !== e && - e !== ut && - e !== wt && - e !== bt - ? gt(t, et) - : ((t.state = null), e === wt ? gt(t, at) : $); - }, - Lt_deflateSetDictionary = (t, e) => { - let a = e.length; - if (!t || !t.state) return et; - const i = t.state, - n = i.wrap; - if (2 === n || (1 === n && 42 !== i.status) || i.lookahead) - return et; - if ( - (1 === n && (t.adler = B(t.adler, e, a, 0)), - (i.wrap = 0), - a >= i.w_size) - ) { - 0 === n && - (mt(i.head), - (i.strstart = 0), - (i.block_start = 0), - (i.insert = 0)); - let t = new Uint8Array(i.w_size); - t.set(e.subarray(a - i.w_size, a), 0), (e = t), (a = i.w_size); - } - const s = t.avail_in, - r = t.next_in, - l = t.input; - for ( - t.avail_in = a, t.next_in = 0, t.input = e, Rt(i); - i.lookahead >= 3; - - ) { - let t = i.strstart, - e = i.lookahead - 2; - do { - (i.ins_h = kt(i, i.ins_h, i.window[t + 3 - 1])), - (i.prev[t & i.w_mask] = i.head[i.ins_h]), - (i.head[i.ins_h] = t), - t++; - } while (--e); - (i.strstart = t), (i.lookahead = 2), Rt(i); - } - return ( - (i.strstart += i.lookahead), - (i.block_start = i.strstart), - (i.insert = i.lookahead), - (i.lookahead = 0), - (i.match_length = i.prev_length = 2), - (i.match_available = 0), - (t.next_in = r), - (t.input = l), - (t.avail_in = s), - (i.wrap = n), - $ - ); - }, - Lt_deflateInfo = "pako deflate (from Nodeca project)"; - const Nt = (t, e) => Object.prototype.hasOwnProperty.call(t, e); - var Bt = function (t) { - const e = Array.prototype.slice.call(arguments, 1); - for (; e.length; ) { - const a = e.shift(); - if (a) { - if ("object" != typeof a) - throw new TypeError(a + "must be non-object"); - for (const e in a) Nt(a, e) && (t[e] = a[e]); - } - } - return t; - }, - Ct = (t) => { - let e = 0; - for (let a = 0, i = t.length; a < i; a++) e += t[a].length; - const a = new Uint8Array(e); - for (let e = 0, i = 0, n = t.length; e < n; e++) { - let n = t[e]; - a.set(n, i), (i += n.length); - } - return a; - }; - let Mt = !0; - try { - String.fromCharCode.apply(null, new Uint8Array(1)); - } catch (t) { - Mt = !1; - } - const Ht = new Uint8Array(256); - for (let t = 0; t < 256; t++) - Ht[t] = - t >= 252 - ? 6 - : t >= 248 - ? 5 - : t >= 240 - ? 4 - : t >= 224 - ? 3 - : t >= 192 - ? 2 - : 1; - Ht[254] = Ht[254] = 1; - var jt = (t) => { - if ( - "function" == typeof TextEncoder && - TextEncoder.prototype.encode - ) - return new TextEncoder().encode(t); - let e, - a, - i, - n, - s, - r = t.length, - l = 0; - for (n = 0; n < r; n++) - (a = t.charCodeAt(n)), - 55296 == (64512 & a) && - n + 1 < r && - ((i = t.charCodeAt(n + 1)), - 56320 == (64512 & i) && - ((a = 65536 + ((a - 55296) << 10) + (i - 56320)), - n++)), - (l += a < 128 ? 1 : a < 2048 ? 2 : a < 65536 ? 3 : 4); - for (e = new Uint8Array(l), s = 0, n = 0; s < l; n++) - (a = t.charCodeAt(n)), - 55296 == (64512 & a) && - n + 1 < r && - ((i = t.charCodeAt(n + 1)), - 56320 == (64512 & i) && - ((a = 65536 + ((a - 55296) << 10) + (i - 56320)), - n++)), - a < 128 - ? (e[s++] = a) - : a < 2048 - ? ((e[s++] = 192 | (a >>> 6)), - (e[s++] = 128 | (63 & a))) - : a < 65536 - ? ((e[s++] = 224 | (a >>> 12)), - (e[s++] = 128 | ((a >>> 6) & 63)), - (e[s++] = 128 | (63 & a))) - : ((e[s++] = 240 | (a >>> 18)), - (e[s++] = 128 | ((a >>> 12) & 63)), - (e[s++] = 128 | ((a >>> 6) & 63)), - (e[s++] = 128 | (63 & a))); - return e; - }, - Kt = (t, e) => { - const a = e || t.length; - if ( - "function" == typeof TextDecoder && - TextDecoder.prototype.decode - ) - return new TextDecoder().decode(t.subarray(0, e)); - let i, n; - const s = new Array(2 * a); - for (n = 0, i = 0; i < a; ) { - let e = t[i++]; - if (e < 128) { - s[n++] = e; - continue; - } - let r = Ht[e]; - if (r > 4) (s[n++] = 65533), (i += r - 1); - else { - for (e &= 2 === r ? 31 : 3 === r ? 15 : 7; r > 1 && i < a; ) - (e = (e << 6) | (63 & t[i++])), r--; - r > 1 - ? (s[n++] = 65533) - : e < 65536 - ? (s[n++] = e) - : ((e -= 65536), - (s[n++] = 55296 | ((e >> 10) & 1023)), - (s[n++] = 56320 | (1023 & e))); - } - } - return ((t, e) => { - if (e < 65534 && t.subarray && Mt) - return String.fromCharCode.apply( - null, - t.length === e ? t : t.subarray(0, e) - ); - let a = ""; - for (let i = 0; i < e; i++) a += String.fromCharCode(t[i]); - return a; - })(s, n); - }, - Pt = (t, e) => { - (e = e || t.length) > t.length && (e = t.length); - let a = e - 1; - for (; a >= 0 && 128 == (192 & t[a]); ) a--; - return a < 0 || 0 === a ? e : a + Ht[t[a]] > e ? a : e; - }, - Yt = function () { - (this.input = null), - (this.next_in = 0), - (this.avail_in = 0), - (this.total_in = 0), - (this.output = null), - (this.next_out = 0), - (this.avail_out = 0), - (this.total_out = 0), - (this.msg = ""), - (this.state = null), - (this.data_type = 2), - (this.adler = 0); - }; - const Gt = Object.prototype.toString, - { - Z_NO_FLUSH: Xt, - Z_SYNC_FLUSH: Wt, - Z_FULL_FLUSH: qt, - Z_FINISH: Jt, - Z_OK: Qt, - Z_STREAM_END: Vt, - Z_DEFAULT_COMPRESSION: $t, - Z_DEFAULT_STRATEGY: te, - Z_DEFLATED: ee, - } = j; - function ae(t) { - this.options = Bt( - { - level: $t, - method: ee, - chunkSize: 16384, - windowBits: 15, - memLevel: 8, - strategy: te, - }, - t || {} - ); - let e = this.options; - e.raw && e.windowBits > 0 - ? (e.windowBits = -e.windowBits) - : e.gzip && - e.windowBits > 0 && - e.windowBits < 16 && - (e.windowBits += 16), - (this.err = 0), - (this.msg = ""), - (this.ended = !1), - (this.chunks = []), - (this.strm = new Yt()), - (this.strm.avail_out = 0); - let a = Lt_deflateInit2( - this.strm, - e.level, - e.method, - e.windowBits, - e.memLevel, - e.strategy - ); - if (a !== Qt) throw new Error(H[a]); - if ( - (e.header && Lt_deflateSetHeader(this.strm, e.header), e.dictionary) - ) { - let t; - if ( - ((t = - "string" == typeof e.dictionary - ? jt(e.dictionary) - : "[object ArrayBuffer]" === Gt.call(e.dictionary) - ? new Uint8Array(e.dictionary) - : e.dictionary), - (a = Lt_deflateSetDictionary(this.strm, t)), - a !== Qt) - ) - throw new Error(H[a]); - this._dict_set = !0; - } - } - function ie(t, e) { - const a = new ae(e); - if ((a.push(t, !0), a.err)) throw a.msg || H[a.err]; - return a.result; - } - (ae.prototype.push = function (t, e) { - const a = this.strm, - i = this.options.chunkSize; - let n, s; - if (this.ended) return !1; - for ( - s = e === ~~e ? e : !0 === e ? Jt : Xt, - "string" == typeof t - ? (a.input = jt(t)) - : "[object ArrayBuffer]" === Gt.call(t) - ? (a.input = new Uint8Array(t)) - : (a.input = t), - a.next_in = 0, - a.avail_in = a.input.length; - ; - - ) - if ( - (0 === a.avail_out && - ((a.output = new Uint8Array(i)), - (a.next_out = 0), - (a.avail_out = i)), - (s === Wt || s === qt) && a.avail_out <= 6) - ) - this.onData(a.output.subarray(0, a.next_out)), - (a.avail_out = 0); - else { - if (((n = Lt_deflate(a, s)), n === Vt)) - return ( - a.next_out > 0 && - this.onData(a.output.subarray(0, a.next_out)), - (n = Lt_deflateEnd(this.strm)), - this.onEnd(n), - (this.ended = !0), - n === Qt - ); - if (0 !== a.avail_out) { - if (s > 0 && a.next_out > 0) - this.onData(a.output.subarray(0, a.next_out)), - (a.avail_out = 0); - else if (0 === a.avail_in) break; - } else this.onData(a.output); - } - return !0; - }), - (ae.prototype.onData = function (t) { - this.chunks.push(t); - }), - (ae.prototype.onEnd = function (t) { - t === Qt && (this.result = Ct(this.chunks)), - (this.chunks = []), - (this.err = t), - (this.msg = this.strm.msg); - }); - var ne = { - Deflate: ae, - deflate: ie, - deflateRaw: function (t, e) { - return ((e = e || {}).raw = !0), ie(t, e); - }, - gzip: function (t, e) { - return ((e = e || {}).gzip = !0), ie(t, e); - }, - constants: j, - }, - se = function (t, e) { - let a, - i, - n, - s, - r, - l, - o, - h, - d, - _, - f, - c, - u, - w, - b, - g, - p, - m, - k, - v, - y, - x, - z, - A; - const E = t.state; - (a = t.next_in), - (z = t.input), - (i = a + (t.avail_in - 5)), - (n = t.next_out), - (A = t.output), - (s = n - (e - t.avail_out)), - (r = n + (t.avail_out - 257)), - (l = E.dmax), - (o = E.wsize), - (h = E.whave), - (d = E.wnext), - (_ = E.window), - (f = E.hold), - (c = E.bits), - (u = E.lencode), - (w = E.distcode), - (b = (1 << E.lenbits) - 1), - (g = (1 << E.distbits) - 1); - t: do { - c < 15 && - ((f += z[a++] << c), - (c += 8), - (f += z[a++] << c), - (c += 8)), - (p = u[f & b]); - e: for (;;) { - if ( - ((m = p >>> 24), - (f >>>= m), - (c -= m), - (m = (p >>> 16) & 255), - 0 === m) - ) - A[n++] = 65535 & p; - else { - if (!(16 & m)) { - if (0 == (64 & m)) { - p = u[(65535 & p) + (f & ((1 << m) - 1))]; - continue e; - } - if (32 & m) { - E.mode = 12; - break t; - } - (t.msg = "invalid literal/length code"), - (E.mode = 30); - break t; - } - (k = 65535 & p), - (m &= 15), - m && - (c < m && ((f += z[a++] << c), (c += 8)), - (k += f & ((1 << m) - 1)), - (f >>>= m), - (c -= m)), - c < 15 && - ((f += z[a++] << c), - (c += 8), - (f += z[a++] << c), - (c += 8)), - (p = w[f & g]); - a: for (;;) { - if ( - ((m = p >>> 24), - (f >>>= m), - (c -= m), - (m = (p >>> 16) & 255), - !(16 & m)) - ) { - if (0 == (64 & m)) { - p = w[(65535 & p) + (f & ((1 << m) - 1))]; - continue a; - } - (t.msg = "invalid distance code"), - (E.mode = 30); - break t; - } - if ( - ((v = 65535 & p), - (m &= 15), - c < m && - ((f += z[a++] << c), - (c += 8), - c < m && ((f += z[a++] << c), (c += 8))), - (v += f & ((1 << m) - 1)), - v > l) - ) { - (t.msg = "invalid distance too far back"), - (E.mode = 30); - break t; - } - if (((f >>>= m), (c -= m), (m = n - s), v > m)) { - if (((m = v - m), m > h && E.sane)) { - (t.msg = "invalid distance too far back"), - (E.mode = 30); - break t; - } - if (((y = 0), (x = _), 0 === d)) { - if (((y += o - m), m < k)) { - k -= m; - do { - A[n++] = _[y++]; - } while (--m); - (y = n - v), (x = A); - } - } else if (d < m) { - if (((y += o + d - m), (m -= d), m < k)) { - k -= m; - do { - A[n++] = _[y++]; - } while (--m); - if (((y = 0), d < k)) { - (m = d), (k -= m); - do { - A[n++] = _[y++]; - } while (--m); - (y = n - v), (x = A); - } - } - } else if (((y += d - m), m < k)) { - k -= m; - do { - A[n++] = _[y++]; - } while (--m); - (y = n - v), (x = A); - } - for (; k > 2; ) - (A[n++] = x[y++]), - (A[n++] = x[y++]), - (A[n++] = x[y++]), - (k -= 3); - k && - ((A[n++] = x[y++]), - k > 1 && (A[n++] = x[y++])); - } else { - y = n - v; - do { - (A[n++] = A[y++]), - (A[n++] = A[y++]), - (A[n++] = A[y++]), - (k -= 3); - } while (k > 2); - k && - ((A[n++] = A[y++]), - k > 1 && (A[n++] = A[y++])); - } - break; - } - } - break; - } - } while (a < i && n < r); - (k = c >> 3), - (a -= k), - (c -= k << 3), - (f &= (1 << c) - 1), - (t.next_in = a), - (t.next_out = n), - (t.avail_in = a < i ? i - a + 5 : 5 - (a - i)), - (t.avail_out = n < r ? r - n + 257 : 257 - (n - r)), - (E.hold = f), - (E.bits = c); - }; - const re = 15, - le = new Uint16Array([ - 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, - 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0, - ]), - oe = new Uint8Array([ - 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, - 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78, - ]), - he = new Uint16Array([ - 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, - 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, - 24577, 0, 0, - ]), - de = new Uint8Array([ - 16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, - 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64, - ]); - var _e = (t, e, a, i, n, s, r, l) => { - const o = l.bits; - let h, - d, - _, - f, - c, - u, - w = 0, - b = 0, - g = 0, - p = 0, - m = 0, - k = 0, - v = 0, - y = 0, - x = 0, - z = 0, - A = null, - E = 0; - const R = new Uint16Array(16), - Z = new Uint16Array(16); - let U, - S, - D, - T = null, - O = 0; - for (w = 0; w <= 15; w++) R[w] = 0; - for (b = 0; b < i; b++) R[e[a + b]]++; - for (m = o, p = 15; p >= 1 && 0 === R[p]; p--); - if ((m > p && (m = p), 0 === p)) - return (n[s++] = 20971520), (n[s++] = 20971520), (l.bits = 1), 0; - for (g = 1; g < p && 0 === R[g]; g++); - for (m < g && (m = g), y = 1, w = 1; w <= 15; w++) - if (((y <<= 1), (y -= R[w]), y < 0)) return -1; - if (y > 0 && (0 === t || 1 !== p)) return -1; - for (Z[1] = 0, w = 1; w < 15; w++) Z[w + 1] = Z[w] + R[w]; - for (b = 0; b < i; b++) 0 !== e[a + b] && (r[Z[e[a + b]]++] = b); - if ( - (0 === t - ? ((A = T = r), (u = 19)) - : 1 === t - ? ((A = le), (E -= 257), (T = oe), (O -= 257), (u = 256)) - : ((A = he), (T = de), (u = -1)), - (z = 0), - (b = 0), - (w = g), - (c = s), - (k = m), - (v = 0), - (_ = -1), - (x = 1 << m), - (f = x - 1), - (1 === t && x > 852) || (2 === t && x > 592)) - ) - return 1; - for (;;) { - (U = w - v), - r[b] < u - ? ((S = 0), (D = r[b])) - : r[b] > u - ? ((S = T[O + r[b]]), (D = A[E + r[b]])) - : ((S = 96), (D = 0)), - (h = 1 << (w - v)), - (d = 1 << k), - (g = d); - do { - (d -= h), (n[c + (z >> v) + d] = (U << 24) | (S << 16) | D | 0); - } while (0 !== d); - for (h = 1 << (w - 1); z & h; ) h >>= 1; - if ( - (0 !== h ? ((z &= h - 1), (z += h)) : (z = 0), b++, 0 == --R[w]) - ) { - if (w === p) break; - w = e[a + r[b]]; - } - if (w > m && (z & f) !== _) { - for ( - 0 === v && (v = m), c += g, k = w - v, y = 1 << k; - k + v < p && ((y -= R[k + v]), !(y <= 0)); - - ) - k++, (y <<= 1); - if ( - ((x += 1 << k), - (1 === t && x > 852) || (2 === t && x > 592)) - ) - return 1; - (_ = z & f), (n[_] = (m << 24) | (k << 16) | (c - s) | 0); - } - } - return ( - 0 !== z && (n[c + z] = ((w - v) << 24) | (64 << 16) | 0), - (l.bits = m), - 0 - ); - }; - const { - Z_FINISH: fe, - Z_BLOCK: ce, - Z_TREES: ue, - Z_OK: we, - Z_STREAM_END: be, - Z_NEED_DICT: ge, - Z_STREAM_ERROR: pe, - Z_DATA_ERROR: me, - Z_MEM_ERROR: ke, - Z_BUF_ERROR: ve, - Z_DEFLATED: ye, - } = j, - xe = 12, - ze = 30, - Ae = (t) => - ((t >>> 24) & 255) + - ((t >>> 8) & 65280) + - ((65280 & t) << 8) + - ((255 & t) << 24); - function Ee() { - (this.mode = 0), - (this.last = !1), - (this.wrap = 0), - (this.havedict = !1), - (this.flags = 0), - (this.dmax = 0), - (this.check = 0), - (this.total = 0), - (this.head = null), - (this.wbits = 0), - (this.wsize = 0), - (this.whave = 0), - (this.wnext = 0), - (this.window = null), - (this.hold = 0), - (this.bits = 0), - (this.length = 0), - (this.offset = 0), - (this.extra = 0), - (this.lencode = null), - (this.distcode = null), - (this.lenbits = 0), - (this.distbits = 0), - (this.ncode = 0), - (this.nlen = 0), - (this.ndist = 0), - (this.have = 0), - (this.next = null), - (this.lens = new Uint16Array(320)), - (this.work = new Uint16Array(288)), - (this.lendyn = null), - (this.distdyn = null), - (this.sane = 0), - (this.back = 0), - (this.was = 0); - } - const Re = (t) => { - if (!t || !t.state) return pe; - const e = t.state; - return ( - (t.total_in = t.total_out = e.total = 0), - (t.msg = ""), - e.wrap && (t.adler = 1 & e.wrap), - (e.mode = 1), - (e.last = 0), - (e.havedict = 0), - (e.dmax = 32768), - (e.head = null), - (e.hold = 0), - (e.bits = 0), - (e.lencode = e.lendyn = new Int32Array(852)), - (e.distcode = e.distdyn = new Int32Array(592)), - (e.sane = 1), - (e.back = -1), - we - ); - }, - Ze = (t) => { - if (!t || !t.state) return pe; - const e = t.state; - return (e.wsize = 0), (e.whave = 0), (e.wnext = 0), Re(t); - }, - Ue = (t, e) => { - let a; - if (!t || !t.state) return pe; - const i = t.state; - return ( - e < 0 - ? ((a = 0), (e = -e)) - : ((a = 1 + (e >> 4)), e < 48 && (e &= 15)), - e && (e < 8 || e > 15) - ? pe - : (null !== i.window && i.wbits !== e && (i.window = null), - (i.wrap = a), - (i.wbits = e), - Ze(t)) - ); - }, - Se = (t, e) => { - if (!t) return pe; - const a = new Ee(); - (t.state = a), (a.window = null); - const i = Ue(t, e); - return i !== we && (t.state = null), i; - }; - let De, - Te, - Oe = !0; - const Ie = (t) => { - if (Oe) { - (De = new Int32Array(512)), (Te = new Int32Array(32)); - let e = 0; - for (; e < 144; ) t.lens[e++] = 8; - for (; e < 256; ) t.lens[e++] = 9; - for (; e < 280; ) t.lens[e++] = 7; - for (; e < 288; ) t.lens[e++] = 8; - for ( - _e(1, t.lens, 0, 288, De, 0, t.work, { bits: 9 }), e = 0; - e < 32; - - ) - t.lens[e++] = 5; - _e(2, t.lens, 0, 32, Te, 0, t.work, { bits: 5 }), (Oe = !1); - } - (t.lencode = De), - (t.lenbits = 9), - (t.distcode = Te), - (t.distbits = 5); - }, - Fe = (t, e, a, i) => { - let n; - const s = t.state; - return ( - null === s.window && - ((s.wsize = 1 << s.wbits), - (s.wnext = 0), - (s.whave = 0), - (s.window = new Uint8Array(s.wsize))), - i >= s.wsize - ? (s.window.set(e.subarray(a - s.wsize, a), 0), - (s.wnext = 0), - (s.whave = s.wsize)) - : ((n = s.wsize - s.wnext), - n > i && (n = i), - s.window.set(e.subarray(a - i, a - i + n), s.wnext), - (i -= n) - ? (s.window.set(e.subarray(a - i, a), 0), - (s.wnext = i), - (s.whave = s.wsize)) - : ((s.wnext += n), - s.wnext === s.wsize && (s.wnext = 0), - s.whave < s.wsize && (s.whave += n))), - 0 - ); - }; - var Le_inflateReset = Ze, - Le_inflateReset2 = Ue, - Le_inflateResetKeep = Re, - Le_inflateInit = (t) => Se(t, 15), - Le_inflateInit2 = Se, - Le_inflate = (t, e) => { - let a, - i, - n, - s, - r, - l, - o, - h, - d, - _, - f, - c, - u, - w, - b, - g, - p, - m, - k, - v, - y, - x, - z = 0; - const A = new Uint8Array(4); - let E, R; - const Z = new Uint8Array([ - 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, - 15, - ]); - if (!t || !t.state || !t.output || (!t.input && 0 !== t.avail_in)) - return pe; - (a = t.state), - 12 === a.mode && (a.mode = 13), - (r = t.next_out), - (n = t.output), - (o = t.avail_out), - (s = t.next_in), - (i = t.input), - (l = t.avail_in), - (h = a.hold), - (d = a.bits), - (_ = l), - (f = o), - (x = we); - t: for (;;) - switch (a.mode) { - case 1: - if (0 === a.wrap) { - a.mode = 13; - break; - } - for (; d < 16; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - if (2 & a.wrap && 35615 === h) { - (a.check = 0), - (A[0] = 255 & h), - (A[1] = (h >>> 8) & 255), - (a.check = M(a.check, A, 2, 0)), - (h = 0), - (d = 0), - (a.mode = 2); - break; - } - if ( - ((a.flags = 0), - a.head && (a.head.done = !1), - !(1 & a.wrap) || (((255 & h) << 8) + (h >> 8)) % 31) - ) { - (t.msg = "incorrect header check"), (a.mode = 30); - break; - } - if ((15 & h) !== ye) { - (t.msg = "unknown compression method"), - (a.mode = 30); - break; - } - if ( - ((h >>>= 4), - (d -= 4), - (y = 8 + (15 & h)), - 0 === a.wbits) - ) - a.wbits = y; - else if (y > a.wbits) { - (t.msg = "invalid window size"), (a.mode = 30); - break; - } - (a.dmax = 1 << a.wbits), - (t.adler = a.check = 1), - (a.mode = 512 & h ? 10 : 12), - (h = 0), - (d = 0); - break; - case 2: - for (; d < 16; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - if (((a.flags = h), (255 & a.flags) !== ye)) { - (t.msg = "unknown compression method"), - (a.mode = 30); - break; - } - if (57344 & a.flags) { - (t.msg = "unknown header flags set"), (a.mode = 30); - break; - } - a.head && (a.head.text = (h >> 8) & 1), - 512 & a.flags && - ((A[0] = 255 & h), - (A[1] = (h >>> 8) & 255), - (a.check = M(a.check, A, 2, 0))), - (h = 0), - (d = 0), - (a.mode = 3); - case 3: - for (; d < 32; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - a.head && (a.head.time = h), - 512 & a.flags && - ((A[0] = 255 & h), - (A[1] = (h >>> 8) & 255), - (A[2] = (h >>> 16) & 255), - (A[3] = (h >>> 24) & 255), - (a.check = M(a.check, A, 4, 0))), - (h = 0), - (d = 0), - (a.mode = 4); - case 4: - for (; d < 16; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - a.head && - ((a.head.xflags = 255 & h), (a.head.os = h >> 8)), - 512 & a.flags && - ((A[0] = 255 & h), - (A[1] = (h >>> 8) & 255), - (a.check = M(a.check, A, 2, 0))), - (h = 0), - (d = 0), - (a.mode = 5); - case 5: - if (1024 & a.flags) { - for (; d < 16; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - (a.length = h), - a.head && (a.head.extra_len = h), - 512 & a.flags && - ((A[0] = 255 & h), - (A[1] = (h >>> 8) & 255), - (a.check = M(a.check, A, 2, 0))), - (h = 0), - (d = 0); - } else a.head && (a.head.extra = null); - a.mode = 6; - case 6: - if ( - 1024 & a.flags && - ((c = a.length), - c > l && (c = l), - c && - (a.head && - ((y = a.head.extra_len - a.length), - a.head.extra || - (a.head.extra = new Uint8Array( - a.head.extra_len - )), - a.head.extra.set(i.subarray(s, s + c), y)), - 512 & a.flags && - (a.check = M(a.check, i, c, s)), - (l -= c), - (s += c), - (a.length -= c)), - a.length) - ) - break t; - (a.length = 0), (a.mode = 7); - case 7: - if (2048 & a.flags) { - if (0 === l) break t; - c = 0; - do { - (y = i[s + c++]), - a.head && - y && - a.length < 65536 && - (a.head.name += String.fromCharCode(y)); - } while (y && c < l); - if ( - (512 & a.flags && - (a.check = M(a.check, i, c, s)), - (l -= c), - (s += c), - y) - ) - break t; - } else a.head && (a.head.name = null); - (a.length = 0), (a.mode = 8); - case 8: - if (4096 & a.flags) { - if (0 === l) break t; - c = 0; - do { - (y = i[s + c++]), - a.head && - y && - a.length < 65536 && - (a.head.comment += - String.fromCharCode(y)); - } while (y && c < l); - if ( - (512 & a.flags && - (a.check = M(a.check, i, c, s)), - (l -= c), - (s += c), - y) - ) - break t; - } else a.head && (a.head.comment = null); - a.mode = 9; - case 9: - if (512 & a.flags) { - for (; d < 16; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - if (h !== (65535 & a.check)) { - (t.msg = "header crc mismatch"), (a.mode = 30); - break; - } - (h = 0), (d = 0); - } - a.head && - ((a.head.hcrc = (a.flags >> 9) & 1), - (a.head.done = !0)), - (t.adler = a.check = 0), - (a.mode = 12); - break; - case 10: - for (; d < 32; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - (t.adler = a.check = Ae(h)), - (h = 0), - (d = 0), - (a.mode = 11); - case 11: - if (0 === a.havedict) - return ( - (t.next_out = r), - (t.avail_out = o), - (t.next_in = s), - (t.avail_in = l), - (a.hold = h), - (a.bits = d), - ge - ); - (t.adler = a.check = 1), (a.mode = 12); - case 12: - if (e === ce || e === ue) break t; - case 13: - if (a.last) { - (h >>>= 7 & d), (d -= 7 & d), (a.mode = 27); - break; - } - for (; d < 3; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - switch ( - ((a.last = 1 & h), (h >>>= 1), (d -= 1), 3 & h) - ) { - case 0: - a.mode = 14; - break; - case 1: - if ((Ie(a), (a.mode = 20), e === ue)) { - (h >>>= 2), (d -= 2); - break t; - } - break; - case 2: - a.mode = 17; - break; - case 3: - (t.msg = "invalid block type"), (a.mode = 30); - } - (h >>>= 2), (d -= 2); - break; - case 14: - for (h >>>= 7 & d, d -= 7 & d; d < 32; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - if ((65535 & h) != ((h >>> 16) ^ 65535)) { - (t.msg = "invalid stored block lengths"), - (a.mode = 30); - break; - } - if ( - ((a.length = 65535 & h), - (h = 0), - (d = 0), - (a.mode = 15), - e === ue) - ) - break t; - case 15: - a.mode = 16; - case 16: - if (((c = a.length), c)) { - if ((c > l && (c = l), c > o && (c = o), 0 === c)) - break t; - n.set(i.subarray(s, s + c), r), - (l -= c), - (s += c), - (o -= c), - (r += c), - (a.length -= c); - break; - } - a.mode = 12; - break; - case 17: - for (; d < 14; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - if ( - ((a.nlen = 257 + (31 & h)), - (h >>>= 5), - (d -= 5), - (a.ndist = 1 + (31 & h)), - (h >>>= 5), - (d -= 5), - (a.ncode = 4 + (15 & h)), - (h >>>= 4), - (d -= 4), - a.nlen > 286 || a.ndist > 30) - ) { - (t.msg = "too many length or distance symbols"), - (a.mode = 30); - break; - } - (a.have = 0), (a.mode = 18); - case 18: - for (; a.have < a.ncode; ) { - for (; d < 3; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - (a.lens[Z[a.have++]] = 7 & h), (h >>>= 3), (d -= 3); - } - for (; a.have < 19; ) a.lens[Z[a.have++]] = 0; - if ( - ((a.lencode = a.lendyn), - (a.lenbits = 7), - (E = { bits: a.lenbits }), - (x = _e(0, a.lens, 0, 19, a.lencode, 0, a.work, E)), - (a.lenbits = E.bits), - x) - ) { - (t.msg = "invalid code lengths set"), (a.mode = 30); - break; - } - (a.have = 0), (a.mode = 19); - case 19: - for (; a.have < a.nlen + a.ndist; ) { - for ( - ; - (z = a.lencode[h & ((1 << a.lenbits) - 1)]), - (b = z >>> 24), - (g = (z >>> 16) & 255), - (p = 65535 & z), - !(b <= d); - - ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - if (p < 16) - (h >>>= b), (d -= b), (a.lens[a.have++] = p); - else { - if (16 === p) { - for (R = b + 2; d < R; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - if (((h >>>= b), (d -= b), 0 === a.have)) { - (t.msg = "invalid bit length repeat"), - (a.mode = 30); - break; - } - (y = a.lens[a.have - 1]), - (c = 3 + (3 & h)), - (h >>>= 2), - (d -= 2); - } else if (17 === p) { - for (R = b + 3; d < R; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - (h >>>= b), - (d -= b), - (y = 0), - (c = 3 + (7 & h)), - (h >>>= 3), - (d -= 3); - } else { - for (R = b + 7; d < R; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - (h >>>= b), - (d -= b), - (y = 0), - (c = 11 + (127 & h)), - (h >>>= 7), - (d -= 7); - } - if (a.have + c > a.nlen + a.ndist) { - (t.msg = "invalid bit length repeat"), - (a.mode = 30); - break; - } - for (; c--; ) a.lens[a.have++] = y; - } - } - if (30 === a.mode) break; - if (0 === a.lens[256]) { - (t.msg = "invalid code -- missing end-of-block"), - (a.mode = 30); - break; - } - if ( - ((a.lenbits = 9), - (E = { bits: a.lenbits }), - (x = _e( - 1, - a.lens, - 0, - a.nlen, - a.lencode, - 0, - a.work, - E - )), - (a.lenbits = E.bits), - x) - ) { - (t.msg = "invalid literal/lengths set"), - (a.mode = 30); - break; - } - if ( - ((a.distbits = 6), - (a.distcode = a.distdyn), - (E = { bits: a.distbits }), - (x = _e( - 2, - a.lens, - a.nlen, - a.ndist, - a.distcode, - 0, - a.work, - E - )), - (a.distbits = E.bits), - x) - ) { - (t.msg = "invalid distances set"), (a.mode = 30); - break; - } - if (((a.mode = 20), e === ue)) break t; - case 20: - a.mode = 21; - case 21: - if (l >= 6 && o >= 258) { - (t.next_out = r), - (t.avail_out = o), - (t.next_in = s), - (t.avail_in = l), - (a.hold = h), - (a.bits = d), - se(t, f), - (r = t.next_out), - (n = t.output), - (o = t.avail_out), - (s = t.next_in), - (i = t.input), - (l = t.avail_in), - (h = a.hold), - (d = a.bits), - 12 === a.mode && (a.back = -1); - break; - } - for ( - a.back = 0; - (z = a.lencode[h & ((1 << a.lenbits) - 1)]), - (b = z >>> 24), - (g = (z >>> 16) & 255), - (p = 65535 & z), - !(b <= d); - - ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - if (g && 0 == (240 & g)) { - for ( - m = b, k = g, v = p; - (z = - a.lencode[ - v + ((h & ((1 << (m + k)) - 1)) >> m) - ]), - (b = z >>> 24), - (g = (z >>> 16) & 255), - (p = 65535 & z), - !(m + b <= d); - - ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - (h >>>= m), (d -= m), (a.back += m); - } - if ( - ((h >>>= b), - (d -= b), - (a.back += b), - (a.length = p), - 0 === g) - ) { - a.mode = 26; - break; - } - if (32 & g) { - (a.back = -1), (a.mode = 12); - break; - } - if (64 & g) { - (t.msg = "invalid literal/length code"), - (a.mode = 30); - break; - } - (a.extra = 15 & g), (a.mode = 22); - case 22: - if (a.extra) { - for (R = a.extra; d < R; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - (a.length += h & ((1 << a.extra) - 1)), - (h >>>= a.extra), - (d -= a.extra), - (a.back += a.extra); - } - (a.was = a.length), (a.mode = 23); - case 23: - for ( - ; - (z = a.distcode[h & ((1 << a.distbits) - 1)]), - (b = z >>> 24), - (g = (z >>> 16) & 255), - (p = 65535 & z), - !(b <= d); - - ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - if (0 == (240 & g)) { - for ( - m = b, k = g, v = p; - (z = - a.distcode[ - v + ((h & ((1 << (m + k)) - 1)) >> m) - ]), - (b = z >>> 24), - (g = (z >>> 16) & 255), - (p = 65535 & z), - !(m + b <= d); - - ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - (h >>>= m), (d -= m), (a.back += m); - } - if (((h >>>= b), (d -= b), (a.back += b), 64 & g)) { - (t.msg = "invalid distance code"), (a.mode = 30); - break; - } - (a.offset = p), (a.extra = 15 & g), (a.mode = 24); - case 24: - if (a.extra) { - for (R = a.extra; d < R; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - (a.offset += h & ((1 << a.extra) - 1)), - (h >>>= a.extra), - (d -= a.extra), - (a.back += a.extra); - } - if (a.offset > a.dmax) { - (t.msg = "invalid distance too far back"), - (a.mode = 30); - break; - } - a.mode = 25; - case 25: - if (0 === o) break t; - if (((c = f - o), a.offset > c)) { - if (((c = a.offset - c), c > a.whave && a.sane)) { - (t.msg = "invalid distance too far back"), - (a.mode = 30); - break; - } - c > a.wnext - ? ((c -= a.wnext), (u = a.wsize - c)) - : (u = a.wnext - c), - c > a.length && (c = a.length), - (w = a.window); - } else (w = n), (u = r - a.offset), (c = a.length); - c > o && (c = o), (o -= c), (a.length -= c); - do { - n[r++] = w[u++]; - } while (--c); - 0 === a.length && (a.mode = 21); - break; - case 26: - if (0 === o) break t; - (n[r++] = a.length), o--, (a.mode = 21); - break; - case 27: - if (a.wrap) { - for (; d < 32; ) { - if (0 === l) break t; - l--, (h |= i[s++] << d), (d += 8); - } - if ( - ((f -= o), - (t.total_out += f), - (a.total += f), - f && - (t.adler = a.check = - a.flags - ? M(a.check, n, f, r - f) - : B(a.check, n, f, r - f)), - (f = o), - (a.flags ? h : Ae(h)) !== a.check) - ) { - (t.msg = "incorrect data check"), (a.mode = 30); - break; - } - (h = 0), (d = 0); - } - a.mode = 28; - case 28: - if (a.wrap && a.flags) { - for (; d < 32; ) { - if (0 === l) break t; - l--, (h += i[s++] << d), (d += 8); - } - if (h !== (4294967295 & a.total)) { - (t.msg = "incorrect length check"), - (a.mode = 30); - break; - } - (h = 0), (d = 0); - } - a.mode = 29; - case 29: - x = be; - break t; - case 30: - x = me; - break t; - case 31: - return ke; - case 32: - default: - return pe; - } - return ( - (t.next_out = r), - (t.avail_out = o), - (t.next_in = s), - (t.avail_in = l), - (a.hold = h), - (a.bits = d), - (a.wsize || - (f !== t.avail_out && - a.mode < 30 && - (a.mode < 27 || e !== fe))) && - Fe(t, t.output, t.next_out, f - t.avail_out), - (_ -= t.avail_in), - (f -= t.avail_out), - (t.total_in += _), - (t.total_out += f), - (a.total += f), - a.wrap && - f && - (t.adler = a.check = - a.flags - ? M(a.check, n, f, t.next_out - f) - : B(a.check, n, f, t.next_out - f)), - (t.data_type = - a.bits + - (a.last ? 64 : 0) + - (12 === a.mode ? 128 : 0) + - (20 === a.mode || 15 === a.mode ? 256 : 0)), - ((0 === _ && 0 === f) || e === fe) && x === we && (x = ve), - x - ); - }, - Le_inflateEnd = (t) => { - if (!t || !t.state) return pe; - let e = t.state; - return e.window && (e.window = null), (t.state = null), we; - }, - Le_inflateGetHeader = (t, e) => { - if (!t || !t.state) return pe; - const a = t.state; - return 0 == (2 & a.wrap) ? pe : ((a.head = e), (e.done = !1), we); - }, - Le_inflateSetDictionary = (t, e) => { - const a = e.length; - let i, n, s; - return t && t.state - ? ((i = t.state), - 0 !== i.wrap && 11 !== i.mode - ? pe - : 11 === i.mode && - ((n = 1), (n = B(n, e, a, 0)), n !== i.check) - ? me - : ((s = Fe(t, e, a, a)), - s ? ((i.mode = 31), ke) : ((i.havedict = 1), we))) - : pe; - }, - Le_inflateInfo = "pako inflate (from Nodeca project)", - Ne = function () { - (this.text = 0), - (this.time = 0), - (this.xflags = 0), - (this.os = 0), - (this.extra = null), - (this.extra_len = 0), - (this.name = ""), - (this.comment = ""), - (this.hcrc = 0), - (this.done = !1); - }; - const Be = Object.prototype.toString, - { - Z_NO_FLUSH: Ce, - Z_FINISH: Me, - Z_OK: He, - Z_STREAM_END: je, - Z_NEED_DICT: Ke, - Z_STREAM_ERROR: Pe, - Z_DATA_ERROR: Ye, - Z_MEM_ERROR: Ge, - } = j; - function Xe(t) { - this.options = Bt( - { chunkSize: 65536, windowBits: 15, to: "" }, - t || {} - ); - const e = this.options; - e.raw && - e.windowBits >= 0 && - e.windowBits < 16 && - ((e.windowBits = -e.windowBits), - 0 === e.windowBits && (e.windowBits = -15)), - !(e.windowBits >= 0 && e.windowBits < 16) || - (t && t.windowBits) || - (e.windowBits += 32), - e.windowBits > 15 && - e.windowBits < 48 && - 0 == (15 & e.windowBits) && - (e.windowBits |= 15), - (this.err = 0), - (this.msg = ""), - (this.ended = !1), - (this.chunks = []), - (this.strm = new Yt()), - (this.strm.avail_out = 0); - let a = Le_inflateInit2(this.strm, e.windowBits); - if (a !== He) throw new Error(H[a]); - if ( - ((this.header = new Ne()), - Le_inflateGetHeader(this.strm, this.header), - e.dictionary && - ("string" == typeof e.dictionary - ? (e.dictionary = jt(e.dictionary)) - : "[object ArrayBuffer]" === Be.call(e.dictionary) && - (e.dictionary = new Uint8Array(e.dictionary)), - e.raw && - ((a = Le_inflateSetDictionary(this.strm, e.dictionary)), - a !== He))) - ) - throw new Error(H[a]); - } - function We(t, e) { - const a = new Xe(e); - if ((a.push(t), a.err)) throw a.msg || H[a.err]; - return a.result; - } - (Xe.prototype.push = function (t, e) { - const a = this.strm, - i = this.options.chunkSize, - n = this.options.dictionary; - let s, r, l; - if (this.ended) return !1; - for ( - r = e === ~~e ? e : !0 === e ? Me : Ce, - "[object ArrayBuffer]" === Be.call(t) - ? (a.input = new Uint8Array(t)) - : (a.input = t), - a.next_in = 0, - a.avail_in = a.input.length; - ; - - ) { - for ( - 0 === a.avail_out && - ((a.output = new Uint8Array(i)), - (a.next_out = 0), - (a.avail_out = i)), - s = Le_inflate(a, r), - s === Ke && - n && - ((s = Le_inflateSetDictionary(a, n)), - s === He - ? (s = Le_inflate(a, r)) - : s === Ye && (s = Ke)); - a.avail_in > 0 && - s === je && - a.state.wrap > 0 && - 0 !== t[a.next_in]; - - ) - Le_inflateReset(a), (s = Le_inflate(a, r)); - switch (s) { - case Pe: - case Ye: - case Ke: - case Ge: - return this.onEnd(s), (this.ended = !0), !1; - } - if ( - ((l = a.avail_out), - a.next_out && (0 === a.avail_out || s === je)) - ) - if ("string" === this.options.to) { - let t = Pt(a.output, a.next_out), - e = a.next_out - t, - n = Kt(a.output, t); - (a.next_out = e), - (a.avail_out = i - e), - e && a.output.set(a.output.subarray(t, t + e), 0), - this.onData(n); - } else - this.onData( - a.output.length === a.next_out - ? a.output - : a.output.subarray(0, a.next_out) - ); - if (s !== He || 0 !== l) { - if (s === je) - return ( - (s = Le_inflateEnd(this.strm)), - this.onEnd(s), - (this.ended = !0), - !0 - ); - if (0 === a.avail_in) break; - } - } - return !0; - }), - (Xe.prototype.onData = function (t) { - this.chunks.push(t); - }), - (Xe.prototype.onEnd = function (t) { - t === He && - ("string" === this.options.to - ? (this.result = this.chunks.join("")) - : (this.result = Ct(this.chunks))), - (this.chunks = []), - (this.err = t), - (this.msg = this.strm.msg); - }); - var qe = { - Inflate: Xe, - inflate: We, - inflateRaw: function (t, e) { - return ((e = e || {}).raw = !0), We(t, e); - }, - ungzip: We, - constants: j, - }; - const { Deflate: Je, deflate: Qe, deflateRaw: Ve, gzip: $e } = ne, - { Inflate: ta, inflate: ea, inflateRaw: aa, ungzip: ia } = qe; - var na = Je, - sa = Qe, - ra = Ve, - la = $e, - oa = ta, - ha = ea, - da = aa, - _a = ia, - fa = j, - ca = { - Deflate: na, - deflate: sa, - deflateRaw: ra, - gzip: la, - Inflate: oa, - inflate: ha, - inflateRaw: da, - ungzip: _a, - constants: fa, - }; - (t.Deflate = na), - (t.Inflate = oa), - (t.constants = fa), - (t.default = ca), - (t.deflate = sa), - (t.deflateRaw = ra), - (t.gzip = la), - (t.inflate = ha), - (t.inflateRaw = da), - (t.ungzip = _a), - Object.defineProperty(t, "__esModule", { value: !0 }); -}); +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).pako={})}(this,function(t){"use strict";function e(t){let e=t.length;for(;--e>=0;)t[e]=0}function a(t,e,a,i,n){this.static_tree=t,this.extra_bits=e,this.extra_base=a,this.elems=i,this.max_length=n,this.has_stree=t&&t.length}function i(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}function n(t,e,a,i,n){this.good_length=t,this.max_lazy=e,this.nice_length=a,this.max_chain=i,this.func=n}function s(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=pt,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),Et(this.dyn_ltree),Et(this.dyn_dtree),Et(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),Et(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),Et(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function r(t){this.options=Xt({level:le,method:de,chunkSize:16384,windowBits:15,memLevel:8,strategy:he},t||{});let e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new te,this.strm.avail_out=0;let a=Ht(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(a!==re)throw new Error(W[a]);if(e.header&&jt(this.strm,e.header),e.dictionary){let t;if(t="string"==typeof e.dictionary?Qt(e.dictionary):"[object ArrayBuffer]"===ee.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,a=Yt(this.strm,t),a!==re)throw new Error(W[a]);this._dict_set=!0}}function o(t,e){const a=new r(e);if(a.push(t,!0),a.err)throw a.msg||W[a.err];return a.result}function l(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function h(t){this.options=Xt({chunkSize:65536,windowBits:15,to:""},t||{});const e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||t&&t.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&0==(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new te,this.strm.avail_out=0;let a=Me(this.strm,e.windowBits);if(a!==qe)throw new Error(W[a]);if(this.header=new Ye,Ke(this.strm,this.header),e.dictionary&&("string"==typeof e.dictionary?e.dictionary=Qt(e.dictionary):"[object ArrayBuffer]"===Ge.call(e.dictionary)&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(a=Pe(this.strm,e.dictionary),a!==qe)))throw new Error(W[a])}function d(t,e){const a=new h(e);if(a.push(t),a.err)throw a.msg||W[a.err];return a.result}const _=256,f=286,c=30,u=15,w=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),b=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),g=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),p=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),m=new Array(576);e(m);const k=new Array(60);e(k);const v=new Array(512);e(v);const y=new Array(256);e(y);const x=new Array(29);e(x);const z=new Array(c);let A,E,R;e(z);const Z=t=>t<256?v[t]:v[256+(t>>>7)],U=(t,e)=>{t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255},S=(t,e,a)=>{t.bi_valid>16-a?(t.bi_buf|=e<>16-t.bi_valid,t.bi_valid+=a-16):(t.bi_buf|=e<{S(t,a[2*e],a[2*e+1])},D=(t,e)=>{let a=0;do{a|=1&t,t>>>=1,a<<=1}while(--e>0);return a>>>1},O=(t,e,a)=>{const i=new Array(16);let n,s,r=0;for(n=1;n<=u;n++)i[n]=r=r+a[n-1]<<1;for(s=0;s<=e;s++){let e=t[2*s+1];0!==e&&(t[2*s]=D(i[e]++,e))}},F=t=>{let e;for(e=0;e{t.bi_valid>8?U(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0},B=(t,e,a,i)=>{const n=2*e,s=2*a;return t[n]{const i=t.heap[a];let n=a<<1;for(;n<=t.heap_len&&(n{let i,n,s,r,o=0;if(0!==t.last_lit)do{i=t.pending_buf[t.d_buf+2*o]<<8|t.pending_buf[t.d_buf+2*o+1],n=t.pending_buf[t.l_buf+o],o++,0===i?T(t,n,e):(s=y[n],T(t,s+_+1,e),r=w[s],0!==r&&(n-=x[s],S(t,n,r)),i--,s=Z(i),T(t,s,a),r=b[s],0!==r&&(i-=z[s],S(t,i,r)))}while(o{const a=e.dyn_tree,i=e.stat_desc.static_tree,n=e.stat_desc.has_stree,s=e.stat_desc.elems;let r,o,l,h=-1;for(t.heap_len=0,t.heap_max=573,r=0;r>1;r>=1;r--)N(t,a,r);l=s;do{r=t.heap[1],t.heap[1]=t.heap[t.heap_len--],N(t,a,1),o=t.heap[1],t.heap[--t.heap_max]=r,t.heap[--t.heap_max]=o,a[2*l]=a[2*r]+a[2*o],t.depth[l]=(t.depth[r]>=t.depth[o]?t.depth[r]:t.depth[o])+1,a[2*r+1]=a[2*o+1]=l,t.heap[1]=l++,N(t,a,1)}while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],((t,e)=>{const a=e.dyn_tree,i=e.max_code,n=e.stat_desc.static_tree,s=e.stat_desc.has_stree,r=e.stat_desc.extra_bits,o=e.stat_desc.extra_base,l=e.stat_desc.max_length;let h,d,_,f,c,w,b=0;for(f=0;f<=u;f++)t.bl_count[f]=0;for(a[2*t.heap[t.heap_max]+1]=0,h=t.heap_max+1;h<573;h++)d=t.heap[h],f=a[2*a[2*d+1]+1]+1,f>l&&(f=l,b++),a[2*d+1]=f,d>i||(t.bl_count[f]++,c=0,d>=o&&(c=r[d-o]),w=a[2*d],t.opt_len+=w*(f+c),s&&(t.static_len+=w*(n[2*d+1]+c)));if(0!==b){do{for(f=l-1;0===t.bl_count[f];)f--;t.bl_count[f]--,t.bl_count[f+1]+=2,t.bl_count[l]--,b-=2}while(b>0);for(f=l;0!==f;f--)for(d=t.bl_count[f];0!==d;)_=t.heap[--h],_>i||(a[2*_+1]!==f&&(t.opt_len+=(f-a[2*_+1])*a[2*_],a[2*_+1]=f),d--)}})(t,e),O(a,h,t.bl_count)},M=(t,e,a)=>{let i,n,s=-1,r=e[1],o=0,l=7,h=4;for(0===r&&(l=138,h=3),e[2*(a+1)+1]=65535,i=0;i<=a;i++)n=r,r=e[2*(i+1)+1],++o{let i,n,s=-1,r=e[1],o=0,l=7,h=4;for(0===r&&(l=138,h=3),i=0;i<=a;i++)if(n=r,r=e[2*(i+1)+1],!(++o{S(t,0+(i?1:0),3),((t,e,a,i)=>{L(t),U(t,a),U(t,~a),t.pending_buf.set(t.window.subarray(e,e+a),t.pending),t.pending+=a})(t,e,a)};var P={_tr_init:t=>{j||((()=>{let t,e,i,n,s;const r=new Array(16);for(i=0,n=0;n<28;n++)for(x[n]=i,t=0;t<1<>=7;n{let n,s,r=0;t.level>0?(2===t.strm.data_type&&(t.strm.data_type=(t=>{let e,a=4093624447;for(e=0;e<=31;e++,a>>>=1)if(1&a&&0!==t.dyn_ltree[2*e])return 0;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return 1;for(e=32;e<_;e++)if(0!==t.dyn_ltree[2*e])return 1;return 0})(t)),C(t,t.l_desc),C(t,t.d_desc),r=(t=>{let e;for(M(t,t.dyn_ltree,t.l_desc.max_code),M(t,t.dyn_dtree,t.d_desc.max_code),C(t,t.bl_desc),e=18;e>=3&&0===t.bl_tree[2*p[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(t),n=t.opt_len+3+7>>>3,s=t.static_len+3+7>>>3,s<=n&&(n=s)):n=s=a+5,a+4<=n&&-1!==e?K(t,e,a,i):4===t.strategy||s===n?(S(t,2+(i?1:0),3),I(t,m,k)):(S(t,4+(i?1:0),3),((t,e,a,i)=>{let n;for(S(t,e-257,5),S(t,a-1,5),S(t,i-4,4),n=0;n(t.pending_buf[t.d_buf+2*t.last_lit]=e>>>8&255,t.pending_buf[t.d_buf+2*t.last_lit+1]=255&e,t.pending_buf[t.l_buf+t.last_lit]=255&a,t.last_lit++,0===e?t.dyn_ltree[2*a]++:(t.matches++,e--,t.dyn_ltree[2*(y[a]+_+1)]++,t.dyn_dtree[2*Z(e)]++),t.last_lit===t.lit_bufsize-1),_tr_align:t=>{S(t,2,3),T(t,256,m),(t=>{16===t.bi_valid?(U(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)})(t)}},Y=(t,e,a,i)=>{let n=65535&t|0,s=t>>>16&65535|0,r=0;for(;0!==a;){r=a>2e3?2e3:a,a-=r;do{n=n+e[i++]|0,s=s+n|0}while(--r);n%=65521,s%=65521}return n|s<<16|0};const G=new Uint32Array((()=>{let t,e=[];for(var a=0;a<256;a++){t=a;for(var i=0;i<8;i++)t=1&t?3988292384^t>>>1:t>>>1;e[a]=t}return e})());var X=(t,e,a,i)=>{const n=G,s=i+a;t^=-1;for(let a=i;a>>8^n[255&(t^e[a])];return-1^t},W={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},q={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:J,_tr_stored_block:Q,_tr_flush_block:V,_tr_tally:$,_tr_align:tt}=P,{Z_NO_FLUSH:et,Z_PARTIAL_FLUSH:at,Z_FULL_FLUSH:it,Z_FINISH:nt,Z_BLOCK:st,Z_OK:rt,Z_STREAM_END:ot,Z_STREAM_ERROR:lt,Z_DATA_ERROR:ht,Z_BUF_ERROR:dt,Z_DEFAULT_COMPRESSION:_t,Z_FILTERED:ft,Z_HUFFMAN_ONLY:ct,Z_RLE:ut,Z_FIXED:wt,Z_DEFAULT_STRATEGY:bt,Z_UNKNOWN:gt,Z_DEFLATED:pt}=q,mt=258,kt=262,vt=103,yt=113,xt=666,zt=(t,e)=>(t.msg=W[e],e),At=t=>(t<<1)-(t>4?9:0),Et=t=>{let e=t.length;for(;--e>=0;)t[e]=0};let Rt=(t,e,a)=>(e<{const e=t.state;let a=e.pending;a>t.avail_out&&(a=t.avail_out),0!==a&&(t.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+a),t.next_out),t.next_out+=a,e.pending_out+=a,t.total_out+=a,t.avail_out-=a,e.pending-=a,0===e.pending&&(e.pending_out=0))},Ut=(t,e)=>{V(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,Zt(t.strm)},St=(t,e)=>{t.pending_buf[t.pending++]=e},Tt=(t,e)=>{t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e},Dt=(t,e,a,i)=>{let n=t.avail_in;return n>i&&(n=i),0===n?0:(t.avail_in-=n,e.set(t.input.subarray(t.next_in,t.next_in+n),a),1===t.state.wrap?t.adler=Y(t.adler,e,n,a):2===t.state.wrap&&(t.adler=X(t.adler,e,n,a)),t.next_in+=n,t.total_in+=n,n)},Ot=(t,e)=>{let a,i,n=t.max_chain_length,s=t.strstart,r=t.prev_length,o=t.nice_match;const l=t.strstart>t.w_size-kt?t.strstart-(t.w_size-kt):0,h=t.window,d=t.w_mask,_=t.prev,f=t.strstart+mt;let c=h[s+r-1],u=h[s+r];t.prev_length>=t.good_match&&(n>>=2),o>t.lookahead&&(o=t.lookahead);do{if(a=e,h[a+r]===u&&h[a+r-1]===c&&h[a]===h[s]&&h[++a]===h[s+1]){s+=2,a++;do{}while(h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&sr){if(t.match_start=e,r=i,i>=o)break;c=h[s+r-1],u=h[s+r]}}}while((e=_[e&d])>l&&0!=--n);return r<=t.lookahead?r:t.lookahead},Ft=t=>{const e=t.w_size;let a,i,n,s,r;do{if(s=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-kt)){t.window.set(t.window.subarray(e,e+e),0),t.match_start-=e,t.strstart-=e,t.block_start-=e,i=t.hash_size,a=i;do{n=t.head[--a],t.head[a]=n>=e?n-e:0}while(--i);i=e,a=i;do{n=t.prev[--a],t.prev[a]=n>=e?n-e:0}while(--i);s+=e}if(0===t.strm.avail_in)break;if(i=Dt(t.strm,t.window,t.strstart+t.lookahead,s),t.lookahead+=i,t.lookahead+t.insert>=3)for(r=t.strstart-t.insert,t.ins_h=t.window[r],t.ins_h=Rt(t,t.ins_h,t.window[r+1]);t.insert&&(t.ins_h=Rt(t,t.ins_h,t.window[r+3-1]),t.prev[r&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=r,r++,t.insert--,!(t.lookahead+t.insert<3)););}while(t.lookahead{let a,i;for(;;){if(t.lookahead=3&&(t.ins_h=Rt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),0!==a&&t.strstart-a<=t.w_size-kt&&(t.match_length=Ot(t,a)),t.match_length>=3)if(i=$(t,t.strstart-t.match_start,t.match_length-3),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=3){t.match_length--;do{t.strstart++,t.ins_h=Rt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart}while(0!=--t.match_length);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=Rt(t,t.ins_h,t.window[t.strstart+1]);else i=$(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(i&&(Ut(t,!1),0===t.strm.avail_out))return 1}return t.insert=t.strstart<2?t.strstart:2,e===nt?(Ut(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(Ut(t,!1),0===t.strm.avail_out)?1:2},Bt=(t,e)=>{let a,i,n;for(;;){if(t.lookahead=3&&(t.ins_h=Rt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=2,0!==a&&t.prev_length4096)&&(t.match_length=2)),t.prev_length>=3&&t.match_length<=t.prev_length){n=t.strstart+t.lookahead-3,i=$(t,t.strstart-1-t.prev_match,t.prev_length-3),t.lookahead-=t.prev_length-1,t.prev_length-=2;do{++t.strstart<=n&&(t.ins_h=Rt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart)}while(0!=--t.prev_length);if(t.match_available=0,t.match_length=2,t.strstart++,i&&(Ut(t,!1),0===t.strm.avail_out))return 1}else if(t.match_available){if(i=$(t,0,t.window[t.strstart-1]),i&&Ut(t,!1),t.strstart++,t.lookahead--,0===t.strm.avail_out)return 1}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(i=$(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<2?t.strstart:2,e===nt?(Ut(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(Ut(t,!1),0===t.strm.avail_out)?1:2},Nt=[new n(0,0,0,0,(t,e)=>{let a=65535;for(a>t.pending_buf_size-5&&(a=t.pending_buf_size-5);;){if(t.lookahead<=1){if(Ft(t),0===t.lookahead&&e===et)return 1;if(0===t.lookahead)break}t.strstart+=t.lookahead,t.lookahead=0;const i=t.block_start+a;if((0===t.strstart||t.strstart>=i)&&(t.lookahead=t.strstart-i,t.strstart=i,Ut(t,!1),0===t.strm.avail_out))return 1;if(t.strstart-t.block_start>=t.w_size-kt&&(Ut(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===nt?(Ut(t,!0),0===t.strm.avail_out?3:4):(t.strstart>t.block_start&&(Ut(t,!1),t.strm.avail_out),1)}),new n(4,4,8,4,Lt),new n(4,5,16,8,Lt),new n(4,6,32,32,Lt),new n(4,4,16,16,Bt),new n(8,16,32,32,Bt),new n(8,16,128,128,Bt),new n(8,32,128,256,Bt),new n(32,128,258,1024,Bt),new n(32,258,258,4096,Bt)],It=t=>{if(!t||!t.state)return zt(t,lt);t.total_in=t.total_out=0,t.data_type=gt;const e=t.state;return e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap?42:yt,t.adler=2===e.wrap?0:1,e.last_flush=et,J(e),rt},Ct=t=>{const e=It(t);var a;return e===rt&&((a=t.state).window_size=2*a.w_size,Et(a.head),a.max_lazy_match=Nt[a.level].max_lazy,a.good_match=Nt[a.level].good_length,a.nice_match=Nt[a.level].nice_length,a.max_chain_length=Nt[a.level].max_chain,a.strstart=0,a.block_start=0,a.lookahead=0,a.insert=0,a.match_length=a.prev_length=2,a.match_available=0,a.ins_h=0),e},Mt=(t,e,a,i,n,r)=>{if(!t)return lt;let o=1;if(e===_t&&(e=6),i<0?(o=0,i=-i):i>15&&(o=2,i-=16),n<1||n>9||a!==pt||i<8||i>15||e<0||e>9||r<0||r>wt)return zt(t,lt);8===i&&(i=9);const l=new s;return t.state=l,l.strm=t,l.wrap=o,l.gzhead=null,l.w_bits=i,l.w_size=1<t&&t.state?2!==t.state.wrap?lt:(t.state.gzhead=e,rt):lt,Kt=(t,e)=>{let a,i;if(!t||!t.state||e>st||e<0)return t?zt(t,lt):lt;const n=t.state;if(!t.output||!t.input&&0!==t.avail_in||n.status===xt&&e!==nt)return zt(t,0===t.avail_out?dt:lt);n.strm=t;const s=n.last_flush;if(n.last_flush=e,42===n.status)if(2===n.wrap)t.adler=0,St(n,31),St(n,139),St(n,8),n.gzhead?(St(n,(n.gzhead.text?1:0)+(n.gzhead.hcrc?2:0)+(n.gzhead.extra?4:0)+(n.gzhead.name?8:0)+(n.gzhead.comment?16:0)),St(n,255&n.gzhead.time),St(n,n.gzhead.time>>8&255),St(n,n.gzhead.time>>16&255),St(n,n.gzhead.time>>24&255),St(n,9===n.level?2:n.strategy>=ct||n.level<2?4:0),St(n,255&n.gzhead.os),n.gzhead.extra&&n.gzhead.extra.length&&(St(n,255&n.gzhead.extra.length),St(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(t.adler=X(t.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=69):(St(n,0),St(n,0),St(n,0),St(n,0),St(n,0),St(n,9===n.level?2:n.strategy>=ct||n.level<2?4:0),St(n,3),n.status=yt);else{let e=pt+(n.w_bits-8<<4)<<8,a=-1;a=n.strategy>=ct||n.level<2?0:n.level<6?1:6===n.level?2:3,e|=a<<6,0!==n.strstart&&(e|=32),e+=31-e%31,n.status=yt,Tt(n,e),0!==n.strstart&&(Tt(n,t.adler>>>16),Tt(n,65535&t.adler)),t.adler=1}if(69===n.status)if(n.gzhead.extra){for(a=n.pending;n.gzindex<(65535&n.gzhead.extra.length)&&(n.pending!==n.pending_buf_size||(n.gzhead.hcrc&&n.pending>a&&(t.adler=X(t.adler,n.pending_buf,n.pending-a,a)),Zt(t),a=n.pending,n.pending!==n.pending_buf_size));)St(n,255&n.gzhead.extra[n.gzindex]),n.gzindex++;n.gzhead.hcrc&&n.pending>a&&(t.adler=X(t.adler,n.pending_buf,n.pending-a,a)),n.gzindex===n.gzhead.extra.length&&(n.gzindex=0,n.status=73)}else n.status=73;if(73===n.status)if(n.gzhead.name){a=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>a&&(t.adler=X(t.adler,n.pending_buf,n.pending-a,a)),Zt(t),a=n.pending,n.pending===n.pending_buf_size)){i=1;break}i=n.gzindexa&&(t.adler=X(t.adler,n.pending_buf,n.pending-a,a)),0===i&&(n.gzindex=0,n.status=91)}else n.status=91;if(91===n.status)if(n.gzhead.comment){a=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>a&&(t.adler=X(t.adler,n.pending_buf,n.pending-a,a)),Zt(t),a=n.pending,n.pending===n.pending_buf_size)){i=1;break}i=n.gzindexa&&(t.adler=X(t.adler,n.pending_buf,n.pending-a,a)),0===i&&(n.status=vt)}else n.status=vt;if(n.status===vt&&(n.gzhead.hcrc?(n.pending+2>n.pending_buf_size&&Zt(t),n.pending+2<=n.pending_buf_size&&(St(n,255&t.adler),St(n,t.adler>>8&255),t.adler=0,n.status=yt)):n.status=yt),0!==n.pending){if(Zt(t),0===t.avail_out)return n.last_flush=-1,rt}else if(0===t.avail_in&&At(e)<=At(s)&&e!==nt)return zt(t,dt);if(n.status===xt&&0!==t.avail_in)return zt(t,dt);if(0!==t.avail_in||0!==n.lookahead||e!==et&&n.status!==xt){let a=n.strategy===ct?((t,e)=>{let a;for(;;){if(0===t.lookahead&&(Ft(t),0===t.lookahead)){if(e===et)return 1;break}if(t.match_length=0,a=$(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,a&&(Ut(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===nt?(Ut(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(Ut(t,!1),0===t.strm.avail_out)?1:2})(n,e):n.strategy===ut?((t,e)=>{let a,i,n,s;const r=t.window;for(;;){if(t.lookahead<=mt){if(Ft(t),t.lookahead<=mt&&e===et)return 1;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=3&&t.strstart>0&&(n=t.strstart-1,i=r[n],i===r[++n]&&i===r[++n]&&i===r[++n])){s=t.strstart+mt;do{}while(i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&nt.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=3?(a=$(t,1,t.match_length-3),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(a=$(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),a&&(Ut(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===nt?(Ut(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(Ut(t,!1),0===t.strm.avail_out)?1:2})(n,e):Nt[n.level].func(n,e);if(3!==a&&4!==a||(n.status=xt),1===a||3===a)return 0===t.avail_out&&(n.last_flush=-1),rt;if(2===a&&(e===at?tt(n):e!==st&&(Q(n,0,0,!1),e===it&&(Et(n.head),0===n.lookahead&&(n.strstart=0,n.block_start=0,n.insert=0))),Zt(t),0===t.avail_out))return n.last_flush=-1,rt}return e!==nt?rt:n.wrap<=0?ot:(2===n.wrap?(St(n,255&t.adler),St(n,t.adler>>8&255),St(n,t.adler>>16&255),St(n,t.adler>>24&255),St(n,255&t.total_in),St(n,t.total_in>>8&255),St(n,t.total_in>>16&255),St(n,t.total_in>>24&255)):(Tt(n,t.adler>>>16),Tt(n,65535&t.adler)),Zt(t),n.wrap>0&&(n.wrap=-n.wrap),0!==n.pending?rt:ot)},Pt=t=>{if(!t||!t.state)return lt;const e=t.state.status;return 42!==e&&69!==e&&73!==e&&91!==e&&e!==vt&&e!==yt&&e!==xt?zt(t,lt):(t.state=null,e===yt?zt(t,ht):rt)},Yt=(t,e)=>{let a=e.length;if(!t||!t.state)return lt;const i=t.state,n=i.wrap;if(2===n||1===n&&42!==i.status||i.lookahead)return lt;if(1===n&&(t.adler=Y(t.adler,e,a,0)),i.wrap=0,a>=i.w_size){0===n&&(Et(i.head),i.strstart=0,i.block_start=0,i.insert=0);let t=new Uint8Array(i.w_size);t.set(e.subarray(a-i.w_size,a),0),e=t,a=i.w_size}const s=t.avail_in,r=t.next_in,o=t.input;for(t.avail_in=a,t.next_in=0,t.input=e,Ft(i);i.lookahead>=3;){let t=i.strstart,e=i.lookahead-2;do{i.ins_h=Rt(i,i.ins_h,i.window[t+3-1]),i.prev[t&i.w_mask]=i.head[i.ins_h],i.head[i.ins_h]=t,t++}while(--e);i.strstart=t,i.lookahead=2,Ft(i)}return i.strstart+=i.lookahead,i.block_start=i.strstart,i.insert=i.lookahead,i.lookahead=0,i.match_length=i.prev_length=2,i.match_available=0,t.next_in=r,t.input=o,t.avail_in=s,i.wrap=n,rt};const Gt=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var Xt=function(t){const e=Array.prototype.slice.call(arguments,1);for(;e.length;){const a=e.shift();if(a){if("object"!=typeof a)throw new TypeError(a+"must be non-object");for(const e in a)Gt(a,e)&&(t[e]=a[e])}}return t},Wt=t=>{let e=0;for(let a=0,i=t.length;a=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;Jt[254]=Jt[254]=1;var Qt=t=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(t);let e,a,i,n,s,r=t.length,o=0;for(n=0;n>>6,e[s++]=128|63&a):a<65536?(e[s++]=224|a>>>12,e[s++]=128|a>>>6&63,e[s++]=128|63&a):(e[s++]=240|a>>>18,e[s++]=128|a>>>12&63,e[s++]=128|a>>>6&63,e[s++]=128|63&a);return e},Vt=(t,e)=>{const a=e||t.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(t.subarray(0,e));let i,n;const s=new Array(2*a);for(n=0,i=0;i4)s[n++]=65533,i+=r-1;else{for(e&=2===r?31:3===r?15:7;r>1&&i1?s[n++]=65533:e<65536?s[n++]=e:(e-=65536,s[n++]=55296|e>>10&1023,s[n++]=56320|1023&e)}}return((t,e)=>{if(e<65534&&t.subarray&&qt)return String.fromCharCode.apply(null,t.length===e?t:t.subarray(0,e));let a="";for(let i=0;i{(e=e||t.length)>t.length&&(e=t.length);let a=e-1;for(;a>=0&&128==(192&t[a]);)a--;return a<0||0===a?e:a+Jt[t[a]]>e?a:e},te=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const ee=Object.prototype.toString,{Z_NO_FLUSH:ae,Z_SYNC_FLUSH:ie,Z_FULL_FLUSH:ne,Z_FINISH:se,Z_OK:re,Z_STREAM_END:oe,Z_DEFAULT_COMPRESSION:le,Z_DEFAULT_STRATEGY:he,Z_DEFLATED:de}=q;r.prototype.push=function(t,e){const a=this.strm,i=this.options.chunkSize;let n,s;if(this.ended)return!1;for(s=e===~~e?e:!0===e?se:ae,"string"==typeof t?a.input=Qt(t):"[object ArrayBuffer]"===ee.call(t)?a.input=new Uint8Array(t):a.input=t,a.next_in=0,a.avail_in=a.input.length;;)if(0===a.avail_out&&(a.output=new Uint8Array(i),a.next_out=0,a.avail_out=i),(s===ie||s===ne)&&a.avail_out<=6)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else{if(n=Kt(a,s),n===oe)return a.next_out>0&&this.onData(a.output.subarray(0,a.next_out)),n=Pt(this.strm),this.onEnd(n),this.ended=!0,n===re;if(0!==a.avail_out){if(s>0&&a.next_out>0)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else if(0===a.avail_in)break}else this.onData(a.output)}return!0},r.prototype.onData=function(t){this.chunks.push(t)},r.prototype.onEnd=function(t){t===re&&(this.result=Wt(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var _e={Deflate:r,deflate:o,deflateRaw:function(t,e){return(e=e||{}).raw=!0,o(t,e)},gzip:function(t,e){return(e=e||{}).gzip=!0,o(t,e)},constants:q},fe=function(t,e){let a,i,n,s,r,o,l,h,d,_,f,c,u,w,b,g,p,m,k,v,y,x,z,A;const E=t.state;a=t.next_in,z=t.input,i=a+(t.avail_in-5),n=t.next_out,A=t.output,s=n-(e-t.avail_out),r=n+(t.avail_out-257),o=E.dmax,l=E.wsize,h=E.whave,d=E.wnext,_=E.window,f=E.hold,c=E.bits,u=E.lencode,w=E.distcode,b=(1<>>24,f>>>=m,c-=m,m=p>>>16&255,0===m)A[n++]=65535&p;else{if(!(16&m)){if(0==(64&m)){p=u[(65535&p)+(f&(1<>>=m,c-=m),c<15&&(f+=z[a++]<>>24,f>>>=m,c-=m,m=p>>>16&255,!(16&m)){if(0==(64&m)){p=w[(65535&p)+(f&(1<o){t.msg="invalid distance too far back",E.mode=30;break t}if(f>>>=m,c-=m,m=n-s,v>m){if(m=v-m,m>h&&E.sane){t.msg="invalid distance too far back",E.mode=30;break t}if(y=0,x=_,0===d){if(y+=l-m,m2;)A[n++]=x[y++],A[n++]=x[y++],A[n++]=x[y++],k-=3;k&&(A[n++]=x[y++],k>1&&(A[n++]=x[y++]))}else{y=n-v;do{A[n++]=A[y++],A[n++]=A[y++],A[n++]=A[y++],k-=3}while(k>2);k&&(A[n++]=A[y++],k>1&&(A[n++]=A[y++]))}break}}break}}while(a>3,a-=k,c-=k<<3,f&=(1<{const l=o.bits;let h,d,_,f,c,u,w=0,b=0,g=0,p=0,m=0,k=0,v=0,y=0,x=0,z=0,A=null,E=0;const R=new Uint16Array(16),Z=new Uint16Array(16);let U,S,T,D=null,O=0;for(w=0;w<=15;w++)R[w]=0;for(b=0;b=1&&0===R[p];p--);if(m>p&&(m=p),0===p)return n[s++]=20971520,n[s++]=20971520,o.bits=1,0;for(g=1;g0&&(0===t||1!==p))return-1;for(Z[1]=0,w=1;w<15;w++)Z[w+1]=Z[w]+R[w];for(b=0;b852||2===t&&x>592)return 1;for(;;){U=w-v,r[b]u?(S=D[O+r[b]],T=A[E+r[b]]):(S=96,T=0),h=1<>v)+d]=U<<24|S<<16|T|0}while(0!==d);for(h=1<>=1;if(0!==h?(z&=h-1,z+=h):z=0,b++,0==--R[w]){if(w===p)break;w=e[a+r[b]]}if(w>m&&(z&f)!==_){for(0===v&&(v=m),c+=g,k=w-v,y=1<852||2===t&&x>592)return 1;_=z&f,n[_]=m<<24|k<<16|c-s|0}}return 0!==z&&(n[c+z]=w-v<<24|64<<16|0),o.bits=m,0};const{Z_FINISH:pe,Z_BLOCK:me,Z_TREES:ke,Z_OK:ve,Z_STREAM_END:ye,Z_NEED_DICT:xe,Z_STREAM_ERROR:ze,Z_DATA_ERROR:Ae,Z_MEM_ERROR:Ee,Z_BUF_ERROR:Re,Z_DEFLATED:Ze}=q,Ue=t=>(t>>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24),Se=t=>{if(!t||!t.state)return ze;const e=t.state;return t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=1,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(852),e.distcode=e.distdyn=new Int32Array(592),e.sane=1,e.back=-1,ve},Te=t=>{if(!t||!t.state)return ze;const e=t.state;return e.wsize=0,e.whave=0,e.wnext=0,Se(t)},De=(t,e)=>{let a;if(!t||!t.state)return ze;const i=t.state;return e<0?(a=0,e=-e):(a=1+(e>>4),e<48&&(e&=15)),e&&(e<8||e>15)?ze:(null!==i.window&&i.wbits!==e&&(i.window=null),i.wrap=a,i.wbits=e,Te(t))},Oe=(t,e)=>{if(!t)return ze;const a=new l;t.state=a,a.window=null;const i=De(t,e);return i!==ve&&(t.state=null),i};let Fe,Le,Be=!0;const Ne=t=>{if(Be){Fe=new Int32Array(512),Le=new Int32Array(32);let e=0;for(;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(ge(1,t.lens,0,288,Fe,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5 +;ge(2,t.lens,0,32,Le,0,t.work,{bits:5}),Be=!1}t.lencode=Fe,t.lenbits=9,t.distcode=Le,t.distbits=5},Ie=(t,e,a,i)=>{let n;const s=t.state;return null===s.window&&(s.wsize=1<=s.wsize?(s.window.set(e.subarray(a-s.wsize,a),0),s.wnext=0,s.whave=s.wsize):(n=s.wsize-s.wnext,n>i&&(n=i),s.window.set(e.subarray(a-i,a-i+n),s.wnext),(i-=n)?(s.window.set(e.subarray(a-i,a),0),s.wnext=i,s.whave=s.wsize):(s.wnext+=n,s.wnext===s.wsize&&(s.wnext=0),s.whave{let a,i,n,s,r,o,l,h,d,_,f,c,u,w,b,g,p,m,k,v,y,x,z=0;const A=new Uint8Array(4);let E,R;const Z=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(!t||!t.state||!t.output||!t.input&&0!==t.avail_in)return ze;a=t.state,12===a.mode&&(a.mode=13),r=t.next_out,n=t.output,l=t.avail_out,s=t.next_in,i=t.input,o=t.avail_in,h=a.hold,d=a.bits,_=o,f=l,x=ve;t:for(;;)switch(a.mode){case 1:if(0===a.wrap){a.mode=13;break}for(;d<16;){if(0===o)break t;o--,h+=i[s++]<>>8&255,a.check=X(a.check,A,2,0),h=0,d=0,a.mode=2;break}if(a.flags=0,a.head&&(a.head.done=!1),!(1&a.wrap)||(((255&h)<<8)+(h>>8))%31){t.msg="incorrect header check",a.mode=30;break}if((15&h)!==Ze){t.msg="unknown compression method",a.mode=30;break}if(h>>>=4,d-=4,y=8+(15&h),0===a.wbits)a.wbits=y;else if(y>a.wbits){t.msg="invalid window size",a.mode=30;break}a.dmax=1<>8&1),512&a.flags&&(A[0]=255&h,A[1]=h>>>8&255,a.check=X(a.check,A,2,0)),h=0,d=0,a.mode=3;case 3:for(;d<32;){if(0===o)break t;o--,h+=i[s++]<>>8&255,A[2]=h>>>16&255,A[3]=h>>>24&255,a.check=X(a.check,A,4,0)),h=0,d=0,a.mode=4;case 4:for(;d<16;){if(0===o)break t;o--,h+=i[s++]<>8),512&a.flags&&(A[0]=255&h,A[1]=h>>>8&255,a.check=X(a.check,A,2,0)),h=0,d=0,a.mode=5;case 5:if(1024&a.flags){for(;d<16;){if(0===o)break t;o--,h+=i[s++]<>>8&255,a.check=X(a.check,A,2,0)),h=0,d=0}else a.head&&(a.head.extra=null);a.mode=6;case 6:if(1024&a.flags&&(c=a.length,c>o&&(c=o),c&&(a.head&&(y=a.head.extra_len-a.length,a.head.extra||(a.head.extra=new Uint8Array(a.head.extra_len)),a.head.extra.set(i.subarray(s,s+c),y)),512&a.flags&&(a.check=X(a.check,i,c,s)),o-=c,s+=c,a.length-=c),a.length))break t;a.length=0,a.mode=7;case 7:if(2048&a.flags){if(0===o)break t;c=0;do{y=i[s+c++],a.head&&y&&a.length<65536&&(a.head.name+=String.fromCharCode(y))}while(y&&c>9&1,a.head.done=!0),t.adler=a.check=0,a.mode=12;break;case 10:for(;d<32;){if(0===o)break t;o--,h+=i[s++]<>>=7&d,d-=7&d,a.mode=27;break}for(;d<3;){if(0===o)break t;o--,h+=i[s++]<>>=1,d-=1,3&h){case 0:a.mode=14;break;case 1:if(Ne(a),a.mode=20,e===ke){h>>>=2,d-=2;break t}break;case 2:a.mode=17;break;case 3:t.msg="invalid block type",a.mode=30}h>>>=2,d-=2;break;case 14:for(h>>>=7&d,d-=7&d;d<32;){if(0===o)break t;o--,h+=i[s++]<>>16^65535)){t.msg="invalid stored block lengths",a.mode=30;break}if(a.length=65535&h,h=0,d=0,a.mode=15,e===ke)break t;case 15:a.mode=16;case 16:if(c=a.length,c){if(c>o&&(c=o),c>l&&(c=l),0===c)break t;n.set(i.subarray(s,s+c),r),o-=c,s+=c,l-=c,r+=c,a.length-=c;break}a.mode=12;break;case 17:for(;d<14;){if(0===o)break t;o--,h+=i[s++]<>>=5,d-=5,a.ndist=1+(31&h),h>>>=5,d-=5,a.ncode=4+(15&h),h>>>=4,d-=4,a.nlen>286||a.ndist>30){t.msg="too many length or distance symbols",a.mode=30;break}a.have=0,a.mode=18;case 18:for(;a.have>>=3,d-=3}for(;a.have<19;)a.lens[Z[a.have++]]=0;if(a.lencode=a.lendyn,a.lenbits=7,E={bits:a.lenbits},x=ge(0,a.lens,0,19,a.lencode,0,a.work,E),a.lenbits=E.bits,x){t.msg="invalid code lengths set",a.mode=30;break}a.have=0,a.mode=19;case 19:for(;a.have>>24,g=z>>>16&255,p=65535&z,!(b<=d);){if(0===o)break t;o--,h+=i[s++]<>>=b,d-=b,a.lens[a.have++]=p;else{if(16===p){for(R=b+2;d>>=b,d-=b,0===a.have){t.msg="invalid bit length repeat",a.mode=30;break}y=a.lens[a.have-1],c=3+(3&h),h>>>=2,d-=2}else if(17===p){for(R=b+3;d>>=b,d-=b,y=0,c=3+(7&h),h>>>=3,d-=3}else{for(R=b+7;d>>=b,d-=b,y=0,c=11+(127&h),h>>>=7,d-=7}if(a.have+c>a.nlen+a.ndist){t.msg="invalid bit length repeat",a.mode=30;break}for(;c--;)a.lens[a.have++]=y}}if(30===a.mode)break;if(0===a.lens[256]){t.msg="invalid code -- missing end-of-block",a.mode=30;break}if(a.lenbits=9,E={bits:a.lenbits},x=ge(1,a.lens,0,a.nlen,a.lencode,0,a.work,E),a.lenbits=E.bits,x){t.msg="invalid literal/lengths set",a.mode=30;break}if(a.distbits=6,a.distcode=a.distdyn,E={bits:a.distbits},x=ge(2,a.lens,a.nlen,a.ndist,a.distcode,0,a.work,E),a.distbits=E.bits,x){t.msg="invalid distances set",a.mode=30;break}if(a.mode=20,e===ke)break t;case 20:a.mode=21;case 21:if(o>=6&&l>=258){t.next_out=r,t.avail_out=l,t.next_in=s,t.avail_in=o,a.hold=h,a.bits=d,fe(t,f),r=t.next_out,n=t.output,l=t.avail_out,s=t.next_in,i=t.input,o=t.avail_in,h=a.hold,d=a.bits,12===a.mode&&(a.back=-1);break}for(a.back=0;z=a.lencode[h&(1<>>24,g=z>>>16&255,p=65535&z,!(b<=d);){if(0===o)break t;o--,h+=i[s++]<>m)],b=z>>>24,g=z>>>16&255,p=65535&z,!(m+b<=d);){if(0===o)break t;o--,h+=i[s++]<>>=m,d-=m,a.back+=m}if(h>>>=b,d-=b,a.back+=b,a.length=p,0===g){a.mode=26;break}if(32&g){a.back=-1,a.mode=12;break}if(64&g){t.msg="invalid literal/length code",a.mode=30;break}a.extra=15&g,a.mode=22;case 22:if(a.extra){for(R=a.extra;d>>=a.extra,d-=a.extra,a.back+=a.extra}a.was=a.length,a.mode=23;case 23:for(;z=a.distcode[h&(1<>>24,g=z>>>16&255,p=65535&z,!(b<=d);){if(0===o)break t;o--,h+=i[s++]<>m)],b=z>>>24,g=z>>>16&255,p=65535&z,!(m+b<=d);){if(0===o)break t;o--,h+=i[s++]<>>=m,d-=m,a.back+=m}if(h>>>=b,d-=b,a.back+=b,64&g){t.msg="invalid distance code",a.mode=30;break}a.offset=p,a.extra=15&g,a.mode=24;case 24:if(a.extra){for(R=a.extra;d>>=a.extra,d-=a.extra,a.back+=a.extra}if(a.offset>a.dmax){t.msg="invalid distance too far back",a.mode=30;break}a.mode=25;case 25:if(0===l)break t;if(c=f-l,a.offset>c){if(c=a.offset-c,c>a.whave&&a.sane){t.msg="invalid distance too far back",a.mode=30;break}c>a.wnext?(c-=a.wnext,u=a.wsize-c):u=a.wnext-c,c>a.length&&(c=a.length),w=a.window}else w=n,u=r-a.offset,c=a.length;c>l&&(c=l),l-=c,a.length-=c;do{n[r++]=w[u++]}while(--c);0===a.length&&(a.mode=21);break;case 26:if(0===l)break t;n[r++]=a.length,l--,a.mode=21;break;case 27:if(a.wrap){for(;d<32;){if(0===o)break t;o--,h|=i[s++]<{if(!t||!t.state)return ze;let e=t.state;return e.window&&(e.window=null),t.state=null,ve},Ke=(t,e)=>{if(!t||!t.state)return ze;const a=t.state;return 0==(2&a.wrap)?ze:(a.head=e,e.done=!1,ve)},Pe=(t,e)=>{const a=e.length;let i,n,s;return t&&t.state?(i=t.state,0!==i.wrap&&11!==i.mode?ze:11===i.mode&&(n=1,n=Y(n,e,a,0),n!==i.check)?Ae:(s=Ie(t,e,a,a),s?(i.mode=31,Ee):(i.havedict=1,ve))):ze},Ye=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const Ge=Object.prototype.toString,{Z_NO_FLUSH:Xe,Z_FINISH:We,Z_OK:qe,Z_STREAM_END:Je,Z_NEED_DICT:Qe,Z_STREAM_ERROR:Ve,Z_DATA_ERROR:$e,Z_MEM_ERROR:ta}=q;h.prototype.push=function(t,e){const a=this.strm,i=this.options.chunkSize,n=this.options.dictionary;let s,r,o;if(this.ended)return!1;for(r=e===~~e?e:!0===e?We:Xe,"[object ArrayBuffer]"===Ge.call(t)?a.input=new Uint8Array(t):a.input=t,a.next_in=0,a.avail_in=a.input.length;;){for(0===a.avail_out&&(a.output=new Uint8Array(i),a.next_out=0,a.avail_out=i),s=He(a,r),s===Qe&&n&&(s=Pe(a,n),s===qe?s=He(a,r):s===$e&&(s=Qe));a.avail_in>0&&s===Je&&a.state.wrap>0&&0!==t[a.next_in];)Ce(a),s=He(a,r);switch(s){case Ve:case $e:case Qe:case ta:return this.onEnd(s),this.ended=!0,!1}if(o=a.avail_out,a.next_out&&(0===a.avail_out||s===Je))if("string"===this.options.to){let t=$t(a.output,a.next_out),e=a.next_out-t,n=Vt(a.output,t);a.next_out=e,a.avail_out=i-e,e&&a.output.set(a.output.subarray(t,t+e),0),this.onData(n)}else this.onData(a.output.length===a.next_out?a.output:a.output.subarray(0,a.next_out));if(s!==qe||0!==o){if(s===Je)return s=je(this.strm),this.onEnd(s),this.ended=!0,!0;if(0===a.avail_in)break}}return!0},h.prototype.onData=function(t){this.chunks.push(t)},h.prototype.onEnd=function(t){t===qe&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=Wt(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var ea={Inflate:h,inflate:d,inflateRaw:function(t,e){return(e=e||{}).raw=!0,d(t,e)},ungzip:d,constants:q};const{Deflate:aa,deflate:ia,deflateRaw:na,gzip:sa}=_e,{Inflate:ra,inflate:oa,inflateRaw:la,ungzip:ha}=ea;var da=aa,_a=ia,fa=na,ca=sa,ua=ra,wa=oa,ba=la,ga=ha,pa=q,ma={Deflate:da,deflate:_a,deflateRaw:fa,gzip:ca,Inflate:ua,inflate:wa,inflateRaw:ba,ungzip:ga,constants:pa};t.Deflate=da,t.Inflate=ua,t.constants=pa,t.default=ma,t.deflate=_a,t.deflateRaw=fa,t.gzip=ca,t.inflate=wa,t.inflateRaw=ba,t.ungzip=ga,Object.defineProperty(t,"__esModule",{value:!0})}); \ No newline at end of file diff --git a/game/level/0.js b/game/level/0.js index 76243a51..5df09ae8 100644 --- a/game/level/0.js +++ b/game/level/0.js @@ -1,171 +1,175 @@ oS.Init({ - PicArr: (function () { - var b = 32, - a = "images/interface/"; - return [ - ShadowPNG, - a + "Sun.gif", - a + "ZombieHand.png", - a + "OptionsMenuback" + b + ".png", - a + "OptionsBackButton" + b + ".png", - a + "Sunflower_trophy" + b + ".png", - a + "Surface.jpg", - a + "Help.png", - a + "SelectorScreen_WoodSign3_" + b + ".png", - a + "SelectorScreen_WoodSign2_" + b + ".png", - a + "SelectorScreen_WoodSign1_" + b + ".png", - // a + "SelectorScreenSurvival_" + b + ".png", - a + "SelectorScreen_Almanac_" + b + ".png", - a + "Logo.png", - b + "LawnCleaner.png", - a + "ZombiesWon.png", - a + "LargeWave.gif", - a + "FinalWave.gif", - a + "PrepareGrowPlants.png", - a + "PointerUP.gif", - a + "PointerDown.gif", - a + "Shovel.png", - a + "SunBack.png", - a + "ShovelBack.png", - a + "GrowSoil.gif", - a + "GrowSpray.gif", - a + "SeedChooser_Background.png", - a + "Button.png", - a + "Almanac_IndexBack.jpg", - a + "Almanac_IndexButton.png", - a + "Almanac_CloseButton.png", - a + "Almanac_PlantBack.jpg", - a + "Almanac_PlantCard.png", - a + "Almanac_ZombieBack.jpg", - a + "Almanac_ZombieCard.png", - a + "ZombiesWon.png", - a + "AwardScreen_Back.jpg", - a + "trophy.png", - a + "splash.png", - a + "brain.png", - // a + "SelectorScreen_Shadow_Adventure.png", - // a + "SelectorScreen_Shadow_Survival.png", - // a + "SelectorScreen_Shadow_Challenge.png", - "images/interface/Almanac_Ground.jpg", - a + "Almanac_ZombieWindow2.png", - a + "Challenge_Background.jpg", - a + "Challenge.png", - a + "BZ.png", - a + "PoolCleaner.png", - a + "plantshadow32.png", - a + "Dave2.gif", - a + "Dave.gif", - a + "Dave3.gif", - // a + "SelectorScreenChallenges_32.png", - // a + "SelectorScreenStartAdventure_32.png", - a + "version.png", - // a + "TowerEntrance.png", - a + "Tombstone_mounds.png", - a + "Tombstones.png", - ]; - })(), - LevelName: "Game initial interface", - LevelEName: 0, - ShowScroll: 1, - LoadMusic: "MyScrapbook", - StartGameMusic: "MyScrapbook", - AudioArr: [ - "losemusic", - "winmusic", - "groan2", - "scream", - "awooga", - "plantsgarden", - "groan1", - "groan3", - "groan4", - "groan5", - "groan6", - "scream", - "siren", - "readysetplant", - "hugewave", - "finalwave", - "plant1", - "plant2", - "plant_water", - "seedlift", - "points", - "buttonclick", - "gravebutton", - "pause", - "shovel", - "bleep", - "chomp", - "chompsoft", - "tap", - "crazydaveshort1", - "crazydavelong1", - "crazydavelong2", - "crazydavelong3", - ], - backgroundImage: "images/interface/Logo.png", - LoadAccess: function (a) { - NewEle( - 0, - "div", - "width:225px;height:44px;margin:550px 0 0 694px;position:absolute;z-index:1;background:url(images/interface/version.png)", - 0, - $("tGround") - ); - EBody = document.body; - EElement = document.documentElement; - EDAll.scrollLeft = 0; - EDAll.innerHTML += WordUTF8; - // document.getElementById("changelog").style.display="block"; - NewAudio({ source: "evillaugh" }); - (function () { - var b = $("JSProcess"), - c = $("dProcess2"); - b - ? ($User.Browser.IE - ? (b.onreadystatechange = function () { - b.readyState == "loaded" && ClearChild(b); - }) - : (b.onload = function () { - ClearChild(b); - }), - (b.onerror = function () { - ClearChild(this); - }), - (b.src = "" + Math.random())) - : console.log( - "Version", - oS.Version - ) /*$("").innerHTML = 4/* oS.Version */; - })(); - $("dServer") && SetBlock($("dServer")); - }, + PicArr: (function () { + var b = 32, + a = "images/interface/"; + return [ + ShadowPNG, + a + "Sun.gif", + a + "ZombieHand.png", + a + "OptionsMenuback" + b + ".png", + a + "OptionsBackButton" + b + ".png", + a + "Sunflower_trophy" + b + ".png", + a + "Surface.jpg", + a + "Help.png", + a + "SelectorScreen_WoodSign3_" + b + ".png", + a + "SelectorScreen_WoodSign2_" + b + ".png", + a + "SelectorScreen_WoodSign1_" + b + ".png", + // a + "SelectorScreenSurvival_" + b + ".png", + a + "SelectorScreen_Almanac_" + b + ".png", + a + "Logo.png", + b + "LawnCleaner.png", + a + "ZombiesWon.png", + a + "LargeWave.gif", + a + "FinalWave.gif", + a + "PrepareGrowPlants.png", + a + "PointerUP.gif", + a + "PointerDown.gif", + a + "Shovel.png", + a + "SunBack.png", + a + "ShovelBack.png", + a + "GrowSoil.gif", + a + "GrowSpray.gif", + a + "SeedChooser_Background.png", + a + "Button.png", + a + "Almanac_IndexBack.jpg", + a + "Almanac_IndexButton.png", + a + "Almanac_CloseButton.png", + a + "Almanac_PlantBack.jpg", + a + "Almanac_PlantCard.png", + a + "Almanac_ZombieBack.jpg", + a + "Almanac_ZombieCard.png", + a + "ZombiesWon.png", + a + "AwardScreen_Back.jpg", + a + "trophy.png", + a + "splash.png", + a + "brain.png", + // a + "SelectorScreen_Shadow_Adventure.png", + // a + "SelectorScreen_Shadow_Survival.png", + // a + "SelectorScreen_Shadow_Challenge.png", + "images/interface/Almanac_Ground.jpg", + a + "Almanac_ZombieWindow2.png", + a + "Challenge_Background.jpg", + a + "Challenge.png", + a + "BZ.png", + a + "PoolCleaner.png", + a + "plantshadow32.png", + a + "Dave2.gif", + a + "Dave.gif", + a + "Dave3.gif", + // a + "SelectorScreenChallenges_32.png", + // a + "SelectorScreenStartAdventure_32.png", + a + "version.png", + // a + "TowerEntrance.png", + a + "Tombstone_mounds.png", + a + "Tombstones.png", + ]; + })(), + LevelName: "Game initial interface", + LevelEName: 0, + ShowScroll: 1, + LoadMusic: "MyScrapbook", + StartGameMusic: "MyScrapbook", + AudioArr: [ + "losemusic", + "winmusic", + "groan2", + "scream", + "awooga", + "plantsgarden", + "groan1", + "groan3", + "groan4", + "groan5", + "groan6", + "scream", + "siren", + "readysetplant", + "hugewave", + "finalwave", + "plant1", + "plant2", + "plant_water", + "seedlift", + "points", + "buttonclick", + "gravebutton", + "pause", + "shovel", + "bleep", + "chomp", + "chompsoft", + "tap", + "crazydaveshort1", + "crazydavelong1", + "crazydavelong2", + "crazydavelong3", + ], + backgroundImage: "images/interface/Logo.png", + LoadAccess: function (a) { + NewEle( + 0, + "div", + "width:225px;height:44px;margin:550px 0 0 694px;position:absolute;z-index:1;background:url(images/interface/version.png)", + 0, + $("tGround") + ); + EBody = document.body; + EElement = document.documentElement; + EDAll.scrollLeft = 0; + EDAll.innerHTML += WordUTF8; + // document.getElementById("changelog").style.display="block"; + NewAudio({ source: "evillaugh" }); + (function () { + var b = $("JSProcess"), + c = $("dProcess2"); + b + ? ($User.Browser.IE + ? (b.onreadystatechange = function () { + b.readyState == "loaded" && ClearChild(b); + }) + : (b.onload = function () { + ClearChild(b); + }), + (b.onerror = function () { + ClearChild(this); + }), + (b.src = "" + Math.random())) + : console.log( + "Version", + oS.Version + ) /*$("").innerHTML = 4/* oS.Version */; + })(); + $("dServer") && SetBlock($("dServer")); + }, }); $("ZombieHand").style.display = "none"; startInterval2(); StopAudio("jackinthebox"); function runIzlCheck() { - // check if the izl query parameter is set - let izl = new URLSearchParams(window.location.search).get("izl"); - if (izl && izl != "") { - try { - levelDataToLoad = parseClone(decodeURIComponent(izl)); - } catch (e) { - alert("Failed to load level data from query parameter"); - // regex away all query params and reload - window.location.search = ""; - // push to history so that the user can go back - window.history.pushState({}, document.title, window.location.pathname); - document.location.reload(); - return; - } - // load the izombiecustomlevel level - if (levelDataToLoad.lfValue[3] === 2) { - SelectModal("izombiecustomlevelwater"); - } else { - SelectModal("izombiecustomlevelnormal"); - } - } + // check if the izl query parameter is set + let izl = new URLSearchParams(window.location.search).get("izl"); + if (izl && izl != "") { + try { + levelDataToLoad = parseClone(decodeURIComponent(izl)); + } catch (e) { + alert("Failed to load level data from query parameter"); + // regex away all query params and reload + window.location.search = ""; + // push to history so that the user can go back + window.history.pushState( + {}, + document.title, + window.location.pathname + ); + document.location.reload(); + return; + } + // load the izombiecustomlevel level + if (levelDataToLoad.lfValue[3] === 2) { + SelectModal("izombiecustomlevelwater"); + } else { + SelectModal("izombiecustomlevelnormal"); + } + } } -runIzlCheck(); \ No newline at end of file +runIzlCheck(); diff --git a/game/level/1.js b/game/level/1.js index 49885781..202380e2 100644 --- a/game/level/1.js +++ b/game/level/1.js @@ -1,370 +1,370 @@ oS.Init( - { - PName: [oPeashooter], - ZName: [oZombie], - PicArr: (function () { - var a = oSunFlower.prototype, - b = a.PicArr; - return [ - "images/interface/SodRollCap.png", - "images/interface/SodRoll.png", - "images/interface/background1unsodded_1.jpg", - "images/interface/background1unsodded.jpg", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - SunNum: 250, - backgroundImage: "images/interface/background1unsodded.jpg", - LF: [0, 0, 0, 1, 0, 0], - CanSelectCard: 0, - LevelName: "Recruit training 1", - LvlEName: 1, - AudioArr: ["dirt_rise"], - InitLawnMower: function () { - CustomSpecial(oLawnCleaner, 3, -1); - }, - LargeWaveFlag: { 5: $("imgFlag1") }, - LoadAccess: function (a) { - NewImg( - "imgSF", - "images/interface/tiaoguo.png", - "left:1px;top:75px", - EDAll, - { - onclick: function () { - SelectModal(3); - }, - } - ); - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio("crazydaveshort1"); - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - innerText(c, "Hello my neighbor"); - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - innerText( - c, - "My name is Crazy and my name is Dave. But everyone likes to call me Crazy Dave" - ); - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - innerText( - c, - "Listen, there's a bunch of zombies coming to town right now and they're surrounding us!" - ); - break; - case 3: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - innerText( - c, - "You have to destroy them with \nthose humble plants in your garden." - ); - break; - case 4: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [5]); - }; - }, - [] - ); - innerText( - c, - "Next, there will be tutorials to guide you on how to kill zombies, good luck!" - ); - break; - case 5: - $("dDave").src = "images/interface/blank.png"; - ClearChild($("DivTeach")); - oSym.addTask( - 1, - function () { - ClearChild($("dDave")); - a(0); - }, - [] - ); - } - })(0); - }, - StartGame: function () { - NewImg( - "imgSF", - "images/interface/tiaoguo.png", - "left:1px;top:75px", - EDAll, - { - onclick: function () { - SelectModal(3); - }, - } - ); - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - NewEle( - "sod3row", - "div", - "position:absolute;left:-115px;top:0;height:600px;width:264px;z-index:0;background:url(images/interface/background1unsodded_1.jpg);over-flow:hidden", - 0, - EDPZ - ); - NewImg( - "SodRoll_1", - "images/interface/SodRoll.png", - "left:112px;top:244px;z-index:1", - EDPZ - ); - NewImg( - "SodRollCap_1", - "images/interface/SodRollCap.png", - "left:17px;top:322px;z-index:1", - EDPZ - ); - PlayAudio("dirt_rise"); - (function (e, h, b, d, c, g, a, f) { - e += 15; - h += 16; - d += 16; - $("sod3row").style.width = e + "px"; - SetStyle($("SodRoll_1"), { - left: h + "px", - width: --b + "px", - height: "141px", - }); - SetStyle($("SodRollCap_1"), { - left: d + "px", - width: --c + "px", - height: --g + "px", - top: ++a + "px", - }); - e < 990 - ? oSym.addTask(3, arguments.callee, [ - e, - h, - b, - d, - c, - g, - a, - f, - ]) - : (ClearChild($("SodRoll_1"), $("SodRollCap_1")), - (function () { - NewEle("DivTeach", "div", 0, 0, EDAll); - oS.InitLawnMower(); - oP.Monitor({ - ar: [0], - f: function (k) { - var l = oS.C + 1, - i = oS.Chose; - switch (k) { - case 0: - innerText( - $("DivTeach"), - "Please click to select a card!" - ); - NewImg( - "PointerUD", - "images/interface/PointerUP.gif", - "top:60px;left:50px", - EDAll - ); - oSym.addTask(10, arguments.callee, [ - ++k, - ]); - break; - case 1: - i > 0 && - (innerText( - $("DivTeach"), - "Click on the grass to plant your seeds!" - ), - EditImg( - $("PointerUD"), - "", - "images/interface/PointerDown.gif", - { - left: "170px", - top: "270px", - } - ), - ++k); - oSym.addTask(10, arguments.callee, [ - k, - ]); - break; - case 2: - var h = oGd.$; - while (--l) { - if (h["3_" + l + "_1"]) { - SetHidden($("PointerUD")); - innerText( - $("DivTeach"), - "Tap to collect falling sunlight!" - ); - AutoProduceSun(25); - oSym.addTask( - 10, - arguments.callee, - [++k] - ); - return; - } - } - !i && - (ClearChild($("PointerUD")), - (k = 0)); - oSym.addTask(10, arguments.callee, [ - k, - ]); - break; - case 3: - oS.SunNum > 99 && - (innerText( - $("DivTeach"), - "Click on the pea shooter to plant another!" - ), - EditImg( - $("PointerUD"), - "", - "images/interface/PointerUP.gif", - { - left: "50px", - top: "60px", - visibility: "visible", - } - ), - ++k); - oSym.addTask(10, arguments.callee, [ - k, - ]); - break; - default: - var j = 0, - h = oGd.$; - while (--l) { - h["3_" + l + "_1"] && ++j; - } - j > 0 - ? (SetHidden($("PointerUD")), - innerText( - $("DivTeach"), - "Don't let zombies near your house!" - ), - oP.AddZombiesFlag(), - oSym.addTask(500, SetNone, [ - $("DivTeach"), - ])) - : oSym.addTask( - 10, - arguments.callee, - [4] - ); - } - }, - }); - BeginCool(); - SetVisible($("dFlagMeter"), $("dTop")); - })()); - })(283, 122, 68, 117, 73, 71, 131, 511); - }, - }, - { - AZ: [[oZombie, 5, 1]], - FlagNum: 5, - FlagToSumNum: { a1: [3], a2: [1, 2] }, - FlagToMonitor: { 4: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/SunFlower.png", - "left:667px;top:330px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oSunFlower, 2); - }, - } - ); - EditImg($("PointerUD"), 0, "images/interface/PointerDown.gif", { - left: "676px", - top: "295px", - visibility: "visible", - }); - }, - } + { + PName: [oPeashooter], + ZName: [oZombie], + PicArr: (function () { + var a = oSunFlower.prototype, + b = a.PicArr; + return [ + "images/interface/SodRollCap.png", + "images/interface/SodRoll.png", + "images/interface/background1unsodded_1.jpg", + "images/interface/background1unsodded.jpg", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + SunNum: 250, + backgroundImage: "images/interface/background1unsodded.jpg", + LF: [0, 0, 0, 1, 0, 0], + CanSelectCard: 0, + LevelName: "Recruit training 1", + LvlEName: 1, + AudioArr: ["dirt_rise"], + InitLawnMower: function () { + CustomSpecial(oLawnCleaner, 3, -1); + }, + LargeWaveFlag: { 5: $("imgFlag1") }, + LoadAccess: function (a) { + NewImg( + "imgSF", + "images/interface/tiaoguo.png", + "left:1px;top:75px", + EDAll, + { + onclick: function () { + SelectModal(3); + }, + } + ); + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio("crazydaveshort1"); + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + innerText(c, "Hello my neighbor"); + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + innerText( + c, + "My name is Crazy and my name is Dave. But everyone likes to call me Crazy Dave" + ); + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + innerText( + c, + "Listen, there's a bunch of zombies coming to town right now and they're surrounding us!" + ); + break; + case 3: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + innerText( + c, + "You have to destroy them with \nthose humble plants in your garden." + ); + break; + case 4: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [5]); + }; + }, + [] + ); + innerText( + c, + "Next, there will be tutorials to guide you on how to kill zombies, good luck!" + ); + break; + case 5: + $("dDave").src = "images/interface/blank.png"; + ClearChild($("DivTeach")); + oSym.addTask( + 1, + function () { + ClearChild($("dDave")); + a(0); + }, + [] + ); + } + })(0); + }, + StartGame: function () { + NewImg( + "imgSF", + "images/interface/tiaoguo.png", + "left:1px;top:75px", + EDAll, + { + onclick: function () { + SelectModal(3); + }, + } + ); + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + NewEle( + "sod3row", + "div", + "position:absolute;left:-115px;top:0;height:600px;width:264px;z-index:0;background:url(images/interface/background1unsodded_1.jpg);over-flow:hidden", + 0, + EDPZ + ); + NewImg( + "SodRoll_1", + "images/interface/SodRoll.png", + "left:112px;top:244px;z-index:1", + EDPZ + ); + NewImg( + "SodRollCap_1", + "images/interface/SodRollCap.png", + "left:17px;top:322px;z-index:1", + EDPZ + ); + PlayAudio("dirt_rise"); + (function (e, h, b, d, c, g, a, f) { + e += 15; + h += 16; + d += 16; + $("sod3row").style.width = e + "px"; + SetStyle($("SodRoll_1"), { + left: h + "px", + width: --b + "px", + height: "141px", + }); + SetStyle($("SodRollCap_1"), { + left: d + "px", + width: --c + "px", + height: --g + "px", + top: ++a + "px", + }); + e < 990 + ? oSym.addTask(3, arguments.callee, [ + e, + h, + b, + d, + c, + g, + a, + f, + ]) + : (ClearChild($("SodRoll_1"), $("SodRollCap_1")), + (function () { + NewEle("DivTeach", "div", 0, 0, EDAll); + oS.InitLawnMower(); + oP.Monitor({ + ar: [0], + f: function (k) { + var l = oS.C + 1, + i = oS.Chose; + switch (k) { + case 0: + innerText( + $("DivTeach"), + "Please click to select a card!" + ); + NewImg( + "PointerUD", + "images/interface/PointerUP.gif", + "top:60px;left:50px", + EDAll + ); + oSym.addTask(10, arguments.callee, [ + ++k, + ]); + break; + case 1: + i > 0 && + (innerText( + $("DivTeach"), + "Click on the grass to plant your seeds!" + ), + EditImg( + $("PointerUD"), + "", + "images/interface/PointerDown.gif", + { + left: "170px", + top: "270px", + } + ), + ++k); + oSym.addTask(10, arguments.callee, [ + k, + ]); + break; + case 2: + var h = oGd.$; + while (--l) { + if (h["3_" + l + "_1"]) { + SetHidden($("PointerUD")); + innerText( + $("DivTeach"), + "Tap to collect falling sunlight!" + ); + AutoProduceSun(25); + oSym.addTask( + 10, + arguments.callee, + [++k] + ); + return; + } + } + !i && + (ClearChild($("PointerUD")), + (k = 0)); + oSym.addTask(10, arguments.callee, [ + k, + ]); + break; + case 3: + oS.SunNum > 99 && + (innerText( + $("DivTeach"), + "Click on the pea shooter to plant another!" + ), + EditImg( + $("PointerUD"), + "", + "images/interface/PointerUP.gif", + { + left: "50px", + top: "60px", + visibility: "visible", + } + ), + ++k); + oSym.addTask(10, arguments.callee, [ + k, + ]); + break; + default: + var j = 0, + h = oGd.$; + while (--l) { + h["3_" + l + "_1"] && ++j; + } + j > 0 + ? (SetHidden($("PointerUD")), + innerText( + $("DivTeach"), + "Don't let zombies near your house!" + ), + oP.AddZombiesFlag(), + oSym.addTask(500, SetNone, [ + $("DivTeach"), + ])) + : oSym.addTask( + 10, + arguments.callee, + [4] + ); + } + }, + }); + BeginCool(); + SetVisible($("dFlagMeter"), $("dTop")); + })()); + })(283, 122, 68, 117, 73, 71, 131, 511); + }, + }, + { + AZ: [[oZombie, 5, 1]], + FlagNum: 5, + FlagToSumNum: { a1: [3], a2: [1, 2] }, + FlagToMonitor: { 4: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/SunFlower.png", + "left:667px;top:330px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oSunFlower, 2); + }, + } + ); + EditImg($("PointerUD"), 0, "images/interface/PointerDown.gif", { + left: "676px", + top: "295px", + visibility: "visible", + }); + }, + } ); diff --git a/game/level/10.js b/game/level/10.js index 90571d07..f687e4e3 100644 --- a/game/level/10.js +++ b/game/level/10.js @@ -1,213 +1,213 @@ oS.Init( - { - PName: [ - oPeashooter, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oPoleVaultingZombie, - oBucketheadZombie, - ], - PicArr: [ - "images/interface/background1.jpg", - "images/interface/trophy.png", - ], - backgroundImage: "images/interface/background1.jpg", - CanSelectCard: 0, - LevelName: "Level 1-10", - LvlEName: 10, - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - StaticCard: 0, - StartGameMusic: "Zombieboss", - StartGame: function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - SetHidden($("dSunNum")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - f: function () { - (function () { - var a = ArCard.length; - if (a < 10) { - var c = oS.PName, - b = Math.floor(Math.random() * c.length), - e = c[b], - d = e.prototype, - f = "dCard" + Math.random(); - ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; - NewImg( - f, - d.PicArr[d.CardGif], - "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", - $("dCardList"), - { - onmouseover: function (g) { - ViewPlantTitle(GetChoseCard(f), g); - }, - onmouseout: function () { - SetHidden($("dTitle")); - }, - onclick: function (g) { - ChosePlant(g, oS.ChoseCard, f); - }, - } - ); - } - oSym.addTask(600, arguments.callee, []); - })(); - (function () { - var b = ArCard.length, - a, - c; - while (b--) { - (c = (a = ArCard[b]).PixelTop) > 60 * b && - ($(a.DID).style.top = - (a.PixelTop = c - 1) + "px"); - } - oSym.addTask(5, arguments.callee, []); - })(); - }, - ar: [], - }); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 3], - [oZombie3, 1, 6], - [oConeheadZombie, 5, 10], - [oPoleVaultingZombie, 2, 15], - [oBucketheadZombie, 5, 15], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25, 48, 60], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/PuffShroom.png", - "left:667px;top:330px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oPuffShroom, 11); - }, - } - ); - }, - }, - { - GetChoseCard: function (b) { - if (oS.Chose) { - return; - } - var a = ArCard.length; - while (a--) { - ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); - } - return oS.ChoseCard; - }, - ChosePlant: function (a, b) { - PlayAudio("seedlift"); - a = window.event || a; - var f = ArCard[oS.ChoseCard], - e = - a.clientX - EDAlloffsetLeft + EBody.scrollLeft || - EElement.scrollLeft, - d = a.clientY + EBody.scrollTop || EElement.scrollTop, - c = f.PName.prototype; - oS.Chose = 1; - EditImg( - NewImg( - "MovePlant", - c.PicArr[c.StaticGif], - "left:" + - e - - 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + - "px;top:" + - d + - 20 - - c.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ); - SetAlpha($(f.DID), 50, 0.5); - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant: function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); - oS.ChoseCard = ""; - GroundOnmousemove = function () {}; - }, - GrowPlant: function (l, c, b, f, a) { - var j = oS.ChoseCard, - g = ArCard[j], - i = g.PName, - k = i.prototype, - d = g.DID, - e, - h = oGd.$LF[f]; - k.CanGrow(l, f, a) && - (function () { - PlayAudio( - h != 2 - ? "plant" + Math.floor(1 + Math.random() * 2) - : "plant_water" - ); - new i().Birth(c, b, f, a, l); - oSym.addTask(20, SetNone, [ - SetStyle($("imgGrowSoil"), { - left: c - 30 + "px", - top: b - 40 + "px", - zIndex: 3 * f, - visibility: "visible", - }), - ]); - ClearChild($("MovePlant"), $("MovePlantAlpha")); - $("dCardList").removeChild((e = $(d))); - e = null; - ArCard.splice(j, 1); - oS.ChoseCard = ""; - oS.Chose = 0; - GroundOnmousemove = function () {}; - })(); - }, - ViewPlantTitle: function (a) { - var c = $("dTitle"), - b = ArCard[a].PName.prototype; - c.innerHTML = b.CName + "
" + b.Tooltip; - SetStyle(c, { top: 60 * a + "px", left: "100px" }); - }, - } + { + PName: [ + oPeashooter, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oPoleVaultingZombie, + oBucketheadZombie, + ], + PicArr: [ + "images/interface/background1.jpg", + "images/interface/trophy.png", + ], + backgroundImage: "images/interface/background1.jpg", + CanSelectCard: 0, + LevelName: "Level 1-10", + LvlEName: 10, + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + StaticCard: 0, + StartGameMusic: "Zombieboss", + StartGame: function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + SetHidden($("dSunNum")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + f: function () { + (function () { + var a = ArCard.length; + if (a < 10) { + var c = oS.PName, + b = Math.floor(Math.random() * c.length), + e = c[b], + d = e.prototype, + f = "dCard" + Math.random(); + ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; + NewImg( + f, + d.PicArr[d.CardGif], + "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", + $("dCardList"), + { + onmouseover: function (g) { + ViewPlantTitle(GetChoseCard(f), g); + }, + onmouseout: function () { + SetHidden($("dTitle")); + }, + onclick: function (g) { + ChosePlant(g, oS.ChoseCard, f); + }, + } + ); + } + oSym.addTask(600, arguments.callee, []); + })(); + (function () { + var b = ArCard.length, + a, + c; + while (b--) { + (c = (a = ArCard[b]).PixelTop) > 60 * b && + ($(a.DID).style.top = + (a.PixelTop = c - 1) + "px"); + } + oSym.addTask(5, arguments.callee, []); + })(); + }, + ar: [], + }); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 3], + [oZombie3, 1, 6], + [oConeheadZombie, 5, 10], + [oPoleVaultingZombie, 2, 15], + [oBucketheadZombie, 5, 15], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25, 48, 60], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/PuffShroom.png", + "left:667px;top:330px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oPuffShroom, 11); + }, + } + ); + }, + }, + { + GetChoseCard: function (b) { + if (oS.Chose) { + return; + } + var a = ArCard.length; + while (a--) { + ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); + } + return oS.ChoseCard; + }, + ChosePlant: function (a, b) { + PlayAudio("seedlift"); + a = window.event || a; + var f = ArCard[oS.ChoseCard], + e = + a.clientX - EDAlloffsetLeft + EBody.scrollLeft || + EElement.scrollLeft, + d = a.clientY + EBody.scrollTop || EElement.scrollTop, + c = f.PName.prototype; + oS.Chose = 1; + EditImg( + NewImg( + "MovePlant", + c.PicArr[c.StaticGif], + "left:" + + e - + 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + + "px;top:" + + d + + 20 - + c.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ); + SetAlpha($(f.DID), 50, 0.5); + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant: function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); + oS.ChoseCard = ""; + GroundOnmousemove = function () {}; + }, + GrowPlant: function (l, c, b, f, a) { + var j = oS.ChoseCard, + g = ArCard[j], + i = g.PName, + k = i.prototype, + d = g.DID, + e, + h = oGd.$LF[f]; + k.CanGrow(l, f, a) && + (function () { + PlayAudio( + h != 2 + ? "plant" + Math.floor(1 + Math.random() * 2) + : "plant_water" + ); + new i().Birth(c, b, f, a, l); + oSym.addTask(20, SetNone, [ + SetStyle($("imgGrowSoil"), { + left: c - 30 + "px", + top: b - 40 + "px", + zIndex: 3 * f, + visibility: "visible", + }), + ]); + ClearChild($("MovePlant"), $("MovePlantAlpha")); + $("dCardList").removeChild((e = $(d))); + e = null; + ArCard.splice(j, 1); + oS.ChoseCard = ""; + oS.Chose = 0; + GroundOnmousemove = function () {}; + })(); + }, + ViewPlantTitle: function (a) { + var c = $("dTitle"), + b = ArCard[a].PName.prototype; + c.innerHTML = b.CName + "
" + b.Tooltip; + SetStyle(c, { top: 60 * a + "px", left: "100px" }); + }, + } ); diff --git a/game/level/100.js b/game/level/100.js index af009449..40dda615 100644 --- a/game/level/100.js +++ b/game/level/100.js @@ -1,244 +1,244 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oCFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oCBucketheadZombie, - oEunZombie, - ], - PicArr: ["images/interface/backgroundwall.jpg"], - LF: [0, 3, 3, 3, 3, 3, 3], - backgroundImage: "images/interface/backgroundwall.jpg", - CanSelectCard: 1, - LevelName: "New to Z", - LvlEName: 9, - SunNum: 500, - AudioArr: [ - "crazydaveshort1", - "crazydavelong1", - "crazydavelong2", - "crazydavelong3", - ], - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - LoadMusic: "MyScrapbook", - StartGameMusic: "The Great Wall", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - c.innerHTML = - 'Haha, finally in Z, man.'; - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - c.innerHTML = - 'Look at that imposing Great Wall, and those damn zombies!'; - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - c.innerHTML = - 'This time the battle site is on the Great Wall, so its a tile floor'; - break; - case 3: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - c.innerHTML = - 'You can use flower pots to deal with this difficult terrain.'; - break; - case 4: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [5]); - }; - }, - [] - ); - c.innerHTML = - 'Remember what I said and youll get through it.'; - break; - case 5: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - StopMusic(); - PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oCZombie, 2, 1], - [oCZombie2, 1, 5], - [oCZombie3, 2, 20], - [oCConeheadZombie, 2, 5], - [oCBucketheadZombie, 2, 9], - [oEunZombie, 2, 9], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(101); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oCFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oCBucketheadZombie, + oEunZombie, + ], + PicArr: ["images/interface/backgroundwall.jpg"], + LF: [0, 3, 3, 3, 3, 3, 3], + backgroundImage: "images/interface/backgroundwall.jpg", + CanSelectCard: 1, + LevelName: "New to Z", + LvlEName: 9, + SunNum: 500, + AudioArr: [ + "crazydaveshort1", + "crazydavelong1", + "crazydavelong2", + "crazydavelong3", + ], + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + LoadMusic: "MyScrapbook", + StartGameMusic: "The Great Wall", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + c.innerHTML = + 'Haha, finally in Z, man.'; + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + c.innerHTML = + 'Look at that imposing Great Wall, and those damn zombies!'; + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + c.innerHTML = + 'This time the battle site is on the Great Wall, so its a tile floor'; + break; + case 3: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + c.innerHTML = + 'You can use flower pots to deal with this difficult terrain.'; + break; + case 4: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [5]); + }; + }, + [] + ); + c.innerHTML = + 'Remember what I said and youll get through it.'; + break; + case 5: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + StopMusic(); + PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oCZombie, 2, 1], + [oCZombie2, 1, 5], + [oCZombie3, 2, 20], + [oCConeheadZombie, 2, 5], + [oCBucketheadZombie, 2, 9], + [oEunZombie, 2, 9], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(101); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/101.js b/game/level/101.js index 5484428f..a33415ab 100644 --- a/game/level/101.js +++ b/game/level/101.js @@ -1,210 +1,210 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oCFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oCBucketheadZombie, - othugZombie, - oEunZombie, - ], - PicArr: ["images/interface/backgroundwall.jpg"], - LF: [0, 3, 3, 3, 3, 3, 3], - backgroundImage: "images/interface/backgroundwall.jpg", - CanSelectCard: 1, - LevelName: "Assassination", - LvlEName: 9, - SunNum: 500, - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - LoadMusic: "MyScrapbook", - StartGameMusic: "The Great Wall", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - c.innerHTML = - 'Dude, have you heard of assassins?'; - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - c.innerHTML = - 'I hate those killers who come and go!'; - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - c.innerHTML = - 'Good luck.'; - break; - case 3: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - StopMusic(); - PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oCZombie, 1, 1], - [oCZombie2, 1, 5], - [oCZombie3, 2, 20], - [oCConeheadZombie, 2, 5], - [oCBucketheadZombie, 2, 10], - [othugZombie, 1, 3], - [oEunZombie, 1, 4], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(102); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oCFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oCBucketheadZombie, + othugZombie, + oEunZombie, + ], + PicArr: ["images/interface/backgroundwall.jpg"], + LF: [0, 3, 3, 3, 3, 3, 3], + backgroundImage: "images/interface/backgroundwall.jpg", + CanSelectCard: 1, + LevelName: "Assassination", + LvlEName: 9, + SunNum: 500, + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + LoadMusic: "MyScrapbook", + StartGameMusic: "The Great Wall", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + c.innerHTML = + 'Dude, have you heard of assassins?'; + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + c.innerHTML = + 'I hate those killers who come and go!'; + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + c.innerHTML = + 'Good luck.'; + break; + case 3: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + StopMusic(); + PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oCZombie, 1, 1], + [oCZombie2, 1, 5], + [oCZombie3, 2, 20], + [oCConeheadZombie, 2, 5], + [oCBucketheadZombie, 2, 10], + [othugZombie, 1, 3], + [oEunZombie, 1, 4], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(102); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/102.js b/game/level/102.js index a6f7b6bc..7d67d96e 100644 --- a/game/level/102.js +++ b/game/level/102.js @@ -1,239 +1,239 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oCFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oCBucketheadZombie, - othugZombie, - oEunZombie, - oZZ, - ], - PicArr: (function () { - var a = oSquash.prototype, - b = a.PicArr; - return [ - "images/interface/backgroundwall2.jpg", - "images/interface/Dave.gif", - "images/interface/Dave2.gif", - "images/interface/Dave3.gif", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - SunNum: 750, - LF: [0, 3, 3, 3, 3, 3, 3], - backgroundImage: "images/interface/backgroundwall2.jpg", - CanSelectCard: 1, - LevelName: "Night falls", - LvlEName: 21, - DKind: 0, - AudioArr: [ - "crazydaveshort2", - "crazydavelong1", - "crazydavelong2", - "crazydavelong3", - ], - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - LoadMusic: "MyScrapbook", - StartGameMusic: "The Great Wall1", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - c.innerHTML = - 'Ah! The night view of the Great Wall of China is also good.'; - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - c.innerHTML = - 'However, the zombies dont have time to appreciate the beauty'; - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - c.innerHTML = - 'Here...And Sadako!'; - break; - case 3: - PlayAudio("crazydaveshort2"); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - c.innerHTML = - 'Good luck.'; - break; - case 4: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - StopMusic(); - PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oCZombie, 1, 1], - [oCZombie2, 1, 4], - [oCZombie3, 2, 19], - [oCConeheadZombie, 2, 4], - [oCBucketheadZombie, 2, 9], - [othugZombie, 1, 3], - [oEunZombie, 1, 4], - [oZZ, 1, 10], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25], - a2: [1, 2, 3, 4, 5, 6, 7, 8, 9, 25], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(103); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oCFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oCBucketheadZombie, + othugZombie, + oEunZombie, + oZZ, + ], + PicArr: (function () { + var a = oSquash.prototype, + b = a.PicArr; + return [ + "images/interface/backgroundwall2.jpg", + "images/interface/Dave.gif", + "images/interface/Dave2.gif", + "images/interface/Dave3.gif", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + SunNum: 750, + LF: [0, 3, 3, 3, 3, 3, 3], + backgroundImage: "images/interface/backgroundwall2.jpg", + CanSelectCard: 1, + LevelName: "Night falls", + LvlEName: 21, + DKind: 0, + AudioArr: [ + "crazydaveshort2", + "crazydavelong1", + "crazydavelong2", + "crazydavelong3", + ], + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + LoadMusic: "MyScrapbook", + StartGameMusic: "The Great Wall1", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + c.innerHTML = + 'Ah! The night view of the Great Wall of China is also good.'; + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + c.innerHTML = + 'However, the zombies dont have time to appreciate the beauty'; + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + c.innerHTML = + 'Here...And Sadako!'; + break; + case 3: + PlayAudio("crazydaveshort2"); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + c.innerHTML = + 'Good luck.'; + break; + case 4: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + StopMusic(); + PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oCZombie, 1, 1], + [oCZombie2, 1, 4], + [oCZombie3, 2, 19], + [oCConeheadZombie, 2, 4], + [oCBucketheadZombie, 2, 9], + [othugZombie, 1, 3], + [oEunZombie, 1, 4], + [oZZ, 1, 10], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25], + a2: [1, 2, 3, 4, 5, 6, 7, 8, 9, 25], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(103); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/103.js b/game/level/103.js index ad94d2a4..0ebd76b8 100644 --- a/game/level/103.js +++ b/game/level/103.js @@ -1,261 +1,261 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oCFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oCBucketheadZombie, - othugZombie, - oEunZombie, - oZZ, - oCFootballZombie, - oImp, - ], - PicArr: (function () { - var a = oSquash.prototype, - b = a.PicArr; - return [ - "images/interface/backgroundwall2.jpg", - "images/interface/Dave.gif", - "images/interface/Dave2.gif", - "images/interface/Dave3.gif", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - SunNum: 1200, - LF: [0, 3, 3, 3, 3, 3, 3], - backgroundImage: "images/interface/backgroundwall2.jpg", - CanSelectCard: 1, - LevelName: "Stand out", - LvlEName: 21, - DKind: 0, - AudioArr: [ - "crazydaveshort2", - "crazydavelong1", - "crazydavelong2", - "crazydavelong3", - ], - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - LoadMusic: "MyScrapbook", - StartGameMusic: "The Great Wall1", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - c.innerHTML = - 'The situation seems very bad.'; - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - c.innerHTML = - 'The ancient zombies actually invited reinforcements'; - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - c.innerHTML = - 'Well, you must have guessed who they were'; - break; - case 3: - PlayAudio("crazydaveshort2"); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - c.innerHTML = - 'After the victory, we can go to the second leg of our trip to China!'; - break; - case 4: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - StopMusic(); - PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oCZombie, 1, 1], - [oCZombie2, 1, 3], - [oCZombie3, 2, 18], - [oCConeheadZombie, 2, 3], - [oCBucketheadZombie, 2, 8], - [othugZombie, 1, 3], - [oEunZombie, 1, 4], - [oZZ, 1, 9], - [oCFootballZombie, 2, 3], - [oImp, 2, 3], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25], - a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/ZombieNoteSmall.png", - "left:667px;top:220px", - EDAll, - { - onclick: function () { - PlayAudio("winmusic"); - SetHidden($("PointerUD")); - SetStyle(this, { - width: "613px", - height: "399px", - left: "193px", - top: "100px", - }).src = "images/interface/ZombieNoteW.png"; - this.onclick = function () { - SelectModal(104); - }; - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oCFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oCBucketheadZombie, + othugZombie, + oEunZombie, + oZZ, + oCFootballZombie, + oImp, + ], + PicArr: (function () { + var a = oSquash.prototype, + b = a.PicArr; + return [ + "images/interface/backgroundwall2.jpg", + "images/interface/Dave.gif", + "images/interface/Dave2.gif", + "images/interface/Dave3.gif", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + SunNum: 1200, + LF: [0, 3, 3, 3, 3, 3, 3], + backgroundImage: "images/interface/backgroundwall2.jpg", + CanSelectCard: 1, + LevelName: "Stand out", + LvlEName: 21, + DKind: 0, + AudioArr: [ + "crazydaveshort2", + "crazydavelong1", + "crazydavelong2", + "crazydavelong3", + ], + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + LoadMusic: "MyScrapbook", + StartGameMusic: "The Great Wall1", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + c.innerHTML = + 'The situation seems very bad.'; + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + c.innerHTML = + 'The ancient zombies actually invited reinforcements'; + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + c.innerHTML = + 'Well, you must have guessed who they were'; + break; + case 3: + PlayAudio("crazydaveshort2"); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + c.innerHTML = + 'After the victory, we can go to the second leg of our trip to China!'; + break; + case 4: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + StopMusic(); + PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oCZombie, 1, 1], + [oCZombie2, 1, 3], + [oCZombie3, 2, 18], + [oCConeheadZombie, 2, 3], + [oCBucketheadZombie, 2, 8], + [othugZombie, 1, 3], + [oEunZombie, 1, 4], + [oZZ, 1, 9], + [oCFootballZombie, 2, 3], + [oImp, 2, 3], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25], + a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/ZombieNoteSmall.png", + "left:667px;top:220px", + EDAll, + { + onclick: function () { + PlayAudio("winmusic"); + SetHidden($("PointerUD")); + SetStyle(this, { + width: "613px", + height: "399px", + left: "193px", + top: "100px", + }).src = "images/interface/ZombieNoteW.png"; + this.onclick = function () { + SelectModal(104); + }; + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/104.js b/game/level/104.js index 299a12ed..f07a7833 100644 --- a/game/level/104.js +++ b/game/level/104.js @@ -1,253 +1,253 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oCBucketheadZombie, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oCPoleVaultingZombie, - oCSnorkelZombie, - oCDolphinRiderZombie, - ], - PicArr: ["images/interface/backgroundX1.jpg"], - LF: [0, 2, 3, 3, 2, 2, 0], - backgroundImage: "images/interface/backgroundX1.jpg", - CanSelectCard: 1, - LevelName: "Ancient water village", - LvlEName: 9, - SunNum: 525, - coord: 2, - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - AudioArr: [ - "crazydaveshort2", - "crazydavelong1", - "crazydavelong2", - "crazydavelong3", - ], - LoadMusic: "MyScrapbook", - StartGameMusic: "The Great Wall", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - c.innerHTML = - 'Welcome to the second stop of our trip to China, neighbors.'; - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - c.innerHTML = - '请你放心'; - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - c.innerHTML = - 'This is definitely not the yard of a Chinese family, let alone the roof!'; - break; - case 3: - PlayAudio("crazydaveshort2"); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - c.innerHTML = - 'Listen up, here, fight the zombies.'; - break; - case 4: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [5]); - }; - }, - [] - ); - c.innerHTML = - 'Remember to bring lotus leaves and flower pots at the same time. Good luck!'; - break; - case 5: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - StopMusic(); - PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oCZombie, 1, 1], - [oCZombie2, 1, 2], - [oCZombie3, 2, 3], - [oCConeheadZombie, 1, 3], - [oCPoleVaultingZombie, 1, 9], - [oCBucketheadZombie, 2, 5], - [oDuckyTubeZombie1, 2, 5], - [oCSnorkelZombie, 1, 9], - [oCDolphinRiderZombie, 1, 10], - [oDuckyTubeZombie2, 1, 7], - [oDuckyTubeZombie3, 1, 10], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(105); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oCBucketheadZombie, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oCPoleVaultingZombie, + oCSnorkelZombie, + oCDolphinRiderZombie, + ], + PicArr: ["images/interface/backgroundX1.jpg"], + LF: [0, 2, 3, 3, 2, 2, 0], + backgroundImage: "images/interface/backgroundX1.jpg", + CanSelectCard: 1, + LevelName: "Ancient water village", + LvlEName: 9, + SunNum: 525, + coord: 2, + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + AudioArr: [ + "crazydaveshort2", + "crazydavelong1", + "crazydavelong2", + "crazydavelong3", + ], + LoadMusic: "MyScrapbook", + StartGameMusic: "The Great Wall", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + c.innerHTML = + 'Welcome to the second stop of our trip to China, neighbors.'; + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + c.innerHTML = + '请你放心'; + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + c.innerHTML = + 'This is definitely not the yard of a Chinese family, let alone the roof!'; + break; + case 3: + PlayAudio("crazydaveshort2"); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + c.innerHTML = + 'Listen up, here, fight the zombies.'; + break; + case 4: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [5]); + }; + }, + [] + ); + c.innerHTML = + 'Remember to bring lotus leaves and flower pots at the same time. Good luck!'; + break; + case 5: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + StopMusic(); + PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oCZombie, 1, 1], + [oCZombie2, 1, 2], + [oCZombie3, 2, 3], + [oCConeheadZombie, 1, 3], + [oCPoleVaultingZombie, 1, 9], + [oCBucketheadZombie, 2, 5], + [oDuckyTubeZombie1, 2, 5], + [oCSnorkelZombie, 1, 9], + [oCDolphinRiderZombie, 1, 10], + [oDuckyTubeZombie2, 1, 7], + [oDuckyTubeZombie3, 1, 10], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(105); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/105.js b/game/level/105.js index 213f46dc..df12ef7e 100644 --- a/game/level/105.js +++ b/game/level/105.js @@ -1,135 +1,135 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oCBucketheadZombie, - oDuckyTubeZombie1, - oCJackinTheBoxZombie, - oCSnorkelZombie, - oCDolphinRiderZombie, - oScreenDoorZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - ], - PicArr: ["images/interface/backgroundX1.jpg"], - LF: [0, 2, 3, 3, 2, 2, 0], - backgroundImage: "images/interface/backgroundX1.jpg", - CanSelectCard: 1, - LevelName: "Water sports", - LvlEName: 9, - SunNum: 525, - coord: 2, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - StartGameMusic: "The Great Wall", - }, - { - AZ: [ - [oCZombie, 1, 1], - [oCZombie2, 1, 2], - [oCZombie3, 2, 3], - [oCConeheadZombie, 1, 3], - [oCJackinTheBoxZombie, 1, 9], - [oCBucketheadZombie, 1, 10], - [oDuckyTubeZombie1, 2, 5], - [oCSnorkelZombie, 1, 10], - [oCDolphinRiderZombie, 1, 13], - [oScreenDoorZombie, 1, 9], - [oDuckyTubeZombie2, 1, 7], - [oDuckyTubeZombie3, 1, 10], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(106); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oCBucketheadZombie, + oDuckyTubeZombie1, + oCJackinTheBoxZombie, + oCSnorkelZombie, + oCDolphinRiderZombie, + oScreenDoorZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + ], + PicArr: ["images/interface/backgroundX1.jpg"], + LF: [0, 2, 3, 3, 2, 2, 0], + backgroundImage: "images/interface/backgroundX1.jpg", + CanSelectCard: 1, + LevelName: "Water sports", + LvlEName: 9, + SunNum: 525, + coord: 2, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + StartGameMusic: "The Great Wall", + }, + { + AZ: [ + [oCZombie, 1, 1], + [oCZombie2, 1, 2], + [oCZombie3, 2, 3], + [oCConeheadZombie, 1, 3], + [oCJackinTheBoxZombie, 1, 9], + [oCBucketheadZombie, 1, 10], + [oDuckyTubeZombie1, 2, 5], + [oCSnorkelZombie, 1, 10], + [oCDolphinRiderZombie, 1, 13], + [oScreenDoorZombie, 1, 9], + [oDuckyTubeZombie2, 1, 7], + [oDuckyTubeZombie3, 1, 10], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(106); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/106.js b/game/level/106.js index 6c6dd121..165bd892 100644 --- a/game/level/106.js +++ b/game/level/106.js @@ -1,278 +1,278 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oCBucketheadZombie, - oCJackinTheBoxZombie, - oCNewspaperZombie, - oScreenDoorZombie, - oEunZombie, - ], - PicArr: ["images/interface/backgroundX2.jpg"], - LF: [0, 1, 1, 3, 1, 1, 0], - backgroundImage: "images/interface/backgroundX2.jpg", - CanSelectCard: 1, - LevelName: "Grave village", - LvlEName: 9, - SunNum: 200, - DKind: 0, - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - AudioArr: [ - "crazydaveshort2", - "crazydavelong1", - "crazydavelong2", - "crazydavelong3", - ], - StartGameMusic: "The Great Wall1", - LoadMusic: "MyScrapbook", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - c.innerHTML = - 'Good evening, neighbors.'; - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - c.innerHTML = - 'Looks like we were lucky and found this little village when it got dark'; - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - c.innerHTML = - 'But it seems, there is a cemetery full of zombies behind the village'; - break; - case 3: - PlayAudio("crazydaveshort2"); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - c.innerHTML = - 'Unfortunately, the road in front of the village is a stone road.'; - break; - case 4: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [5]); - }; - }, - [] - ); - c.innerHTML = - 'Worse yet, its already late at night.'; - break; - case 4: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [5]); - }; - }, - [] - ); - c.innerHTML = - 'This fucking place is crazier than me!'; - break; - case 5: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - StopMusic(); - PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oCZombie, 1, 1], - [oCZombie2, 2, 2], - [oCZombie3, 2, 3], - [oCConeheadZombie, 2, 1], - [oCBucketheadZombie, 1, 10], - [oCJackinTheBoxZombie, 1, 3], - [oCNewspaperZombie, 1, 2], - [oScreenDoorZombie, 1, 1], - [oEunZombie, 1, 5], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/ZombieNoteSmall.png", - "left:667px;top:220px", - EDAll, - { - onclick: function () { - PlayAudio("winmusic"); - SetHidden($("PointerUD")); - SetStyle(this, { - width: "613px", - height: "399px", - left: "193px", - top: "100px", - }).src = "images/interface/ZombieNoteB.png"; - this.onclick = function () { - SelectModal(107); - }; - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oCBucketheadZombie, + oCJackinTheBoxZombie, + oCNewspaperZombie, + oScreenDoorZombie, + oEunZombie, + ], + PicArr: ["images/interface/backgroundX2.jpg"], + LF: [0, 1, 1, 3, 1, 1, 0], + backgroundImage: "images/interface/backgroundX2.jpg", + CanSelectCard: 1, + LevelName: "Grave village", + LvlEName: 9, + SunNum: 200, + DKind: 0, + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + AudioArr: [ + "crazydaveshort2", + "crazydavelong1", + "crazydavelong2", + "crazydavelong3", + ], + StartGameMusic: "The Great Wall1", + LoadMusic: "MyScrapbook", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + c.innerHTML = + 'Good evening, neighbors.'; + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + c.innerHTML = + 'Looks like we were lucky and found this little village when it got dark'; + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + c.innerHTML = + 'But it seems, there is a cemetery full of zombies behind the village'; + break; + case 3: + PlayAudio("crazydaveshort2"); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + c.innerHTML = + 'Unfortunately, the road in front of the village is a stone road.'; + break; + case 4: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [5]); + }; + }, + [] + ); + c.innerHTML = + 'Worse yet, its already late at night.'; + break; + case 4: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [5]); + }; + }, + [] + ); + c.innerHTML = + 'This fucking place is crazier than me!'; + break; + case 5: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + StopMusic(); + PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oCZombie, 1, 1], + [oCZombie2, 2, 2], + [oCZombie3, 2, 3], + [oCConeheadZombie, 2, 1], + [oCBucketheadZombie, 1, 10], + [oCJackinTheBoxZombie, 1, 3], + [oCNewspaperZombie, 1, 2], + [oScreenDoorZombie, 1, 1], + [oEunZombie, 1, 5], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/ZombieNoteSmall.png", + "left:667px;top:220px", + EDAll, + { + onclick: function () { + PlayAudio("winmusic"); + SetHidden($("PointerUD")); + SetStyle(this, { + width: "613px", + height: "399px", + left: "193px", + top: "100px", + }).src = "images/interface/ZombieNoteB.png"; + this.onclick = function () { + SelectModal(107); + }; + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/107.js b/game/level/107.js index bde9d991..d037430f 100644 --- a/game/level/107.js +++ b/game/level/107.js @@ -1,220 +1,220 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oCBucketheadZombie, - oCFootballZombie, - oCPoleVaultingZombie, - oScreenDoorZombie, - oZZ, - ], - PicArr: ["images/interface/backgroundX2.jpg"], - LF: [0, 1, 1, 3, 1, 1, 0], - backgroundImage: "images/interface/backgroundX2.jpg", - CanSelectCard: 1, - LevelName: "Ghost night", - LvlEName: 9, - SunNum: 200, - DKind: 0, - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - AudioArr: [ - "crazydaveshort2", - "crazydavelong1", - "crazydavelong2", - "crazydavelong3", - ], - StartGameMusic: "The Great Wall1", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - c.innerHTML = - 'Well, it looks like that Taoist priest is a zombie.'; - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - c.innerHTML = - 'This is because not only can it not drive out ghosts, but it can attract ghosts.'; - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - c.innerHTML = - 'Good luck'; - break; - case 3: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - StopMusic(); - PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oCZombie, 1, 1], - [oCZombie2, 2, 2], - [oCZombie3, 2, 3], - [oCConeheadZombie, 2, 1], - [oCBucketheadZombie, 1, 10], - [oCFootballZombie, 1, 5], - [oCPoleVaultingZombie, 1, 5], - [oScreenDoorZombie, 1, 2], - [oZZ, 1, 10], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(108); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oCBucketheadZombie, + oCFootballZombie, + oCPoleVaultingZombie, + oScreenDoorZombie, + oZZ, + ], + PicArr: ["images/interface/backgroundX2.jpg"], + LF: [0, 1, 1, 3, 1, 1, 0], + backgroundImage: "images/interface/backgroundX2.jpg", + CanSelectCard: 1, + LevelName: "Ghost night", + LvlEName: 9, + SunNum: 200, + DKind: 0, + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + AudioArr: [ + "crazydaveshort2", + "crazydavelong1", + "crazydavelong2", + "crazydavelong3", + ], + StartGameMusic: "The Great Wall1", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + c.innerHTML = + 'Well, it looks like that Taoist priest is a zombie.'; + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + c.innerHTML = + 'This is because not only can it not drive out ghosts, but it can attract ghosts.'; + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + c.innerHTML = + 'Good luck'; + break; + case 3: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + StopMusic(); + PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oCZombie, 1, 1], + [oCZombie2, 2, 2], + [oCZombie3, 2, 3], + [oCConeheadZombie, 2, 1], + [oCBucketheadZombie, 1, 10], + [oCFootballZombie, 1, 5], + [oCPoleVaultingZombie, 1, 5], + [oScreenDoorZombie, 1, 2], + [oZZ, 1, 10], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(108); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/108.js b/game/level/108.js index ef9d5fec..02bd2b82 100644 --- a/game/level/108.js +++ b/game/level/108.js @@ -1,228 +1,228 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oBalloonZombie, - oCFootballZombie, - oCPoleVaultingZombie, - othugZombie, - ], - PicArr: ["images/interface/backgroundX3.jpg"], - LF: [0, 3, 3, 0, 3, 3, 0], - ZF: [0, 3, 3, 0, 3, 3, 0], - backgroundImage: "images/interface/backgroundX3.jpg", - CanSelectCard: 1, - LevelName: "Foot of volcano", - LvlEName: 1, - SunNum: 350, - LargeWaveFlag: { 10: $("imgFlag2"), 20: $("imgFlag1") }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - AudioArr: [ - "crazydaveshort2", - "crazydavelong1", - "crazydavelong2", - "crazydavelong3", - ], - StartGameMusic: "The Great Wall", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - c.innerHTML = - 'We are getting closer and closer to King Qins lair, arent we?'; - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - c.innerHTML = - 'We have encountered the level of the stone ground in the middle before.,'; - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - c.innerHTML = - 'CanWhat kind of crooked way is this!t even grow on it!'; - break; - case 3: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - c.innerHTML = - 'What kind of crooked way is this!'; - break; - case 4: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - StopMusic(); - PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oCZombie, 1, 1], - [oCZombie2, 3, 2], - [oCZombie3, 3, 3], - [oCConeheadZombie, 1, 5], - [oBalloonZombie, 1, 6], - [oCFootballZombie, 1, 5], - [oCPoleVaultingZombie, 1, 15], - [othugZombie, 1, 10], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25, 48, 60], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(109); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oBalloonZombie, + oCFootballZombie, + oCPoleVaultingZombie, + othugZombie, + ], + PicArr: ["images/interface/backgroundX3.jpg"], + LF: [0, 3, 3, 0, 3, 3, 0], + ZF: [0, 3, 3, 0, 3, 3, 0], + backgroundImage: "images/interface/backgroundX3.jpg", + CanSelectCard: 1, + LevelName: "Foot of volcano", + LvlEName: 1, + SunNum: 350, + LargeWaveFlag: { 10: $("imgFlag2"), 20: $("imgFlag1") }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + AudioArr: [ + "crazydaveshort2", + "crazydavelong1", + "crazydavelong2", + "crazydavelong3", + ], + StartGameMusic: "The Great Wall", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + c.innerHTML = + 'We are getting closer and closer to King Qins lair, arent we?'; + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + c.innerHTML = + 'We have encountered the level of the stone ground in the middle before.,'; + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + c.innerHTML = + 'CanWhat kind of crooked way is this!t even grow on it!'; + break; + case 3: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + c.innerHTML = + 'What kind of crooked way is this!'; + break; + case 4: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + StopMusic(); + PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oCZombie, 1, 1], + [oCZombie2, 3, 2], + [oCZombie3, 3, 3], + [oCConeheadZombie, 1, 5], + [oBalloonZombie, 1, 6], + [oCFootballZombie, 1, 5], + [oCPoleVaultingZombie, 1, 15], + [othugZombie, 1, 10], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25, 48, 60], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(109); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/109.js b/game/level/109.js index 017e5376..cf950c83 100644 --- a/game/level/109.js +++ b/game/level/109.js @@ -1,242 +1,242 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [oCZombie, oCZombie2, oCZombie3, oCZomboni], - PicArr: ["images/interface/backgroundX3.jpg"], - LF: [0, 3, 3, 0, 3, 3, 0], - ZF: [0, 3, 3, 0, 3, 3, 0], - backgroundImage: "images/interface/backgroundX3.jpg", - CanSelectCard: 1, - LevelName: "Add fuel to the fire", - LvlEName: 1, - SunNum: 400, - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - AudioArr: [ - "crazydaveshort2", - "crazydavelong1", - "crazydavelong2", - "crazydavelong3", - ], - StartGameMusic: "The Great Wall", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - c.innerHTML = - 'I enjoyed skating when I was a kid, the feeling of moving fast on the ice'; - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - c.innerHTML = - 'But there is no ice here, only oil!'; - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - c.innerHTML = - 'And its not me, itI enjoyed skating when I was a kid, the feeling of moving fast on the ices the zombies!'; - break; - case 3: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - c.innerHTML = - 'Put more traps to block them, such as the gargoyles and potato mines'; - break; - case 4: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [5]); - }; - }, - [] - ); - c.innerHTML = - 'And a little secret, wood cant stand fire!'; - break; - case 5: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - StopMusic(); - PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oCZombie, 1, 10, [10, 20, 30]], - [oCZombie2, 1, 10, [10, 20, 30]], - [oCZombie3, 1, 10, [10, 20, 30]], - [oCZomboni, 2, 1], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25, 48, 60], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(110); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [oCZombie, oCZombie2, oCZombie3, oCZomboni], + PicArr: ["images/interface/backgroundX3.jpg"], + LF: [0, 3, 3, 0, 3, 3, 0], + ZF: [0, 3, 3, 0, 3, 3, 0], + backgroundImage: "images/interface/backgroundX3.jpg", + CanSelectCard: 1, + LevelName: "Add fuel to the fire", + LvlEName: 1, + SunNum: 400, + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + AudioArr: [ + "crazydaveshort2", + "crazydavelong1", + "crazydavelong2", + "crazydavelong3", + ], + StartGameMusic: "The Great Wall", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + c.innerHTML = + 'I enjoyed skating when I was a kid, the feeling of moving fast on the ice'; + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + c.innerHTML = + 'But there is no ice here, only oil!'; + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + c.innerHTML = + 'And its not me, itI enjoyed skating when I was a kid, the feeling of moving fast on the ices the zombies!'; + break; + case 3: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + c.innerHTML = + 'Put more traps to block them, such as the gargoyles and potato mines'; + break; + case 4: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [5]); + }; + }, + [] + ); + c.innerHTML = + 'And a little secret, wood cant stand fire!'; + break; + case 5: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + StopMusic(); + PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oCZombie, 1, 10, [10, 20, 30]], + [oCZombie2, 1, 10, [10, 20, 30]], + [oCZombie3, 1, 10, [10, 20, 30]], + [oCZomboni, 2, 1], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25, 48, 60], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(110); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/11.js b/game/level/11.js index 1869d27f..2ed6d77a 100644 --- a/game/level/11.js +++ b/game/level/11.js @@ -1,247 +1,247 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - ], - ZName: [oZombie, oZombie2, oZombie3, oNewspaperZombie], - PicArr: (function () { - var a = oSunShroom.prototype, - b = a.PicArr; - return [ - "images/interface/background2.jpg", - "images/interface/Dave.gif", - "images/interface/Dave3.gif", - "images/interface/Tombstones.png", - "images/interface/Tombstone_mounds.png", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - DKind: 0, - SunNum: 50, - LevelName: "Level 2-1", - LvlEName: 11, - AudioArr: [ - "crazydaveshort1", - "crazydavelong1", - "crazydavelong2", - "crazydavelong3", - ], - LargeWaveFlag: { 10: $("imgFlag1") }, - Monitor: { f: AppearTombstones, ar: [7, 9, 4] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && oP.SetTimeoutTomZombie([oZombie]); - }, - StartGameMusic: "Moongrains", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio("crazydaveshort1"); - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - innerText( - c, - "Good evening," + $User.Visitor.UserName + "。" - ); - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - innerText( - c, - "Clicking on those zombies won't weaken the offensive, will it?" - ); - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - innerText( - c, - "You'll notice that fighting zombies at night is different from daytime." - ); - break; - case 3: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - innerText( - c, - "First, you can't get sunlight from the sky." - ); - break; - case 4: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [5]); - }; - }, - [] - ); - innerText( - c, - "But you can still get sunlight through sunflowers." - ); - break; - case 5: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [6]); - }; - }, - [] - ); - innerText( - c, - "And you're lucky, you got little squirt mushrooms." - ); - break; - case 6: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [7]); - }; - }, - [] - ); - innerText( - c, - "Plant as many of these mushrooms as you can and you'll get through." - ); - break; - case 7: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oNewspaperZombie, 2, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 15] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/SunShroom.png", - "left:667px;top:220px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - SelectModal(12); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + ], + ZName: [oZombie, oZombie2, oZombie3, oNewspaperZombie], + PicArr: (function () { + var a = oSunShroom.prototype, + b = a.PicArr; + return [ + "images/interface/background2.jpg", + "images/interface/Dave.gif", + "images/interface/Dave3.gif", + "images/interface/Tombstones.png", + "images/interface/Tombstone_mounds.png", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + DKind: 0, + SunNum: 50, + LevelName: "Level 2-1", + LvlEName: 11, + AudioArr: [ + "crazydaveshort1", + "crazydavelong1", + "crazydavelong2", + "crazydavelong3", + ], + LargeWaveFlag: { 10: $("imgFlag1") }, + Monitor: { f: AppearTombstones, ar: [7, 9, 4] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && oP.SetTimeoutTomZombie([oZombie]); + }, + StartGameMusic: "Moongrains", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio("crazydaveshort1"); + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + innerText( + c, + "Good evening," + $User.Visitor.UserName + "。" + ); + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + innerText( + c, + "Clicking on those zombies won't weaken the offensive, will it?" + ); + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + innerText( + c, + "You'll notice that fighting zombies at night is different from daytime." + ); + break; + case 3: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + innerText( + c, + "First, you can't get sunlight from the sky." + ); + break; + case 4: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [5]); + }; + }, + [] + ); + innerText( + c, + "But you can still get sunlight through sunflowers." + ); + break; + case 5: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [6]); + }; + }, + [] + ); + innerText( + c, + "And you're lucky, you got little squirt mushrooms." + ); + break; + case 6: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [7]); + }; + }, + [] + ); + innerText( + c, + "Plant as many of these mushrooms as you can and you'll get through." + ); + break; + case 7: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oNewspaperZombie, 2, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 15] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/SunShroom.png", + "left:667px;top:220px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + SelectModal(12); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/110.js b/game/level/110.js index 195c46d0..0364c590 100644 --- a/game/level/110.js +++ b/game/level/110.js @@ -1,260 +1,260 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oCBucketheadZombie, - ], - PicArr: ["images/interface/backgroundX4.jpg"], - LF: [0, 3, 0, 3, 0, 3, 0], - ZF: [0, 3, 0, 3, 0, 3, 0], - backgroundImage: "images/interface/backgroundX4.jpg", - CanSelectCard: 1, - LevelName: "Devil's Palace", - LvlEName: 1, - SunNum: 500, - DKind: 0, - LargeWaveFlag: { 10: $("imgFlag2"), 20: $("imgFlag1") }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 5, -1); - }, - AudioArr: [ - "crazydaveshort2", - "crazydavelong1", - "crazydavelong2", - "crazydavelong3", - ], - StartGameMusic: "The Great Wall1", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - c.innerHTML = - 'Welcome to hell my friend'; - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - c.innerHTML = - 'I have to advise you,'; - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - c.innerHTML = - 'This game is too dangerous, now every battle is difficult'; - break; - case 3: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - c.innerHTML = - 'No sunshine, no flowerpots,'; - break; - case 4: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [5]); - }; - }, - [] - ); - c.innerHTML = - 'The zombies even blew up two lines at the door,'; - break; - case 5: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [6]); - }; - }, - [] - ); - c.innerHTML = - 'Use what youve learned before! There is no obstacle to overcome!'; - break; - case 6: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - StopMusic(); - PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oCZombie, 1, 1], - [oCZombie2, 3, 3], - [oCZombie3, 1, 5], - [oCConeheadZombie, 3, 6], - [oCBucketheadZombie, 1, 10], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25, 48, 60], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(0); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oCBucketheadZombie, + ], + PicArr: ["images/interface/backgroundX4.jpg"], + LF: [0, 3, 0, 3, 0, 3, 0], + ZF: [0, 3, 0, 3, 0, 3, 0], + backgroundImage: "images/interface/backgroundX4.jpg", + CanSelectCard: 1, + LevelName: "Devil's Palace", + LvlEName: 1, + SunNum: 500, + DKind: 0, + LargeWaveFlag: { 10: $("imgFlag2"), 20: $("imgFlag1") }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 5, -1); + }, + AudioArr: [ + "crazydaveshort2", + "crazydavelong1", + "crazydavelong2", + "crazydavelong3", + ], + StartGameMusic: "The Great Wall1", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + c.innerHTML = + 'Welcome to hell my friend'; + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + c.innerHTML = + 'I have to advise you,'; + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + c.innerHTML = + 'This game is too dangerous, now every battle is difficult'; + break; + case 3: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + c.innerHTML = + 'No sunshine, no flowerpots,'; + break; + case 4: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [5]); + }; + }, + [] + ); + c.innerHTML = + 'The zombies even blew up two lines at the door,'; + break; + case 5: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [6]); + }; + }, + [] + ); + c.innerHTML = + 'Use what youve learned before! There is no obstacle to overcome!'; + break; + case 6: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + StopMusic(); + PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oCZombie, 1, 1], + [oCZombie2, 3, 3], + [oCZombie3, 1, 5], + [oCConeheadZombie, 3, 6], + [oCBucketheadZombie, 1, 10], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25, 48, 60], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(0); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/111.js b/game/level/111.js index 54e02d83..57114ffa 100644 --- a/game/level/111.js +++ b/game/level/111.js @@ -1,106 +1,106 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [oCZombie, oCZombie2, oCZombie3, oCZomboni, oCConeheadZombie], - PicArr: ["images/interface/backgroundX4.jpg"], - LF: [0, 3, 0, 3, 0, 3, 0], - ZF: [0, 3, 0, 3, 0, 3, 0], - backgroundImage: "images/interface/backgroundX4.jpg", - CanSelectCard: 1, - LevelName: "Corpse siege", - LvlEName: 1, - SunNum: 850, - DKind: 0, - LargeWaveFlag: { 20: $("imgFlag2"), 30: $("imgFlag1") }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 5, -1); - }, - StartGameMusic: "The Great Wall1", - }, - { - AZ: [ - [oCZombie, 1, 1], - [oCZombie2, 3, 3], - [oCZombie3, 1, 5], - [oCConeheadZombie, 1, 6], - [oCZomboni, 1, 16, [16, 20]], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 3, 7, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 3, 3, 8, 4, 5, 13, 15, 18, 1, 24, 25, 48], - }, - FlagToMonitor: { 19: [ShowLargeWave, 0], 29: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(112); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [oCZombie, oCZombie2, oCZombie3, oCZomboni, oCConeheadZombie], + PicArr: ["images/interface/backgroundX4.jpg"], + LF: [0, 3, 0, 3, 0, 3, 0], + ZF: [0, 3, 0, 3, 0, 3, 0], + backgroundImage: "images/interface/backgroundX4.jpg", + CanSelectCard: 1, + LevelName: "Corpse siege", + LvlEName: 1, + SunNum: 850, + DKind: 0, + LargeWaveFlag: { 20: $("imgFlag2"), 30: $("imgFlag1") }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 5, -1); + }, + StartGameMusic: "The Great Wall1", + }, + { + AZ: [ + [oCZombie, 1, 1], + [oCZombie2, 3, 3], + [oCZombie3, 1, 5], + [oCConeheadZombie, 1, 6], + [oCZomboni, 1, 16, [16, 20]], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 3, 7, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 3, 3, 8, 4, 5, 13, 15, 18, 1, 24, 25, 48], + }, + FlagToMonitor: { 19: [ShowLargeWave, 0], 29: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(112); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/112.js b/game/level/112.js index bf2c139a..758f59b2 100644 --- a/game/level/112.js +++ b/game/level/112.js @@ -1,364 +1,364 @@ oS.Init( - { - PName: [oGatlingPea, oFlowerPot, oIceShroom], - ZName: [ - oCZombie, - oCZombie2, - oCZombie3, - oCBucketheadZombie, - oEunZombie, - oCConeheadZombie, - othugZombie, - oZZ, - oEmperor, - ], - PicArr: ["images/interface/backgroundX4.jpg"], - LF: [0, 3, 0, 3, 0, 3, 0], - ZF: [0, 3, 0, 3, 0, 3, 0], - backgroundImage: "images/interface/backgroundX4.jpg", - CanSelectCard: 0, - DKind: 0, - LevelName: "决战秦皇", - LvlEName: "40", - InitLawnMower: function () {}, - LargeWaveFlag: { 15: $("imgFlag2"), 25: $("imgFlag1") }, - AudioArr: [ - "crazydaveshort2", - "crazydavelong1", - "crazydavelong2", - "crazydavelong3", - ], - StartGameMusic: "Zombieboss", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - c.innerHTML = - '我感觉我们从一开始就步入了危险之中'; - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - c.innerHTML = - '这里不是真的中国,'; - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - c.innerHTML = - '而是僵尸们和我们的一场游戏'; - break; - case 3: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - c.innerHTML = - '我预感到他要来了,'; - break; - case 4: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [5]); - }; - }, - [] - ); - c.innerHTML = - '秦始皇僵尸!!!'; - break; - case 5: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [6]); - }; - }, - [] - ); - c.innerHTML = - '多种些机枪拆了他吧,我要回去!'; - break; - case 6: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - StopMusic(); - PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); - }, - [] - ); - } - })(0); - }, - StaticCard: 0, - StartGame: function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - SetHidden($("dSunNum")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - f: function () { - (function () { - var a = ArCard.length; - if (a < 10) { - var c = oS.PName, - b = - oP.FlagZombies < 6 - ? Math.floor( - 1 + Math.random() * 10 - ) < 4 - ? 1 - : Math.floor( - Math.random() * c.length - ) - : Math.floor( - 1 + Math.random() * 10 - ) < 3 - ? 0 - : Math.floor( - Math.random() * c.length - ), - e = c[b], - d = e.prototype, - f = "dCard" + Math.random(); - ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; - NewImg( - f, - d.PicArr[d.CardGif], - "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", - $("dCardList"), - { - onmouseover: function (g) { - ViewPlantTitle(GetChoseCard(f), g); - }, - onmouseout: function () { - SetHidden($("dTitle")); - }, - onclick: function (g) { - ChosePlant(g, oS.ChoseCard, f); - }, - } - ); - } - oSym.addTask(600, arguments.callee, []); - })(); - (function () { - var b = ArCard.length, - a, - c; - while (b--) { - (c = (a = ArCard[b]).PixelTop) > 60 * b && - ($(a.DID).style.top = - (a.PixelTop = c - 1) + "px"); - } - oSym.addTask(5, arguments.callee, []); - })(); - }, - ar: [], - }); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }); - }, - }, - { - AZ: [ - [oCZombie, 1, 1], - [oCZombie2, 3, 3], - [oCZombie3, 1, 5], - [oCConeheadZombie, 2, 6], - [oCBucketheadZombie, 2, 10], - [oEunZombie, 1, 10], - [othugZombie, 1, 15], - [oZZ, 1, 20], - [oEmperor, 1, 25, [25]], - ], - FlagNum: 25, - FlagToSumNum: { a1: [1, 5, 10, 13, 15], a2: [1, 5, 10, 15, 20, 25] }, - FlagToMonitor: { 14: [ShowLargeWave, 0], 24: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/0.gif", - "left:667px;top:330px;clip:rect(auto,auto,237px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oGoldenPrize, 0); - }, - } - ); - }, - }, - { - GetChoseCard: function (b) { - var a = ArCard.length; - while (a--) { - ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); - } - return oS.ChoseCard; - }, - ChosePlant: function (a, b) { - PlayAudio("seedlift"); - a = window.event || a; - var f = ArCard[oS.ChoseCard], - e = - a.clientX - EDAlloffsetLeft + EBody.scrollLeft || - EElement.scrollLeft, - d = a.clientY + EBody.scrollTop || EElement.scrollTop, - c = f.PName.prototype; - oS.Chose = 1; - EditImg( - NewImg( - "MovePlant", - c.PicArr[c.StaticGif], - "left:" + - e - - 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + - "px;top:" + - d + - 20 - - c.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ); - SetAlpha($(f.DID), 50, 0.5); - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant: function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); - oS.ChoseCard = ""; - GroundOnmousemove = function () {}; - }, - GrowPlant: function (l, c, b, f, a) { - var j = oS.ChoseCard, - g = ArCard[j], - i = g.PName, - k = i.prototype, - d = g.DID, - e, - h = oGd.$LF[f]; - k.CanGrow(l, f, a) && - (function () { - PlayAudio( - h != 2 - ? "plant" + Math.floor(1 + Math.random() * 2) - : "plant_water" - ); - new i().Birth(c, b, f, a, l); - oSym.addTask(20, SetNone, [ - SetStyle($("imgGrowSoil"), { - left: c - 30 + "px", - top: b - 40 + "px", - zIndex: 3 * f, - visibility: "visible", - }), - ]); - ClearChild($("MovePlant"), $("MovePlantAlpha")); - $("dCardList").removeChild((e = $(d))); - e = null; - ArCard.splice(j, 1); - oS.ChoseCard = ""; - oS.Chose = 0; - GroundOnmousemove = function () {}; - })(); - }, - ViewPlantTitle: function (a) {}, - } + { + PName: [oGatlingPea, oFlowerPot, oIceShroom], + ZName: [ + oCZombie, + oCZombie2, + oCZombie3, + oCBucketheadZombie, + oEunZombie, + oCConeheadZombie, + othugZombie, + oZZ, + oEmperor, + ], + PicArr: ["images/interface/backgroundX4.jpg"], + LF: [0, 3, 0, 3, 0, 3, 0], + ZF: [0, 3, 0, 3, 0, 3, 0], + backgroundImage: "images/interface/backgroundX4.jpg", + CanSelectCard: 0, + DKind: 0, + LevelName: "决战秦皇", + LvlEName: "40", + InitLawnMower: function () {}, + LargeWaveFlag: { 15: $("imgFlag2"), 25: $("imgFlag1") }, + AudioArr: [ + "crazydaveshort2", + "crazydavelong1", + "crazydavelong2", + "crazydavelong3", + ], + StartGameMusic: "Zombieboss", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + c.innerHTML = + '我感觉我们从一开始就步入了危险之中'; + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + c.innerHTML = + '这里不是真的中国,'; + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + c.innerHTML = + '而是僵尸们和我们的一场游戏'; + break; + case 3: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + c.innerHTML = + '我预感到他要来了,'; + break; + case 4: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [5]); + }; + }, + [] + ); + c.innerHTML = + '秦始皇僵尸!!!'; + break; + case 5: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [6]); + }; + }, + [] + ); + c.innerHTML = + '多种些机枪拆了他吧,我要回去!'; + break; + case 6: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + StopMusic(); + PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); + }, + [] + ); + } + })(0); + }, + StaticCard: 0, + StartGame: function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + SetHidden($("dSunNum")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + f: function () { + (function () { + var a = ArCard.length; + if (a < 10) { + var c = oS.PName, + b = + oP.FlagZombies < 6 + ? Math.floor( + 1 + Math.random() * 10 + ) < 4 + ? 1 + : Math.floor( + Math.random() * c.length + ) + : Math.floor( + 1 + Math.random() * 10 + ) < 3 + ? 0 + : Math.floor( + Math.random() * c.length + ), + e = c[b], + d = e.prototype, + f = "dCard" + Math.random(); + ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; + NewImg( + f, + d.PicArr[d.CardGif], + "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", + $("dCardList"), + { + onmouseover: function (g) { + ViewPlantTitle(GetChoseCard(f), g); + }, + onmouseout: function () { + SetHidden($("dTitle")); + }, + onclick: function (g) { + ChosePlant(g, oS.ChoseCard, f); + }, + } + ); + } + oSym.addTask(600, arguments.callee, []); + })(); + (function () { + var b = ArCard.length, + a, + c; + while (b--) { + (c = (a = ArCard[b]).PixelTop) > 60 * b && + ($(a.DID).style.top = + (a.PixelTop = c - 1) + "px"); + } + oSym.addTask(5, arguments.callee, []); + })(); + }, + ar: [], + }); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }); + }, + }, + { + AZ: [ + [oCZombie, 1, 1], + [oCZombie2, 3, 3], + [oCZombie3, 1, 5], + [oCConeheadZombie, 2, 6], + [oCBucketheadZombie, 2, 10], + [oEunZombie, 1, 10], + [othugZombie, 1, 15], + [oZZ, 1, 20], + [oEmperor, 1, 25, [25]], + ], + FlagNum: 25, + FlagToSumNum: { a1: [1, 5, 10, 13, 15], a2: [1, 5, 10, 15, 20, 25] }, + FlagToMonitor: { 14: [ShowLargeWave, 0], 24: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/0.gif", + "left:667px;top:330px;clip:rect(auto,auto,237px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oGoldenPrize, 0); + }, + } + ); + }, + }, + { + GetChoseCard: function (b) { + var a = ArCard.length; + while (a--) { + ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); + } + return oS.ChoseCard; + }, + ChosePlant: function (a, b) { + PlayAudio("seedlift"); + a = window.event || a; + var f = ArCard[oS.ChoseCard], + e = + a.clientX - EDAlloffsetLeft + EBody.scrollLeft || + EElement.scrollLeft, + d = a.clientY + EBody.scrollTop || EElement.scrollTop, + c = f.PName.prototype; + oS.Chose = 1; + EditImg( + NewImg( + "MovePlant", + c.PicArr[c.StaticGif], + "left:" + + e - + 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + + "px;top:" + + d + + 20 - + c.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ); + SetAlpha($(f.DID), 50, 0.5); + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant: function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); + oS.ChoseCard = ""; + GroundOnmousemove = function () {}; + }, + GrowPlant: function (l, c, b, f, a) { + var j = oS.ChoseCard, + g = ArCard[j], + i = g.PName, + k = i.prototype, + d = g.DID, + e, + h = oGd.$LF[f]; + k.CanGrow(l, f, a) && + (function () { + PlayAudio( + h != 2 + ? "plant" + Math.floor(1 + Math.random() * 2) + : "plant_water" + ); + new i().Birth(c, b, f, a, l); + oSym.addTask(20, SetNone, [ + SetStyle($("imgGrowSoil"), { + left: c - 30 + "px", + top: b - 40 + "px", + zIndex: 3 * f, + visibility: "visible", + }), + ]); + ClearChild($("MovePlant"), $("MovePlantAlpha")); + $("dCardList").removeChild((e = $(d))); + e = null; + ArCard.splice(j, 1); + oS.ChoseCard = ""; + oS.Chose = 0; + GroundOnmousemove = function () {}; + })(); + }, + ViewPlantTitle: function (a) {}, + } ); diff --git a/game/level/12.js b/game/level/12.js index fc867a11..e349c6bf 100644 --- a/game/level/12.js +++ b/game/level/12.js @@ -1,87 +1,87 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oNewspaperZombie, - oBucketheadZombie, - ], - PicArr: (function () { - var a = oFumeShroom.prototype, - b = a.PicArr; - return [ - "images/interface/background2.jpg", - "images/interface/Tombstones.png", - "images/interface/Tombstone_mounds.png", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - DKind: 0, - SunNum: 50, - LevelName: "Level 2-2", - LvlEName: 12, - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - Monitor: { f: AppearTombstones, ar: [7, 9, 4] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([ - oZombie, - oConeheadZombie, - oBucketheadZombie, - ]); - }, - StartGameMusic: "Moongrains", - }, - { - AZ: [ - [oZombie, 2, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oNewspaperZombie, 1, 1], - [oBucketheadZombie, 1, 1], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19], - a2: [1, 2, 3, 10, 4, 5, 6, 20], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/FumeShroom.png", - "left:587px;top:270px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - SelectModal(13); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:235px;left:596px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oNewspaperZombie, + oBucketheadZombie, + ], + PicArr: (function () { + var a = oFumeShroom.prototype, + b = a.PicArr; + return [ + "images/interface/background2.jpg", + "images/interface/Tombstones.png", + "images/interface/Tombstone_mounds.png", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + DKind: 0, + SunNum: 50, + LevelName: "Level 2-2", + LvlEName: 12, + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + Monitor: { f: AppearTombstones, ar: [7, 9, 4] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([ + oZombie, + oConeheadZombie, + oBucketheadZombie, + ]); + }, + StartGameMusic: "Moongrains", + }, + { + AZ: [ + [oZombie, 2, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oNewspaperZombie, 1, 1], + [oBucketheadZombie, 1, 1], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19], + a2: [1, 2, 3, 10, 4, 5, 6, 20], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/FumeShroom.png", + "left:587px;top:270px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + SelectModal(13); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:235px;left:596px", + EDAll + ); + }, + } ); diff --git a/game/level/13.js b/game/level/13.js index adb22e06..2b0d785e 100644 --- a/game/level/13.js +++ b/game/level/13.js @@ -1,83 +1,83 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oScreenDoorZombie, - ], - PicArr: (function () { - var a = oGraveBuster.prototype, - b = a.PicArr; - return [ - "images/interface/background2.jpg", - "images/interface/Tombstones.png", - "images/interface/Tombstone_mounds.png", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - DKind: 0, - SunNum: 50, - LevelName: "Level 2-3", - LvlEName: 13, - LargeWaveFlag: { 10: $("imgFlag1") }, - Monitor: { f: AppearTombstones, ar: [7, 9, 4] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([ - oZombie, - oConeheadZombie, - oBucketheadZombie, - ]); - }, - StartGameMusic: "Moongrains", - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oScreenDoorZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 10] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/GraveBuster.png", - "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oGraveBuster, 14); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:490px;left:836px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oScreenDoorZombie, + ], + PicArr: (function () { + var a = oGraveBuster.prototype, + b = a.PicArr; + return [ + "images/interface/background2.jpg", + "images/interface/Tombstones.png", + "images/interface/Tombstone_mounds.png", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + DKind: 0, + SunNum: 50, + LevelName: "Level 2-3", + LvlEName: 13, + LargeWaveFlag: { 10: $("imgFlag1") }, + Monitor: { f: AppearTombstones, ar: [7, 9, 4] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([ + oZombie, + oConeheadZombie, + oBucketheadZombie, + ]); + }, + StartGameMusic: "Moongrains", + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oScreenDoorZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 10] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/GraveBuster.png", + "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oGraveBuster, 14); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:490px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/14.js b/game/level/14.js index 367f1189..fa91c088 100644 --- a/game/level/14.js +++ b/game/level/14.js @@ -1,84 +1,84 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oScreenDoorZombie, - oPoleVaultingZombie, - ], - PicArr: [ - "images/interface/background2.jpg", - "images/interface/trophy.png", - "images/interface/Tombstones.png", - "images/interface/Tombstone_mounds.png", - ], - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - DKind: 0, - SunNum: 50, - LevelName: "Level 2-4", - LvlEName: 14, - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([ - oZombie, - oConeheadZombie, - oBucketheadZombie, - ]); - }, - StartGameMusic: "Moongrains", - }, - { - AZ: [ - [oZombie, 2, 1], - [oZombie2, 2, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 2, 1], - [oPoleVaultingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19], - a2: [1, 2, 3, 10, 4, 5, 6, 15], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - SelectModal(15); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:490px;left:836px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oScreenDoorZombie, + oPoleVaultingZombie, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/Tombstones.png", + "images/interface/Tombstone_mounds.png", + ], + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + DKind: 0, + SunNum: 50, + LevelName: "Level 2-4", + LvlEName: 14, + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([ + oZombie, + oConeheadZombie, + oBucketheadZombie, + ]); + }, + StartGameMusic: "Moongrains", + }, + { + AZ: [ + [oZombie, 2, 1], + [oZombie2, 2, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 2, 1], + [oPoleVaultingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19], + a2: [1, 2, 3, 10, 4, 5, 6, 15], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + SelectModal(15); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:490px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/15.js b/game/level/15.js index 591e6794..d932b3b7 100644 --- a/game/level/15.js +++ b/game/level/15.js @@ -1,182 +1,182 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - ], - ZName: [oZombie, oZombie2, oZombie3, oScreenDoorZombie], - PicArr: (function () { - var a = oFumeShroom.prototype, - b = a.PicArr; - return [ - "images/interface/background2.jpg", - "images/interface/Tombstones.png", - "images/interface/Tombstone_mounds.png", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - DKind: 0, - SunNum: 375, - LevelName: "2-5 Special Pass: Mass Burial Mound", - LvlEName: 15, - LargeWaveFlag: { 10: $("imgFlag1") }, - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio("crazydaveshort1"); - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - innerText( - c, - "Dude, have you ever imagined you being alone in a cemetery one night?" - ); - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - innerText( - c, - "Of course, there have to be zombies in the cemetery." - ); - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - innerText( - c, - "Don't relax too much, zombies will pop out of tombstones at any time! ." - ); - break; - case 3: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - innerText(c, "Hmm, we might need some quick plants!"); - break; - case 4: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - }, - [] - ); - } - })(0); - }, - Monitor: { f: AppearTombstones, ar: [7, 9, 12] }, - UserDefinedFlagFunc: function (b) { - var a = oP.FlagZombies; - switch (true) { - case a > 8: - oP.SetTimeoutTomZombie([oZombie]); - break; - case a > 5: - oP.SetTimeoutTomZombie([oZombie]); - } - }, - StartGameMusic: "Moongrains", - }, - { - AZ: [ - [oZombie, 2, 1], - [oZombie2, 2, 1], - [oZombie3, 1, 1], - [oScreenDoorZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 10] }, - FlagToMonitor: { 9: [ShowLargeWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/HypnoShroom.png", - "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oHypnoShroom, 16); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:490px;left:836px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + ], + ZName: [oZombie, oZombie2, oZombie3, oScreenDoorZombie], + PicArr: (function () { + var a = oFumeShroom.prototype, + b = a.PicArr; + return [ + "images/interface/background2.jpg", + "images/interface/Tombstones.png", + "images/interface/Tombstone_mounds.png", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + DKind: 0, + SunNum: 375, + LevelName: "2-5 Special Pass: Mass Burial Mound", + LvlEName: 15, + LargeWaveFlag: { 10: $("imgFlag1") }, + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio("crazydaveshort1"); + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + innerText( + c, + "Dude, have you ever imagined you being alone in a cemetery one night?" + ); + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + innerText( + c, + "Of course, there have to be zombies in the cemetery." + ); + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + innerText( + c, + "Don't relax too much, zombies will pop out of tombstones at any time! ." + ); + break; + case 3: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + innerText(c, "Hmm, we might need some quick plants!"); + break; + case 4: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + }, + [] + ); + } + })(0); + }, + Monitor: { f: AppearTombstones, ar: [7, 9, 12] }, + UserDefinedFlagFunc: function (b) { + var a = oP.FlagZombies; + switch (true) { + case a > 8: + oP.SetTimeoutTomZombie([oZombie]); + break; + case a > 5: + oP.SetTimeoutTomZombie([oZombie]); + } + }, + StartGameMusic: "Moongrains", + }, + { + AZ: [ + [oZombie, 2, 1], + [oZombie2, 2, 1], + [oZombie3, 1, 1], + [oScreenDoorZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 10] }, + FlagToMonitor: { 9: [ShowLargeWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/HypnoShroom.png", + "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oHypnoShroom, 16); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:490px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/150.js b/game/level/150.js index 9ea8087d..5904dd18 100644 --- a/game/level/150.js +++ b/game/level/150.js @@ -1,176 +1,176 @@ oS.Init({ - PicArr: (function () { - a = "images/interface/"; - return [ - ShadowPNG, - a + "TA.png", - a + "TAUI1.png", - a + "TAUIPLAY.png", - a + "TA10.png", - a + "TA20.png", - a + "TA30.png", - a + "TA40.png", - a + "TA50.png", - a + "TA60.png", - a + "TA70.png", - a + "TA80.png", - a + "TA90.png", - a + "TA100.png", - a + "TAWIN.png", - a + "TA101.png", - ]; - })(), - LevelName: "魔塔界面", - LevelEName: 150, - ShowScroll: 1, - LoadMusic: "plantsgarden", - StartGameMusic: "plantsgarden", - AudioArr: ["plantsgarden", "pvzs"], - backgroundImage: "images/interface/TA.png", - LoadAccess: function (a) { - NewImg( - "imgSF", - "images/interface/TAUI1.png", - "left:740px;top:360px", - EDAll, - { - onclick: function () { - SelectModal(0); - SetBlock($("dSurface"), $("iSurfaceBackground")); - }, - } - ); - NewImg( - "imgSF", - "images/interface/TAUIPLAY.png", - "left:380px;top:330px", - EDAll, - { - onclick: function () { - SelectModal(151); - }, - } - ); - NewImg( - "imgSF", - "images/interface/TA10.png", - "left:700px;top:130px", - EDAll, - { - onclick: function () { - SelectModal(160); - }, - } - ); - NewImg( - "imgSF", - "images/interface/TA20.png", - "left:700px;top:160px", - EDAll, - { - onclick: function () { - SelectModal(170); - }, - } - ); - NewImg( - "imgSF", - "images/interface/TA30.png", - "left:700px;top:190px", - EDAll, - { - onclick: function () { - SelectModal(180); - }, - } - ); - NewImg( - "imgSF", - "images/interface/TA40.png", - "left:700px;top:220px", - EDAll, - { - onclick: function () { - SelectModal(190); - }, - } - ); - NewImg( - "imgSF", - "images/interface/TA50.png", - "left:700px;top:250px", - EDAll, - { - onclick: function () { - SelectModal(200); - }, - } - ); - NewImg( - "imgSF", - "images/interface/TA60.png", - "left:700px;top:280px", - EDAll, - { - onclick: function () { - SelectModal(210); - }, - } - ); - NewImg( - "imgSF", - "images/interface/TA70.png", - "left:700px;top:310px", - EDAll, - { - onclick: function () { - SelectModal(220); - }, - } - ); - NewImg( - "imgSF", - "images/interface/TA80.png", - "left:700px;top:340px", - EDAll, - { - onclick: function () { - SelectModal(230); - }, - } - ); - NewImg( - "imgSF", - "images/interface/TA90.png", - "left:700px;top:370px", - EDAll, - { - onclick: function () { - SelectModal(240); - }, - } - ); - NewImg( - "imgSF", - "images/interface/TA100.png", - "left:700px;top:400px", - EDAll, - { - onclick: function () { - SelectModal(250); - }, - } - ); - NewImg( - "imgSF", - "images/interface/TA101.png", - "left:790px;top:20px", - EDAll, - { - onclick: function () { - SelectModal(252); - }, - } - ); - }, + PicArr: (function () { + a = "images/interface/"; + return [ + ShadowPNG, + a + "TA.png", + a + "TAUI1.png", + a + "TAUIPLAY.png", + a + "TA10.png", + a + "TA20.png", + a + "TA30.png", + a + "TA40.png", + a + "TA50.png", + a + "TA60.png", + a + "TA70.png", + a + "TA80.png", + a + "TA90.png", + a + "TA100.png", + a + "TAWIN.png", + a + "TA101.png", + ]; + })(), + LevelName: "魔塔界面", + LevelEName: 150, + ShowScroll: 1, + LoadMusic: "plantsgarden", + StartGameMusic: "plantsgarden", + AudioArr: ["plantsgarden", "pvzs"], + backgroundImage: "images/interface/TA.png", + LoadAccess: function (a) { + NewImg( + "imgSF", + "images/interface/TAUI1.png", + "left:740px;top:360px", + EDAll, + { + onclick: function () { + SelectModal(0); + SetBlock($("dSurface"), $("iSurfaceBackground")); + }, + } + ); + NewImg( + "imgSF", + "images/interface/TAUIPLAY.png", + "left:380px;top:330px", + EDAll, + { + onclick: function () { + SelectModal(151); + }, + } + ); + NewImg( + "imgSF", + "images/interface/TA10.png", + "left:700px;top:130px", + EDAll, + { + onclick: function () { + SelectModal(160); + }, + } + ); + NewImg( + "imgSF", + "images/interface/TA20.png", + "left:700px;top:160px", + EDAll, + { + onclick: function () { + SelectModal(170); + }, + } + ); + NewImg( + "imgSF", + "images/interface/TA30.png", + "left:700px;top:190px", + EDAll, + { + onclick: function () { + SelectModal(180); + }, + } + ); + NewImg( + "imgSF", + "images/interface/TA40.png", + "left:700px;top:220px", + EDAll, + { + onclick: function () { + SelectModal(190); + }, + } + ); + NewImg( + "imgSF", + "images/interface/TA50.png", + "left:700px;top:250px", + EDAll, + { + onclick: function () { + SelectModal(200); + }, + } + ); + NewImg( + "imgSF", + "images/interface/TA60.png", + "left:700px;top:280px", + EDAll, + { + onclick: function () { + SelectModal(210); + }, + } + ); + NewImg( + "imgSF", + "images/interface/TA70.png", + "left:700px;top:310px", + EDAll, + { + onclick: function () { + SelectModal(220); + }, + } + ); + NewImg( + "imgSF", + "images/interface/TA80.png", + "left:700px;top:340px", + EDAll, + { + onclick: function () { + SelectModal(230); + }, + } + ); + NewImg( + "imgSF", + "images/interface/TA90.png", + "left:700px;top:370px", + EDAll, + { + onclick: function () { + SelectModal(240); + }, + } + ); + NewImg( + "imgSF", + "images/interface/TA100.png", + "left:700px;top:400px", + EDAll, + { + onclick: function () { + SelectModal(250); + }, + } + ); + NewImg( + "imgSF", + "images/interface/TA101.png", + "left:790px;top:20px", + EDAll, + { + onclick: function () { + SelectModal(252); + }, + } + ); + }, }); diff --git a/game/level/151.js b/game/level/151.js index 48b41870..496ea32a 100644 --- a/game/level/151.js +++ b/game/level/151.js @@ -1,205 +1,205 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oSnowRepeater, - oTenManNut, - oCattail, - oLotusRoot, - oIceFumeShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oNewspaperZombie, - oJackinTheBoxZombie, - oFootballZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - ], - PicArr: (function () { - return ["images/interface/background1.jpg"]; - })(), - backgroundImage: "images/interface/background1.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 1层", - LvlEName: 151, - SunNum: 3e3, - LargeWaveFlag: { 10: $("imgFlag2") }, - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio("crazydaveshort1"); - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 100, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - innerText(c, "欢迎来到常青之塔"); - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - innerText(c, "这里可是危机四伏,你必须一层一层的挑战"); - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - innerText(c, "难度也会随着层数上涨!"); - break; - case 3: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - innerText(c, "祝你挑战愉快,别丢掉脑子哈!"); - break; - case 4: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 50, - function () { - ClearChild($("dDave")); - a(0); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oBucketheadZombie, 1, 1], - [oNewspaperZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDancingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [3, 20], a2: [3, 40] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(152); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oSnowRepeater, + oTenManNut, + oCattail, + oLotusRoot, + oIceFumeShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oNewspaperZombie, + oJackinTheBoxZombie, + oFootballZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + ], + PicArr: (function () { + return ["images/interface/background1.jpg"]; + })(), + backgroundImage: "images/interface/background1.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 1层", + LvlEName: 151, + SunNum: 3e3, + LargeWaveFlag: { 10: $("imgFlag2") }, + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio("crazydaveshort1"); + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 100, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + innerText(c, "欢迎来到常青之塔"); + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + innerText(c, "这里可是危机四伏,你必须一层一层的挑战"); + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + innerText(c, "难度也会随着层数上涨!"); + break; + case 3: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + innerText(c, "祝你挑战愉快,别丢掉脑子哈!"); + break; + case 4: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 50, + function () { + ClearChild($("dDave")); + a(0); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oBucketheadZombie, 1, 1], + [oNewspaperZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDancingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [3, 20], a2: [3, 40] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(152); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/152.js b/game/level/152.js index b008c506..cad73564 100644 --- a/game/level/152.js +++ b/game/level/152.js @@ -1,110 +1,110 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oNewspaperZombie, - oJackinTheBoxZombie, - oFootballZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - ], - PicArr: (function () { - return ["images/interface/background1.jpg"]; - })(), - backgroundImage: "images/interface/background1.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 2层", - LvlEName: 151, - SunNum: 3e3, - LargeWaveFlag: { 10: $("imgFlag2") }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oBucketheadZombie, 1, 1], - [oNewspaperZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDancingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [4, 21], a2: [4, 41] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(153); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oNewspaperZombie, + oJackinTheBoxZombie, + oFootballZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + ], + PicArr: (function () { + return ["images/interface/background1.jpg"]; + })(), + backgroundImage: "images/interface/background1.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 2层", + LvlEName: 151, + SunNum: 3e3, + LargeWaveFlag: { 10: $("imgFlag2") }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oBucketheadZombie, 1, 1], + [oNewspaperZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDancingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [4, 21], a2: [4, 41] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(153); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/153.js b/game/level/153.js index adf0fa01..3bb0df98 100644 --- a/game/level/153.js +++ b/game/level/153.js @@ -1,110 +1,110 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oNewspaperZombie, - oJackinTheBoxZombie, - oFootballZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - ], - PicArr: (function () { - return ["images/interface/background1.jpg"]; - })(), - backgroundImage: "images/interface/background1.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 3层", - LvlEName: 153, - SunNum: 3e3, - LargeWaveFlag: { 10: $("imgFlag2") }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oBucketheadZombie, 1, 1], - [oNewspaperZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDancingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [5, 22], a2: [5, 42] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(154); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oNewspaperZombie, + oJackinTheBoxZombie, + oFootballZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + ], + PicArr: (function () { + return ["images/interface/background1.jpg"]; + })(), + backgroundImage: "images/interface/background1.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 3层", + LvlEName: 153, + SunNum: 3e3, + LargeWaveFlag: { 10: $("imgFlag2") }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oBucketheadZombie, 1, 1], + [oNewspaperZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDancingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [5, 22], a2: [5, 42] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(154); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/154.js b/game/level/154.js index 91558fce..f889a81b 100644 --- a/game/level/154.js +++ b/game/level/154.js @@ -1,110 +1,110 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oNewspaperZombie, - oJackinTheBoxZombie, - oFootballZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - ], - PicArr: (function () { - return ["images/interface/background1.jpg"]; - })(), - backgroundImage: "images/interface/background1.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 4层", - LvlEName: 154, - SunNum: 3e3, - LargeWaveFlag: { 10: $("imgFlag2") }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oBucketheadZombie, 1, 1], - [oNewspaperZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDancingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [6, 23], a2: [6, 43] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(155); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oNewspaperZombie, + oJackinTheBoxZombie, + oFootballZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + ], + PicArr: (function () { + return ["images/interface/background1.jpg"]; + })(), + backgroundImage: "images/interface/background1.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 4层", + LvlEName: 154, + SunNum: 3e3, + LargeWaveFlag: { 10: $("imgFlag2") }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oBucketheadZombie, 1, 1], + [oNewspaperZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDancingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [6, 23], a2: [6, 43] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(155); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/155.js b/game/level/155.js index b95f03f9..1c8a7e10 100644 --- a/game/level/155.js +++ b/game/level/155.js @@ -1,112 +1,112 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oNewspaperZombie, - oJackinTheBoxZombie, - oFootballZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - oLGBOSS, - ], - PicArr: (function () { - return ["images/interface/background1.jpg"]; - })(), - backgroundImage: "images/interface/background1.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 5层", - LvlEName: 155, - SunNum: 3500, - LargeWaveFlag: { 10: $("imgFlag2") }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oBucketheadZombie, 1, 1], - [oNewspaperZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDancingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - [oLGBOSS, 1, 10, [10]], - ], - FlagNum: 10, - FlagToSumNum: { a1: [7, 24], a2: [7, 44] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(156); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oNewspaperZombie, + oJackinTheBoxZombie, + oFootballZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + oLGBOSS, + ], + PicArr: (function () { + return ["images/interface/background1.jpg"]; + })(), + backgroundImage: "images/interface/background1.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 5层", + LvlEName: 155, + SunNum: 3500, + LargeWaveFlag: { 10: $("imgFlag2") }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oBucketheadZombie, 1, 1], + [oNewspaperZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDancingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + [oLGBOSS, 1, 10, [10]], + ], + FlagNum: 10, + FlagToSumNum: { a1: [7, 24], a2: [7, 44] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(156); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/156.js b/game/level/156.js index ad309991..e3e8ec6a 100644 --- a/game/level/156.js +++ b/game/level/156.js @@ -1,116 +1,116 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oNewspaperZombie, - oJackinTheBoxZombie, - oFootballZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - oZomboni, - oPoleVaultingZombie, - ], - PicArr: (function () { - return ["images/interface/background2.jpg"]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 6层", - LvlEName: 156, - SunNum: 3500, - DKind: 0, - StartGameMusic: "Moongrains", - LargeWaveFlag: { 10: $("imgFlag2") }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oBucketheadZombie, 1, 1], - [oNewspaperZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDancingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - [oZomboni, 1, 5], - [oPoleVaultingZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [9, 26], a2: [9, 46] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(157); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oNewspaperZombie, + oJackinTheBoxZombie, + oFootballZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + oZomboni, + oPoleVaultingZombie, + ], + PicArr: (function () { + return ["images/interface/background2.jpg"]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 6层", + LvlEName: 156, + SunNum: 3500, + DKind: 0, + StartGameMusic: "Moongrains", + LargeWaveFlag: { 10: $("imgFlag2") }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oBucketheadZombie, 1, 1], + [oNewspaperZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDancingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + [oZomboni, 1, 5], + [oPoleVaultingZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [9, 26], a2: [9, 46] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(157); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/157.js b/game/level/157.js index 31f8e713..44b65b58 100644 --- a/game/level/157.js +++ b/game/level/157.js @@ -1,116 +1,116 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oNewspaperZombie, - oJackinTheBoxZombie, - oFootballZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - oZomboni, - oPoleVaultingZombie, - ], - PicArr: (function () { - return ["images/interface/background2.jpg"]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 7层", - LvlEName: 156, - SunNum: 3500, - DKind: 0, - StartGameMusic: "Moongrains", - LargeWaveFlag: { 10: $("imgFlag2") }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oBucketheadZombie, 1, 1], - [oNewspaperZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDancingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - [oZomboni, 1, 1], - [oPoleVaultingZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [11, 28], a2: [11, 48] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(158); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oNewspaperZombie, + oJackinTheBoxZombie, + oFootballZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + oZomboni, + oPoleVaultingZombie, + ], + PicArr: (function () { + return ["images/interface/background2.jpg"]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 7层", + LvlEName: 156, + SunNum: 3500, + DKind: 0, + StartGameMusic: "Moongrains", + LargeWaveFlag: { 10: $("imgFlag2") }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oBucketheadZombie, 1, 1], + [oNewspaperZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDancingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + [oZomboni, 1, 1], + [oPoleVaultingZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [11, 28], a2: [11, 48] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(158); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/158.js b/game/level/158.js index ce0c0fe4..8ed37fcc 100644 --- a/game/level/158.js +++ b/game/level/158.js @@ -1,116 +1,116 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oNewspaperZombie, - oJackinTheBoxZombie, - oFootballZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - oZomboni, - oPoleVaultingZombie, - ], - PicArr: (function () { - return ["images/interface/background2.jpg"]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 8层", - LvlEName: 158, - SunNum: 3500, - DKind: 0, - StartGameMusic: "Moongrains", - LargeWaveFlag: { 10: $("imgFlag2") }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oBucketheadZombie, 1, 1], - [oNewspaperZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDancingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - [oZomboni, 1, 1], - [oPoleVaultingZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [13, 31], a2: [13, 51] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(159); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oNewspaperZombie, + oJackinTheBoxZombie, + oFootballZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + oZomboni, + oPoleVaultingZombie, + ], + PicArr: (function () { + return ["images/interface/background2.jpg"]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 8层", + LvlEName: 158, + SunNum: 3500, + DKind: 0, + StartGameMusic: "Moongrains", + LargeWaveFlag: { 10: $("imgFlag2") }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oBucketheadZombie, 1, 1], + [oNewspaperZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDancingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + [oZomboni, 1, 1], + [oPoleVaultingZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [13, 31], a2: [13, 51] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(159); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/159.js b/game/level/159.js index 3891d6a4..ad72e065 100644 --- a/game/level/159.js +++ b/game/level/159.js @@ -1,116 +1,116 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oNewspaperZombie, - oJackinTheBoxZombie, - oFootballZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - oZomboni, - oPoleVaultingZombie, - ], - PicArr: (function () { - return ["images/interface/background2.jpg"]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 9层", - LvlEName: 158, - SunNum: 3500, - DKind: 0, - StartGameMusic: "Moongrains", - LargeWaveFlag: { 10: $("imgFlag2") }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oNewspaperZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDancingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - [oZomboni, 1, 1], - [oPoleVaultingZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [15, 33], a2: [15, 53] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(160); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oNewspaperZombie, + oJackinTheBoxZombie, + oFootballZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + oZomboni, + oPoleVaultingZombie, + ], + PicArr: (function () { + return ["images/interface/background2.jpg"]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 9层", + LvlEName: 158, + SunNum: 3500, + DKind: 0, + StartGameMusic: "Moongrains", + LargeWaveFlag: { 10: $("imgFlag2") }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oNewspaperZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDancingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + [oZomboni, 1, 1], + [oPoleVaultingZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [15, 33], a2: [15, 53] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(160); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/16.js b/game/level/16.js index fd09f14d..4fd3f664 100644 --- a/game/level/16.js +++ b/game/level/16.js @@ -1,79 +1,79 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - ], - ZName: [oZombie, oZombie2, oZombie3, oConeheadZombie, oFootballZombie], - PicArr: (function () { - var a = oScaredyShroom.prototype, - b = a.PicArr; - return [ - "images/interface/background2.jpg", - "images/interface/Tombstones.png", - "images/interface/Tombstone_mounds.png", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - DKind: 0, - SunNum: 50, - LevelName: "Level 2-6", - LvlEName: 16, - LargeWaveFlag: { 10: $("imgFlag1") }, - Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([ - oZombie, - oConeheadZombie, - oBucketheadZombie, - ]); - }, - StartGameMusic: "Moongrains", - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oFootballZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 10] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/ScaredyShroom.png", - "left:587px;top:270px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oScaredyShroom, 17); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:235px;left:596px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + ], + ZName: [oZombie, oZombie2, oZombie3, oConeheadZombie, oFootballZombie], + PicArr: (function () { + var a = oScaredyShroom.prototype, + b = a.PicArr; + return [ + "images/interface/background2.jpg", + "images/interface/Tombstones.png", + "images/interface/Tombstone_mounds.png", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + DKind: 0, + SunNum: 50, + LevelName: "Level 2-6", + LvlEName: 16, + LargeWaveFlag: { 10: $("imgFlag1") }, + Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([ + oZombie, + oConeheadZombie, + oBucketheadZombie, + ]); + }, + StartGameMusic: "Moongrains", + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oFootballZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 10] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/ScaredyShroom.png", + "left:587px;top:270px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oScaredyShroom, 17); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:235px;left:596px", + EDAll + ); + }, + } ); diff --git a/game/level/160.js b/game/level/160.js index c9a593fc..0cb7da98 100644 --- a/game/level/160.js +++ b/game/level/160.js @@ -1,118 +1,118 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oNewspaperZombie, - oJackinTheBoxZombie, - oFootballZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - oZomboni, - oPoleVaultingZombie, - oEmperor, - ], - PicArr: (function () { - return ["images/interface/background2.jpg"]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 10层", - LvlEName: 158, - SunNum: 4e3, - DKind: 0, - StartGameMusic: "Moongrains", - LargeWaveFlag: { 10: $("imgFlag2") }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oNewspaperZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDancingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - [oZomboni, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oEmperor, 1, 10, [10]], - ], - FlagNum: 10, - FlagToSumNum: { a1: [17, 35], a2: [17, 55] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/LaserBean.png", - "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oLaserBean, 161); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:490px;left:836px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oNewspaperZombie, + oJackinTheBoxZombie, + oFootballZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + oZomboni, + oPoleVaultingZombie, + oEmperor, + ], + PicArr: (function () { + return ["images/interface/background2.jpg"]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 10层", + LvlEName: 158, + SunNum: 4e3, + DKind: 0, + StartGameMusic: "Moongrains", + LargeWaveFlag: { 10: $("imgFlag2") }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oNewspaperZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDancingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + [oZomboni, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oEmperor, 1, 10, [10]], + ], + FlagNum: 10, + FlagToSumNum: { a1: [17, 35], a2: [17, 55] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/LaserBean.png", + "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oLaserBean, 161); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:490px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/161.js b/game/level/161.js index 0d49e045..df89853d 100644 --- a/game/level/161.js +++ b/game/level/161.js @@ -1,249 +1,249 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oNewspaperZombie, - oJackinTheBoxZombie, - oFootballZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - oZomboni, - oPoleVaultingZombie, - oJY, - oEunZombie, - oSnorkelZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - ], - PicArr: (function () { - return ["images/interface/background3.png"]; - })(), - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LevelName: "常青之塔 11层", - LvlEName: 161, - SunNum: 4e3, - Coord: 2, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "WateryGraves", - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - innerText(c, "僵尸越来越多了。"); - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - innerText(c, "不过你很幸运。"); - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - innerText(c, "你获得了激光蚕豆!"); - break; - case 3: - PlayAudio("crazydaveshort2"); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 100, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - innerText(c, "任何僵尸都躲不过他的天眼~"); - break; - case 4: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [5]); - }; - }, - [] - ); - innerText( - c, - "你觉得他太贵?面对一波一波得僵尸,你已经没有选择了!" - ); - break; - case 5: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 50, - function () { - ClearChild($("dDave")); - a(0); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oNewspaperZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDancingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - [oZomboni, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oJY, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oSnorkelZombie, 1, 1], - [oEunZombie, 1, 1], - ], - FlagNum: 20, - FlagToSumNum: { a1: [17, 20, 35], a2: [17, 20, 55] }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(162); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oNewspaperZombie, + oJackinTheBoxZombie, + oFootballZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + oZomboni, + oPoleVaultingZombie, + oJY, + oEunZombie, + oSnorkelZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + ], + PicArr: (function () { + return ["images/interface/background3.png"]; + })(), + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LevelName: "常青之塔 11层", + LvlEName: 161, + SunNum: 4e3, + Coord: 2, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "WateryGraves", + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + innerText(c, "僵尸越来越多了。"); + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + innerText(c, "不过你很幸运。"); + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + innerText(c, "你获得了激光蚕豆!"); + break; + case 3: + PlayAudio("crazydaveshort2"); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 100, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + innerText(c, "任何僵尸都躲不过他的天眼~"); + break; + case 4: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [5]); + }; + }, + [] + ); + innerText( + c, + "你觉得他太贵?面对一波一波得僵尸,你已经没有选择了!" + ); + break; + case 5: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 50, + function () { + ClearChild($("dDave")); + a(0); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oNewspaperZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDancingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + [oZomboni, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oJY, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oSnorkelZombie, 1, 1], + [oEunZombie, 1, 1], + ], + FlagNum: 20, + FlagToSumNum: { a1: [17, 20, 35], a2: [17, 20, 55] }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(162); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/162.js b/game/level/162.js index 4887c6b2..046b191e 100644 --- a/game/level/162.js +++ b/game/level/162.js @@ -1,132 +1,132 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oNewspaperZombie, - oJackinTheBoxZombie, - oFootballZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - oZomboni, - oPoleVaultingZombie, - oJY, - oEunZombie, - oSnorkelZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - ], - PicArr: (function () { - return ["images/interface/background3.png"]; - })(), - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LevelName: "常青之塔 12层", - LvlEName: 162, - SunNum: 4e3, - Coord: 2, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "WateryGraves", - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oNewspaperZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDancingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - [oZomboni, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oJY, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oSnorkelZombie, 1, 1], - [oEunZombie, 1, 1], - ], - FlagNum: 20, - FlagToSumNum: { a1: [20, 23, 38], a2: [20, 23, 58] }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(163); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oNewspaperZombie, + oJackinTheBoxZombie, + oFootballZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + oZomboni, + oPoleVaultingZombie, + oJY, + oEunZombie, + oSnorkelZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + ], + PicArr: (function () { + return ["images/interface/background3.png"]; + })(), + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LevelName: "常青之塔 12层", + LvlEName: 162, + SunNum: 4e3, + Coord: 2, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "WateryGraves", + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oNewspaperZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDancingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + [oZomboni, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oJY, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oSnorkelZombie, 1, 1], + [oEunZombie, 1, 1], + ], + FlagNum: 20, + FlagToSumNum: { a1: [20, 23, 38], a2: [20, 23, 58] }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(163); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/163.js b/game/level/163.js index 09181617..2b462b08 100644 --- a/game/level/163.js +++ b/game/level/163.js @@ -1,132 +1,132 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oNewspaperZombie, - oJackinTheBoxZombie, - oFootballZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - oZomboni, - oPoleVaultingZombie, - oJY, - oEunZombie, - oSnorkelZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - ], - PicArr: (function () { - return ["images/interface/background3.png"]; - })(), - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LevelName: "常青之塔 13层", - LvlEName: 163, - SunNum: 4e3, - Coord: 2, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "WateryGraves", - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oNewspaperZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDancingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - [oZomboni, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oJY, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oSnorkelZombie, 1, 1], - [oEunZombie, 1, 1], - ], - FlagNum: 20, - FlagToSumNum: { a1: [23, 26, 41], a2: [23, 26, 61] }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(164); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oNewspaperZombie, + oJackinTheBoxZombie, + oFootballZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + oZomboni, + oPoleVaultingZombie, + oJY, + oEunZombie, + oSnorkelZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + ], + PicArr: (function () { + return ["images/interface/background3.png"]; + })(), + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LevelName: "常青之塔 13层", + LvlEName: 163, + SunNum: 4e3, + Coord: 2, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "WateryGraves", + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oNewspaperZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDancingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + [oZomboni, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oJY, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oSnorkelZombie, 1, 1], + [oEunZombie, 1, 1], + ], + FlagNum: 20, + FlagToSumNum: { a1: [23, 26, 41], a2: [23, 26, 61] }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(164); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/164.js b/game/level/164.js index 22502681..ef798360 100644 --- a/game/level/164.js +++ b/game/level/164.js @@ -1,132 +1,132 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oNewspaperZombie, - oJackinTheBoxZombie, - oFootballZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - oZomboni, - oPoleVaultingZombie, - oJY, - oEunZombie, - oSnorkelZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - ], - PicArr: (function () { - return ["images/interface/background3.png"]; - })(), - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LevelName: "常青之塔 14层", - LvlEName: 164, - SunNum: 4e3, - Coord: 2, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "WateryGraves", - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oNewspaperZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDancingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - [oZomboni, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oJY, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oSnorkelZombie, 1, 1], - [oEunZombie, 1, 1], - ], - FlagNum: 20, - FlagToSumNum: { a1: [26, 29, 44], a2: [26, 29, 64] }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(165); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oNewspaperZombie, + oJackinTheBoxZombie, + oFootballZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + oZomboni, + oPoleVaultingZombie, + oJY, + oEunZombie, + oSnorkelZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + ], + PicArr: (function () { + return ["images/interface/background3.png"]; + })(), + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LevelName: "常青之塔 14层", + LvlEName: 164, + SunNum: 4e3, + Coord: 2, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "WateryGraves", + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oNewspaperZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDancingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + [oZomboni, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oJY, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oSnorkelZombie, 1, 1], + [oEunZombie, 1, 1], + ], + FlagNum: 20, + FlagToSumNum: { a1: [26, 29, 44], a2: [26, 29, 64] }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(165); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/165.js b/game/level/165.js index 5e5c1b89..7d891577 100644 --- a/game/level/165.js +++ b/game/level/165.js @@ -1,134 +1,134 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oNewspaperZombie, - oJackinTheBoxZombie, - oFootballZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - oZomboni, - oPoleVaultingZombie, - oJY, - oEunZombie, - oSnorkelZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oWJY, - ], - PicArr: (function () { - return ["images/interface/background3.png"]; - })(), - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LevelName: "常青之塔 15层", - LvlEName: 165, - SunNum: 4500, - Coord: 2, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "WateryGraves", - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oNewspaperZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDancingZombie, 1, 1], - [oScreenDoorZombie, 1, 1], - [oZomboni, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oJY, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oSnorkelZombie, 1, 1], - [oEunZombie, 1, 1], - [oWJY, 1, 20, [20]], - ], - FlagNum: 20, - FlagToSumNum: { a1: [29, 32, 47], a2: [29, 32, 67] }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(166); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oNewspaperZombie, + oJackinTheBoxZombie, + oFootballZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + oZomboni, + oPoleVaultingZombie, + oJY, + oEunZombie, + oSnorkelZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oWJY, + ], + PicArr: (function () { + return ["images/interface/background3.png"]; + })(), + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LevelName: "常青之塔 15层", + LvlEName: 165, + SunNum: 4500, + Coord: 2, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "WateryGraves", + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oNewspaperZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDancingZombie, 1, 1], + [oScreenDoorZombie, 1, 1], + [oZomboni, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oJY, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oSnorkelZombie, 1, 1], + [oEunZombie, 1, 1], + [oWJY, 1, 20, [20]], + ], + FlagNum: 20, + FlagToSumNum: { a1: [29, 32, 47], a2: [29, 32, 67] }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(166); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/166.js b/game/level/166.js index 14b6dedf..eaf42a28 100644 --- a/game/level/166.js +++ b/game/level/166.js @@ -1,132 +1,132 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oDolphinRiderZombie, - oCBucketheadZombie, - ], - PicArr: (function () { - return ["images/interface/background4.jpg"]; - })(), - backgroundImage: "images/interface/background4.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 16层", - LvlEName: 166, - SunNum: 4500, - DKind: 0, - Coord: 2, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "RigorMormist", - LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDolphinRiderZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [33, 36, 51], a2: [33, 36, 71] }, - FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(167); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oDolphinRiderZombie, + oCBucketheadZombie, + ], + PicArr: (function () { + return ["images/interface/background4.jpg"]; + })(), + backgroundImage: "images/interface/background4.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 16层", + LvlEName: 166, + SunNum: 4500, + DKind: 0, + Coord: 2, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "RigorMormist", + LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDolphinRiderZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [33, 36, 51], a2: [33, 36, 71] }, + FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(167); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/167.js b/game/level/167.js index 9120d101..ad0300b0 100644 --- a/game/level/167.js +++ b/game/level/167.js @@ -1,132 +1,132 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oDolphinRiderZombie, - oCBucketheadZombie, - ], - PicArr: (function () { - return ["images/interface/background4.jpg"]; - })(), - backgroundImage: "images/interface/background4.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 17层", - LvlEName: 167, - SunNum: 4500, - DKind: 0, - Coord: 2, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "RigorMormist", - LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDolphinRiderZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [37, 40, 55], a2: [37, 40, 75] }, - FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(168); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oDolphinRiderZombie, + oCBucketheadZombie, + ], + PicArr: (function () { + return ["images/interface/background4.jpg"]; + })(), + backgroundImage: "images/interface/background4.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 17层", + LvlEName: 167, + SunNum: 4500, + DKind: 0, + Coord: 2, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "RigorMormist", + LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDolphinRiderZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [37, 40, 55], a2: [37, 40, 75] }, + FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(168); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/168.js b/game/level/168.js index 0f550b6e..c8e87809 100644 --- a/game/level/168.js +++ b/game/level/168.js @@ -1,132 +1,132 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oDolphinRiderZombie, - oCBucketheadZombie, - ], - PicArr: (function () { - return ["images/interface/background4.jpg"]; - })(), - backgroundImage: "images/interface/background4.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 18层", - LvlEName: 168, - SunNum: 4500, - DKind: 0, - Coord: 2, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "RigorMormist", - LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDolphinRiderZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [41, 44, 59], a2: [41, 44, 79] }, - FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(169); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oDolphinRiderZombie, + oCBucketheadZombie, + ], + PicArr: (function () { + return ["images/interface/background4.jpg"]; + })(), + backgroundImage: "images/interface/background4.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 18层", + LvlEName: 168, + SunNum: 4500, + DKind: 0, + Coord: 2, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "RigorMormist", + LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDolphinRiderZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [41, 44, 59], a2: [41, 44, 79] }, + FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(169); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/169.js b/game/level/169.js index d31522e4..bdd830b4 100644 --- a/game/level/169.js +++ b/game/level/169.js @@ -1,132 +1,132 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oDolphinRiderZombie, - oCBucketheadZombie, - ], - PicArr: (function () { - return ["images/interface/background4.jpg"]; - })(), - backgroundImage: "images/interface/background4.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 19层", - LvlEName: 169, - SunNum: 4500, - DKind: 0, - Coord: 2, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "RigorMormist", - LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDolphinRiderZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [45, 48, 63], a2: [45, 48, 83] }, - FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(170); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oDolphinRiderZombie, + oCBucketheadZombie, + ], + PicArr: (function () { + return ["images/interface/background4.jpg"]; + })(), + backgroundImage: "images/interface/background4.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 19层", + LvlEName: 169, + SunNum: 4500, + DKind: 0, + Coord: 2, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "RigorMormist", + LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDolphinRiderZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [45, 48, 63], a2: [45, 48, 83] }, + FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(170); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/17.js b/game/level/17.js index 8c91b3bf..caea99cb 100644 --- a/game/level/17.js +++ b/game/level/17.js @@ -1,91 +1,91 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oScreenDoorZombie, - oFootballZombie, - ], - PicArr: (function () { - var a = oIceShroom.prototype, - b = a.PicArr; - return [ - "images/interface/background2.jpg", - "images/interface/Tombstones.png", - "images/interface/Tombstone_mounds.png", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - DKind: 0, - SunNum: 50, - LevelName: "Level 2-7", - LvlEName: 17, - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - Monitor: { f: AppearTombstones, ar: [5, 9, 11] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([ - oZombie, - oConeheadZombie, - oBucketheadZombie, - ]); - }, - StartGameMusic: "Moongrains", - }, - { - AZ: [ - [oZombie, 2, 1], - [oZombie2, 2, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 3, 1], - [oScreenDoorZombie, 1, 1], - [oFootballZombie, 1, 1], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19], - a2: [1, 2, 3, 10, 4, 5, 6, 15], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/IceShroom.png", - "left:587px;top:270px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oIceShroom, 18); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:235px;left:596px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oScreenDoorZombie, + oFootballZombie, + ], + PicArr: (function () { + var a = oIceShroom.prototype, + b = a.PicArr; + return [ + "images/interface/background2.jpg", + "images/interface/Tombstones.png", + "images/interface/Tombstone_mounds.png", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + DKind: 0, + SunNum: 50, + LevelName: "Level 2-7", + LvlEName: 17, + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + Monitor: { f: AppearTombstones, ar: [5, 9, 11] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([ + oZombie, + oConeheadZombie, + oBucketheadZombie, + ]); + }, + StartGameMusic: "Moongrains", + }, + { + AZ: [ + [oZombie, 2, 1], + [oZombie2, 2, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 3, 1], + [oScreenDoorZombie, 1, 1], + [oFootballZombie, 1, 1], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19], + a2: [1, 2, 3, 10, 4, 5, 6, 15], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/IceShroom.png", + "left:587px;top:270px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oIceShroom, 18); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:235px;left:596px", + EDAll + ); + }, + } ); diff --git a/game/level/170.js b/game/level/170.js index cc162b69..20dcdc9b 100644 --- a/game/level/170.js +++ b/game/level/170.js @@ -1,230 +1,230 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oDolphinRiderZombie, - oCBucketheadZombie, - oLGBOSS, - ], - PicArr: (function () { - return ["images/interface/background4.jpg"]; - })(), - backgroundImage: "images/interface/background4.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 20层", - LvlEName: 170, - SunNum: 5e3, - DKind: 0, - Coord: 2, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "RigorMormist", - LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - innerText(c, "天哪,不知不觉已经到20层了。"); - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - innerText(c, "难度你也是知道的。"); - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - innerText(c, "只是,这次你可能没有那么顺利"); - break; - case 3: - PlayAudio("crazydaveshort2"); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 100, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - innerText(c, "祝你好运,不要被僵尸吃了!"); - break; - case 4: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 50, - function () { - ClearChild($("dDave")); - a(0); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDolphinRiderZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oLGBOSS, 1, 10, [10]], - ], - FlagNum: 10, - FlagToSumNum: { a1: [49, 52, 67], a2: [49, 52, 87] }, - FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(171); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oDolphinRiderZombie, + oCBucketheadZombie, + oLGBOSS, + ], + PicArr: (function () { + return ["images/interface/background4.jpg"]; + })(), + backgroundImage: "images/interface/background4.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 20层", + LvlEName: 170, + SunNum: 5e3, + DKind: 0, + Coord: 2, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "RigorMormist", + LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + innerText(c, "天哪,不知不觉已经到20层了。"); + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + innerText(c, "难度你也是知道的。"); + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + innerText(c, "只是,这次你可能没有那么顺利"); + break; + case 3: + PlayAudio("crazydaveshort2"); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 100, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + innerText(c, "祝你好运,不要被僵尸吃了!"); + break; + case 4: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 50, + function () { + ClearChild($("dDave")); + a(0); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDolphinRiderZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oLGBOSS, 1, 10, [10]], + ], + FlagNum: 10, + FlagToSumNum: { a1: [49, 52, 67], a2: [49, 52, 87] }, + FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(171); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/171.js b/game/level/171.js index 3fbf4c71..b73b78c2 100644 --- a/game/level/171.js +++ b/game/level/171.js @@ -1,120 +1,120 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oMustacheZombie, - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oCBucketheadZombie, - oFootballZombie, - oXBZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 21层", - LvlEName: 171, - SunNum: 5e3, - DKind: 0, - LF: [0, 3, 3, 3, 3, 3, 3], - StartGameMusic: "Lg_pk", - LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oCZombie3, 1, 1], - [oCZombie2, 1, 1], - [oMustacheZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [54, 57, 72], a2: [54, 57, 92] }, - FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(172); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oMustacheZombie, + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oCBucketheadZombie, + oFootballZombie, + oXBZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 21层", + LvlEName: 171, + SunNum: 5e3, + DKind: 0, + LF: [0, 3, 3, 3, 3, 3, 3], + StartGameMusic: "Lg_pk", + LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oCZombie3, 1, 1], + [oCZombie2, 1, 1], + [oMustacheZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [54, 57, 72], a2: [54, 57, 92] }, + FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(172); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/172.js b/game/level/172.js index db58c3ea..301cd6e9 100644 --- a/game/level/172.js +++ b/game/level/172.js @@ -1,120 +1,120 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oMustacheZombie, - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oCBucketheadZombie, - oFootballZombie, - oXBZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 22层", - LvlEName: 172, - SunNum: 5e3, - DKind: 0, - LF: [0, 3, 3, 3, 3, 3, 3], - StartGameMusic: "Lg_pk", - LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oCZombie3, 1, 1], - [oCZombie2, 1, 1], - [oMustacheZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [59, 62, 77], a2: [59, 62, 97] }, - FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(173); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oMustacheZombie, + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oCBucketheadZombie, + oFootballZombie, + oXBZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 22层", + LvlEName: 172, + SunNum: 5e3, + DKind: 0, + LF: [0, 3, 3, 3, 3, 3, 3], + StartGameMusic: "Lg_pk", + LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oCZombie3, 1, 1], + [oCZombie2, 1, 1], + [oMustacheZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [59, 62, 77], a2: [59, 62, 97] }, + FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(173); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/173.js b/game/level/173.js index 3be4f879..d0ebd2c2 100644 --- a/game/level/173.js +++ b/game/level/173.js @@ -1,120 +1,120 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oMustacheZombie, - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oCBucketheadZombie, - oFootballZombie, - oXBZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 23层", - LvlEName: 173, - SunNum: 5e3, - DKind: 0, - LF: [0, 3, 3, 3, 3, 3, 3], - StartGameMusic: "Lg_pk", - LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oCZombie3, 1, 1], - [oCZombie2, 1, 1], - [oMustacheZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [64, 66, 82], a2: [64, 66, 102] }, - FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(174); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oMustacheZombie, + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oCBucketheadZombie, + oFootballZombie, + oXBZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 23层", + LvlEName: 173, + SunNum: 5e3, + DKind: 0, + LF: [0, 3, 3, 3, 3, 3, 3], + StartGameMusic: "Lg_pk", + LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oCZombie3, 1, 1], + [oCZombie2, 1, 1], + [oMustacheZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [64, 66, 82], a2: [64, 66, 102] }, + FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(174); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/174.js b/game/level/174.js index 8f45ed06..e1c28e00 100644 --- a/game/level/174.js +++ b/game/level/174.js @@ -1,120 +1,120 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oMustacheZombie, - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oCBucketheadZombie, - oFootballZombie, - oXBZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 24层", - LvlEName: 174, - SunNum: 5e3, - DKind: 0, - LF: [0, 3, 3, 3, 3, 3, 3], - StartGameMusic: "Lg_pk", - LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oCZombie3, 1, 1], - [oCZombie2, 1, 1], - [oMustacheZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [35, 69, 71, 87], a2: [35, 69, 71, 107] }, - FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(175); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oMustacheZombie, + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oCBucketheadZombie, + oFootballZombie, + oXBZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 24层", + LvlEName: 174, + SunNum: 5e3, + DKind: 0, + LF: [0, 3, 3, 3, 3, 3, 3], + StartGameMusic: "Lg_pk", + LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oCZombie3, 1, 1], + [oCZombie2, 1, 1], + [oMustacheZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [35, 69, 71, 87], a2: [35, 69, 71, 107] }, + FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(175); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/175.js b/game/level/175.js index d6629d9d..d6f240e5 100644 --- a/game/level/175.js +++ b/game/level/175.js @@ -1,122 +1,122 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oMustacheZombie, - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oCBucketheadZombie, - oFootballZombie, - oXBZombie, - oEmperor, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 25层", - LvlEName: 175, - SunNum: 6e3, - DKind: 0, - LF: [0, 3, 3, 3, 3, 3, 3], - StartGameMusic: "Lg_pk", - LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oCZombie3, 1, 1], - [oCZombie2, 1, 1], - [oMustacheZombie, 1, 1], - [oEmperor, 1, 10, [10]], - ], - FlagNum: 10, - FlagToSumNum: { a1: [35, 69, 71, 87], a2: [35, 69, 71, 107] }, - FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(176); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oMustacheZombie, + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oCBucketheadZombie, + oFootballZombie, + oXBZombie, + oEmperor, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 25层", + LvlEName: 175, + SunNum: 6e3, + DKind: 0, + LF: [0, 3, 3, 3, 3, 3, 3], + StartGameMusic: "Lg_pk", + LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oCZombie3, 1, 1], + [oCZombie2, 1, 1], + [oMustacheZombie, 1, 1], + [oEmperor, 1, 10, [10]], + ], + FlagNum: 10, + FlagToSumNum: { a1: [35, 69, 71, 87], a2: [35, 69, 71, 107] }, + FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(176); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/176.js b/game/level/176.js index 9e9b76ff..95049afc 100644 --- a/game/level/176.js +++ b/game/level/176.js @@ -1,120 +1,120 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - oWarshipsZombie, - ], - PicArr: (function () { - return ["images/interface/background5.jpg"]; - })(), - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 26层", - LvlEName: 176, - SunNum: 6e3, - LF: [0, 2, 2, 2, 2, 2, 2], - StartGameMusic: "jiaxing", - LargeWaveFlag: {}, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(4, 9, 6, [oDuckyTubeZombie2]); - }, - }, - { - AZ: [ - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oDolphinRiderZombie, 1, 1], - [oSubZombie, 1, 1], - [oSnorkelZombie, 1, 1], - [oWarshipsZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [40, 74, 76, 92], a2: [40, 74, 76, 112] }, - FlagToMonitor: {}, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(177); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + oWarshipsZombie, + ], + PicArr: (function () { + return ["images/interface/background5.jpg"]; + })(), + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 26层", + LvlEName: 176, + SunNum: 6e3, + LF: [0, 2, 2, 2, 2, 2, 2], + StartGameMusic: "jiaxing", + LargeWaveFlag: {}, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(4, 9, 6, [oDuckyTubeZombie2]); + }, + }, + { + AZ: [ + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oDolphinRiderZombie, 1, 1], + [oSubZombie, 1, 1], + [oSnorkelZombie, 1, 1], + [oWarshipsZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [40, 74, 76, 92], a2: [40, 74, 76, 112] }, + FlagToMonitor: {}, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(177); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/177.js b/game/level/177.js index 5ad2b10f..6dc6babf 100644 --- a/game/level/177.js +++ b/game/level/177.js @@ -1,114 +1,114 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - ], - PicArr: (function () { - return ["images/interface/background5.jpg"]; - })(), - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 27层", - LvlEName: 177, - SunNum: 6e3, - LF: [0, 2, 2, 2, 2, 2, 2], - StartGameMusic: "jiaxing", - LargeWaveFlag: {}, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - }, - { - AZ: [ - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oDolphinRiderZombie, 1, 1], - [oSubZombie, 1, 1], - [oSnorkelZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [45, 79, 81, 97], a2: [45, 79, 81, 112] }, - FlagToMonitor: {}, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(178); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + ], + PicArr: (function () { + return ["images/interface/background5.jpg"]; + })(), + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 27层", + LvlEName: 177, + SunNum: 6e3, + LF: [0, 2, 2, 2, 2, 2, 2], + StartGameMusic: "jiaxing", + LargeWaveFlag: {}, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + }, + { + AZ: [ + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oDolphinRiderZombie, 1, 1], + [oSubZombie, 1, 1], + [oSnorkelZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [45, 79, 81, 97], a2: [45, 79, 81, 112] }, + FlagToMonitor: {}, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(178); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/178.js b/game/level/178.js index 8b0704bc..7c4be5fa 100644 --- a/game/level/178.js +++ b/game/level/178.js @@ -1,114 +1,114 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - ], - PicArr: (function () { - return ["images/interface/background5.jpg"]; - })(), - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 28层", - LvlEName: 178, - SunNum: 6e3, - LF: [0, 2, 2, 2, 2, 2, 2], - StartGameMusic: "jiaxing", - LargeWaveFlag: {}, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - }, - { - AZ: [ - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oDolphinRiderZombie, 1, 1], - [oSubZombie, 1, 1], - [oSnorkelZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [20, 50, 84, 85, 102], a2: [20, 50, 84, 85, 117] }, - FlagToMonitor: {}, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(179); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + ], + PicArr: (function () { + return ["images/interface/background5.jpg"]; + })(), + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 28层", + LvlEName: 178, + SunNum: 6e3, + LF: [0, 2, 2, 2, 2, 2, 2], + StartGameMusic: "jiaxing", + LargeWaveFlag: {}, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + }, + { + AZ: [ + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oDolphinRiderZombie, 1, 1], + [oSubZombie, 1, 1], + [oSnorkelZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [20, 50, 84, 85, 102], a2: [20, 50, 84, 85, 117] }, + FlagToMonitor: {}, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(179); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/179.js b/game/level/179.js index d836d6e6..806c3022 100644 --- a/game/level/179.js +++ b/game/level/179.js @@ -1,114 +1,114 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - ], - PicArr: (function () { - return ["images/interface/background5.jpg"]; - })(), - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 29层", - LvlEName: 179, - SunNum: 6e3, - LF: [0, 2, 2, 2, 2, 2, 2], - StartGameMusic: "jiaxing", - LargeWaveFlag: {}, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - }, - { - AZ: [ - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oDolphinRiderZombie, 1, 1], - [oSubZombie, 1, 1], - [oSnorkelZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [25, 55, 89, 90, 102], a2: [25, 55, 89, 90, 117] }, - FlagToMonitor: {}, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(180); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + ], + PicArr: (function () { + return ["images/interface/background5.jpg"]; + })(), + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 29层", + LvlEName: 179, + SunNum: 6e3, + LF: [0, 2, 2, 2, 2, 2, 2], + StartGameMusic: "jiaxing", + LargeWaveFlag: {}, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + }, + { + AZ: [ + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oDolphinRiderZombie, 1, 1], + [oSubZombie, 1, 1], + [oSnorkelZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [25, 55, 89, 90, 102], a2: [25, 55, 89, 90, 117] }, + FlagToMonitor: {}, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(180); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/18.js b/game/level/18.js index 8f0ae12d..c14bff3f 100644 --- a/game/level/18.js +++ b/game/level/18.js @@ -1,87 +1,87 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oDancingZombie, - oBackupDancer, - ], - PicArr: (function () { - var a = oIceShroom.prototype, - b = a.PicArr; - return [ - "images/interface/background2.jpg", - "images/interface/Tombstones.png", - "images/interface/Tombstone_mounds.png", - "images/Card/Plants/DoomShroom.png", - ]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - DKind: 0, - SunNum: 50, - LevelName: "Level 2-8", - LvlEName: 18, - LargeWaveFlag: { 10: $("imgFlag1") }, - Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([ - oZombie, - oConeheadZombie, - oBucketheadZombie, - ]); - }, - StartGameMusic: "Moongrains", - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 2, 1], - [oDancingZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 15] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/DoomShroom.png", - "left:587px;top:270px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - SelectModal(0); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:235px;left:596px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oDancingZombie, + oBackupDancer, + ], + PicArr: (function () { + var a = oIceShroom.prototype, + b = a.PicArr; + return [ + "images/interface/background2.jpg", + "images/interface/Tombstones.png", + "images/interface/Tombstone_mounds.png", + "images/Card/Plants/DoomShroom.png", + ]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + DKind: 0, + SunNum: 50, + LevelName: "Level 2-8", + LvlEName: 18, + LargeWaveFlag: { 10: $("imgFlag1") }, + Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([ + oZombie, + oConeheadZombie, + oBucketheadZombie, + ]); + }, + StartGameMusic: "Moongrains", + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 2, 1], + [oDancingZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 15] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/DoomShroom.png", + "left:587px;top:270px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + SelectModal(0); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:235px;left:596px", + EDAll + ); + }, + } ); diff --git a/game/level/180.js b/game/level/180.js index dd0e9196..dc3bafd4 100644 --- a/game/level/180.js +++ b/game/level/180.js @@ -1,116 +1,116 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - oWJY1, - ], - PicArr: (function () { - return ["images/interface/background5.jpg"]; - })(), - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 30层", - LvlEName: 180, - SunNum: 7e3, - LF: [0, 2, 2, 2, 2, 2, 2], - StartGameMusic: "jiaxing", - LargeWaveFlag: {}, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - }, - { - AZ: [ - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oDolphinRiderZombie, 1, 1], - [oSubZombie, 1, 1], - [oSnorkelZombie, 1, 1], - [oWJY1, 1, 10, [10]], - ], - FlagNum: 10, - FlagToSumNum: { a1: [30, 60, 94, 95, 102], a2: [30, 60, 94, 95, 117] }, - FlagToMonitor: {}, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(181); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + oWJY1, + ], + PicArr: (function () { + return ["images/interface/background5.jpg"]; + })(), + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 30层", + LvlEName: 180, + SunNum: 7e3, + LF: [0, 2, 2, 2, 2, 2, 2], + StartGameMusic: "jiaxing", + LargeWaveFlag: {}, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + }, + { + AZ: [ + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oDolphinRiderZombie, 1, 1], + [oSubZombie, 1, 1], + [oSnorkelZombie, 1, 1], + [oWJY1, 1, 10, [10]], + ], + FlagNum: 10, + FlagToSumNum: { a1: [30, 60, 94, 95, 102], a2: [30, 60, 94, 95, 117] }, + FlagToMonitor: {}, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(181); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/181.js b/game/level/181.js index b54a2996..1d27002c 100644 --- a/game/level/181.js +++ b/game/level/181.js @@ -1,137 +1,137 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oBalloonZombie, - oZombie, - oBucketheadZombie, - oConeheadZombie, - oCZombie, - oCBucketheadZombie, - oCConeheadZombie, - oFootballZombie, - oHeiFootballZombie, - oJackinTheBoxZombie, - oCJackinTheBoxZombie, - oImp, - oDancingZombie, - oBackupDancer, - oMustacheZombie, - oXBZombie, - oNewspaperZombie, - oCNewspaperZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundwall.jpg"]; - })(), - backgroundImage: "images/interface/backgroundwall.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 31层", - LvlEName: 181, - SunNum: 7e3, - LF: [0, 3, 3, 3, 3, 3, 3], - StartGameMusic: "The Great Wall", - LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - }, - { - AZ: [ - [oBalloonZombie, 1, 1], - [oZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oConeheadZombie, 1, 1], - [oCZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oCJackinTheBoxZombie, 1, 1], - [oImp, 1, 1], - [oDancingZombie, 1, 1], - [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], - [oNewspaperZombie, 1, 1], - [oCNewspaperZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { - a1: [12, 36, 65, 80, 100, 101, 108], - a2: [12, 36, 65, 80, 100, 101, 123], - }, - FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(182); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oBalloonZombie, + oZombie, + oBucketheadZombie, + oConeheadZombie, + oCZombie, + oCBucketheadZombie, + oCConeheadZombie, + oFootballZombie, + oHeiFootballZombie, + oJackinTheBoxZombie, + oCJackinTheBoxZombie, + oImp, + oDancingZombie, + oBackupDancer, + oMustacheZombie, + oXBZombie, + oNewspaperZombie, + oCNewspaperZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundwall.jpg"]; + })(), + backgroundImage: "images/interface/backgroundwall.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 31层", + LvlEName: 181, + SunNum: 7e3, + LF: [0, 3, 3, 3, 3, 3, 3], + StartGameMusic: "The Great Wall", + LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + }, + { + AZ: [ + [oBalloonZombie, 1, 1], + [oZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oConeheadZombie, 1, 1], + [oCZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oCJackinTheBoxZombie, 1, 1], + [oImp, 1, 1], + [oDancingZombie, 1, 1], + [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], + [oNewspaperZombie, 1, 1], + [oCNewspaperZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { + a1: [12, 36, 65, 80, 100, 101, 108], + a2: [12, 36, 65, 80, 100, 101, 123], + }, + FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(182); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/182.js b/game/level/182.js index f3b29b5d..5c9a6333 100644 --- a/game/level/182.js +++ b/game/level/182.js @@ -1,137 +1,137 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oBalloonZombie, - oZombie, - oBucketheadZombie, - oConeheadZombie, - oCZombie, - oCBucketheadZombie, - oCConeheadZombie, - oFootballZombie, - oHeiFootballZombie, - oJackinTheBoxZombie, - oCJackinTheBoxZombie, - oImp, - oDancingZombie, - oBackupDancer, - oMustacheZombie, - oXBZombie, - oNewspaperZombie, - oCNewspaperZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundwall.jpg"]; - })(), - backgroundImage: "images/interface/backgroundwall.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 32层", - LvlEName: 182, - SunNum: 7e3, - LF: [0, 3, 3, 3, 3, 3, 3], - StartGameMusic: "The Great Wall", - LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - }, - { - AZ: [ - [oBalloonZombie, 1, 1], - [oZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oConeheadZombie, 1, 1], - [oCZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oCJackinTheBoxZombie, 1, 1], - [oImp, 1, 1], - [oDancingZombie, 1, 1], - [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], - [oNewspaperZombie, 1, 1], - [oCNewspaperZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { - a1: [18, 42, 71, 86, 106, 107, 114], - a2: [18, 42, 71, 86, 106, 107, 129], - }, - FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(183); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oBalloonZombie, + oZombie, + oBucketheadZombie, + oConeheadZombie, + oCZombie, + oCBucketheadZombie, + oCConeheadZombie, + oFootballZombie, + oHeiFootballZombie, + oJackinTheBoxZombie, + oCJackinTheBoxZombie, + oImp, + oDancingZombie, + oBackupDancer, + oMustacheZombie, + oXBZombie, + oNewspaperZombie, + oCNewspaperZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundwall.jpg"]; + })(), + backgroundImage: "images/interface/backgroundwall.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 32层", + LvlEName: 182, + SunNum: 7e3, + LF: [0, 3, 3, 3, 3, 3, 3], + StartGameMusic: "The Great Wall", + LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + }, + { + AZ: [ + [oBalloonZombie, 1, 1], + [oZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oConeheadZombie, 1, 1], + [oCZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oCJackinTheBoxZombie, 1, 1], + [oImp, 1, 1], + [oDancingZombie, 1, 1], + [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], + [oNewspaperZombie, 1, 1], + [oCNewspaperZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { + a1: [18, 42, 71, 86, 106, 107, 114], + a2: [18, 42, 71, 86, 106, 107, 129], + }, + FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(183); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/183.js b/game/level/183.js index 72a45ab9..16d91ff0 100644 --- a/game/level/183.js +++ b/game/level/183.js @@ -1,137 +1,137 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oBalloonZombie, - oZombie, - oBucketheadZombie, - oConeheadZombie, - oCZombie, - oCBucketheadZombie, - oCConeheadZombie, - oFootballZombie, - oHeiFootballZombie, - oJackinTheBoxZombie, - oCJackinTheBoxZombie, - oImp, - oDancingZombie, - oBackupDancer, - oMustacheZombie, - oXBZombie, - oNewspaperZombie, - oCNewspaperZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundwall.jpg"]; - })(), - backgroundImage: "images/interface/backgroundwall.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 33层", - LvlEName: 182, - SunNum: 7e3, - LF: [0, 3, 3, 3, 3, 3, 3], - StartGameMusic: "The Great Wall", - LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - }, - { - AZ: [ - [oBalloonZombie, 1, 1], - [oZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oConeheadZombie, 1, 1], - [oCZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oCJackinTheBoxZombie, 1, 1], - [oImp, 1, 1], - [oDancingZombie, 1, 1], - [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], - [oNewspaperZombie, 1, 1], - [oCNewspaperZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { - a1: [24, 48, 77, 92, 112, 113, 120], - a2: [24, 48, 77, 92, 112, 113, 135], - }, - FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(184); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oBalloonZombie, + oZombie, + oBucketheadZombie, + oConeheadZombie, + oCZombie, + oCBucketheadZombie, + oCConeheadZombie, + oFootballZombie, + oHeiFootballZombie, + oJackinTheBoxZombie, + oCJackinTheBoxZombie, + oImp, + oDancingZombie, + oBackupDancer, + oMustacheZombie, + oXBZombie, + oNewspaperZombie, + oCNewspaperZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundwall.jpg"]; + })(), + backgroundImage: "images/interface/backgroundwall.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 33层", + LvlEName: 182, + SunNum: 7e3, + LF: [0, 3, 3, 3, 3, 3, 3], + StartGameMusic: "The Great Wall", + LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + }, + { + AZ: [ + [oBalloonZombie, 1, 1], + [oZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oConeheadZombie, 1, 1], + [oCZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oCJackinTheBoxZombie, 1, 1], + [oImp, 1, 1], + [oDancingZombie, 1, 1], + [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], + [oNewspaperZombie, 1, 1], + [oCNewspaperZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { + a1: [24, 48, 77, 92, 112, 113, 120], + a2: [24, 48, 77, 92, 112, 113, 135], + }, + FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(184); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/184.js b/game/level/184.js index 4d25e6e9..4d79b5b8 100644 --- a/game/level/184.js +++ b/game/level/184.js @@ -1,137 +1,137 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oBalloonZombie, - oZombie, - oBucketheadZombie, - oConeheadZombie, - oCZombie, - oCBucketheadZombie, - oCConeheadZombie, - oFootballZombie, - oHeiFootballZombie, - oJackinTheBoxZombie, - oCJackinTheBoxZombie, - oImp, - oDancingZombie, - oBackupDancer, - oMustacheZombie, - oXBZombie, - oNewspaperZombie, - oCNewspaperZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundwall.jpg"]; - })(), - backgroundImage: "images/interface/backgroundwall.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 34层", - LvlEName: 184, - SunNum: 7e3, - LF: [0, 3, 3, 3, 3, 3, 3], - StartGameMusic: "The Great Wall", - LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - }, - { - AZ: [ - [oBalloonZombie, 1, 1], - [oZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oConeheadZombie, 1, 1], - [oCZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oCJackinTheBoxZombie, 1, 1], - [oImp, 1, 1], - [oDancingZombie, 1, 1], - [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], - [oNewspaperZombie, 1, 1], - [oCNewspaperZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { - a1: [30, 54, 83, 98, 118, 121, 126], - a2: [30, 54, 83, 98, 118, 121, 141], - }, - FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(185); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oBalloonZombie, + oZombie, + oBucketheadZombie, + oConeheadZombie, + oCZombie, + oCBucketheadZombie, + oCConeheadZombie, + oFootballZombie, + oHeiFootballZombie, + oJackinTheBoxZombie, + oCJackinTheBoxZombie, + oImp, + oDancingZombie, + oBackupDancer, + oMustacheZombie, + oXBZombie, + oNewspaperZombie, + oCNewspaperZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundwall.jpg"]; + })(), + backgroundImage: "images/interface/backgroundwall.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 34层", + LvlEName: 184, + SunNum: 7e3, + LF: [0, 3, 3, 3, 3, 3, 3], + StartGameMusic: "The Great Wall", + LargeWaveFlag: { 5: $("imgFlag3"), 10: $("imgFlag1") }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + }, + { + AZ: [ + [oBalloonZombie, 1, 1], + [oZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oConeheadZombie, 1, 1], + [oCZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oCJackinTheBoxZombie, 1, 1], + [oImp, 1, 1], + [oDancingZombie, 1, 1], + [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], + [oNewspaperZombie, 1, 1], + [oCNewspaperZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { + a1: [30, 54, 83, 98, 118, 121, 126], + a2: [30, 54, 83, 98, 118, 121, 141], + }, + FlagToMonitor: { 4: [ShowLargeWave, 0], 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(185); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/185.js b/game/level/185.js index 4847a008..7f3c84ff 100644 --- a/game/level/185.js +++ b/game/level/185.js @@ -1,147 +1,147 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oBalloonZombie, - oZombie, - oBucketheadZombie, - oConeheadZombie, - oCZombie, - oCBucketheadZombie, - oCConeheadZombie, - oFootballZombie, - oHeiFootballZombie, - oJackinTheBoxZombie, - oCJackinTheBoxZombie, - oImp, - oDancingZombie, - oBackupDancer, - oMustacheZombie, - oXBZombie, - oNewspaperZombie, - oCNewspaperZombie, - oLGBOSS, - ], - PicArr: (function () { - return ["images/interface/backgroundwall.jpg"]; - })(), - backgroundImage: "images/interface/backgroundwall.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 35层", - LvlEName: 185, - SunNum: 8e3, - LF: [0, 3, 3, 3, 3, 3, 3], - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - }, - { - AZ: [ - [oBalloonZombie, 1, 1], - [oZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oConeheadZombie, 1, 1], - [oCZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oCJackinTheBoxZombie, 1, 1], - [oImp, 1, 1], - [oDancingZombie, 1, 1], - [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], - [oNewspaperZombie, 1, 1], - [oCNewspaperZombie, 1, 1], - [oLGBOSS, 1, 15, [15]], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [13, 36, 60, 89, 104, 124, 127, 132], - a2: [13, 36, 60, 89, 104, 124, 127, 147], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(186); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oBalloonZombie, + oZombie, + oBucketheadZombie, + oConeheadZombie, + oCZombie, + oCBucketheadZombie, + oCConeheadZombie, + oFootballZombie, + oHeiFootballZombie, + oJackinTheBoxZombie, + oCJackinTheBoxZombie, + oImp, + oDancingZombie, + oBackupDancer, + oMustacheZombie, + oXBZombie, + oNewspaperZombie, + oCNewspaperZombie, + oLGBOSS, + ], + PicArr: (function () { + return ["images/interface/backgroundwall.jpg"]; + })(), + backgroundImage: "images/interface/backgroundwall.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 35层", + LvlEName: 185, + SunNum: 8e3, + LF: [0, 3, 3, 3, 3, 3, 3], + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + }, + { + AZ: [ + [oBalloonZombie, 1, 1], + [oZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oConeheadZombie, 1, 1], + [oCZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oCJackinTheBoxZombie, 1, 1], + [oImp, 1, 1], + [oDancingZombie, 1, 1], + [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], + [oNewspaperZombie, 1, 1], + [oCNewspaperZombie, 1, 1], + [oLGBOSS, 1, 15, [15]], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [13, 36, 60, 89, 104, 124, 127, 132], + a2: [13, 36, 60, 89, 104, 124, 127, 147], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(186); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/186.js b/game/level/186.js index e228ce3b..b19eb704 100644 --- a/game/level/186.js +++ b/game/level/186.js @@ -1,146 +1,146 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZomboni, - oZombie, - oBucketheadZombie, - oConeheadZombie, - oCZombie, - oCBucketheadZombie, - oCConeheadZombie, - oFootballZombie, - oHeiFootballZombie, - othugZombie, - oCJackinTheBoxZombie, - oZZ, - oDancingZombie, - oBackupDancer, - oMustacheZombie, - oXBZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundwall2.jpg"]; - })(), - backgroundImage: "images/interface/backgroundwall2.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 36层", - LvlEName: 186, - SunNum: 8e3, - LF: [0, 3, 3, 3, 3, 3, 3], - DKind: 0, - StartGameMusic: "The Great Wall1", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - }, - { - AZ: [ - [oZomboni, 1, 1], - [oZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oConeheadZombie, 1, 1], - [oCZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [othugZombie, 1, 1], - [oCJackinTheBoxZombie, 1, 1], - [oZZ, 1, 1], - [oDancingZombie, 1, 1], - [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], - [oPoleVaultingZombie, 1, 1], - [oCPoleVaultingZombie, 1, 1], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [20, 43, 67, 96, 111, 131, 134, 139], - a2: [20, 43, 67, 96, 111, 131, 134, 157], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(187); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZomboni, + oZombie, + oBucketheadZombie, + oConeheadZombie, + oCZombie, + oCBucketheadZombie, + oCConeheadZombie, + oFootballZombie, + oHeiFootballZombie, + othugZombie, + oCJackinTheBoxZombie, + oZZ, + oDancingZombie, + oBackupDancer, + oMustacheZombie, + oXBZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundwall2.jpg"]; + })(), + backgroundImage: "images/interface/backgroundwall2.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 36层", + LvlEName: 186, + SunNum: 8e3, + LF: [0, 3, 3, 3, 3, 3, 3], + DKind: 0, + StartGameMusic: "The Great Wall1", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + }, + { + AZ: [ + [oZomboni, 1, 1], + [oZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oConeheadZombie, 1, 1], + [oCZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [othugZombie, 1, 1], + [oCJackinTheBoxZombie, 1, 1], + [oZZ, 1, 1], + [oDancingZombie, 1, 1], + [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], + [oPoleVaultingZombie, 1, 1], + [oCPoleVaultingZombie, 1, 1], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [20, 43, 67, 96, 111, 131, 134, 139], + a2: [20, 43, 67, 96, 111, 131, 134, 157], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(187); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/187.js b/game/level/187.js index 78a8c18d..8217d6f8 100644 --- a/game/level/187.js +++ b/game/level/187.js @@ -1,146 +1,146 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZomboni, - oZombie, - oBucketheadZombie, - oConeheadZombie, - oCZombie, - oCBucketheadZombie, - oCConeheadZombie, - oFootballZombie, - oHeiFootballZombie, - othugZombie, - oCJackinTheBoxZombie, - oZZ, - oDancingZombie, - oBackupDancer, - oMustacheZombie, - oXBZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundwall2.jpg"]; - })(), - backgroundImage: "images/interface/backgroundwall2.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 37层", - LvlEName: 187, - SunNum: 8e3, - LF: [0, 3, 3, 3, 3, 3, 3], - DKind: 0, - StartGameMusic: "The Great Wall1", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - }, - { - AZ: [ - [oZomboni, 1, 1], - [oZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oConeheadZombie, 1, 1], - [oCZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [othugZombie, 1, 1], - [oCJackinTheBoxZombie, 1, 1], - [oZZ, 1, 1], - [oDancingZombie, 1, 1], - [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], - [oPoleVaultingZombie, 1, 1], - [oCPoleVaultingZombie, 1, 1], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [27, 50, 74, 103, 118, 138, 141, 146], - a2: [27, 50, 74, 103, 118, 138, 141, 164], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(188); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZomboni, + oZombie, + oBucketheadZombie, + oConeheadZombie, + oCZombie, + oCBucketheadZombie, + oCConeheadZombie, + oFootballZombie, + oHeiFootballZombie, + othugZombie, + oCJackinTheBoxZombie, + oZZ, + oDancingZombie, + oBackupDancer, + oMustacheZombie, + oXBZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundwall2.jpg"]; + })(), + backgroundImage: "images/interface/backgroundwall2.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 37层", + LvlEName: 187, + SunNum: 8e3, + LF: [0, 3, 3, 3, 3, 3, 3], + DKind: 0, + StartGameMusic: "The Great Wall1", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + }, + { + AZ: [ + [oZomboni, 1, 1], + [oZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oConeheadZombie, 1, 1], + [oCZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [othugZombie, 1, 1], + [oCJackinTheBoxZombie, 1, 1], + [oZZ, 1, 1], + [oDancingZombie, 1, 1], + [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], + [oPoleVaultingZombie, 1, 1], + [oCPoleVaultingZombie, 1, 1], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [27, 50, 74, 103, 118, 138, 141, 146], + a2: [27, 50, 74, 103, 118, 138, 141, 164], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(188); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/188.js b/game/level/188.js index 25869d27..7b95866b 100644 --- a/game/level/188.js +++ b/game/level/188.js @@ -1,146 +1,146 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZomboni, - oZombie, - oBucketheadZombie, - oConeheadZombie, - oCZombie, - oCBucketheadZombie, - oCConeheadZombie, - oFootballZombie, - oHeiFootballZombie, - othugZombie, - oCJackinTheBoxZombie, - oZZ, - oDancingZombie, - oBackupDancer, - oMustacheZombie, - oXBZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundwall2.jpg"]; - })(), - backgroundImage: "images/interface/backgroundwall2.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 38层", - LvlEName: 188, - SunNum: 8e3, - LF: [0, 3, 3, 3, 3, 3, 3], - DKind: 0, - StartGameMusic: "The Great Wall1", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - }, - { - AZ: [ - [oZomboni, 1, 1], - [oZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oConeheadZombie, 1, 1], - [oCZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [othugZombie, 1, 1], - [oCJackinTheBoxZombie, 1, 1], - [oZZ, 1, 1], - [oDancingZombie, 1, 1], - [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], - [oPoleVaultingZombie, 1, 1], - [oCPoleVaultingZombie, 1, 1], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [34, 57, 81, 110, 125, 145, 148, 153], - a2: [34, 57, 81, 110, 125, 145, 148, 171], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(189); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZomboni, + oZombie, + oBucketheadZombie, + oConeheadZombie, + oCZombie, + oCBucketheadZombie, + oCConeheadZombie, + oFootballZombie, + oHeiFootballZombie, + othugZombie, + oCJackinTheBoxZombie, + oZZ, + oDancingZombie, + oBackupDancer, + oMustacheZombie, + oXBZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundwall2.jpg"]; + })(), + backgroundImage: "images/interface/backgroundwall2.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 38层", + LvlEName: 188, + SunNum: 8e3, + LF: [0, 3, 3, 3, 3, 3, 3], + DKind: 0, + StartGameMusic: "The Great Wall1", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + }, + { + AZ: [ + [oZomboni, 1, 1], + [oZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oConeheadZombie, 1, 1], + [oCZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [othugZombie, 1, 1], + [oCJackinTheBoxZombie, 1, 1], + [oZZ, 1, 1], + [oDancingZombie, 1, 1], + [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], + [oPoleVaultingZombie, 1, 1], + [oCPoleVaultingZombie, 1, 1], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [34, 57, 81, 110, 125, 145, 148, 153], + a2: [34, 57, 81, 110, 125, 145, 148, 171], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(189); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/189.js b/game/level/189.js index 865b0ce7..f0b6929e 100644 --- a/game/level/189.js +++ b/game/level/189.js @@ -1,146 +1,146 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZomboni, - oZombie, - oBucketheadZombie, - oConeheadZombie, - oCZombie, - oCBucketheadZombie, - oCConeheadZombie, - oFootballZombie, - oHeiFootballZombie, - othugZombie, - oCJackinTheBoxZombie, - oZZ, - oDancingZombie, - oBackupDancer, - oMustacheZombie, - oXBZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundwall2.jpg"]; - })(), - backgroundImage: "images/interface/backgroundwall2.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 39层", - LvlEName: 189, - SunNum: 8e3, - LF: [0, 3, 3, 3, 3, 3, 3], - DKind: 0, - StartGameMusic: "The Great Wall1", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - }, - { - AZ: [ - [oZomboni, 1, 1], - [oZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oConeheadZombie, 1, 1], - [oCZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [othugZombie, 1, 1], - [oCJackinTheBoxZombie, 1, 1], - [oZZ, 1, 1], - [oDancingZombie, 1, 1], - [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], - [oPoleVaultingZombie, 1, 1], - [oCPoleVaultingZombie, 1, 1], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [41, 64, 88, 117, 132, 158, 157, 160], - a2: [41, 64, 88, 117, 132, 158, 157, 178], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(190); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZomboni, + oZombie, + oBucketheadZombie, + oConeheadZombie, + oCZombie, + oCBucketheadZombie, + oCConeheadZombie, + oFootballZombie, + oHeiFootballZombie, + othugZombie, + oCJackinTheBoxZombie, + oZZ, + oDancingZombie, + oBackupDancer, + oMustacheZombie, + oXBZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundwall2.jpg"]; + })(), + backgroundImage: "images/interface/backgroundwall2.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 39层", + LvlEName: 189, + SunNum: 8e3, + LF: [0, 3, 3, 3, 3, 3, 3], + DKind: 0, + StartGameMusic: "The Great Wall1", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + }, + { + AZ: [ + [oZomboni, 1, 1], + [oZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oConeheadZombie, 1, 1], + [oCZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [othugZombie, 1, 1], + [oCJackinTheBoxZombie, 1, 1], + [oZZ, 1, 1], + [oDancingZombie, 1, 1], + [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], + [oPoleVaultingZombie, 1, 1], + [oCPoleVaultingZombie, 1, 1], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [41, 64, 88, 117, 132, 158, 157, 160], + a2: [41, 64, 88, 117, 132, 158, 157, 178], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(190); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/19.js b/game/level/19.js index 4d211e03..f3cb1d19 100644 --- a/game/level/19.js +++ b/game/level/19.js @@ -1,100 +1,100 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oDancingZombie, - oScreenDoorZombie, - oBackupDancer, - oBucketheadZombie, - ], - PicArr: [ - "images/interface/background2.jpg", - "images/interface/Tombstones.png", - "images/interface/Tombstone_mounds.png", - "images/interface/ZombieNoteSmall.png", - "images/interface/ZombieNote2.png", - ], - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - DKind: 0, - SunNum: 50, - LevelName: "Level 2-9", - LvlEName: 19, - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - Monitor: { f: AppearTombstones, ar: [5, 9, 11] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([ - oZombie, - oConeheadZombie, - oBucketheadZombie, - ]); - }, - StartGameMusic: "Moongrains", - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 3, 1], - [oScreenDoorZombie, 1, 1], - [oDancingZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19], - a2: [1, 2, 3, 10, 4, 5, 6, 15], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/ZombieNoteSmall.png", - "left:667px;top:220px", - EDAll, - { - onclick: function () { - SetHidden($("PointerUD")); - SetStyle(this, { - width: "613px", - height: "399px", - left: "193px", - top: "100px", - }).src = "images/interface/ZombieNote2.png"; - this.onclick = function () { - SelectModal(20); - }; - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oDancingZombie, + oScreenDoorZombie, + oBackupDancer, + oBucketheadZombie, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/Tombstones.png", + "images/interface/Tombstone_mounds.png", + "images/interface/ZombieNoteSmall.png", + "images/interface/ZombieNote2.png", + ], + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + DKind: 0, + SunNum: 50, + LevelName: "Level 2-9", + LvlEName: 19, + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + Monitor: { f: AppearTombstones, ar: [5, 9, 11] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([ + oZombie, + oConeheadZombie, + oBucketheadZombie, + ]); + }, + StartGameMusic: "Moongrains", + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 3, 1], + [oScreenDoorZombie, 1, 1], + [oDancingZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19], + a2: [1, 2, 3, 10, 4, 5, 6, 15], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/ZombieNoteSmall.png", + "left:667px;top:220px", + EDAll, + { + onclick: function () { + SetHidden($("PointerUD")); + SetStyle(this, { + width: "613px", + height: "399px", + left: "193px", + top: "100px", + }).src = "images/interface/ZombieNote2.png"; + this.onclick = function () { + SelectModal(20); + }; + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/190.js b/game/level/190.js index 96a63409..5de7c2e0 100644 --- a/game/level/190.js +++ b/game/level/190.js @@ -1,147 +1,147 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oGun, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oZomboni, - oZombie, - oBucketheadZombie, - oConeheadZombie, - oCZombie, - oCBucketheadZombie, - oCConeheadZombie, - oFootballZombie, - oHeiFootballZombie, - othugZombie, - oCJackinTheBoxZombie, - oZZ, - oDancingZombie, - oBackupDancer, - oMustacheZombie, - oXBZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oEmperor, - ], - PicArr: (function () { - return ["images/interface/backgroundwall2.jpg"]; - })(), - backgroundImage: "images/interface/backgroundwall2.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 40层", - LvlEName: 190, - SunNum: 9e3, - LF: [0, 3, 3, 3, 3, 3, 3], - DKind: 0, - StartGameMusic: "The Great Wall1", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - }, - { - AZ: [ - [oZomboni, 1, 1], - [oZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oConeheadZombie, 1, 1], - [oCZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [othugZombie, 1, 1], - [oCJackinTheBoxZombie, 1, 1], - [oZZ, 1, 1], - [oDancingZombie, 1, 1], - [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], - [oPoleVaultingZombie, 1, 1], - [oCPoleVaultingZombie, 1, 1], - [oEmperor, 1, 15, [15]], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [48, 71, 95, 124, 139, 167, 164, 167], - a2: [48, 71, 95, 124, 139, 167, 164, 185], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/BigChomper.png", - "left:667px;top:330px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oBigChomper, 191); - }, - } - ); - EditImg($("PointerUD"), 0, "images/interface/PointerDown.gif", { - left: "676px", - top: "295px", - visibility: "visible", - }); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oGun, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oZomboni, + oZombie, + oBucketheadZombie, + oConeheadZombie, + oCZombie, + oCBucketheadZombie, + oCConeheadZombie, + oFootballZombie, + oHeiFootballZombie, + othugZombie, + oCJackinTheBoxZombie, + oZZ, + oDancingZombie, + oBackupDancer, + oMustacheZombie, + oXBZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oEmperor, + ], + PicArr: (function () { + return ["images/interface/backgroundwall2.jpg"]; + })(), + backgroundImage: "images/interface/backgroundwall2.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 40层", + LvlEName: 190, + SunNum: 9e3, + LF: [0, 3, 3, 3, 3, 3, 3], + DKind: 0, + StartGameMusic: "The Great Wall1", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + }, + { + AZ: [ + [oZomboni, 1, 1], + [oZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oConeheadZombie, 1, 1], + [oCZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [othugZombie, 1, 1], + [oCJackinTheBoxZombie, 1, 1], + [oZZ, 1, 1], + [oDancingZombie, 1, 1], + [oMustacheZombie, 1, 1][(oXBZombie, 1, 1)], + [oPoleVaultingZombie, 1, 1], + [oCPoleVaultingZombie, 1, 1], + [oEmperor, 1, 15, [15]], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [48, 71, 95, 124, 139, 167, 164, 167], + a2: [48, 71, 95, 124, 139, 167, 164, 185], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/BigChomper.png", + "left:667px;top:330px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oBigChomper, 191); + }, + } + ); + EditImg($("PointerUD"), 0, "images/interface/PointerDown.gif", { + left: "676px", + top: "295px", + visibility: "visible", + }); + }, + } ); diff --git a/game/level/191.js b/game/level/191.js index 72043568..d59a7899 100644 --- a/game/level/191.js +++ b/game/level/191.js @@ -1,254 +1,254 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oDolphinRiderZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oSubZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX1.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX1.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 41层", - LvlEName: 191, - SunNum: 9900, - LF: [0, 2, 3, 3, 2, 2, 0], - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oLawnCleaner, 2, -1); - CustomSpecial(oLawnCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - innerText(c, "伙计,欢迎来到常青之塔41层。"); - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - innerText(c, "这里是常青之塔的一个重要分水岭。"); - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - innerText( - c, - "这里会出现各种地形限制,并且每隔五关为双boss" - ); - break; - case 3: - PlayAudio("crazydaveshort2"); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 100, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - innerText(c, "祝你好运!"); - break; - case 4: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 50, - function () { - ClearChild($("dDave")); - a(0); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDolphinRiderZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oMustacheZombie, 1, 1], - [oTrashZombie, 1, 1], - [oSubZombie, 1, 1], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [55, 78, 102, 131, 146, 174, 174], - a2: [55, 78, 102, 131, 146, 174, 193], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(192); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oDolphinRiderZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oSubZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX1.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX1.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 41层", + LvlEName: 191, + SunNum: 9900, + LF: [0, 2, 3, 3, 2, 2, 0], + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oLawnCleaner, 2, -1); + CustomSpecial(oLawnCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + innerText(c, "伙计,欢迎来到常青之塔41层。"); + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + innerText(c, "这里是常青之塔的一个重要分水岭。"); + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + innerText( + c, + "这里会出现各种地形限制,并且每隔五关为双boss" + ); + break; + case 3: + PlayAudio("crazydaveshort2"); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 100, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + innerText(c, "祝你好运!"); + break; + case 4: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 50, + function () { + ClearChild($("dDave")); + a(0); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDolphinRiderZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oMustacheZombie, 1, 1], + [oTrashZombie, 1, 1], + [oSubZombie, 1, 1], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [55, 78, 102, 131, 146, 174, 174], + a2: [55, 78, 102, 131, 146, 174, 193], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(192); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/192.js b/game/level/192.js index d24726e0..f8a3b1b2 100644 --- a/game/level/192.js +++ b/game/level/192.js @@ -1,155 +1,155 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oDolphinRiderZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oSubZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX1.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX1.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 42层", - LvlEName: 192, - SunNum: 9900, - LF: [0, 2, 3, 3, 2, 2, 0], - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oLawnCleaner, 2, -1); - CustomSpecial(oLawnCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDolphinRiderZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oMustacheZombie, 1, 1], - [oTrashZombie, 1, 1], - [oSubZombie, 1, 1], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [68, 85, 109, 138, 153, 181, 181], - a2: [68, 85, 109, 138, 153, 181, 200], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(193); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oDolphinRiderZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oSubZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX1.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX1.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 42层", + LvlEName: 192, + SunNum: 9900, + LF: [0, 2, 3, 3, 2, 2, 0], + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oLawnCleaner, 2, -1); + CustomSpecial(oLawnCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDolphinRiderZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oMustacheZombie, 1, 1], + [oTrashZombie, 1, 1], + [oSubZombie, 1, 1], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [68, 85, 109, 138, 153, 181, 181], + a2: [68, 85, 109, 138, 153, 181, 200], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(193); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/193.js b/game/level/193.js index 0f11442c..936eef1e 100644 --- a/game/level/193.js +++ b/game/level/193.js @@ -1,155 +1,155 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oDolphinRiderZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oSubZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX1.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX1.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 43层", - LvlEName: 193, - SunNum: 9900, - LF: [0, 2, 3, 3, 2, 2, 0], - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oLawnCleaner, 2, -1); - CustomSpecial(oLawnCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDolphinRiderZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oMustacheZombie, 1, 1], - [oTrashZombie, 1, 1], - [oSubZombie, 1, 1], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [75, 92, 116, 145, 160, 188, 188], - a2: [75, 92, 116, 145, 160, 188, 207], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(194); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oDolphinRiderZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oSubZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX1.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX1.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 43层", + LvlEName: 193, + SunNum: 9900, + LF: [0, 2, 3, 3, 2, 2, 0], + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oLawnCleaner, 2, -1); + CustomSpecial(oLawnCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDolphinRiderZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oMustacheZombie, 1, 1], + [oTrashZombie, 1, 1], + [oSubZombie, 1, 1], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [75, 92, 116, 145, 160, 188, 188], + a2: [75, 92, 116, 145, 160, 188, 207], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(194); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/194.js b/game/level/194.js index 5b967248..b8818c8d 100644 --- a/game/level/194.js +++ b/game/level/194.js @@ -1,155 +1,155 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oDolphinRiderZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oSubZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX1.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX1.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 44层", - LvlEName: 194, - SunNum: 9900, - LF: [0, 2, 3, 3, 2, 2, 0], - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oLawnCleaner, 2, -1); - CustomSpecial(oLawnCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDolphinRiderZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oMustacheZombie, 1, 1], - [oTrashZombie, 1, 1], - [oSubZombie, 1, 1], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [82, 99, 123, 152, 167, 195, 195], - a2: [82, 99, 123, 152, 167, 195, 214], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(195); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oDolphinRiderZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oSubZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX1.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX1.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 44层", + LvlEName: 194, + SunNum: 9900, + LF: [0, 2, 3, 3, 2, 2, 0], + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oLawnCleaner, 2, -1); + CustomSpecial(oLawnCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDolphinRiderZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oMustacheZombie, 1, 1], + [oTrashZombie, 1, 1], + [oSubZombie, 1, 1], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [82, 99, 123, 152, 167, 195, 195], + a2: [82, 99, 123, 152, 167, 195, 214], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(195); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/195.js b/game/level/195.js index 2a501183..edc72b83 100644 --- a/game/level/195.js +++ b/game/level/195.js @@ -1,159 +1,159 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oDolphinRiderZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oSubZombie, - oWJY, - oEmperor, - ], - PicArr: (function () { - return ["images/interface/backgroundX1.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX1.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 45层", - LvlEName: 194, - SunNum: 9900, - LF: [0, 2, 3, 3, 2, 2, 0], - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oLawnCleaner, 2, -1); - CustomSpecial(oLawnCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oDolphinRiderZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oMustacheZombie, 1, 1], - [oTrashZombie, 1, 1], - [oSubZombie, 1, 1], - [oWJY, 1, 15, [15]], - [oEmperor, 1, 15, [15]], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [82, 99, 123, 152, 167, 195, 195], - a2: [82, 99, 123, 152, 167, 195, 214], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(196); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oDolphinRiderZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oSubZombie, + oWJY, + oEmperor, + ], + PicArr: (function () { + return ["images/interface/backgroundX1.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX1.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 45层", + LvlEName: 194, + SunNum: 9900, + LF: [0, 2, 3, 3, 2, 2, 0], + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oLawnCleaner, 2, -1); + CustomSpecial(oLawnCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oDolphinRiderZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oMustacheZombie, 1, 1], + [oTrashZombie, 1, 1], + [oSubZombie, 1, 1], + [oWJY, 1, 15, [15]], + [oEmperor, 1, 15, [15]], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [82, 99, 123, 152, 167, 195, 195], + a2: [82, 99, 123, 152, 167, 195, 214], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(196); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/196.js b/game/level/196.js index 2e18ab89..da0f9f5c 100644 --- a/game/level/196.js +++ b/game/level/196.js @@ -1,147 +1,147 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oDancingZombie, - oBackupDancer, - oBalloonZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX2.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX2.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 46层", - LvlEName: 196, - SunNum: 9900, - LF: [0, 1, 1, 3, 1, 1, 0], - StartGameMusic: "The Great Wall1", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - DKind: 0, - Monitor: { f: AppearTombstones, ar: [5, 9, 11] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([oDancingZombie]); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oMustacheZombie, 1, 1], - [oTrashZombie, 1, 1], - [oDancingZombie, 1, 1], - [oBalloonZombie, 1, 1], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [90, 107, 131, 160, 174, 203, 203], - a2: [90, 107, 131, 160, 174, 203, 222], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(197); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oDancingZombie, + oBackupDancer, + oBalloonZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX2.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX2.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 46层", + LvlEName: 196, + SunNum: 9900, + LF: [0, 1, 1, 3, 1, 1, 0], + StartGameMusic: "The Great Wall1", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + DKind: 0, + Monitor: { f: AppearTombstones, ar: [5, 9, 11] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([oDancingZombie]); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oMustacheZombie, 1, 1], + [oTrashZombie, 1, 1], + [oDancingZombie, 1, 1], + [oBalloonZombie, 1, 1], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [90, 107, 131, 160, 174, 203, 203], + a2: [90, 107, 131, 160, 174, 203, 222], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(197); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/197.js b/game/level/197.js index 83c56436..7e20e944 100644 --- a/game/level/197.js +++ b/game/level/197.js @@ -1,147 +1,147 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oDancingZombie, - oBackupDancer, - oBalloonZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX2.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX2.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 47层", - LvlEName: 197, - SunNum: 9900, - LF: [0, 1, 1, 3, 1, 1, 0], - StartGameMusic: "The Great Wall1", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - DKind: 0, - Monitor: { f: AppearTombstones, ar: [5, 9, 11] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([oDancingZombie]); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oMustacheZombie, 1, 1], - [oTrashZombie, 1, 1], - [oDancingZombie, 1, 1], - [oBalloonZombie, 1, 1], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [98, 115, 138, 167, 180, 209, 208], - a2: [98, 115, 138, 167, 180, 209, 227], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(198); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oDancingZombie, + oBackupDancer, + oBalloonZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX2.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX2.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 47层", + LvlEName: 197, + SunNum: 9900, + LF: [0, 1, 1, 3, 1, 1, 0], + StartGameMusic: "The Great Wall1", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + DKind: 0, + Monitor: { f: AppearTombstones, ar: [5, 9, 11] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([oDancingZombie]); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oMustacheZombie, 1, 1], + [oTrashZombie, 1, 1], + [oDancingZombie, 1, 1], + [oBalloonZombie, 1, 1], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [98, 115, 138, 167, 180, 209, 208], + a2: [98, 115, 138, 167, 180, 209, 227], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(198); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/198.js b/game/level/198.js index 8358e87b..72a815be 100644 --- a/game/level/198.js +++ b/game/level/198.js @@ -1,147 +1,147 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oDancingZombie, - oBackupDancer, - oBalloonZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX2.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX2.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 48层", - LvlEName: 198, - SunNum: 9900, - LF: [0, 1, 1, 3, 1, 1, 0], - StartGameMusic: "The Great Wall1", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - DKind: 0, - Monitor: { f: AppearTombstones, ar: [5, 9, 11] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([oDancingZombie]); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oMustacheZombie, 1, 1], - [oTrashZombie, 1, 1], - [oDancingZombie, 1, 1], - [oBalloonZombie, 1, 1], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [40, 106, 123, 144, 172, 184, 212, 210], - a2: [40, 106, 123, 144, 172, 184, 212, 229], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(199); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oDancingZombie, + oBackupDancer, + oBalloonZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX2.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX2.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 48层", + LvlEName: 198, + SunNum: 9900, + LF: [0, 1, 1, 3, 1, 1, 0], + StartGameMusic: "The Great Wall1", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + DKind: 0, + Monitor: { f: AppearTombstones, ar: [5, 9, 11] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([oDancingZombie]); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oMustacheZombie, 1, 1], + [oTrashZombie, 1, 1], + [oDancingZombie, 1, 1], + [oBalloonZombie, 1, 1], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [40, 106, 123, 144, 172, 184, 212, 210], + a2: [40, 106, 123, 144, 172, 184, 212, 229], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(199); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/199.js b/game/level/199.js index 2c223b4f..371dc024 100644 --- a/game/level/199.js +++ b/game/level/199.js @@ -1,147 +1,147 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oDancingZombie, - oBackupDancer, - oBalloonZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX2.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX2.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 49层", - LvlEName: 199, - SunNum: 9900, - LF: [0, 1, 1, 3, 1, 1, 0], - StartGameMusic: "The Great Wall1", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - DKind: 0, - Monitor: { f: AppearTombstones, ar: [5, 9, 11] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([oDancingZombie]); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oMustacheZombie, 1, 1], - [oTrashZombie, 1, 1], - [oDancingZombie, 1, 1], - [oBalloonZombie, 1, 1], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [48, 123, 129, 149, 176, 187, 214, 211], - a2: [48, 123, 129, 149, 176, 187, 214, 230], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(200); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oDancingZombie, + oBackupDancer, + oBalloonZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX2.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX2.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 49层", + LvlEName: 199, + SunNum: 9900, + LF: [0, 1, 1, 3, 1, 1, 0], + StartGameMusic: "The Great Wall1", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + DKind: 0, + Monitor: { f: AppearTombstones, ar: [5, 9, 11] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([oDancingZombie]); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oMustacheZombie, 1, 1], + [oTrashZombie, 1, 1], + [oDancingZombie, 1, 1], + [oBalloonZombie, 1, 1], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [48, 123, 129, 149, 176, 187, 214, 211], + a2: [48, 123, 129, 149, 176, 187, 214, 230], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(200); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/2.js b/game/level/2.js index 4d891d65..e343a26e 100644 --- a/game/level/2.js +++ b/game/level/2.js @@ -1,268 +1,273 @@ oS.Init( - { - PName: [oPeashooter, oSunFlower], - ZName: [oZombie, oZombie2, oZombie3], - PicArr: (function () { - var a = oCherryBomb.prototype, - b = a.PicArr; - return [ - "images/interface/SodRollCap.png", - "images/interface/SodRoll.png", - "images/interface/background1unsodded2.jpg", - "images/interface/background1unsodded_1.jpg", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - backgroundImage: "images/interface/background1unsodded_1.jpg", - LF: [0, 0, 1, 1, 1, 0], - CanSelectCard: 0, - LevelName: "Recruit training 2", - LvlEName: 2, - AudioArr: ["dirt_rise"], - LargeWaveFlag: { 6: $("imgFlag1") }, - InitLawnMower: function () { - var a = 5; - while (--a > 1) { - CustomSpecial(oLawnCleaner, a, -1); - } - }, - StartGame: function () { - NewImg( - "imgSF", - "images/interface/tiaoguo.png", - "left:1px;top:150px", - EDAll, - { - onclick: function () { - SelectModal(3); - }, - } - ); - NewEle( - "sod3row", - "div", - "position:absolute;left:-115px;top:0;height:600px;width:264px;z-index:0;background:url(images/interface/background1unsodded2.jpg);over-flow:hidden", - 0, - EDPZ - ); - NewImg( - "SodRoll_1", - "images/interface/SodRoll.png", - "left:136px;top:128px;z-index:1", - EDPZ - ); - NewImg( - "SodRollCap_1", - "images/interface/SodRollCap.png", - "left:131px;top:211px;z-index:1", - EDPZ - ); - NewImg( - "SodRoll_2", - "images/interface/SodRoll.png", - "left:136px;top:348px;z-index:1", - EDPZ - ); - NewImg( - "SodRollCap_2", - "images/interface/SodRollCap.png", - "left:131px;top:431px;z-index:1", - EDPZ - ); - PlayAudio("dirt_rise"); - (function (e, h, b, d, c, g, a, f) { - e += 15; - h += 16; - d += 16; - $("sod3row").style.width = e + "px"; - SetStyle($("SodRoll_1"), { - left: h + "px", - width: --b + "px", - height: "141px", - }); - SetStyle($("SodRoll_2"), { - left: h + "px", - width: b + "px", - height: "141px", - }); - SetStyle($("SodRollCap_1"), { - left: d + "px", - width: --c + "px", - height: --g + "px", - top: ++a + "px", - }); - SetStyle($("SodRollCap_2"), { - left: d + "px", - width: c + "px", - height: g + "px", - top: ++f + "px", - }); - e < 990 - ? oSym.addTask(3, arguments.callee, [ - e, - h, - b, - d, - c, - g, - a, - f, - ]) - : (ClearChild( - $("SodRoll_1"), - $("SodRoll_2"), - $("SodRollCap_1"), - $("SodRollCap_2") - ), - (function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - oS.InitLawnMower(); - SetVisible($("dFlagMeter"), $("dTop")); - PrepareGrowPlants(function () { - NewEle("DivTeach", "div", 0, 0, EDAll); - oP.Monitor({ - ar: [0], - f: function (l) { - var m = oS.C + 1; - switch (l) { - case 0: - innerText( - $("DivTeach"), - "Sunflowers are very important plants!" - ); - NewImg( - "PointerUD", - "images/interface/PointerUP.gif", - "top:120px;left:50px", - EDAll - ); - oSym.addTask( - 10, - arguments.callee, - [++l] - ); - break; - case 1: - var j = oGd.$, - i; - for (i in j) { - if ( - j[i].EName == "oSunFlower" - ) { - innerText( - $("DivTeach"), - "Plant at least three sunflowers!" - ); - oSym.addTask( - 10, - arguments.callee, - [++l] - ).addTask( - 2500, - function () { - oP.AddZombiesFlag(); - SetVisible( - $( - "dFlagMeterContent" - ) - ); - }, - [] - ); - return; - } - } - oSym.addTask( - 10, - arguments.callee, - [l] - ); - break; - case 2: - var j = oGd.$, - i, - k = 0; - for (i in j) { - j[i].EName == "oSunFlower" && - ++k; - } - k > 1 && - (innerText( - $("DivTeach"), - "You need more sunflowers so you can plant faster!" - ), - ++l); - oSym.addTask( - 10, - arguments.callee, - [l] - ); - break; - default: - var j = oGd.$, - i, - k = 0; - for (i in j) { - j[i].EName == "oSunFlower" && - ++k; - } - k > 2 - ? (innerText( - $("DivTeach"), - "Now use the sunlight you get to grow other plants!" - ), - SetStyle($("PointerUD"), { - left: "50px", - top: "60px", - }), - oSym.addTask(500, SetNone, [ - $("PointerUD"), - $("DivTeach"), - ])) - : oSym.addTask( - 10, - arguments.callee, - [3] - ); - } - return l; - }, - }); - BeginCool(); - AutoProduceSun(25); - }); - })()); - })(283, 122, 68, 117, 73, 71, 131, 511); - }, - }, - { - AZ: [ - [oZombie, 6, 1], - [oZombie2, 2, 1], - [oZombie3, 1, 1], - ], - FlagNum: 6, - FlagToSumNum: { a1: [3, 4], a2: [1, 2, 3] }, - FlagToMonitor: { 5: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/CherryBomb.png", - "left:827px;top:220px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oCherryBomb, 3); - }, - } - ); - EditImg($("PointerUD"), 0, "images/interface/PointerDown.gif", { - left: "836px", - top: "185px", - display: "block", - }); - }, - } + { + PName: [oPeashooter, oSunFlower], + ZName: [oZombie, oZombie2, oZombie3], + PicArr: (function () { + var a = oCherryBomb.prototype, + b = a.PicArr; + return [ + "images/interface/SodRollCap.png", + "images/interface/SodRoll.png", + "images/interface/background1unsodded2.jpg", + "images/interface/background1unsodded_1.jpg", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + backgroundImage: "images/interface/background1unsodded_1.jpg", + LF: [0, 0, 1, 1, 1, 0], + CanSelectCard: 0, + LevelName: "Recruit training 2", + LvlEName: 2, + AudioArr: ["dirt_rise"], + LargeWaveFlag: { 6: $("imgFlag1") }, + InitLawnMower: function () { + var a = 5; + while (--a > 1) { + CustomSpecial(oLawnCleaner, a, -1); + } + }, + StartGame: function () { + NewImg( + "imgSF", + "images/interface/tiaoguo.png", + "left:1px;top:150px", + EDAll, + { + onclick: function () { + SelectModal(3); + }, + } + ); + NewEle( + "sod3row", + "div", + "position:absolute;left:-115px;top:0;height:600px;width:264px;z-index:0;background:url(images/interface/background1unsodded2.jpg);over-flow:hidden", + 0, + EDPZ + ); + NewImg( + "SodRoll_1", + "images/interface/SodRoll.png", + "left:136px;top:128px;z-index:1", + EDPZ + ); + NewImg( + "SodRollCap_1", + "images/interface/SodRollCap.png", + "left:131px;top:211px;z-index:1", + EDPZ + ); + NewImg( + "SodRoll_2", + "images/interface/SodRoll.png", + "left:136px;top:348px;z-index:1", + EDPZ + ); + NewImg( + "SodRollCap_2", + "images/interface/SodRollCap.png", + "left:131px;top:431px;z-index:1", + EDPZ + ); + PlayAudio("dirt_rise"); + (function (e, h, b, d, c, g, a, f) { + e += 15; + h += 16; + d += 16; + $("sod3row").style.width = e + "px"; + SetStyle($("SodRoll_1"), { + left: h + "px", + width: --b + "px", + height: "141px", + }); + SetStyle($("SodRoll_2"), { + left: h + "px", + width: b + "px", + height: "141px", + }); + SetStyle($("SodRollCap_1"), { + left: d + "px", + width: --c + "px", + height: --g + "px", + top: ++a + "px", + }); + SetStyle($("SodRollCap_2"), { + left: d + "px", + width: c + "px", + height: g + "px", + top: ++f + "px", + }); + e < 990 + ? oSym.addTask(3, arguments.callee, [ + e, + h, + b, + d, + c, + g, + a, + f, + ]) + : (ClearChild( + $("SodRoll_1"), + $("SodRoll_2"), + $("SodRollCap_1"), + $("SodRollCap_2") + ), + (function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + oS.InitLawnMower(); + SetVisible($("dFlagMeter"), $("dTop")); + PrepareGrowPlants(function () { + NewEle("DivTeach", "div", 0, 0, EDAll); + oP.Monitor({ + ar: [0], + f: function (l) { + var m = oS.C + 1; + switch (l) { + case 0: + innerText( + $("DivTeach"), + "Sunflowers are very important plants!" + ); + NewImg( + "PointerUD", + "images/interface/PointerUP.gif", + "top:120px;left:50px", + EDAll + ); + oSym.addTask( + 10, + arguments.callee, + [++l] + ); + break; + case 1: + var j = oGd.$, + i; + for (i in j) { + if ( + j[i].EName == + "oSunFlower" + ) { + innerText( + $("DivTeach"), + "Plant at least three sunflowers!" + ); + oSym.addTask( + 10, + arguments.callee, + [++l] + ).addTask( + 2500, + function () { + oP.AddZombiesFlag(); + SetVisible( + $( + "dFlagMeterContent" + ) + ); + }, + [] + ); + return; + } + } + oSym.addTask( + 10, + arguments.callee, + [l] + ); + break; + case 2: + var j = oGd.$, + i, + k = 0; + for (i in j) { + j[i].EName == + "oSunFlower" && ++k; + } + k > 1 && + (innerText( + $("DivTeach"), + "You need more sunflowers so you can plant faster!" + ), + ++l); + oSym.addTask( + 10, + arguments.callee, + [l] + ); + break; + default: + var j = oGd.$, + i, + k = 0; + for (i in j) { + j[i].EName == + "oSunFlower" && ++k; + } + k > 2 + ? (innerText( + $("DivTeach"), + "Now use the sunlight you get to grow other plants!" + ), + SetStyle($("PointerUD"), { + left: "50px", + top: "60px", + }), + oSym.addTask( + 500, + SetNone, + [ + $("PointerUD"), + $("DivTeach"), + ] + )) + : oSym.addTask( + 10, + arguments.callee, + [3] + ); + } + return l; + }, + }); + BeginCool(); + AutoProduceSun(25); + }); + })()); + })(283, 122, 68, 117, 73, 71, 131, 511); + }, + }, + { + AZ: [ + [oZombie, 6, 1], + [oZombie2, 2, 1], + [oZombie3, 1, 1], + ], + FlagNum: 6, + FlagToSumNum: { a1: [3, 4], a2: [1, 2, 3] }, + FlagToMonitor: { 5: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/CherryBomb.png", + "left:827px;top:220px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oCherryBomb, 3); + }, + } + ); + EditImg($("PointerUD"), 0, "images/interface/PointerDown.gif", { + left: "836px", + top: "185px", + display: "block", + }); + }, + } ); diff --git a/game/level/20.js b/game/level/20.js index b369399e..3e07d742 100644 --- a/game/level/20.js +++ b/game/level/20.js @@ -1,232 +1,232 @@ oS.Init( - { - PName: [ - oFumeShroom, - oHypnoShroom, - oGraveBuster, - oDoomShroom, - oScaredyShroom, - oPuffShroom, - oIceShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oDancingZombie, - oScreenDoorZombie, - oFootballZombie, - oBackupDancer, - oBucketheadZombie, - ], - PicArr: [ - "images/interface/background2.jpg", - "images/interface/trophy.png", - "images/interface/Tombstones.png", - "images/interface/Tombstone_mounds.png", - ], - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 0, - DKind: 0, - LevelName: "Level 2-10", - LvlEName: 20, - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - StaticCard: 0, - StartGameMusic: "Zombieboss", - StartGame: function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - SetHidden($("dSunNum")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor( - { - f: function () { - (function () { - var a = ArCard.length; - if (a < 10) { - var c = oS.PName, - b = Math.floor( - Math.random() * c.length - ), - e = c[b], - d = e.prototype, - f = "dCard" + Math.random(); - ArCard[a] = { - DID: f, - PName: e, - PixelTop: 600, - }; - NewImg( - f, - d.PicArr[d.CardGif], - "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", - $("dCardList"), - { - onmouseover: function (g) { - ViewPlantTitle( - GetChoseCard(f), - g - ); - }, - onmouseout: function () { - SetHidden($("dTitle")); - }, - onclick: function (g) { - ChosePlant(g, oS.ChoseCard, f); - }, - } - ); - } - oSym.addTask(600, arguments.callee, []); - })(); - (function () { - var b = ArCard.length, - a, - c; - while (b--) { - (c = (a = ArCard[b]).PixelTop) > 60 * b && - ($(a.DID).style.top = - (a.PixelTop = c - 1) + "px"); - } - oSym.addTask(5, arguments.callee, []); - })(); - AppearTombstones(4, 9, 13); - }, - ar: [], - }, - function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([ - oZombie, - oConeheadZombie, - oBucketheadZombie, - ]); - } - ); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }); - }, - }, - { - AZ: [ - [oZombie, 4, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 5, 3], - [oScreenDoorZombie, 1, 2], - [oFootballZombie, 1, 5], - [oDancingZombie, 1, 10], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19], - a2: [3, 6, 12, 20, 24, 36, 48, 60], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/LilyPad.png", - "left:667px;top:330px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oLilyPad, 21); - }, - } - ); - }, - }, - { - GetChoseCard: function (b) { - var a = ArCard.length; - while (a--) { - ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); - } - return oS.ChoseCard; - }, - ChosePlant: function (a, b) { - PlayAudio("seedlift"); - a = window.event || a; - var f = ArCard[oS.ChoseCard], - e = - a.clientX - EDAlloffsetLeft + EBody.scrollLeft || - EElement.scrollLeft, - d = a.clientY + EBody.scrollTop || EElement.scrollTop, - c = f.PName.prototype; - oS.Chose = 1; - EditImg( - NewImg( - "MovePlant", - c.PicArr[c.StaticGif], - "left:" + - e - - 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + - "px;top:" + - d + - 20 - - c.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ); - SetAlpha($(f.DID), 50, 0.5); - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant: function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); - oS.ChoseCard = ""; - GroundOnmousemove = function () {}; - }, - GrowPlant: function (l, c, b, f, a) { - var j = oS.ChoseCard, - g = ArCard[j], - i = g.PName, - k = i.prototype, - d = g.DID, - e, - h = oGd.$LF[f]; - k.CanGrow(l, f, a) && - (function () { - PlayAudio( - h != 2 - ? "plant" + Math.floor(1 + Math.random() * 2) - : "plant_water" - ); - new i().Birth(c, b, f, a, l); - oSym.addTask(20, SetNone, [ - SetStyle($("imgGrowSoil"), { - left: c - 30 + "px", - top: b - 40 + "px", - zIndex: 3 * f, - visibility: "visible", - }), - ]); - ClearChild($("MovePlant"), $("MovePlantAlpha")); - $("dCardList").removeChild((e = $(d))); - e = null; - ArCard.splice(j, 1); - oS.ChoseCard = ""; - oS.Chose = 0; - GroundOnmousemove = function () {}; - })(); - }, - ViewPlantTitle: function (a) {}, - } + { + PName: [ + oFumeShroom, + oHypnoShroom, + oGraveBuster, + oDoomShroom, + oScaredyShroom, + oPuffShroom, + oIceShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oDancingZombie, + oScreenDoorZombie, + oFootballZombie, + oBackupDancer, + oBucketheadZombie, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/Tombstones.png", + "images/interface/Tombstone_mounds.png", + ], + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 0, + DKind: 0, + LevelName: "Level 2-10", + LvlEName: 20, + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + StaticCard: 0, + StartGameMusic: "Zombieboss", + StartGame: function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + SetHidden($("dSunNum")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor( + { + f: function () { + (function () { + var a = ArCard.length; + if (a < 10) { + var c = oS.PName, + b = Math.floor( + Math.random() * c.length + ), + e = c[b], + d = e.prototype, + f = "dCard" + Math.random(); + ArCard[a] = { + DID: f, + PName: e, + PixelTop: 600, + }; + NewImg( + f, + d.PicArr[d.CardGif], + "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", + $("dCardList"), + { + onmouseover: function (g) { + ViewPlantTitle( + GetChoseCard(f), + g + ); + }, + onmouseout: function () { + SetHidden($("dTitle")); + }, + onclick: function (g) { + ChosePlant(g, oS.ChoseCard, f); + }, + } + ); + } + oSym.addTask(600, arguments.callee, []); + })(); + (function () { + var b = ArCard.length, + a, + c; + while (b--) { + (c = (a = ArCard[b]).PixelTop) > 60 * b && + ($(a.DID).style.top = + (a.PixelTop = c - 1) + "px"); + } + oSym.addTask(5, arguments.callee, []); + })(); + AppearTombstones(4, 9, 13); + }, + ar: [], + }, + function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([ + oZombie, + oConeheadZombie, + oBucketheadZombie, + ]); + } + ); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }); + }, + }, + { + AZ: [ + [oZombie, 4, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 5, 3], + [oScreenDoorZombie, 1, 2], + [oFootballZombie, 1, 5], + [oDancingZombie, 1, 10], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19], + a2: [3, 6, 12, 20, 24, 36, 48, 60], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/LilyPad.png", + "left:667px;top:330px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oLilyPad, 21); + }, + } + ); + }, + }, + { + GetChoseCard: function (b) { + var a = ArCard.length; + while (a--) { + ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); + } + return oS.ChoseCard; + }, + ChosePlant: function (a, b) { + PlayAudio("seedlift"); + a = window.event || a; + var f = ArCard[oS.ChoseCard], + e = + a.clientX - EDAlloffsetLeft + EBody.scrollLeft || + EElement.scrollLeft, + d = a.clientY + EBody.scrollTop || EElement.scrollTop, + c = f.PName.prototype; + oS.Chose = 1; + EditImg( + NewImg( + "MovePlant", + c.PicArr[c.StaticGif], + "left:" + + e - + 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + + "px;top:" + + d + + 20 - + c.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ); + SetAlpha($(f.DID), 50, 0.5); + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant: function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); + oS.ChoseCard = ""; + GroundOnmousemove = function () {}; + }, + GrowPlant: function (l, c, b, f, a) { + var j = oS.ChoseCard, + g = ArCard[j], + i = g.PName, + k = i.prototype, + d = g.DID, + e, + h = oGd.$LF[f]; + k.CanGrow(l, f, a) && + (function () { + PlayAudio( + h != 2 + ? "plant" + Math.floor(1 + Math.random() * 2) + : "plant_water" + ); + new i().Birth(c, b, f, a, l); + oSym.addTask(20, SetNone, [ + SetStyle($("imgGrowSoil"), { + left: c - 30 + "px", + top: b - 40 + "px", + zIndex: 3 * f, + visibility: "visible", + }), + ]); + ClearChild($("MovePlant"), $("MovePlantAlpha")); + $("dCardList").removeChild((e = $(d))); + e = null; + ArCard.splice(j, 1); + oS.ChoseCard = ""; + oS.Chose = 0; + GroundOnmousemove = function () {}; + })(); + }, + ViewPlantTitle: function (a) {}, + } ); diff --git a/game/level/200.js b/game/level/200.js index 48514fa8..25e9bef6 100644 --- a/game/level/200.js +++ b/game/level/200.js @@ -1,151 +1,151 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oDancingZombie, - oBackupDancer, - oBalloonZombie, - oWJY, - oLGBOSS, - ], - PicArr: (function () { - return ["images/interface/backgroundX2.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX2.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 50层", - LvlEName: 200, - SunNum: 9900, - LF: [0, 1, 1, 3, 1, 1, 0], - StartGameMusic: "The Great Wall1", - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - DKind: 0, - Monitor: { f: AppearTombstones, ar: [5, 9, 11] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([oDancingZombie]); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oMustacheZombie, 1, 1], - [oTrashZombie, 1, 1], - [oDancingZombie, 1, 1], - [oBalloonZombie, 1, 1], - [oWJY, 1, 15, [15]], - [oLGBOSS, 1, 15, [15]], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [56, 130, 135, 154, 180, 190, 216, 212], - a2: [56, 130, 135, 154, 180, 190, 216, 231], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(201); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oDancingZombie, + oBackupDancer, + oBalloonZombie, + oWJY, + oLGBOSS, + ], + PicArr: (function () { + return ["images/interface/backgroundX2.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX2.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 50层", + LvlEName: 200, + SunNum: 9900, + LF: [0, 1, 1, 3, 1, 1, 0], + StartGameMusic: "The Great Wall1", + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + DKind: 0, + Monitor: { f: AppearTombstones, ar: [5, 9, 11] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([oDancingZombie]); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oMustacheZombie, 1, 1], + [oTrashZombie, 1, 1], + [oDancingZombie, 1, 1], + [oBalloonZombie, 1, 1], + [oWJY, 1, 15, [15]], + [oLGBOSS, 1, 15, [15]], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [56, 130, 135, 154, 180, 190, 216, 212], + a2: [56, 130, 135, 154, 180, 190, 216, 231], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(201); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/201.js b/game/level/201.js index 35578b4f..8b3e7e54 100644 --- a/game/level/201.js +++ b/game/level/201.js @@ -1,142 +1,142 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oBalloonZombie, - oJX, - oNewspaperZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX3.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX3.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 51层", - LvlEName: 200, - SunNum: 9900, - LF: [0, 3, 3, 0, 3, 3, 0], - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oMustacheZombie, 1, 1], - [oTrashZombie, 1, 1], - [oBalloonZombie, 1, 1], - [oJX, 1, 1], - [oNewspaperZombie, 1, 1], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [65, 138, 143, 160, 185, 194, 219, 214], - a2: [65, 138, 143, 160, 185, 194, 219, 233], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(202); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oBalloonZombie, + oJX, + oNewspaperZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX3.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX3.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 51层", + LvlEName: 200, + SunNum: 9900, + LF: [0, 3, 3, 0, 3, 3, 0], + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oMustacheZombie, 1, 1], + [oTrashZombie, 1, 1], + [oBalloonZombie, 1, 1], + [oJX, 1, 1], + [oNewspaperZombie, 1, 1], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [65, 138, 143, 160, 185, 194, 219, 214], + a2: [65, 138, 143, 160, 185, 194, 219, 233], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(202); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/202.js b/game/level/202.js index edf5645c..7629c559 100644 --- a/game/level/202.js +++ b/game/level/202.js @@ -1,142 +1,142 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oBalloonZombie, - oJX, - oNewspaperZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX3.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX3.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 52层", - LvlEName: 200, - SunNum: 9900, - LF: [0, 3, 3, 0, 3, 3, 0], - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oMustacheZombie, 1, 1], - [oTrashZombie, 1, 1], - [oBalloonZombie, 1, 1], - [oJX, 1, 1], - [oNewspaperZombie, 1, 1], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [73, 145, 149, 165, 189, 197, 221, 215], - a2: [73, 145, 149, 165, 189, 197, 221, 234], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(203); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oBalloonZombie, + oJX, + oNewspaperZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX3.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX3.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 52层", + LvlEName: 200, + SunNum: 9900, + LF: [0, 3, 3, 0, 3, 3, 0], + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oMustacheZombie, 1, 1], + [oTrashZombie, 1, 1], + [oBalloonZombie, 1, 1], + [oJX, 1, 1], + [oNewspaperZombie, 1, 1], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [73, 145, 149, 165, 189, 197, 221, 215], + a2: [73, 145, 149, 165, 189, 197, 221, 234], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(203); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/203.js b/game/level/203.js index 1e5d2124..c82d67ea 100644 --- a/game/level/203.js +++ b/game/level/203.js @@ -1,142 +1,142 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oBalloonZombie, - oJX, - oNewspaperZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX3.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX3.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 53层", - LvlEName: 200, - SunNum: 9900, - LF: [0, 3, 3, 0, 3, 3, 0], - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oMustacheZombie, 1, 1], - [oTrashZombie, 1, 1], - [oBalloonZombie, 1, 1], - [oJX, 1, 1], - [oNewspaperZombie, 1, 1], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [81, 152, 155, 170, 193, 199, 223, 216], - a2: [81, 152, 155, 170, 193, 199, 223, 235], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(204); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oBalloonZombie, + oJX, + oNewspaperZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX3.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX3.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 53层", + LvlEName: 200, + SunNum: 9900, + LF: [0, 3, 3, 0, 3, 3, 0], + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oMustacheZombie, 1, 1], + [oTrashZombie, 1, 1], + [oBalloonZombie, 1, 1], + [oJX, 1, 1], + [oNewspaperZombie, 1, 1], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [81, 152, 155, 170, 193, 199, 223, 216], + a2: [81, 152, 155, 170, 193, 199, 223, 235], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(204); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/204.js b/game/level/204.js index 71a58b8b..ded6c39b 100644 --- a/game/level/204.js +++ b/game/level/204.js @@ -1,142 +1,142 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oBalloonZombie, - oJX, - oNewspaperZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX3.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX3.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 54层", - LvlEName: 200, - SunNum: 9900, - LF: [0, 3, 3, 0, 3, 3, 0], - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oMustacheZombie, 1, 1], - [oTrashZombie, 1, 1], - [oBalloonZombie, 1, 1], - [oJX, 1, 1], - [oNewspaperZombie, 1, 1], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [89, 159, 161, 175, 197, 202, 225, 217], - a2: [89, 159, 161, 175, 197, 202, 225, 236], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(205); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oBalloonZombie, + oJX, + oNewspaperZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX3.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX3.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 54层", + LvlEName: 200, + SunNum: 9900, + LF: [0, 3, 3, 0, 3, 3, 0], + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oMustacheZombie, 1, 1], + [oTrashZombie, 1, 1], + [oBalloonZombie, 1, 1], + [oJX, 1, 1], + [oNewspaperZombie, 1, 1], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [89, 159, 161, 175, 197, 202, 225, 217], + a2: [89, 159, 161, 175, 197, 202, 225, 236], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(205); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/205.js b/game/level/205.js index 15c18c7a..2dfe21ab 100644 --- a/game/level/205.js +++ b/game/level/205.js @@ -1,144 +1,144 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oLGBOSS, - oEmperor, - ], - PicArr: (function () { - return ["images/interface/backgroundX3.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX3.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 55层", - LvlEName: 205, - SunNum: 9900, - LF: [0, 3, 3, 0, 3, 3, 0], - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oCXZombie, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oFootballZombie, 1, 1], - [oCConeheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oHeiFootballZombie, 1, 1], - [oCZombie, 1, 1], - [oXBZombie, 1, 1], - [oCBucketheadZombie, 1, 1], - [oMustacheZombie, 1, 1], - [oTrashZombie, 1, 1], - [oJX, 1, 1], - [oNewspaperZombie, 1, 1], - [oLGBOSS, 1, 12, [12]], - [oEmperor, 1, 12, [12]], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [89, 159, 161, 175, 197, 202, 225, 217], - a2: [89, 159, 161, 175, 197, 202, 225, 236], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(206); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oLGBOSS, + oEmperor, + ], + PicArr: (function () { + return ["images/interface/backgroundX3.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX3.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 55层", + LvlEName: 205, + SunNum: 9900, + LF: [0, 3, 3, 0, 3, 3, 0], + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oCXZombie, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oFootballZombie, 1, 1], + [oCConeheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oHeiFootballZombie, 1, 1], + [oCZombie, 1, 1], + [oXBZombie, 1, 1], + [oCBucketheadZombie, 1, 1], + [oMustacheZombie, 1, 1], + [oTrashZombie, 1, 1], + [oJX, 1, 1], + [oNewspaperZombie, 1, 1], + [oLGBOSS, 1, 12, [12]], + [oEmperor, 1, 12, [12]], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [89, 159, 161, 175, 197, 202, 225, 217], + a2: [89, 159, 161, 175, 197, 202, 225, 236], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(206); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/206.js b/game/level/206.js index 0e1347b0..e271a4b8 100644 --- a/game/level/206.js +++ b/game/level/206.js @@ -1,146 +1,146 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX4.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX4.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 56层", - LvlEName: 206, - SunNum: 9900, - CanSelectCard: 1, - DKind: 0, - LF: [0, 3, 0, 3, 0, 3, 0], - StartGameMusic: "The Great Wall1", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [97, 165, 167, 180, 201, 204, 226, 217], - a2: [97, 165, 167, 180, 201, 204, 226, 236], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(207); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX4.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX4.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 56层", + LvlEName: 206, + SunNum: 9900, + CanSelectCard: 1, + DKind: 0, + LF: [0, 3, 0, 3, 0, 3, 0], + StartGameMusic: "The Great Wall1", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [97, 165, 167, 180, 201, 204, 226, 217], + a2: [97, 165, 167, 180, 201, 204, 226, 236], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(207); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/207.js b/game/level/207.js index fc6dffbd..03f48e85 100644 --- a/game/level/207.js +++ b/game/level/207.js @@ -1,146 +1,146 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX4.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX4.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 57层", - LvlEName: 207, - SunNum: 9900, - CanSelectCard: 1, - DKind: 0, - LF: [0, 3, 0, 3, 0, 3, 0], - StartGameMusic: "The Great Wall1", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [105, 172, 173, 185, 205, 207, 228, 218], - a2: [105, 172, 173, 185, 205, 207, 228, 237], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(208); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX4.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX4.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 57层", + LvlEName: 207, + SunNum: 9900, + CanSelectCard: 1, + DKind: 0, + LF: [0, 3, 0, 3, 0, 3, 0], + StartGameMusic: "The Great Wall1", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [105, 172, 173, 185, 205, 207, 228, 218], + a2: [105, 172, 173, 185, 205, 207, 228, 237], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(208); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/208.js b/game/level/208.js index 5f098215..d728bc9c 100644 --- a/game/level/208.js +++ b/game/level/208.js @@ -1,146 +1,146 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX4.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX4.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 58层", - LvlEName: 208, - SunNum: 9900, - CanSelectCard: 1, - DKind: 0, - LF: [0, 3, 0, 3, 0, 3, 0], - StartGameMusic: "The Great Wall1", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [113, 179, 179, 190, 209, 210, 230, 219], - a2: [113, 179, 179, 190, 209, 210, 230, 238], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(209); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX4.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX4.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 58层", + LvlEName: 208, + SunNum: 9900, + CanSelectCard: 1, + DKind: 0, + LF: [0, 3, 0, 3, 0, 3, 0], + StartGameMusic: "The Great Wall1", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [113, 179, 179, 190, 209, 210, 230, 219], + a2: [113, 179, 179, 190, 209, 210, 230, 238], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(209); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/209.js b/game/level/209.js index 0a6909e7..58436de1 100644 --- a/game/level/209.js +++ b/game/level/209.js @@ -1,146 +1,146 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX4.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX4.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 59层", - LvlEName: 208, - SunNum: 9900, - CanSelectCard: 1, - DKind: 0, - LF: [0, 3, 0, 3, 0, 3, 0], - StartGameMusic: "The Great Wall1", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [57, 121, 186, 185, 195, 213, 213, 232, 220], - a2: [57, 121, 186, 185, 195, 213, 213, 232, 239], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(210); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX4.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX4.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 59层", + LvlEName: 208, + SunNum: 9900, + CanSelectCard: 1, + DKind: 0, + LF: [0, 3, 0, 3, 0, 3, 0], + StartGameMusic: "The Great Wall1", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [57, 121, 186, 185, 195, 213, 213, 232, 220], + a2: [57, 121, 186, 185, 195, 213, 213, 232, 239], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(210); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/21.js b/game/level/21.js index 9781b3be..945e1604 100644 --- a/game/level/21.js +++ b/game/level/21.js @@ -1,208 +1,208 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oDuckyTubeZombie1, - oConeheadZombie, - ], - PicArr: (function () { - var a = oSquash.prototype, - b = a.PicArr; - return [ - "images/interface/background3.png", - "images/interface/Dave.gif", - "images/interface/Dave2.gif", - "images/interface/Dave3.gif", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - Coord: 2, - SunNum: 50, - LF: [0, 1, 1, 2, 2, 1, 1], - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LevelName: "Level 3-1", - LvlEName: 21, - AudioArr: [ - "crazydaveshort2", - "crazydavelong1", - "crazydavelong2", - "crazydavelong3", - ], - LargeWaveFlag: { 10: $("imgFlag1") }, - StartGameMusic: "WateryGraves", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - innerText( - c, - "Looks like the zombies are giving up on attacking your front yard." - ); - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - innerText(c, "Now they want to try your backyard."); - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - innerText( - c, - "But most importantly you can't use your mushrooms!" - ); - break; - case 3: - PlayAudio("crazydaveshort2"); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - innerText(c, "Because they sleep during the day!"); - break; - case 4: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [5]); - }; - }, - [] - ); - innerText(c, "Isn't this the style of playboy?"); - break; - case 5: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 3, 1], - [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10]], - [oConeheadZombie, 2, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 10] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/Squash.png", - "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - SelectModal(22); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:490px;left:836px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oDuckyTubeZombie1, + oConeheadZombie, + ], + PicArr: (function () { + var a = oSquash.prototype, + b = a.PicArr; + return [ + "images/interface/background3.png", + "images/interface/Dave.gif", + "images/interface/Dave2.gif", + "images/interface/Dave3.gif", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + Coord: 2, + SunNum: 50, + LF: [0, 1, 1, 2, 2, 1, 1], + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LevelName: "Level 3-1", + LvlEName: 21, + AudioArr: [ + "crazydaveshort2", + "crazydavelong1", + "crazydavelong2", + "crazydavelong3", + ], + LargeWaveFlag: { 10: $("imgFlag1") }, + StartGameMusic: "WateryGraves", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + innerText( + c, + "Looks like the zombies are giving up on attacking your front yard." + ); + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + innerText(c, "Now they want to try your backyard."); + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + innerText( + c, + "But most importantly you can't use your mushrooms!" + ); + break; + case 3: + PlayAudio("crazydaveshort2"); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + innerText(c, "Because they sleep during the day!"); + break; + case 4: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [5]); + }; + }, + [] + ); + innerText(c, "Isn't this the style of playboy?"); + break; + case 5: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 3, 1], + [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10]], + [oConeheadZombie, 2, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 10] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/Squash.png", + "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + SelectModal(22); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:490px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/210.js b/game/level/210.js index cd22baff..94213667 100644 --- a/game/level/210.js +++ b/game/level/210.js @@ -1,150 +1,150 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oEmperor, - oWJY, - ], - PicArr: (function () { - return ["images/interface/backgroundX4.jpg"]; - })(), - backgroundImage: "images/interface/backgroundX4.jpg", - CanSelectCard: 1, - LevelName: "常青之塔 60层", - LvlEName: 210, - SunNum: 9900, - CanSelectCard: 1, - DKind: 0, - LF: [0, 3, 0, 3, 0, 3, 0], - StartGameMusic: "The Great Wall1", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oEmperor, 1, 12, [12]], - [oWJY, 1, 12, [12]], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [57, 121, 186, 185, 195, 213, 213, 232, 220], - a2: [57, 121, 186, 185, 195, 213, 213, 232, 239], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(211); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oEmperor, + oWJY, + ], + PicArr: (function () { + return ["images/interface/backgroundX4.jpg"]; + })(), + backgroundImage: "images/interface/backgroundX4.jpg", + CanSelectCard: 1, + LevelName: "常青之塔 60层", + LvlEName: 210, + SunNum: 9900, + CanSelectCard: 1, + DKind: 0, + LF: [0, 3, 0, 3, 0, 3, 0], + StartGameMusic: "The Great Wall1", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oEmperor, 1, 12, [12]], + [oWJY, 1, 12, [12]], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [57, 121, 186, 185, 195, 213, 213, 232, 220], + a2: [57, 121, 186, 185, 195, 213, 213, 232, 239], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(211); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/211.js b/game/level/211.js index 16865e4d..8478e129 100644 --- a/game/level/211.js +++ b/game/level/211.js @@ -1,157 +1,157 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - ], - PicArr: (function () { - return ["images/interface/background3.png"]; - })(), - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - Coord: 2, - DKind: 0, - LevelName: "常青之塔 61层", - LvlEName: 211, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 5, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "WateryGraves", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [65, 128, 192, 190, 199, 216, 215, 231, 220], - a2: [65, 128, 192, 190, 199, 216, 215, 231, 239], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(212); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + ], + PicArr: (function () { + return ["images/interface/background3.png"]; + })(), + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + Coord: 2, + DKind: 0, + LevelName: "常青之塔 61层", + LvlEName: 211, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 5, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "WateryGraves", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [65, 128, 192, 190, 199, 216, 215, 231, 220], + a2: [65, 128, 192, 190, 199, 216, 215, 231, 239], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(212); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/212.js b/game/level/212.js index 4e72e874..c2b4480e 100644 --- a/game/level/212.js +++ b/game/level/212.js @@ -1,157 +1,157 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - ], - PicArr: (function () { - return ["images/interface/background3.png"]; - })(), - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - Coord: 2, - DKind: 0, - LevelName: "常青之塔 62层", - LvlEName: 212, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 5, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "WateryGraves", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [73, 135, 198, 195, 203, 219, 217, 232, 220], - a2: [73, 135, 198, 195, 203, 219, 217, 232, 239], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(213); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + ], + PicArr: (function () { + return ["images/interface/background3.png"]; + })(), + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + Coord: 2, + DKind: 0, + LevelName: "常青之塔 62层", + LvlEName: 212, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 5, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "WateryGraves", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [73, 135, 198, 195, 203, 219, 217, 232, 220], + a2: [73, 135, 198, 195, 203, 219, 217, 232, 239], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(213); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/213.js b/game/level/213.js index ebd90cec..2fa4d07f 100644 --- a/game/level/213.js +++ b/game/level/213.js @@ -1,157 +1,157 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - ], - PicArr: (function () { - return ["images/interface/background3.png"]; - })(), - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - Coord: 2, - DKind: 0, - LevelName: "常青之塔 63层", - LvlEName: 213, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 5, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "WateryGraves", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [81, 142, 204, 201, 208, 223, 219, 233, 220], - a2: [81, 142, 204, 201, 208, 223, 219, 233, 239], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(214); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + ], + PicArr: (function () { + return ["images/interface/background3.png"]; + })(), + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + Coord: 2, + DKind: 0, + LevelName: "常青之塔 63层", + LvlEName: 213, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 5, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "WateryGraves", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [81, 142, 204, 201, 208, 223, 219, 233, 220], + a2: [81, 142, 204, 201, 208, 223, 219, 233, 239], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(214); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/214.js b/game/level/214.js index a5c82247..b693701d 100644 --- a/game/level/214.js +++ b/game/level/214.js @@ -1,157 +1,157 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - ], - PicArr: (function () { - return ["images/interface/background3.png"]; - })(), - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - Coord: 2, - DKind: 0, - LevelName: "常青之塔 64层", - LvlEName: 214, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 5, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "WateryGraves", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [89, 149, 210, 206, 212, 226, 221, 234, 220], - a2: [89, 149, 210, 206, 212, 226, 221, 234, 239], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(215); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + ], + PicArr: (function () { + return ["images/interface/background3.png"]; + })(), + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + Coord: 2, + DKind: 0, + LevelName: "常青之塔 64层", + LvlEName: 214, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 5, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "WateryGraves", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [89, 149, 210, 206, 212, 226, 221, 234, 220], + a2: [89, 149, 210, 206, 212, 226, 221, 234, 239], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(215); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/215.js b/game/level/215.js index 9733ea45..8bb19207 100644 --- a/game/level/215.js +++ b/game/level/215.js @@ -1,160 +1,160 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oWJY, - oWJY1, - ], - PicArr: (function () { - return ["images/interface/background3.png"]; - })(), - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - Coord: 2, - DKind: 0, - LevelName: "常青之塔 65层", - LvlEName: 215, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 5, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "WateryGraves", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 1], - [oWJY, 1, 12, [12]], - [oWJY1, 1, 12, [12]], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [97, 156, 216, 211, 217, 226, 221, 234, 220], - a2: [97, 156, 216, 211, 217, 226, 221, 234, 239], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/FlamesMushroom.png", - "left:667px;top:330px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oFlamesMushroom, 216); - }, - } - ); - EditImg($("PointerUD"), 0, "images/interface/PointerDown.gif", { - left: "676px", - top: "295px", - visibility: "visible", - }); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oWJY, + oWJY1, + ], + PicArr: (function () { + return ["images/interface/background3.png"]; + })(), + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + Coord: 2, + DKind: 0, + LevelName: "常青之塔 65层", + LvlEName: 215, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 5, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "WateryGraves", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 1], + [oWJY, 1, 12, [12]], + [oWJY1, 1, 12, [12]], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [97, 156, 216, 211, 217, 226, 221, 234, 220], + a2: [97, 156, 216, 211, 217, 226, 221, 234, 239], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/FlamesMushroom.png", + "left:667px;top:330px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oFlamesMushroom, 216); + }, + } + ); + EditImg($("PointerUD"), 0, "images/interface/PointerDown.gif", { + left: "676px", + top: "295px", + visibility: "visible", + }); + }, + } ); diff --git a/game/level/216.js b/game/level/216.js index 715e007c..a6d3fa6d 100644 --- a/game/level/216.js +++ b/game/level/216.js @@ -1,164 +1,164 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oSubZombie, - ], - PicArr: (function () { - return ["images/interface/background4.jpg"]; - })(), - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); - }, - backgroundImage: "images/interface/background4.jpg", - CanSelectCard: 1, - Coord: 2, - DKind: 0, - LevelName: "常青之塔 66层", - LvlEName: 216, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 6, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "RigorMormist", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oDuckyTubeZombie2, 1, 3], - [oDuckyTubeZombie3, 1, 2], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 2], - [oSubZombie, 1, 1], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [105, 163, 222, 216, 221, 229, 223, 235, 220], - a2: [105, 163, 222, 216, 221, 229, 223, 235, 239], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(217); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oSubZombie, + ], + PicArr: (function () { + return ["images/interface/background4.jpg"]; + })(), + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); + }, + backgroundImage: "images/interface/background4.jpg", + CanSelectCard: 1, + Coord: 2, + DKind: 0, + LevelName: "常青之塔 66层", + LvlEName: 216, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 6, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "RigorMormist", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oDuckyTubeZombie2, 1, 3], + [oDuckyTubeZombie3, 1, 2], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 2], + [oSubZombie, 1, 1], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [105, 163, 222, 216, 221, 229, 223, 235, 220], + a2: [105, 163, 222, 216, 221, 229, 223, 235, 239], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(217); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/217.js b/game/level/217.js index 25b1e8c8..61ba4bb0 100644 --- a/game/level/217.js +++ b/game/level/217.js @@ -1,164 +1,164 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oSubZombie, - ], - PicArr: (function () { - return ["images/interface/background4.jpg"]; - })(), - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); - }, - backgroundImage: "images/interface/background4.jpg", - CanSelectCard: 1, - Coord: 2, - DKind: 0, - LevelName: "常青之塔 67层", - LvlEName: 217, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 6, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "RigorMormist", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oDuckyTubeZombie2, 1, 3], - [oDuckyTubeZombie3, 1, 2], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 2], - [oSubZombie, 1, 1], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [113, 170, 228, 221, 225, 233, 227, 237, 221], - a2: [113, 170, 228, 221, 225, 233, 227, 237, 240], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(218); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oSubZombie, + ], + PicArr: (function () { + return ["images/interface/background4.jpg"]; + })(), + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); + }, + backgroundImage: "images/interface/background4.jpg", + CanSelectCard: 1, + Coord: 2, + DKind: 0, + LevelName: "常青之塔 67层", + LvlEName: 217, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 6, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "RigorMormist", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oDuckyTubeZombie2, 1, 3], + [oDuckyTubeZombie3, 1, 2], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 2], + [oSubZombie, 1, 1], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [113, 170, 228, 221, 225, 233, 227, 237, 221], + a2: [113, 170, 228, 221, 225, 233, 227, 237, 240], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(218); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/218.js b/game/level/218.js index 7d5d85e5..b6df5a23 100644 --- a/game/level/218.js +++ b/game/level/218.js @@ -1,164 +1,164 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oSubZombie, - ], - PicArr: (function () { - return ["images/interface/background4.jpg"]; - })(), - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); - }, - backgroundImage: "images/interface/background4.jpg", - CanSelectCard: 1, - Coord: 2, - DKind: 0, - LevelName: "常青之塔 68层", - LvlEName: 218, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 6, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "RigorMormist", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oDuckyTubeZombie2, 1, 3], - [oDuckyTubeZombie3, 1, 2], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 2], - [oSubZombie, 1, 1], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [121, 177, 234, 226, 229, 236, 229, 238, 221], - a2: [121, 177, 234, 226, 229, 236, 229, 238, 240], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(219); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oSubZombie, + ], + PicArr: (function () { + return ["images/interface/background4.jpg"]; + })(), + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); + }, + backgroundImage: "images/interface/background4.jpg", + CanSelectCard: 1, + Coord: 2, + DKind: 0, + LevelName: "常青之塔 68层", + LvlEName: 218, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 6, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "RigorMormist", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oDuckyTubeZombie2, 1, 3], + [oDuckyTubeZombie3, 1, 2], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 2], + [oSubZombie, 1, 1], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [121, 177, 234, 226, 229, 236, 229, 238, 221], + a2: [121, 177, 234, 226, 229, 236, 229, 238, 240], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(219); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/219.js b/game/level/219.js index b1443194..186e069a 100644 --- a/game/level/219.js +++ b/game/level/219.js @@ -1,164 +1,164 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oSubZombie, - ], - PicArr: (function () { - return ["images/interface/background4.jpg"]; - })(), - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); - }, - backgroundImage: "images/interface/background4.jpg", - CanSelectCard: 1, - Coord: 2, - DKind: 0, - LevelName: "常青之塔 69层", - LvlEName: 219, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 6, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "RigorMormist", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oDuckyTubeZombie2, 1, 3], - [oDuckyTubeZombie3, 1, 2], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 2], - [oSubZombie, 1, 1], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [129, 184, 240, 231, 233, 239, 231, 239, 221], - a2: [129, 184, 240, 231, 233, 239, 231, 239, 240], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(220); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oSubZombie, + ], + PicArr: (function () { + return ["images/interface/background4.jpg"]; + })(), + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); + }, + backgroundImage: "images/interface/background4.jpg", + CanSelectCard: 1, + Coord: 2, + DKind: 0, + LevelName: "常青之塔 69层", + LvlEName: 219, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 6, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "RigorMormist", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oDuckyTubeZombie2, 1, 3], + [oDuckyTubeZombie3, 1, 2], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 2], + [oSubZombie, 1, 1], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [129, 184, 240, 231, 233, 239, 231, 239, 221], + a2: [129, 184, 240, 231, 233, 239, 231, 239, 240], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(220); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/22.js b/game/level/22.js index 3d95e4d4..4ea9a969 100644 --- a/game/level/22.js +++ b/game/level/22.js @@ -1,101 +1,101 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oConeheadZombie, - oNewspaperZombie, - oFootballZombie, - oBucketheadZombie, - ], - PicArr: (function () { - var a = oThreepeater.prototype, - b = a.PicArr; - return [ - "images/interface/background3.png", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - Coord: 2, - SunNum: 50, - LF: [0, 1, 1, 2, 2, 1, 1], - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LevelName: "Level 3-2", - LvlEName: 22, - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [ - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - ]); - }, - StartGameMusic: "WateryGraves", - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 19, 20]], - [oDuckyTubeZombie2, 1, 6, [10, 20]], - [oDuckyTubeZombie3, 1, 6, [10, 20]], - [oConeheadZombie, 2, 1], - [oBucketheadZombie, 1, 1], - [oFootballZombie, 1, 1], - [oNewspaperZombie, 1, 1], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19], - a2: [1, 2, 3, 10, 4, 5, 6, 15], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/Threepeater.png", - "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - SelectModal(23); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:290px;left:636px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oConeheadZombie, + oNewspaperZombie, + oFootballZombie, + oBucketheadZombie, + ], + PicArr: (function () { + var a = oThreepeater.prototype, + b = a.PicArr; + return [ + "images/interface/background3.png", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + Coord: 2, + SunNum: 50, + LF: [0, 1, 1, 2, 2, 1, 1], + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LevelName: "Level 3-2", + LvlEName: 22, + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [ + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + ]); + }, + StartGameMusic: "WateryGraves", + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 19, 20]], + [oDuckyTubeZombie2, 1, 6, [10, 20]], + [oDuckyTubeZombie3, 1, 6, [10, 20]], + [oConeheadZombie, 2, 1], + [oBucketheadZombie, 1, 1], + [oFootballZombie, 1, 1], + [oNewspaperZombie, 1, 1], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19], + a2: [1, 2, 3, 10, 4, 5, 6, 15], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/Threepeater.png", + "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + SelectModal(23); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:290px;left:636px", + EDAll + ); + }, + } ); diff --git a/game/level/220.js b/game/level/220.js index 0bb4cbad..9186a47d 100644 --- a/game/level/220.js +++ b/game/level/220.js @@ -1,168 +1,168 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oSubZombie, - oWJY1, - oLGBOSS, - ], - PicArr: (function () { - return ["images/interface/background4.jpg"]; - })(), - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); - }, - backgroundImage: "images/interface/background4.jpg", - CanSelectCard: 1, - Coord: 2, - DKind: 0, - LevelName: "常青之塔 70层", - LvlEName: 220, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 6, - LF: [0, 1, 1, 2, 2, 1, 1], - StartGameMusic: "RigorMormist", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oDuckyTubeZombie2, 1, 3], - [oDuckyTubeZombie3, 1, 2], - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie4, 1, 2], - [oSubZombie, 1, 1], - [oWJY1, 1, 12, [12]], - [oLGBOSS, 1, 12, [12]], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [129, 184, 240, 231, 233, 239, 231, 239], - a2: [129, 184, 240, 231, 233, 239, 231, 239, 240], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(221); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oSubZombie, + oWJY1, + oLGBOSS, + ], + PicArr: (function () { + return ["images/interface/background4.jpg"]; + })(), + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); + }, + backgroundImage: "images/interface/background4.jpg", + CanSelectCard: 1, + Coord: 2, + DKind: 0, + LevelName: "常青之塔 70层", + LvlEName: 220, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 6, + LF: [0, 1, 1, 2, 2, 1, 1], + StartGameMusic: "RigorMormist", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oDuckyTubeZombie2, 1, 3], + [oDuckyTubeZombie3, 1, 2], + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie4, 1, 2], + [oSubZombie, 1, 1], + [oWJY1, 1, 12, [12]], + [oLGBOSS, 1, 12, [12]], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [129, 184, 240, 231, 233, 239, 231, 239], + a2: [129, 184, 240, 231, 233, 239, 231, 239, 240], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(221); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/221.js b/game/level/221.js index ace3d373..ad16972c 100644 --- a/game/level/221.js +++ b/game/level/221.js @@ -1,144 +1,144 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oSubZombie, - oDolphinRiderZombie, - oSnorkelZombie, - oCDolphinRiderZombie, - oCSnorkelZombie, - oSmallDuckyTubeZombie1, - oSmallSnorkelZombie, - ], - PicArr: (function () { - return ["images/interface/background5.jpg"]; - })(), - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); - }, - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - Coord: 2, - DKind: 0, - LevelName: "常青之塔 71层", - LvlEName: 221, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 7, - LF: [0, 2, 2, 2, 2, 2, 2], - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - CustomSpecial(oPoolCleaner, 6, -1); - }, - StartGameMusic: "jiaxing", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie1, 1, 2], - [oDuckyTubeZombie3, 1, 3], - [oDuckyTubeZombie4, 1, 4], - [oSubZombie, 1, 5], - [oDolphinRiderZombie, 1, 6], - [oSnorkelZombie, 1, 7], - [oCSnorkelZombie, 1, 8], - [oCDolphinRiderZombie, 1, 9], - [oSmallDuckyTubeZombie1, 1, 10], - [oSmallSnorkelZombie, 1, 11], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [137, 191, 246, 236, 237, 242, 233, 240], - a2: [137, 191, 246, 236, 237, 242, 233, 240], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(222); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oSubZombie, + oDolphinRiderZombie, + oSnorkelZombie, + oCDolphinRiderZombie, + oCSnorkelZombie, + oSmallDuckyTubeZombie1, + oSmallSnorkelZombie, + ], + PicArr: (function () { + return ["images/interface/background5.jpg"]; + })(), + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); + }, + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + Coord: 2, + DKind: 0, + LevelName: "常青之塔 71层", + LvlEName: 221, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 7, + LF: [0, 2, 2, 2, 2, 2, 2], + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + CustomSpecial(oPoolCleaner, 6, -1); + }, + StartGameMusic: "jiaxing", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie1, 1, 2], + [oDuckyTubeZombie3, 1, 3], + [oDuckyTubeZombie4, 1, 4], + [oSubZombie, 1, 5], + [oDolphinRiderZombie, 1, 6], + [oSnorkelZombie, 1, 7], + [oCSnorkelZombie, 1, 8], + [oCDolphinRiderZombie, 1, 9], + [oSmallDuckyTubeZombie1, 1, 10], + [oSmallSnorkelZombie, 1, 11], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [137, 191, 246, 236, 237, 242, 233, 240], + a2: [137, 191, 246, 236, 237, 242, 233, 240], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(222); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/222.js b/game/level/222.js index 87d22e61..18078032 100644 --- a/game/level/222.js +++ b/game/level/222.js @@ -1,144 +1,144 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oSubZombie, - oDolphinRiderZombie, - oSnorkelZombie, - oCDolphinRiderZombie, - oCSnorkelZombie, - oSmallDuckyTubeZombie1, - oSmallSnorkelZombie, - ], - PicArr: (function () { - return ["images/interface/background5.jpg"]; - })(), - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); - }, - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - Coord: 2, - DKind: 0, - LevelName: "常青之塔 72层", - LvlEName: 222, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 6, - LF: [0, 2, 2, 2, 2, 2, 2], - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - CustomSpecial(oPoolCleaner, 6, -1); - }, - StartGameMusic: "jiaxing", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie1, 1, 2], - [oDuckyTubeZombie3, 1, 3], - [oDuckyTubeZombie4, 1, 4], - [oSubZombie, 1, 5], - [oDolphinRiderZombie, 1, 6], - [oSnorkelZombie, 1, 7], - [oCSnorkelZombie, 1, 8], - [oCDolphinRiderZombie, 1, 9], - [oSmallDuckyTubeZombie1, 1, 10], - [oSmallSnorkelZombie, 1, 11], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [145, 198, 252, 241, 241, 245, 235, 241], - a2: [145, 198, 252, 241, 241, 245, 235, 241], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(223); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oSubZombie, + oDolphinRiderZombie, + oSnorkelZombie, + oCDolphinRiderZombie, + oCSnorkelZombie, + oSmallDuckyTubeZombie1, + oSmallSnorkelZombie, + ], + PicArr: (function () { + return ["images/interface/background5.jpg"]; + })(), + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); + }, + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + Coord: 2, + DKind: 0, + LevelName: "常青之塔 72层", + LvlEName: 222, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 6, + LF: [0, 2, 2, 2, 2, 2, 2], + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + CustomSpecial(oPoolCleaner, 6, -1); + }, + StartGameMusic: "jiaxing", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie1, 1, 2], + [oDuckyTubeZombie3, 1, 3], + [oDuckyTubeZombie4, 1, 4], + [oSubZombie, 1, 5], + [oDolphinRiderZombie, 1, 6], + [oSnorkelZombie, 1, 7], + [oCSnorkelZombie, 1, 8], + [oCDolphinRiderZombie, 1, 9], + [oSmallDuckyTubeZombie1, 1, 10], + [oSmallSnorkelZombie, 1, 11], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [145, 198, 252, 241, 241, 245, 235, 241], + a2: [145, 198, 252, 241, 241, 245, 235, 241], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(223); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/223.js b/game/level/223.js index 19e86daa..410c1d89 100644 --- a/game/level/223.js +++ b/game/level/223.js @@ -1,144 +1,144 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oSubZombie, - oDolphinRiderZombie, - oSnorkelZombie, - oCDolphinRiderZombie, - oCSnorkelZombie, - oSmallDuckyTubeZombie1, - oSmallSnorkelZombie, - ], - PicArr: (function () { - return ["images/interface/background5.jpg"]; - })(), - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); - }, - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - Coord: 2, - DKind: 0, - LevelName: "常青之塔 73层", - LvlEName: 223, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 5, - LF: [0, 2, 2, 2, 2, 2, 2], - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - CustomSpecial(oPoolCleaner, 6, -1); - }, - StartGameMusic: "jiaxing", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie1, 1, 2], - [oDuckyTubeZombie3, 1, 3], - [oDuckyTubeZombie4, 1, 4], - [oSubZombie, 1, 5], - [oDolphinRiderZombie, 1, 6], - [oSnorkelZombie, 1, 7], - [oCSnorkelZombie, 1, 8], - [oCDolphinRiderZombie, 1, 9], - [oSmallDuckyTubeZombie1, 1, 10], - [oSmallSnorkelZombie, 1, 11], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [153, 205, 258, 246, 245, 248, 237, 241], - a2: [153, 205, 258, 246, 245, 248, 237, 241], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(224); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oSubZombie, + oDolphinRiderZombie, + oSnorkelZombie, + oCDolphinRiderZombie, + oCSnorkelZombie, + oSmallDuckyTubeZombie1, + oSmallSnorkelZombie, + ], + PicArr: (function () { + return ["images/interface/background5.jpg"]; + })(), + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); + }, + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + Coord: 2, + DKind: 0, + LevelName: "常青之塔 73层", + LvlEName: 223, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 5, + LF: [0, 2, 2, 2, 2, 2, 2], + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + CustomSpecial(oPoolCleaner, 6, -1); + }, + StartGameMusic: "jiaxing", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie1, 1, 2], + [oDuckyTubeZombie3, 1, 3], + [oDuckyTubeZombie4, 1, 4], + [oSubZombie, 1, 5], + [oDolphinRiderZombie, 1, 6], + [oSnorkelZombie, 1, 7], + [oCSnorkelZombie, 1, 8], + [oCDolphinRiderZombie, 1, 9], + [oSmallDuckyTubeZombie1, 1, 10], + [oSmallSnorkelZombie, 1, 11], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [153, 205, 258, 246, 245, 248, 237, 241], + a2: [153, 205, 258, 246, 245, 248, 237, 241], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(224); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/224.js b/game/level/224.js index 36f26fb0..4159d81f 100644 --- a/game/level/224.js +++ b/game/level/224.js @@ -1,144 +1,144 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oSubZombie, - oDolphinRiderZombie, - oSnorkelZombie, - oCDolphinRiderZombie, - oCSnorkelZombie, - oSmallDuckyTubeZombie1, - oSmallSnorkelZombie, - ], - PicArr: (function () { - return ["images/interface/background5.jpg"]; - })(), - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); - }, - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - Coord: 2, - DKind: 0, - LevelName: "常青之塔 74层", - LvlEName: 224, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 4, - LF: [0, 2, 2, 2, 2, 2, 2], - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - CustomSpecial(oPoolCleaner, 6, -1); - }, - StartGameMusic: "jiaxing", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie1, 1, 2], - [oDuckyTubeZombie3, 1, 3], - [oDuckyTubeZombie4, 1, 4], - [oSubZombie, 1, 5], - [oDolphinRiderZombie, 1, 6], - [oSnorkelZombie, 1, 7], - [oCSnorkelZombie, 1, 8], - [oCDolphinRiderZombie, 1, 9], - [oSmallDuckyTubeZombie1, 1, 10], - [oSmallSnorkelZombie, 1, 11], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [161, 212, 264, 251, 249, 251, 239, 242], - a2: [161, 212, 264, 251, 249, 251, 239, 242], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 8: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(225); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oSubZombie, + oDolphinRiderZombie, + oSnorkelZombie, + oCDolphinRiderZombie, + oCSnorkelZombie, + oSmallDuckyTubeZombie1, + oSmallSnorkelZombie, + ], + PicArr: (function () { + return ["images/interface/background5.jpg"]; + })(), + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); + }, + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + Coord: 2, + DKind: 0, + LevelName: "常青之塔 74层", + LvlEName: 224, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 4, + LF: [0, 2, 2, 2, 2, 2, 2], + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + CustomSpecial(oPoolCleaner, 6, -1); + }, + StartGameMusic: "jiaxing", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie1, 1, 2], + [oDuckyTubeZombie3, 1, 3], + [oDuckyTubeZombie4, 1, 4], + [oSubZombie, 1, 5], + [oDolphinRiderZombie, 1, 6], + [oSnorkelZombie, 1, 7], + [oCSnorkelZombie, 1, 8], + [oCDolphinRiderZombie, 1, 9], + [oSmallDuckyTubeZombie1, 1, 10], + [oSmallSnorkelZombie, 1, 11], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [161, 212, 264, 251, 249, 251, 239, 242], + a2: [161, 212, 264, 251, 249, 251, 239, 242], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 8: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(225); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/225.js b/game/level/225.js index 7004ad16..e21450f8 100644 --- a/game/level/225.js +++ b/game/level/225.js @@ -1,146 +1,146 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oSubZombie, - oDolphinRiderZombie, - oSnorkelZombie, - oCDolphinRiderZombie, - oCSnorkelZombie, - oSmallDuckyTubeZombie1, - oSmallSnorkelZombie, - oWJY1, - ], - PicArr: (function () { - return ["images/interface/background5.jpg"]; - })(), - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); - }, - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - Coord: 2, - DKind: 0, - LevelName: "常青之塔 75层", - LvlEName: 225, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 3, - LF: [0, 2, 2, 2, 2, 2, 2], - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - CustomSpecial(oPoolCleaner, 6, -1); - }, - StartGameMusic: "jiaxing", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie1, 1, 2], - [oDuckyTubeZombie3, 1, 3], - [oDuckyTubeZombie4, 1, 4], - [oSubZombie, 1, 5], - [oDolphinRiderZombie, 1, 6], - [oSnorkelZombie, 1, 7], - [oCSnorkelZombie, 1, 8], - [oCDolphinRiderZombie, 1, 9], - [oSmallDuckyTubeZombie1, 1, 10], - [oSmallSnorkelZombie, 1, 11], - [oWJY1, 1, 12, [12]], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [161, 212, 264, 251, 249, 251, 239, 242], - a2: [161, 212, 264, 251, 249, 251, 239, 242], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(226); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oSubZombie, + oDolphinRiderZombie, + oSnorkelZombie, + oCDolphinRiderZombie, + oCSnorkelZombie, + oSmallDuckyTubeZombie1, + oSmallSnorkelZombie, + oWJY1, + ], + PicArr: (function () { + return ["images/interface/background5.jpg"]; + })(), + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); + }, + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + Coord: 2, + DKind: 0, + LevelName: "常青之塔 75层", + LvlEName: 225, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 3, + LF: [0, 2, 2, 2, 2, 2, 2], + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + CustomSpecial(oPoolCleaner, 6, -1); + }, + StartGameMusic: "jiaxing", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie1, 1, 2], + [oDuckyTubeZombie3, 1, 3], + [oDuckyTubeZombie4, 1, 4], + [oSubZombie, 1, 5], + [oDolphinRiderZombie, 1, 6], + [oSnorkelZombie, 1, 7], + [oCSnorkelZombie, 1, 8], + [oCDolphinRiderZombie, 1, 9], + [oSmallDuckyTubeZombie1, 1, 10], + [oSmallSnorkelZombie, 1, 11], + [oWJY1, 1, 12, [12]], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [161, 212, 264, 251, 249, 251, 239, 242], + a2: [161, 212, 264, 251, 249, 251, 239, 242], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(226); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/226.js b/game/level/226.js index a92f7748..556f9481 100644 --- a/game/level/226.js +++ b/game/level/226.js @@ -1,232 +1,232 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - ], - PicArr: (function () { - return ["images/interface/background2.jpg"]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - DKind: 0, - LevelName: "常青之塔 76层", - LvlEName: 226, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "Moongrains", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([ - oZombie, - oConeheadZombie, - oBucketheadZombie, - ]); - }, - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio("crazydaveshort1"); - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 100, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - innerText(c, "伙计,离一百层越来越近了!"); - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - innerText(c, "难度上升也越来越快了"); - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - innerText(c, "至少现在雾已经退去了,加油吧!"); - break; - case 3: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 50, - function () { - ClearChild($("dDave")); - a(0); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [169, 220, 271, 255, 253, 254, 241, 243], - a2: [169, 220, 271, 255, 253, 254, 241, 243], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(227); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + ], + PicArr: (function () { + return ["images/interface/background2.jpg"]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + DKind: 0, + LevelName: "常青之塔 76层", + LvlEName: 226, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "Moongrains", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([ + oZombie, + oConeheadZombie, + oBucketheadZombie, + ]); + }, + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio("crazydaveshort1"); + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 100, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + innerText(c, "伙计,离一百层越来越近了!"); + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + innerText(c, "难度上升也越来越快了"); + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + innerText(c, "至少现在雾已经退去了,加油吧!"); + break; + case 3: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 50, + function () { + ClearChild($("dDave")); + a(0); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [169, 220, 271, 255, 253, 254, 241, 243], + a2: [169, 220, 271, 255, 253, 254, 241, 243], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(227); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/227.js b/game/level/227.js index cfb39490..6fd562c3 100644 --- a/game/level/227.js +++ b/game/level/227.js @@ -1,155 +1,155 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - ], - PicArr: (function () { - return ["images/interface/background2.jpg"]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - DKind: 0, - LevelName: "常青之塔 77层", - LvlEName: 227, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "Moongrains", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([ - oZombie, - oConeheadZombie, - oBucketheadZombie, - ]); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [177, 227, 277, 260, 257, 257, 243, 244], - a2: [177, 227, 277, 260, 257, 257, 243, 244], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(228); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + ], + PicArr: (function () { + return ["images/interface/background2.jpg"]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + DKind: 0, + LevelName: "常青之塔 77层", + LvlEName: 227, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "Moongrains", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([ + oZombie, + oConeheadZombie, + oBucketheadZombie, + ]); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [177, 227, 277, 260, 257, 257, 243, 244], + a2: [177, 227, 277, 260, 257, 257, 243, 244], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(228); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/228.js b/game/level/228.js index 3c071ad1..8b4d1fed 100644 --- a/game/level/228.js +++ b/game/level/228.js @@ -1,155 +1,155 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - ], - PicArr: (function () { - return ["images/interface/background2.jpg"]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - DKind: 0, - LevelName: "常青之塔 78层", - LvlEName: 228, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "Moongrains", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([ - oZombie, - oConeheadZombie, - oBucketheadZombie, - ]); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [185, 234, 283, 265, 261], - a2: [185, 234, 283, 265, 261], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(229); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + ], + PicArr: (function () { + return ["images/interface/background2.jpg"]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + DKind: 0, + LevelName: "常青之塔 78层", + LvlEName: 228, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "Moongrains", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([ + oZombie, + oConeheadZombie, + oBucketheadZombie, + ]); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [185, 234, 283, 265, 261], + a2: [185, 234, 283, 265, 261], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(229); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/229.js b/game/level/229.js index ab4a3e17..88ab429b 100644 --- a/game/level/229.js +++ b/game/level/229.js @@ -1,152 +1,152 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - ], - PicArr: (function () { - return ["images/interface/background2.jpg"]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - DKind: 0, - LevelName: "常青之塔 79层", - LvlEName: 229, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "Moongrains", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([ - oZombie, - oConeheadZombie, - oBucketheadZombie, - ]); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - ], - FlagNum: 12, - FlagToSumNum: { a1: [193, 242, 289], a2: [193, 242, 289] }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(230); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + ], + PicArr: (function () { + return ["images/interface/background2.jpg"]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + DKind: 0, + LevelName: "常青之塔 79层", + LvlEName: 229, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "Moongrains", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([ + oZombie, + oConeheadZombie, + oBucketheadZombie, + ]); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + ], + FlagNum: 12, + FlagToSumNum: { a1: [193, 242, 289], a2: [193, 242, 289] }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(230); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/23.js b/game/level/23.js index 2a814bd3..4bd74617 100644 --- a/game/level/23.js +++ b/game/level/23.js @@ -1,98 +1,98 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oConeheadZombie, - oSnorkelZombie, - ], - PicArr: (function () { - var a = oTangleKlep.prototype, - b = a.PicArr; - return [ - "images/interface/background3.png", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - Coord: 2, - SunNum: 50, - LF: [0, 1, 1, 2, 2, 1, 1], - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LevelName: "Level 3-3", - LvlEName: 23, - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [ - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - ]); - }, - StartGameMusic: "WateryGraves", - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 19, 20]], - [oDuckyTubeZombie2, 1, 6, [10, 20]], - [oDuckyTubeZombie3, 1, 6, [10, 20]], - [oConeheadZombie, 1, 1], - [oSnorkelZombie, 1, 6, [19, 20]], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19], - a2: [1, 2, 3, 10, 4, 5, 6, 15], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/TangleKlep.png", - "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - SelectModal(24); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:290px;left:636px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oConeheadZombie, + oSnorkelZombie, + ], + PicArr: (function () { + var a = oTangleKlep.prototype, + b = a.PicArr; + return [ + "images/interface/background3.png", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + Coord: 2, + SunNum: 50, + LF: [0, 1, 1, 2, 2, 1, 1], + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LevelName: "Level 3-3", + LvlEName: 23, + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [ + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + ]); + }, + StartGameMusic: "WateryGraves", + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 19, 20]], + [oDuckyTubeZombie2, 1, 6, [10, 20]], + [oDuckyTubeZombie3, 1, 6, [10, 20]], + [oConeheadZombie, 1, 1], + [oSnorkelZombie, 1, 6, [19, 20]], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19], + a2: [1, 2, 3, 10, 4, 5, 6, 15], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/TangleKlep.png", + "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + SelectModal(24); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:290px;left:636px", + EDAll + ); + }, + } ); diff --git a/game/level/230.js b/game/level/230.js index 46a2b8a6..8a4a4df6 100644 --- a/game/level/230.js +++ b/game/level/230.js @@ -1,156 +1,156 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oWJY, - oLGBOSS, - ], - PicArr: (function () { - return ["images/interface/background2.jpg"]; - })(), - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - DKind: 0, - LevelName: "常青之塔 80层", - LvlEName: 230, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "Moongrains", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutTomZombie([ - oZombie, - oConeheadZombie, - oBucketheadZombie, - ]); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oWJY, 1, 12, [12]], - [oLGBOSS, 1, 12, [12]], - ], - FlagNum: 12, - FlagToSumNum: { a1: [193, 242, 289], a2: [193, 242, 289] }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(231); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oWJY, + oLGBOSS, + ], + PicArr: (function () { + return ["images/interface/background2.jpg"]; + })(), + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + DKind: 0, + LevelName: "常青之塔 80层", + LvlEName: 230, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "Moongrains", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + Monitor: { f: AppearTombstones, ar: [6, 9, 7] }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutTomZombie([ + oZombie, + oConeheadZombie, + oBucketheadZombie, + ]); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oWJY, 1, 12, [12]], + [oLGBOSS, 1, 12, [12]], + ], + FlagNum: 12, + FlagToSumNum: { a1: [193, 242, 289], a2: [193, 242, 289] }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(231); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/231.js b/game/level/231.js index b3b90fc0..50da87af 100644 --- a/game/level/231.js +++ b/game/level/231.js @@ -1,148 +1,148 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oZZ, - othugZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - LF: [0, 3, 3, 3, 3, 3], - DKind: 0, - LevelName: "常青之塔 81层", - LvlEName: 231, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "Lg_pk", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oZZ, 1, 3], - [othugZombie, 1, 2], - ], - FlagNum: 12, - FlagToSumNum: { a1: [201, 249, 295], a2: [201, 249, 295] }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(232); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oZZ, + othugZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + LF: [0, 3, 3, 3, 3, 3], + DKind: 0, + LevelName: "常青之塔 81层", + LvlEName: 231, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "Lg_pk", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oZZ, 1, 3], + [othugZombie, 1, 2], + ], + FlagNum: 12, + FlagToSumNum: { a1: [201, 249, 295], a2: [201, 249, 295] }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(232); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/232.js b/game/level/232.js index 22510b93..6a0be332 100644 --- a/game/level/232.js +++ b/game/level/232.js @@ -1,148 +1,148 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oZZ, - othugZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - LF: [0, 3, 3, 3, 3, 3], - DKind: 0, - LevelName: "常青之塔 82层", - LvlEName: 232, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "Lg_pk", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oZZ, 1, 3], - [othugZombie, 1, 2], - ], - FlagNum: 12, - FlagToSumNum: { a1: [209, 256, 301], a2: [209, 256, 301] }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(233); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oZZ, + othugZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + LF: [0, 3, 3, 3, 3, 3], + DKind: 0, + LevelName: "常青之塔 82层", + LvlEName: 232, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "Lg_pk", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oZZ, 1, 3], + [othugZombie, 1, 2], + ], + FlagNum: 12, + FlagToSumNum: { a1: [209, 256, 301], a2: [209, 256, 301] }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(233); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/233.js b/game/level/233.js index 7d786ed7..63af9d60 100644 --- a/game/level/233.js +++ b/game/level/233.js @@ -1,148 +1,148 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oZZ, - othugZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - LF: [0, 3, 3, 3, 3, 3], - DKind: 0, - LevelName: "常青之塔 83层", - LvlEName: 233, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "Lg_pk", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oZZ, 1, 3], - [othugZombie, 1, 2], - ], - FlagNum: 12, - FlagToSumNum: { a1: [100, 217, 263, 307], a2: [100, 217, 263, 307] }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(234); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oZZ, + othugZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + LF: [0, 3, 3, 3, 3, 3], + DKind: 0, + LevelName: "常青之塔 83层", + LvlEName: 233, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "Lg_pk", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oZZ, 1, 3], + [othugZombie, 1, 2], + ], + FlagNum: 12, + FlagToSumNum: { a1: [100, 217, 263, 307], a2: [100, 217, 263, 307] }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(234); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/234.js b/game/level/234.js index 84b67bff..88b9bd20 100644 --- a/game/level/234.js +++ b/game/level/234.js @@ -1,148 +1,148 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oZZ, - othugZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - LF: [0, 3, 3, 3, 3, 3], - DKind: 0, - LevelName: "常青之塔 84层", - LvlEName: 234, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "Lg_pk", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oZZ, 1, 3], - [othugZombie, 1, 2], - ], - FlagNum: 12, - FlagToSumNum: { a1: [109, 225, 270, 313], a2: [109, 225, 270, 313] }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(235); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oZZ, + othugZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + LF: [0, 3, 3, 3, 3, 3], + DKind: 0, + LevelName: "常青之塔 84层", + LvlEName: 234, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "Lg_pk", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oZZ, 1, 3], + [othugZombie, 1, 2], + ], + FlagNum: 12, + FlagToSumNum: { a1: [109, 225, 270, 313], a2: [109, 225, 270, 313] }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(235); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/235.js b/game/level/235.js index b8d0064a..6093bd14 100644 --- a/game/level/235.js +++ b/game/level/235.js @@ -1,159 +1,159 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oZZ, - othugZombie, - oLGBOSS, - oEmperor, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - LF: [0, 3, 3, 3, 3, 3], - DKind: 0, - LevelName: "常青之塔 85层", - LvlEName: 235, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "Lg_pk", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oZZ, 1, 3], - [othugZombie, 1, 2], - [oLGBOSS, 1, 12, [12]], - [oEmperor, 1, 12, [12]], - ], - FlagNum: 12, - FlagToSumNum: { a1: [118, 233, 277, 319], a2: [118, 233, 277, 319] }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(236); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oZZ, + othugZombie, + oLGBOSS, + oEmperor, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + LF: [0, 3, 3, 3, 3, 3], + DKind: 0, + LevelName: "常青之塔 85层", + LvlEName: 235, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "Lg_pk", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oZZ, 1, 3], + [othugZombie, 1, 2], + [oLGBOSS, 1, 12, [12]], + [oEmperor, 1, 12, [12]], + ], + FlagNum: 12, + FlagToSumNum: { a1: [118, 233, 277, 319], a2: [118, 233, 277, 319] }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(236); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/236.js b/game/level/236.js index fad8d1e9..ccc61417 100644 --- a/game/level/236.js +++ b/game/level/236.js @@ -1,159 +1,159 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oZZ, - othugZombie, - oJY, - oZomboni, - ], - PicArr: (function () { - return ["images/interface/backgroundwall.jpg"]; - })(), - backgroundImage: "images/interface/backgroundwall.jpg", - CanSelectCard: 1, - LF: [0, 3, 3, 3, 3, 3], - DKind: 1, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - LevelName: "常青之塔 86层", - LvlEName: 236, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oZZ, 1, 3], - [othugZombie, 1, 2], - [oJY, 1, 1], - [oZomboni, 1, 2], - ], - FlagNum: 12, - FlagToSumNum: { a1: [127, 241, 284, 325], a2: [127, 241, 284, 325] }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(237); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oZZ, + othugZombie, + oJY, + oZomboni, + ], + PicArr: (function () { + return ["images/interface/backgroundwall.jpg"]; + })(), + backgroundImage: "images/interface/backgroundwall.jpg", + CanSelectCard: 1, + LF: [0, 3, 3, 3, 3, 3], + DKind: 1, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + LevelName: "常青之塔 86层", + LvlEName: 236, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oZZ, 1, 3], + [othugZombie, 1, 2], + [oJY, 1, 1], + [oZomboni, 1, 2], + ], + FlagNum: 12, + FlagToSumNum: { a1: [127, 241, 284, 325], a2: [127, 241, 284, 325] }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(237); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/237.js b/game/level/237.js index 272f1864..9f24cdc7 100644 --- a/game/level/237.js +++ b/game/level/237.js @@ -1,159 +1,159 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oZZ, - othugZombie, - oJY, - oZomboni, - ], - PicArr: (function () { - return ["images/interface/backgroundwall.jpg"]; - })(), - backgroundImage: "images/interface/backgroundwall.jpg", - CanSelectCard: 1, - LF: [0, 3, 3, 3, 3, 3], - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - DKind: 1, - LevelName: "常青之塔 87层", - LvlEName: 237, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oZZ, 1, 3], - [othugZombie, 1, 2], - [oJY, 1, 1], - [oZomboni, 1, 2], - ], - FlagNum: 12, - FlagToSumNum: { a1: [134, 249, 291, 331], a2: [134, 249, 291, 331] }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(238); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oZZ, + othugZombie, + oJY, + oZomboni, + ], + PicArr: (function () { + return ["images/interface/backgroundwall.jpg"]; + })(), + backgroundImage: "images/interface/backgroundwall.jpg", + CanSelectCard: 1, + LF: [0, 3, 3, 3, 3, 3], + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + DKind: 1, + LevelName: "常青之塔 87层", + LvlEName: 237, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oZZ, 1, 3], + [othugZombie, 1, 2], + [oJY, 1, 1], + [oZomboni, 1, 2], + ], + FlagNum: 12, + FlagToSumNum: { a1: [134, 249, 291, 331], a2: [134, 249, 291, 331] }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(238); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/238.js b/game/level/238.js index cbf17aae..50daf079 100644 --- a/game/level/238.js +++ b/game/level/238.js @@ -1,159 +1,159 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oZZ, - othugZombie, - oJY, - oZomboni, - ], - PicArr: (function () { - return ["images/interface/backgroundwall.jpg"]; - })(), - backgroundImage: "images/interface/backgroundwall.jpg", - CanSelectCard: 1, - LF: [0, 3, 3, 3, 3, 3], - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - DKind: 1, - LevelName: "常青之塔 88层", - LvlEName: 237, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oZZ, 1, 3], - [othugZombie, 1, 2], - [oJY, 1, 1], - [oZomboni, 1, 2], - ], - FlagNum: 12, - FlagToSumNum: { a1: [143, 257, 298, 337], a2: [143, 257, 298, 337] }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(239); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oZZ, + othugZombie, + oJY, + oZomboni, + ], + PicArr: (function () { + return ["images/interface/backgroundwall.jpg"]; + })(), + backgroundImage: "images/interface/backgroundwall.jpg", + CanSelectCard: 1, + LF: [0, 3, 3, 3, 3, 3], + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + DKind: 1, + LevelName: "常青之塔 88层", + LvlEName: 237, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oZZ, 1, 3], + [othugZombie, 1, 2], + [oJY, 1, 1], + [oZomboni, 1, 2], + ], + FlagNum: 12, + FlagToSumNum: { a1: [143, 257, 298, 337], a2: [143, 257, 298, 337] }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(239); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/239.js b/game/level/239.js index b56a3688..829ba6fc 100644 --- a/game/level/239.js +++ b/game/level/239.js @@ -1,159 +1,159 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oZZ, - othugZombie, - oJY, - oZomboni, - ], - PicArr: (function () { - return ["images/interface/backgroundwall.jpg"]; - })(), - backgroundImage: "images/interface/backgroundwall.jpg", - CanSelectCard: 1, - LF: [0, 3, 3, 3, 3, 3], - DKind: 1, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - LevelName: "常青之塔 89层", - LvlEName: 239, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oZZ, 1, 3], - [othugZombie, 1, 2], - [oJY, 1, 1], - [oZomboni, 1, 2], - ], - FlagNum: 12, - FlagToSumNum: { a1: [152, 265, 305, 343], a2: [152, 265, 305, 343] }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(240); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oZZ, + othugZombie, + oJY, + oZomboni, + ], + PicArr: (function () { + return ["images/interface/backgroundwall.jpg"]; + })(), + backgroundImage: "images/interface/backgroundwall.jpg", + CanSelectCard: 1, + LF: [0, 3, 3, 3, 3, 3], + DKind: 1, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + LevelName: "常青之塔 89层", + LvlEName: 239, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oZZ, 1, 3], + [othugZombie, 1, 2], + [oJY, 1, 1], + [oZomboni, 1, 2], + ], + FlagNum: 12, + FlagToSumNum: { a1: [152, 265, 305, 343], a2: [152, 265, 305, 343] }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(240); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/24.js b/game/level/24.js index 8054b665..24784e09 100644 --- a/game/level/24.js +++ b/game/level/24.js @@ -1,104 +1,104 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oConeheadZombie, - oNewspaperZombie, - oBucketheadZombie, - oPoleVaultingZombie, - oSnorkelZombie, - ], - PicArr: (function () { - var a = oJalapeno.prototype, - b = a.PicArr; - return [ - "images/interface/background3.png", - "images/interface/trophy.png", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - Coord: 2, - SunNum: 50, - LF: [0, 1, 1, 2, 2, 1, 1], - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LevelName: "Level 3-4", - LvlEName: 24, - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie1]); - }, - StartGameMusic: "WateryGraves", - }, - { - AZ: [ - [oZombie, 2, 1], - [oZombie2, 2, 1], - [oZombie3, 1, 1], - [oNewspaperZombie, 1, 1], - [oPoleVaultingZombie, 1, 1], - [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 20, 29, 30]], - [oDuckyTubeZombie2, 1, 6], - [oDuckyTubeZombie3, 1, 6], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oSnorkelZombie, 1, 7, [29, 30]], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:417px;top:233px;z-index:255", - EDAll, - { - onclick: function () { - SelectModal(25); - }, - } - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oConeheadZombie, + oNewspaperZombie, + oBucketheadZombie, + oPoleVaultingZombie, + oSnorkelZombie, + ], + PicArr: (function () { + var a = oJalapeno.prototype, + b = a.PicArr; + return [ + "images/interface/background3.png", + "images/interface/trophy.png", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + Coord: 2, + SunNum: 50, + LF: [0, 1, 1, 2, 2, 1, 1], + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LevelName: "Level 3-4", + LvlEName: 24, + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie1]); + }, + StartGameMusic: "WateryGraves", + }, + { + AZ: [ + [oZombie, 2, 1], + [oZombie2, 2, 1], + [oZombie3, 1, 1], + [oNewspaperZombie, 1, 1], + [oPoleVaultingZombie, 1, 1], + [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 20, 29, 30]], + [oDuckyTubeZombie2, 1, 6], + [oDuckyTubeZombie3, 1, 6], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oSnorkelZombie, 1, 7, [29, 30]], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:417px;top:233px;z-index:255", + EDAll, + { + onclick: function () { + SelectModal(25); + }, + } + ); + }, + } ); diff --git a/game/level/240.js b/game/level/240.js index a825203c..784b919d 100644 --- a/game/level/240.js +++ b/game/level/240.js @@ -1,159 +1,159 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oZZ, - othugZombie, - oEmperor, - oWJY, - ], - PicArr: (function () { - return ["images/interface/backgroundwall.jpg"]; - })(), - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - backgroundImage: "images/interface/backgroundwall.jpg", - CanSelectCard: 1, - LF: [0, 3, 3, 3, 3, 3], - DKind: 1, - LevelName: "常青之塔 90层", - LvlEName: 240, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oZZ, 1, 3], - [othugZombie, 1, 2], - [oWJY, 1, 12, [12]], - [oEmperor, 1, 12, [12]], - ], - FlagNum: 12, - FlagToSumNum: { a1: [152, 265, 305, 343], a2: [152, 265, 305, 343] }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(241); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oZZ, + othugZombie, + oEmperor, + oWJY, + ], + PicArr: (function () { + return ["images/interface/backgroundwall.jpg"]; + })(), + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + backgroundImage: "images/interface/backgroundwall.jpg", + CanSelectCard: 1, + LF: [0, 3, 3, 3, 3, 3], + DKind: 1, + LevelName: "常青之塔 90层", + LvlEName: 240, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oZZ, 1, 3], + [othugZombie, 1, 2], + [oWJY, 1, 12, [12]], + [oEmperor, 1, 12, [12]], + ], + FlagNum: 12, + FlagToSumNum: { a1: [152, 265, 305, 343], a2: [152, 265, 305, 343] }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(241); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/241.js b/game/level/241.js index 23946163..5bd862b9 100644 --- a/game/level/241.js +++ b/game/level/241.js @@ -1,174 +1,174 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oZZ, - othugZombie, - oZomboni, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX1.jpg"]; - })(), - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oLawnCleaner, 2, -1); - CustomSpecial(oLawnCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - backgroundImage: "images/interface/backgroundX1.jpg", - CanSelectCard: 1, - LF: [0, 2, 3, 3, 2, 2, 0], - DKind: 1, - LevelName: "常青之塔 91层", - LvlEName: 241, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oZZ, 1, 3], - [othugZombie, 1, 2], - [oZomboni, 1, 2], - [oDuckyTubeZombie1, 1, 3], - [oDuckyTubeZombie2, 1, 4], - [oDuckyTubeZombie3, 1, 5], - [oDuckyTubeZombie4, 1, 6], - [oDolphinRiderZombie, 2, 7], - [oSubZombie, 3, 8], - [oSnorkelZombie, 3, 9], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [40, 153, 267, 308, 347], - a2: [40, 153, 267, 308, 347], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(242); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oZZ, + othugZombie, + oZomboni, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX1.jpg"]; + })(), + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oLawnCleaner, 2, -1); + CustomSpecial(oLawnCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + backgroundImage: "images/interface/backgroundX1.jpg", + CanSelectCard: 1, + LF: [0, 2, 3, 3, 2, 2, 0], + DKind: 1, + LevelName: "常青之塔 91层", + LvlEName: 241, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oZZ, 1, 3], + [othugZombie, 1, 2], + [oZomboni, 1, 2], + [oDuckyTubeZombie1, 1, 3], + [oDuckyTubeZombie2, 1, 4], + [oDuckyTubeZombie3, 1, 5], + [oDuckyTubeZombie4, 1, 6], + [oDolphinRiderZombie, 2, 7], + [oSubZombie, 3, 8], + [oSnorkelZombie, 3, 9], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [40, 153, 267, 308, 347], + a2: [40, 153, 267, 308, 347], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(242); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/242.js b/game/level/242.js index 4dcc0bb6..65d32a5b 100644 --- a/game/level/242.js +++ b/game/level/242.js @@ -1,174 +1,174 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oZZ, - othugZombie, - oZomboni, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX1.jpg"]; - })(), - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oLawnCleaner, 2, -1); - CustomSpecial(oLawnCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - backgroundImage: "images/interface/backgroundX1.jpg", - CanSelectCard: 1, - LF: [0, 2, 3, 3, 2, 2, 0], - DKind: 1, - LevelName: "常青之塔 92层", - LvlEName: 242, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oZZ, 1, 3], - [othugZombie, 1, 2], - [oZomboni, 1, 2], - [oDuckyTubeZombie1, 1, 3], - [oDuckyTubeZombie2, 1, 4], - [oDuckyTubeZombie3, 1, 5], - [oDuckyTubeZombie4, 1, 6], - [oDolphinRiderZombie, 2, 7], - [oSubZombie, 3, 8], - [oSnorkelZombie, 3, 9], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [41, 155, 270, 312, 352], - a2: [41, 155, 270, 312, 352], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(243); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oZZ, + othugZombie, + oZomboni, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX1.jpg"]; + })(), + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oLawnCleaner, 2, -1); + CustomSpecial(oLawnCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + backgroundImage: "images/interface/backgroundX1.jpg", + CanSelectCard: 1, + LF: [0, 2, 3, 3, 2, 2, 0], + DKind: 1, + LevelName: "常青之塔 92层", + LvlEName: 242, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oZZ, 1, 3], + [othugZombie, 1, 2], + [oZomboni, 1, 2], + [oDuckyTubeZombie1, 1, 3], + [oDuckyTubeZombie2, 1, 4], + [oDuckyTubeZombie3, 1, 5], + [oDuckyTubeZombie4, 1, 6], + [oDolphinRiderZombie, 2, 7], + [oSubZombie, 3, 8], + [oSnorkelZombie, 3, 9], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [41, 155, 270, 312, 352], + a2: [41, 155, 270, 312, 352], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(243); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/243.js b/game/level/243.js index 80747921..611f9351 100644 --- a/game/level/243.js +++ b/game/level/243.js @@ -1,174 +1,174 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oZZ, - othugZombie, - oZomboni, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX1.jpg"]; - })(), - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oLawnCleaner, 2, -1); - CustomSpecial(oLawnCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - backgroundImage: "images/interface/backgroundX1.jpg", - CanSelectCard: 1, - LF: [0, 2, 3, 3, 2, 2, 0], - DKind: 1, - LevelName: "常青之塔 93层", - LvlEName: 243, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oZZ, 1, 3], - [othugZombie, 1, 2], - [oZomboni, 1, 2], - [oDuckyTubeZombie1, 1, 3], - [oDuckyTubeZombie2, 1, 4], - [oDuckyTubeZombie3, 1, 5], - [oDuckyTubeZombie4, 1, 6], - [oDolphinRiderZombie, 2, 7], - [oSubZombie, 3, 8], - [oSnorkelZombie, 3, 9], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [42, 158, 273, 316, 357], - a2: [42, 158, 273, 316, 357], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(244); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oZZ, + othugZombie, + oZomboni, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX1.jpg"]; + })(), + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oLawnCleaner, 2, -1); + CustomSpecial(oLawnCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + backgroundImage: "images/interface/backgroundX1.jpg", + CanSelectCard: 1, + LF: [0, 2, 3, 3, 2, 2, 0], + DKind: 1, + LevelName: "常青之塔 93层", + LvlEName: 243, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oZZ, 1, 3], + [othugZombie, 1, 2], + [oZomboni, 1, 2], + [oDuckyTubeZombie1, 1, 3], + [oDuckyTubeZombie2, 1, 4], + [oDuckyTubeZombie3, 1, 5], + [oDuckyTubeZombie4, 1, 6], + [oDolphinRiderZombie, 2, 7], + [oSubZombie, 3, 8], + [oSnorkelZombie, 3, 9], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [42, 158, 273, 316, 357], + a2: [42, 158, 273, 316, 357], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(244); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/244.js b/game/level/244.js index 2624ac9a..38149e64 100644 --- a/game/level/244.js +++ b/game/level/244.js @@ -1,174 +1,174 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oZZ, - othugZombie, - oZomboni, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundX1.jpg"]; - })(), - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oLawnCleaner, 2, -1); - CustomSpecial(oLawnCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - backgroundImage: "images/interface/backgroundX1.jpg", - CanSelectCard: 1, - LF: [0, 2, 3, 3, 2, 2, 0], - DKind: 1, - LevelName: "常青之塔 94层", - LvlEName: 244, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oZZ, 1, 3], - [othugZombie, 1, 2], - [oZomboni, 1, 2], - [oDuckyTubeZombie1, 1, 3], - [oDuckyTubeZombie2, 1, 4], - [oDuckyTubeZombie3, 1, 5], - [oDuckyTubeZombie4, 1, 6], - [oDolphinRiderZombie, 2, 7], - [oSubZombie, 3, 8], - [oSnorkelZombie, 3, 9], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [43, 160, 276, 320, 361], - a2: [43, 160, 276, 320, 361], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(245); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oZZ, + othugZombie, + oZomboni, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundX1.jpg"]; + })(), + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oLawnCleaner, 2, -1); + CustomSpecial(oLawnCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + backgroundImage: "images/interface/backgroundX1.jpg", + CanSelectCard: 1, + LF: [0, 2, 3, 3, 2, 2, 0], + DKind: 1, + LevelName: "常青之塔 94层", + LvlEName: 244, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oZZ, 1, 3], + [othugZombie, 1, 2], + [oZomboni, 1, 2], + [oDuckyTubeZombie1, 1, 3], + [oDuckyTubeZombie2, 1, 4], + [oDuckyTubeZombie3, 1, 5], + [oDuckyTubeZombie4, 1, 6], + [oDolphinRiderZombie, 2, 7], + [oSubZombie, 3, 8], + [oSnorkelZombie, 3, 9], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [43, 160, 276, 320, 361], + a2: [43, 160, 276, 320, 361], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(245); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/245.js b/game/level/245.js index f261d878..c6781ffd 100644 --- a/game/level/245.js +++ b/game/level/245.js @@ -1,178 +1,178 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oBucketheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oFootballZombie, - oCConeheadZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oHeiFootballZombie, - oXBZombie, - oCZombie, - oCBucketheadZombie, - oMustacheZombie, - oTrashZombie, - oJX, - oNewspaperZombie, - oCNewspaperZombie, - oCJackinTheBoxZombie, - oCFootballZombie, - oZZ, - othugZombie, - oZomboni, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - oLGBOSS, - oEmperor, - ], - PicArr: (function () { - return ["images/interface/backgroundX1.jpg"]; - })(), - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oLawnCleaner, 2, -1); - CustomSpecial(oLawnCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - backgroundImage: "images/interface/backgroundX1.jpg", - CanSelectCard: 1, - LF: [0, 2, 3, 3, 2, 2, 0], - DKind: 1, - LevelName: "常青之塔 95层", - LvlEName: 245, - SunNum: 9900, - CanSelectCard: 1, - StartGameMusic: "The Great Wall", - LargeWaveFlag: { - 4: $("imgFlag3"), - 8: $("imgFlag2"), - 12: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oConeheadZombie, 1, 2], - [oBucketheadZombie, 1, 3], - [oCXZombie, 1, 4], - [oJackinTheBoxZombie, 1, 5], - [oFootballZombie, 1, 6], - [oCConeheadZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oHeiFootballZombie, 1, 9], - [oCZombie, 1, 10], - [oXBZombie, 1, 11], - [oCBucketheadZombie, 1, 12], - [oMustacheZombie, 1, 11], - [oTrashZombie, 1, 10], - [oJX, 1, 9], - [oNewspaperZombie, 1, 8], - [oCJackinTheBoxZombie, 1, 7], - [oCFootballZombie, 1, 6], - [oCNewspaperZombie, 1, 5], - [oCPoleVaultingZombie, 1, 4], - [oZZ, 1, 3], - [othugZombie, 1, 2], - [oZomboni, 1, 2], - [oDuckyTubeZombie1, 1, 3], - [oDuckyTubeZombie2, 1, 4], - [oDuckyTubeZombie3, 1, 5], - [oDuckyTubeZombie4, 1, 6], - [oDolphinRiderZombie, 2, 7], - [oSubZombie, 3, 8], - [oSnorkelZombie, 3, 9], - [oLGBOSS, 1, 12, [12]], - [oEmperor, 1, 12, [12]], - ], - FlagNum: 12, - FlagToSumNum: { - a1: [43, 160, 276, 320, 361], - a2: [43, 160, 276, 320, 361], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(246); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oBucketheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oFootballZombie, + oCConeheadZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oHeiFootballZombie, + oXBZombie, + oCZombie, + oCBucketheadZombie, + oMustacheZombie, + oTrashZombie, + oJX, + oNewspaperZombie, + oCNewspaperZombie, + oCJackinTheBoxZombie, + oCFootballZombie, + oZZ, + othugZombie, + oZomboni, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + oLGBOSS, + oEmperor, + ], + PicArr: (function () { + return ["images/interface/backgroundX1.jpg"]; + })(), + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oLawnCleaner, 2, -1); + CustomSpecial(oLawnCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + backgroundImage: "images/interface/backgroundX1.jpg", + CanSelectCard: 1, + LF: [0, 2, 3, 3, 2, 2, 0], + DKind: 1, + LevelName: "常青之塔 95层", + LvlEName: 245, + SunNum: 9900, + CanSelectCard: 1, + StartGameMusic: "The Great Wall", + LargeWaveFlag: { + 4: $("imgFlag3"), + 8: $("imgFlag2"), + 12: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oConeheadZombie, 1, 2], + [oBucketheadZombie, 1, 3], + [oCXZombie, 1, 4], + [oJackinTheBoxZombie, 1, 5], + [oFootballZombie, 1, 6], + [oCConeheadZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oHeiFootballZombie, 1, 9], + [oCZombie, 1, 10], + [oXBZombie, 1, 11], + [oCBucketheadZombie, 1, 12], + [oMustacheZombie, 1, 11], + [oTrashZombie, 1, 10], + [oJX, 1, 9], + [oNewspaperZombie, 1, 8], + [oCJackinTheBoxZombie, 1, 7], + [oCFootballZombie, 1, 6], + [oCNewspaperZombie, 1, 5], + [oCPoleVaultingZombie, 1, 4], + [oZZ, 1, 3], + [othugZombie, 1, 2], + [oZomboni, 1, 2], + [oDuckyTubeZombie1, 1, 3], + [oDuckyTubeZombie2, 1, 4], + [oDuckyTubeZombie3, 1, 5], + [oDuckyTubeZombie4, 1, 6], + [oDolphinRiderZombie, 2, 7], + [oSubZombie, 3, 8], + [oSnorkelZombie, 3, 9], + [oLGBOSS, 1, 12, [12]], + [oEmperor, 1, 12, [12]], + ], + FlagNum: 12, + FlagToSumNum: { + a1: [43, 160, 276, 320, 361], + a2: [43, 160, 276, 320, 361], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(246); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/246.js b/game/level/246.js index c2309ece..1dd1503a 100644 --- a/game/level/246.js +++ b/game/level/246.js @@ -1,188 +1,188 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oMustacheZombie, - oConeheadZombie, - oBucketheadZombie, - oFootballZombie, - oHeiFootballZombie, - oCFootballZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oNewspaperZombie, - oScreenDoorZombie, - oTrashZombie, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oSnorkelZombie, - oCSnorkelZombie, - oSubZombie, - oSmallZombie, - oSmallDuckyTubeZombie1, - oSmallConeheadZombie, - oSmallFootballZombie, - oDolphinRiderZombie, - oCDolphinRiderZombie, - oImp, - oJX, - oJackinTheBoxZombie, - oCJackinTheBoxZombie, - oCZombie, - oCConeheadZombie, - oCBucketheadZombie, - othugZombie, - oEunZombie, - oZZ, - oXBZombie, - oCXZombie, - oCNewspaperZombie, - ], - PicArr: (function () { - return ["images/interface/background4.jpg"]; - })(), - backgroundImage: "images/interface/background4.jpg", - CanSelectCard: 1, - LF: [0, 1, 1, 2, 2, 1, 1], - DKind: 0, - LevelName: "常青之塔 96层", - LvlEName: 246, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 5, - StartGameMusic: "RigorMormist", - LargeWaveFlag: { - 4: $("imgFlag4"), - 8: $("imgFlag3"), - 12: $("imgFlag2"), - 16: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oMustacheZombie, 1, 2], - [oConeheadZombie, 1, 3], - [oBucketheadZombie, 1, 4], - [oFootballZombie, 1, 5], - [oHeiFootballZombie, 1, 6], - [oCFootballZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oCPoleVaultingZombie, 1, 9], - [oNewspaperZombie, 1, 10], - [oCNewspaperZombie, 1, 11], - [oScreenDoorZombie, 1, 12], - [oTrashZombie, 1, 11], - [oDuckyTubeZombie1, 1, 12], - [oDuckyTubeZombie2, 1, 11], - [oDuckyTubeZombie3, 1, 12], - [oDuckyTubeZombie4, 1, 11], - [oSnorkelZombie, 1, 10], - [oCSnorkelZombie, 1, 9], - [oSubZombie, 1, 8], - [oSmallZombie, 1, 7], - [oSmallDuckyTubeZombie1, 1, 6], - [oSmallConeheadZombie, 1, 5], - [oSmallFootballZombie, 1, 4], - [oDolphinRiderZombie, 1, 2], - [oCDolphinRiderZombie, 1, 3], - [oImp, 1, 4], - [oJX, 1, 5], - [oJackinTheBoxZombie, 1, 6], - [oCJackinTheBoxZombie, 1, 7], - [oCZombie, 1, 8], - [oCConeheadZombie, 1, 9], - [oCBucketheadZombie, 1, 10], - [othugZombie, 1, 11], - [oEunZombie, 1, 12], - [oZZ, 1, 11], - [oXBZombie, 1, 10], - [oXBZombie, 1, 9], - [oCXZombie, 1, 8], - ], - FlagNum: 16, - FlagToSumNum: { - a1: [43, 160, 276, 320, 361], - a2: [43, 160, 276, 320, 361], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowLargeWave, 0], - 15: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(247); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oMustacheZombie, + oConeheadZombie, + oBucketheadZombie, + oFootballZombie, + oHeiFootballZombie, + oCFootballZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oNewspaperZombie, + oScreenDoorZombie, + oTrashZombie, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oSnorkelZombie, + oCSnorkelZombie, + oSubZombie, + oSmallZombie, + oSmallDuckyTubeZombie1, + oSmallConeheadZombie, + oSmallFootballZombie, + oDolphinRiderZombie, + oCDolphinRiderZombie, + oImp, + oJX, + oJackinTheBoxZombie, + oCJackinTheBoxZombie, + oCZombie, + oCConeheadZombie, + oCBucketheadZombie, + othugZombie, + oEunZombie, + oZZ, + oXBZombie, + oCXZombie, + oCNewspaperZombie, + ], + PicArr: (function () { + return ["images/interface/background4.jpg"]; + })(), + backgroundImage: "images/interface/background4.jpg", + CanSelectCard: 1, + LF: [0, 1, 1, 2, 2, 1, 1], + DKind: 0, + LevelName: "常青之塔 96层", + LvlEName: 246, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 5, + StartGameMusic: "RigorMormist", + LargeWaveFlag: { + 4: $("imgFlag4"), + 8: $("imgFlag3"), + 12: $("imgFlag2"), + 16: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oMustacheZombie, 1, 2], + [oConeheadZombie, 1, 3], + [oBucketheadZombie, 1, 4], + [oFootballZombie, 1, 5], + [oHeiFootballZombie, 1, 6], + [oCFootballZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oCPoleVaultingZombie, 1, 9], + [oNewspaperZombie, 1, 10], + [oCNewspaperZombie, 1, 11], + [oScreenDoorZombie, 1, 12], + [oTrashZombie, 1, 11], + [oDuckyTubeZombie1, 1, 12], + [oDuckyTubeZombie2, 1, 11], + [oDuckyTubeZombie3, 1, 12], + [oDuckyTubeZombie4, 1, 11], + [oSnorkelZombie, 1, 10], + [oCSnorkelZombie, 1, 9], + [oSubZombie, 1, 8], + [oSmallZombie, 1, 7], + [oSmallDuckyTubeZombie1, 1, 6], + [oSmallConeheadZombie, 1, 5], + [oSmallFootballZombie, 1, 4], + [oDolphinRiderZombie, 1, 2], + [oCDolphinRiderZombie, 1, 3], + [oImp, 1, 4], + [oJX, 1, 5], + [oJackinTheBoxZombie, 1, 6], + [oCJackinTheBoxZombie, 1, 7], + [oCZombie, 1, 8], + [oCConeheadZombie, 1, 9], + [oCBucketheadZombie, 1, 10], + [othugZombie, 1, 11], + [oEunZombie, 1, 12], + [oZZ, 1, 11], + [oXBZombie, 1, 10], + [oXBZombie, 1, 9], + [oCXZombie, 1, 8], + ], + FlagNum: 16, + FlagToSumNum: { + a1: [43, 160, 276, 320, 361], + a2: [43, 160, 276, 320, 361], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowLargeWave, 0], + 15: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(247); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/247.js b/game/level/247.js index ca219be5..e5d22030 100644 --- a/game/level/247.js +++ b/game/level/247.js @@ -1,188 +1,188 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oMustacheZombie, - oConeheadZombie, - oBucketheadZombie, - oFootballZombie, - oHeiFootballZombie, - oCFootballZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oNewspaperZombie, - oScreenDoorZombie, - oTrashZombie, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oSnorkelZombie, - oCSnorkelZombie, - oSubZombie, - oSmallZombie, - oSmallDuckyTubeZombie1, - oSmallConeheadZombie, - oSmallFootballZombie, - oDolphinRiderZombie, - oCDolphinRiderZombie, - oImp, - oJX, - oJackinTheBoxZombie, - oCJackinTheBoxZombie, - oCZombie, - oCConeheadZombie, - oCBucketheadZombie, - othugZombie, - oEunZombie, - oZZ, - oXBZombie, - oCXZombie, - oCNewspaperZombie, - ], - PicArr: (function () { - return ["images/interface/background4.jpg"]; - })(), - backgroundImage: "images/interface/background4.jpg", - CanSelectCard: 1, - LF: [0, 1, 1, 2, 2, 1, 1], - DKind: 0, - LevelName: "常青之塔 97层", - LvlEName: 247, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 5, - StartGameMusic: "RigorMormist", - LargeWaveFlag: { - 4: $("imgFlag4"), - 8: $("imgFlag3"), - 12: $("imgFlag2"), - 16: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oMustacheZombie, 1, 2], - [oConeheadZombie, 1, 3], - [oBucketheadZombie, 1, 4], - [oFootballZombie, 1, 5], - [oHeiFootballZombie, 1, 6], - [oCFootballZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oCPoleVaultingZombie, 1, 9], - [oNewspaperZombie, 1, 10], - [oCNewspaperZombie, 1, 11], - [oScreenDoorZombie, 1, 12], - [oTrashZombie, 1, 11], - [oDuckyTubeZombie1, 1, 12], - [oDuckyTubeZombie2, 1, 11], - [oDuckyTubeZombie3, 1, 12], - [oDuckyTubeZombie4, 1, 11], - [oSnorkelZombie, 1, 10], - [oCSnorkelZombie, 1, 9], - [oSubZombie, 1, 8], - [oSmallZombie, 1, 7], - [oSmallDuckyTubeZombie1, 1, 6], - [oSmallConeheadZombie, 1, 5], - [oSmallFootballZombie, 1, 4], - [oDolphinRiderZombie, 1, 2], - [oCDolphinRiderZombie, 1, 3], - [oImp, 1, 4], - [oJX, 1, 5], - [oJackinTheBoxZombie, 1, 6], - [oCJackinTheBoxZombie, 1, 7], - [oCZombie, 1, 8], - [oCConeheadZombie, 1, 9], - [oCBucketheadZombie, 1, 10], - [othugZombie, 1, 11], - [oEunZombie, 1, 12], - [oZZ, 1, 11], - [oXBZombie, 1, 10], - [oXBZombie, 1, 9], - [oCXZombie, 1, 8], - ], - FlagNum: 16, - FlagToSumNum: { - a1: [44, 162, 279, 324, 366], - a2: [44, 162, 279, 324, 366], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowLargeWave, 0], - 15: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(248); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oMustacheZombie, + oConeheadZombie, + oBucketheadZombie, + oFootballZombie, + oHeiFootballZombie, + oCFootballZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oNewspaperZombie, + oScreenDoorZombie, + oTrashZombie, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oSnorkelZombie, + oCSnorkelZombie, + oSubZombie, + oSmallZombie, + oSmallDuckyTubeZombie1, + oSmallConeheadZombie, + oSmallFootballZombie, + oDolphinRiderZombie, + oCDolphinRiderZombie, + oImp, + oJX, + oJackinTheBoxZombie, + oCJackinTheBoxZombie, + oCZombie, + oCConeheadZombie, + oCBucketheadZombie, + othugZombie, + oEunZombie, + oZZ, + oXBZombie, + oCXZombie, + oCNewspaperZombie, + ], + PicArr: (function () { + return ["images/interface/background4.jpg"]; + })(), + backgroundImage: "images/interface/background4.jpg", + CanSelectCard: 1, + LF: [0, 1, 1, 2, 2, 1, 1], + DKind: 0, + LevelName: "常青之塔 97层", + LvlEName: 247, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 5, + StartGameMusic: "RigorMormist", + LargeWaveFlag: { + 4: $("imgFlag4"), + 8: $("imgFlag3"), + 12: $("imgFlag2"), + 16: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oMustacheZombie, 1, 2], + [oConeheadZombie, 1, 3], + [oBucketheadZombie, 1, 4], + [oFootballZombie, 1, 5], + [oHeiFootballZombie, 1, 6], + [oCFootballZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oCPoleVaultingZombie, 1, 9], + [oNewspaperZombie, 1, 10], + [oCNewspaperZombie, 1, 11], + [oScreenDoorZombie, 1, 12], + [oTrashZombie, 1, 11], + [oDuckyTubeZombie1, 1, 12], + [oDuckyTubeZombie2, 1, 11], + [oDuckyTubeZombie3, 1, 12], + [oDuckyTubeZombie4, 1, 11], + [oSnorkelZombie, 1, 10], + [oCSnorkelZombie, 1, 9], + [oSubZombie, 1, 8], + [oSmallZombie, 1, 7], + [oSmallDuckyTubeZombie1, 1, 6], + [oSmallConeheadZombie, 1, 5], + [oSmallFootballZombie, 1, 4], + [oDolphinRiderZombie, 1, 2], + [oCDolphinRiderZombie, 1, 3], + [oImp, 1, 4], + [oJX, 1, 5], + [oJackinTheBoxZombie, 1, 6], + [oCJackinTheBoxZombie, 1, 7], + [oCZombie, 1, 8], + [oCConeheadZombie, 1, 9], + [oCBucketheadZombie, 1, 10], + [othugZombie, 1, 11], + [oEunZombie, 1, 12], + [oZZ, 1, 11], + [oXBZombie, 1, 10], + [oXBZombie, 1, 9], + [oCXZombie, 1, 8], + ], + FlagNum: 16, + FlagToSumNum: { + a1: [44, 162, 279, 324, 366], + a2: [44, 162, 279, 324, 366], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowLargeWave, 0], + 15: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(248); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/248.js b/game/level/248.js index 17404073..e8abcb85 100644 --- a/game/level/248.js +++ b/game/level/248.js @@ -1,188 +1,188 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oMustacheZombie, - oConeheadZombie, - oBucketheadZombie, - oFootballZombie, - oHeiFootballZombie, - oCFootballZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oNewspaperZombie, - oScreenDoorZombie, - oTrashZombie, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oSnorkelZombie, - oCSnorkelZombie, - oSubZombie, - oSmallZombie, - oSmallDuckyTubeZombie1, - oSmallConeheadZombie, - oSmallFootballZombie, - oDolphinRiderZombie, - oCDolphinRiderZombie, - oImp, - oJX, - oJackinTheBoxZombie, - oCJackinTheBoxZombie, - oCZombie, - oCConeheadZombie, - oCBucketheadZombie, - othugZombie, - oEunZombie, - oZZ, - oXBZombie, - oCXZombie, - oCNewspaperZombie, - ], - PicArr: (function () { - return ["images/interface/background4.jpg"]; - })(), - backgroundImage: "images/interface/background4.jpg", - CanSelectCard: 1, - LF: [0, 1, 1, 2, 2, 1, 1], - DKind: 0, - LevelName: "常青之塔 98层", - LvlEName: 248, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 5, - StartGameMusic: "RigorMormist", - LargeWaveFlag: { - 4: $("imgFlag4"), - 8: $("imgFlag3"), - 12: $("imgFlag2"), - 16: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oMustacheZombie, 1, 2], - [oConeheadZombie, 1, 3], - [oBucketheadZombie, 1, 4], - [oFootballZombie, 1, 5], - [oHeiFootballZombie, 1, 6], - [oCFootballZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oCPoleVaultingZombie, 1, 9], - [oNewspaperZombie, 1, 10], - [oCNewspaperZombie, 1, 11], - [oScreenDoorZombie, 1, 12], - [oTrashZombie, 1, 11], - [oDuckyTubeZombie1, 1, 12], - [oDuckyTubeZombie2, 1, 11], - [oDuckyTubeZombie3, 1, 12], - [oDuckyTubeZombie4, 1, 11], - [oSnorkelZombie, 1, 10], - [oCSnorkelZombie, 1, 9], - [oSubZombie, 1, 8], - [oSmallZombie, 1, 7], - [oSmallDuckyTubeZombie1, 1, 6], - [oSmallConeheadZombie, 1, 5], - [oSmallFootballZombie, 1, 4], - [oDolphinRiderZombie, 1, 2], - [oCDolphinRiderZombie, 1, 3], - [oImp, 1, 4], - [oJX, 1, 5], - [oJackinTheBoxZombie, 1, 6], - [oCJackinTheBoxZombie, 1, 7], - [oCZombie, 1, 8], - [oCConeheadZombie, 1, 9], - [oCBucketheadZombie, 1, 10], - [othugZombie, 1, 11], - [oEunZombie, 1, 12], - [oZZ, 1, 11], - [oXBZombie, 1, 10], - [oXBZombie, 1, 9], - [oCXZombie, 1, 8], - ], - FlagNum: 16, - FlagToSumNum: { - a1: [45, 164, 282, 328, 371], - a2: [45, 164, 282, 328, 371], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowLargeWave, 0], - 15: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(249); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oMustacheZombie, + oConeheadZombie, + oBucketheadZombie, + oFootballZombie, + oHeiFootballZombie, + oCFootballZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oNewspaperZombie, + oScreenDoorZombie, + oTrashZombie, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oSnorkelZombie, + oCSnorkelZombie, + oSubZombie, + oSmallZombie, + oSmallDuckyTubeZombie1, + oSmallConeheadZombie, + oSmallFootballZombie, + oDolphinRiderZombie, + oCDolphinRiderZombie, + oImp, + oJX, + oJackinTheBoxZombie, + oCJackinTheBoxZombie, + oCZombie, + oCConeheadZombie, + oCBucketheadZombie, + othugZombie, + oEunZombie, + oZZ, + oXBZombie, + oCXZombie, + oCNewspaperZombie, + ], + PicArr: (function () { + return ["images/interface/background4.jpg"]; + })(), + backgroundImage: "images/interface/background4.jpg", + CanSelectCard: 1, + LF: [0, 1, 1, 2, 2, 1, 1], + DKind: 0, + LevelName: "常青之塔 98层", + LvlEName: 248, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 5, + StartGameMusic: "RigorMormist", + LargeWaveFlag: { + 4: $("imgFlag4"), + 8: $("imgFlag3"), + 12: $("imgFlag2"), + 16: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oMustacheZombie, 1, 2], + [oConeheadZombie, 1, 3], + [oBucketheadZombie, 1, 4], + [oFootballZombie, 1, 5], + [oHeiFootballZombie, 1, 6], + [oCFootballZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oCPoleVaultingZombie, 1, 9], + [oNewspaperZombie, 1, 10], + [oCNewspaperZombie, 1, 11], + [oScreenDoorZombie, 1, 12], + [oTrashZombie, 1, 11], + [oDuckyTubeZombie1, 1, 12], + [oDuckyTubeZombie2, 1, 11], + [oDuckyTubeZombie3, 1, 12], + [oDuckyTubeZombie4, 1, 11], + [oSnorkelZombie, 1, 10], + [oCSnorkelZombie, 1, 9], + [oSubZombie, 1, 8], + [oSmallZombie, 1, 7], + [oSmallDuckyTubeZombie1, 1, 6], + [oSmallConeheadZombie, 1, 5], + [oSmallFootballZombie, 1, 4], + [oDolphinRiderZombie, 1, 2], + [oCDolphinRiderZombie, 1, 3], + [oImp, 1, 4], + [oJX, 1, 5], + [oJackinTheBoxZombie, 1, 6], + [oCJackinTheBoxZombie, 1, 7], + [oCZombie, 1, 8], + [oCConeheadZombie, 1, 9], + [oCBucketheadZombie, 1, 10], + [othugZombie, 1, 11], + [oEunZombie, 1, 12], + [oZZ, 1, 11], + [oXBZombie, 1, 10], + [oXBZombie, 1, 9], + [oCXZombie, 1, 8], + ], + FlagNum: 16, + FlagToSumNum: { + a1: [45, 164, 282, 328, 371], + a2: [45, 164, 282, 328, 371], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowLargeWave, 0], + 15: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(249); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/249.js b/game/level/249.js index a4fa04e8..c7cf9dd7 100644 --- a/game/level/249.js +++ b/game/level/249.js @@ -1,188 +1,188 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oCactus, - oPlantern, - oSplitPea, - oStarfruit, - oPumpkinHead, - oFlowerPot, - oCoffeeBean, - oGarlic, - oSeaShroom, - oOxygen, - ostar, - oTTS, - oSeaAnemone, - oGatlingPea, - oGloomShroom, - oTwinSunflower, - oSpikerock, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oMustacheZombie, - oConeheadZombie, - oBucketheadZombie, - oFootballZombie, - oHeiFootballZombie, - oCFootballZombie, - oPoleVaultingZombie, - oCPoleVaultingZombie, - oNewspaperZombie, - oScreenDoorZombie, - oTrashZombie, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oSnorkelZombie, - oCSnorkelZombie, - oSubZombie, - oSmallZombie, - oSmallDuckyTubeZombie1, - oSmallConeheadZombie, - oSmallFootballZombie, - oDolphinRiderZombie, - oCDolphinRiderZombie, - oImp, - oJX, - oJackinTheBoxZombie, - oCJackinTheBoxZombie, - oCZombie, - oCConeheadZombie, - oCBucketheadZombie, - othugZombie, - oEunZombie, - oZZ, - oXBZombie, - oCXZombie, - oCNewspaperZombie, - ], - PicArr: (function () { - return ["images/interface/background4.jpg"]; - })(), - backgroundImage: "images/interface/background4.jpg", - CanSelectCard: 1, - LF: [0, 1, 1, 2, 2, 1, 1], - DKind: 0, - LevelName: "常青之塔 99层", - LvlEName: 248, - SunNum: 9900, - CanSelectCard: 1, - Coord: 2, - HaveFog: 5, - StartGameMusic: "RigorMormist", - LargeWaveFlag: { - 4: $("imgFlag4"), - 8: $("imgFlag3"), - 12: $("imgFlag2"), - 16: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oMustacheZombie, 1, 2], - [oConeheadZombie, 1, 3], - [oBucketheadZombie, 1, 4], - [oFootballZombie, 1, 5], - [oHeiFootballZombie, 1, 6], - [oCFootballZombie, 1, 7], - [oPoleVaultingZombie, 1, 8], - [oCPoleVaultingZombie, 1, 9], - [oNewspaperZombie, 1, 10], - [oCNewspaperZombie, 1, 11], - [oScreenDoorZombie, 1, 12], - [oTrashZombie, 1, 11], - [oDuckyTubeZombie1, 1, 12], - [oDuckyTubeZombie2, 1, 11], - [oDuckyTubeZombie3, 1, 12], - [oDuckyTubeZombie4, 1, 11], - [oSnorkelZombie, 1, 10], - [oCSnorkelZombie, 1, 9], - [oSubZombie, 1, 8], - [oSmallZombie, 1, 7], - [oSmallDuckyTubeZombie1, 1, 6], - [oSmallConeheadZombie, 1, 5], - [oSmallFootballZombie, 1, 4], - [oDolphinRiderZombie, 1, 2], - [oCDolphinRiderZombie, 1, 3], - [oImp, 1, 4], - [oJX, 1, 5], - [oJackinTheBoxZombie, 1, 6], - [oCJackinTheBoxZombie, 1, 7], - [oCZombie, 1, 8], - [oCConeheadZombie, 1, 9], - [oCBucketheadZombie, 1, 10], - [othugZombie, 1, 11], - [oEunZombie, 1, 12], - [oZZ, 1, 11], - [oXBZombie, 1, 10], - [oXBZombie, 1, 9], - [oCXZombie, 1, 8], - ], - FlagNum: 16, - FlagToSumNum: { - a1: [46, 166, 285, 334, 376], - a2: [46, 166, 285, 334, 376], - }, - FlagToMonitor: { - 3: [ShowLargeWave, 0], - 7: [ShowLargeWave, 0], - 11: [ShowLargeWave, 0], - 15: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(250); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oPlantern, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oCoffeeBean, + oGarlic, + oSeaShroom, + oOxygen, + ostar, + oTTS, + oSeaAnemone, + oGatlingPea, + oGloomShroom, + oTwinSunflower, + oSpikerock, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oMustacheZombie, + oConeheadZombie, + oBucketheadZombie, + oFootballZombie, + oHeiFootballZombie, + oCFootballZombie, + oPoleVaultingZombie, + oCPoleVaultingZombie, + oNewspaperZombie, + oScreenDoorZombie, + oTrashZombie, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oSnorkelZombie, + oCSnorkelZombie, + oSubZombie, + oSmallZombie, + oSmallDuckyTubeZombie1, + oSmallConeheadZombie, + oSmallFootballZombie, + oDolphinRiderZombie, + oCDolphinRiderZombie, + oImp, + oJX, + oJackinTheBoxZombie, + oCJackinTheBoxZombie, + oCZombie, + oCConeheadZombie, + oCBucketheadZombie, + othugZombie, + oEunZombie, + oZZ, + oXBZombie, + oCXZombie, + oCNewspaperZombie, + ], + PicArr: (function () { + return ["images/interface/background4.jpg"]; + })(), + backgroundImage: "images/interface/background4.jpg", + CanSelectCard: 1, + LF: [0, 1, 1, 2, 2, 1, 1], + DKind: 0, + LevelName: "常青之塔 99层", + LvlEName: 248, + SunNum: 9900, + CanSelectCard: 1, + Coord: 2, + HaveFog: 5, + StartGameMusic: "RigorMormist", + LargeWaveFlag: { + 4: $("imgFlag4"), + 8: $("imgFlag3"), + 12: $("imgFlag2"), + 16: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oMustacheZombie, 1, 2], + [oConeheadZombie, 1, 3], + [oBucketheadZombie, 1, 4], + [oFootballZombie, 1, 5], + [oHeiFootballZombie, 1, 6], + [oCFootballZombie, 1, 7], + [oPoleVaultingZombie, 1, 8], + [oCPoleVaultingZombie, 1, 9], + [oNewspaperZombie, 1, 10], + [oCNewspaperZombie, 1, 11], + [oScreenDoorZombie, 1, 12], + [oTrashZombie, 1, 11], + [oDuckyTubeZombie1, 1, 12], + [oDuckyTubeZombie2, 1, 11], + [oDuckyTubeZombie3, 1, 12], + [oDuckyTubeZombie4, 1, 11], + [oSnorkelZombie, 1, 10], + [oCSnorkelZombie, 1, 9], + [oSubZombie, 1, 8], + [oSmallZombie, 1, 7], + [oSmallDuckyTubeZombie1, 1, 6], + [oSmallConeheadZombie, 1, 5], + [oSmallFootballZombie, 1, 4], + [oDolphinRiderZombie, 1, 2], + [oCDolphinRiderZombie, 1, 3], + [oImp, 1, 4], + [oJX, 1, 5], + [oJackinTheBoxZombie, 1, 6], + [oCJackinTheBoxZombie, 1, 7], + [oCZombie, 1, 8], + [oCConeheadZombie, 1, 9], + [oCBucketheadZombie, 1, 10], + [othugZombie, 1, 11], + [oEunZombie, 1, 12], + [oZZ, 1, 11], + [oXBZombie, 1, 10], + [oXBZombie, 1, 9], + [oCXZombie, 1, 8], + ], + FlagNum: 16, + FlagToSumNum: { + a1: [46, 166, 285, 334, 376], + a2: [46, 166, 285, 334, 376], + }, + FlagToMonitor: { + 3: [ShowLargeWave, 0], + 7: [ShowLargeWave, 0], + 11: [ShowLargeWave, 0], + 15: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(250); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/25.js b/game/level/25.js index 02cd6ec3..491925e5 100644 --- a/game/level/25.js +++ b/game/level/25.js @@ -1,198 +1,198 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oConeheadZombie, - oZomboni, - ], - PicArr: (function () { - var a = oSpikeweed.prototype, - b = a.PicArr; - return [ - "images/interface/background3.png", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - Coord: 2, - SunNum: 375, - LF: [0, 1, 1, 2, 2, 1, 1], - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LevelName: "3-5 Special Level: Zombie Run", - LvlEName: 25, - LvlClearFunc: function () { - oSym.Clear(); - }, - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio("crazydaveshort1"); - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - innerText( - c, - "Have you ever thought that zombies can also practice a pair of fast feet?" - ); - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - innerText(c, "What a terrible thing that is!"); - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - innerText(c, "Protect our house"); - break; - case 3: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - }, - [] - ); - } - })(0); - }, - StartGameMusic: "LoonSkirmish", - StartGame: function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - ar: [], - f: function () { - oSym.TimeStep = 4; - }, - }); - BeginCool(); - AutoProduceSun(25); - oSym.addTask( - 1500, - function () { - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }, - [] - ); - }); - }, - }, - { - AZ: [ - [oZombie, 2, 1], - [oZombie2, 3, 5], - [oZombie3, 1, 9], - [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 20, 29, 30]], - [oDuckyTubeZombie2, 1, 10], - [oDuckyTubeZombie3, 1, 13], - [oConeheadZombie, 1, 5], - [oZomboni, 1, 15, [15, 20]], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19], - a2: [1, 3, 5, 20, 10, 15, 20], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(26); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oConeheadZombie, + oZomboni, + ], + PicArr: (function () { + var a = oSpikeweed.prototype, + b = a.PicArr; + return [ + "images/interface/background3.png", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + Coord: 2, + SunNum: 375, + LF: [0, 1, 1, 2, 2, 1, 1], + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LevelName: "3-5 Special Level: Zombie Run", + LvlEName: 25, + LvlClearFunc: function () { + oSym.Clear(); + }, + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio("crazydaveshort1"); + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + innerText( + c, + "Have you ever thought that zombies can also practice a pair of fast feet?" + ); + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + innerText(c, "What a terrible thing that is!"); + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + innerText(c, "Protect our house"); + break; + case 3: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + }, + [] + ); + } + })(0); + }, + StartGameMusic: "LoonSkirmish", + StartGame: function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + ar: [], + f: function () { + oSym.TimeStep = 4; + }, + }); + BeginCool(); + AutoProduceSun(25); + oSym.addTask( + 1500, + function () { + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }, + [] + ); + }); + }, + }, + { + AZ: [ + [oZombie, 2, 1], + [oZombie2, 3, 5], + [oZombie3, 1, 9], + [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 20, 29, 30]], + [oDuckyTubeZombie2, 1, 10], + [oDuckyTubeZombie3, 1, 13], + [oConeheadZombie, 1, 5], + [oZomboni, 1, 15, [15, 20]], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19], + a2: [1, 3, 5, 20, 10, 15, 20], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(26); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/251.js b/game/level/251.js index 2150282a..7391ecd7 100644 --- a/game/level/251.js +++ b/game/level/251.js @@ -1,26 +1,26 @@ oS.Init({ - PicArr: (function () { - a = "images/interface/"; - return [ShadowPNG, a + "TAWIN.png"]; - })(), - LevelName: "胜利界面", - LevelEName: 251, - ShowScroll: 1, - LoadMusic: "pvzs", - StartGameMusic: "pvzs", - AudioArr: ["pvzs"], - backgroundImage: "images/interface/TAWIN.png", - LoadAccess: function (a) { - NewImg( - "imgSF", - "images/interface/TAUI1.png", - "left:380px;top:360px", - EDAll, - { - onclick: function () { - SelectModal(150); - }, - } - ); - }, + PicArr: (function () { + a = "images/interface/"; + return [ShadowPNG, a + "TAWIN.png"]; + })(), + LevelName: "胜利界面", + LevelEName: 251, + ShowScroll: 1, + LoadMusic: "pvzs", + StartGameMusic: "pvzs", + AudioArr: ["pvzs"], + backgroundImage: "images/interface/TAWIN.png", + LoadAccess: function (a) { + NewImg( + "imgSF", + "images/interface/TAUI1.png", + "left:380px;top:360px", + EDAll, + { + onclick: function () { + SelectModal(150); + }, + } + ); + }, }); diff --git a/game/level/252.js b/game/level/252.js index 896379bb..f4d7b07e 100644 --- a/game/level/252.js +++ b/game/level/252.js @@ -1,211 +1,211 @@ oS.Init( - { - PName: [ - oTenManNut, - oBigChomper, - oSnowRepeater, - oSpikeweed, - oLaserBean, - oFlamesMushroom, - ], - ZName: [oWJY, oEmperor, oLionDanceZombie], - PicArr: [ - "images/interface/background2.jpg", - "images/interface/trophy.png", - ], - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 0, - LevelName: "常青之塔 101层", - LvlEName: "252", - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - StaticCard: 0, - DKind: 0, - StartGameMusic: "Zombieboss", - StartGame: function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - SetHidden($("dSunNum")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - f: function () { - (function () { - var a = ArCard.length; - if (a < 10) { - var c = oS.PName, - b = Math.floor(Math.random() * c.length), - e = c[b], - d = e.prototype, - f = "dCard" + Math.random(); - ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; - NewImg( - f, - d.PicArr[d.CardGif], - "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", - $("dCardList"), - { - onmouseover: function (g) { - ViewPlantTitle(GetChoseCard(f), g); - }, - onmouseout: function () { - SetHidden($("dTitle")); - }, - onclick: function (g) { - ChosePlant(g, oS.ChoseCard, f); - }, - } - ); - } - oSym.addTask(600, arguments.callee, []); - })(); - (function () { - var b = ArCard.length, - a, - c; - while (b--) { - (c = (a = ArCard[b]).PixelTop) > 60 * b && - ($(a.DID).style.top = - (a.PixelTop = c - 1) + "px"); - } - oSym.addTask(5, arguments.callee, []); - })(); - }, - ar: [], - }); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }); - }, - }, - { - AZ: [ - [oWJY, 1, 8], - [oLionDanceZombie, 1, 1], - [oEmperor, 1, 4], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 30], - a2: [1, 7, 12, 20, 13, 16, 21, 30], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/0.gif", - "left:667px;top:330px;clip:rect(auto,auto,237px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oGoldenPrize, 150); - }, - } - ); - }, - }, - { - GetChoseCard: function (b) { - if (oS.Chose) { - return; - } - var a = ArCard.length; - while (a--) { - ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); - } - return oS.ChoseCard; - }, - ChosePlant: function (a, b) { - PlayAudio("seedlift"); - a = window.event || a; - var f = ArCard[oS.ChoseCard], - e = - a.clientX - EDAlloffsetLeft + EBody.scrollLeft || - EElement.scrollLeft, - d = a.clientY + EBody.scrollTop || EElement.scrollTop, - c = f.PName.prototype; - oS.Chose = 1; - EditImg( - NewImg( - "MovePlant", - c.PicArr[c.StaticGif], - "left:" + - e - - 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + - "px;top:" + - d + - 20 - - c.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ); - SetAlpha($(f.DID), 50, 0.5); - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant: function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); - oS.ChoseCard = ""; - GroundOnmousemove = function () {}; - }, - GrowPlant: function (l, c, b, f, a) { - var j = oS.ChoseCard, - g = ArCard[j], - i = g.PName, - k = i.prototype, - d = g.DID, - e, - h = oGd.$LF[f]; - k.CanGrow(l, f, a) && - (function () { - PlayAudio( - h != 2 - ? "plant" + Math.floor(1 + Math.random() * 2) - : "plant_water" - ); - new i().Birth(c, b, f, a, l); - oSym.addTask(20, SetNone, [ - SetStyle($("imgGrowSoil"), { - left: c - 30 + "px", - top: b - 40 + "px", - zIndex: 3 * f, - visibility: "visible", - }), - ]); - ClearChild($("MovePlant"), $("MovePlantAlpha")); - $("dCardList").removeChild((e = $(d))); - e = null; - ArCard.splice(j, 1); - oS.ChoseCard = ""; - oS.Chose = 0; - GroundOnmousemove = function () {}; - })(); - }, - ViewPlantTitle: function (a) { - var c = $("dTitle"), - b = ArCard[a].PName.prototype; - c.innerHTML = b.CName + "
" + b.Tooltip; - SetStyle(c, { top: 60 * a + "px", left: "100px" }); - }, - } + { + PName: [ + oTenManNut, + oBigChomper, + oSnowRepeater, + oSpikeweed, + oLaserBean, + oFlamesMushroom, + ], + ZName: [oWJY, oEmperor, oLionDanceZombie], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + ], + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 0, + LevelName: "常青之塔 101层", + LvlEName: "252", + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + StaticCard: 0, + DKind: 0, + StartGameMusic: "Zombieboss", + StartGame: function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + SetHidden($("dSunNum")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + f: function () { + (function () { + var a = ArCard.length; + if (a < 10) { + var c = oS.PName, + b = Math.floor(Math.random() * c.length), + e = c[b], + d = e.prototype, + f = "dCard" + Math.random(); + ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; + NewImg( + f, + d.PicArr[d.CardGif], + "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", + $("dCardList"), + { + onmouseover: function (g) { + ViewPlantTitle(GetChoseCard(f), g); + }, + onmouseout: function () { + SetHidden($("dTitle")); + }, + onclick: function (g) { + ChosePlant(g, oS.ChoseCard, f); + }, + } + ); + } + oSym.addTask(600, arguments.callee, []); + })(); + (function () { + var b = ArCard.length, + a, + c; + while (b--) { + (c = (a = ArCard[b]).PixelTop) > 60 * b && + ($(a.DID).style.top = + (a.PixelTop = c - 1) + "px"); + } + oSym.addTask(5, arguments.callee, []); + })(); + }, + ar: [], + }); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }); + }, + }, + { + AZ: [ + [oWJY, 1, 8], + [oLionDanceZombie, 1, 1], + [oEmperor, 1, 4], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 30], + a2: [1, 7, 12, 20, 13, 16, 21, 30], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/0.gif", + "left:667px;top:330px;clip:rect(auto,auto,237px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oGoldenPrize, 150); + }, + } + ); + }, + }, + { + GetChoseCard: function (b) { + if (oS.Chose) { + return; + } + var a = ArCard.length; + while (a--) { + ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); + } + return oS.ChoseCard; + }, + ChosePlant: function (a, b) { + PlayAudio("seedlift"); + a = window.event || a; + var f = ArCard[oS.ChoseCard], + e = + a.clientX - EDAlloffsetLeft + EBody.scrollLeft || + EElement.scrollLeft, + d = a.clientY + EBody.scrollTop || EElement.scrollTop, + c = f.PName.prototype; + oS.Chose = 1; + EditImg( + NewImg( + "MovePlant", + c.PicArr[c.StaticGif], + "left:" + + e - + 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + + "px;top:" + + d + + 20 - + c.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ); + SetAlpha($(f.DID), 50, 0.5); + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant: function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); + oS.ChoseCard = ""; + GroundOnmousemove = function () {}; + }, + GrowPlant: function (l, c, b, f, a) { + var j = oS.ChoseCard, + g = ArCard[j], + i = g.PName, + k = i.prototype, + d = g.DID, + e, + h = oGd.$LF[f]; + k.CanGrow(l, f, a) && + (function () { + PlayAudio( + h != 2 + ? "plant" + Math.floor(1 + Math.random() * 2) + : "plant_water" + ); + new i().Birth(c, b, f, a, l); + oSym.addTask(20, SetNone, [ + SetStyle($("imgGrowSoil"), { + left: c - 30 + "px", + top: b - 40 + "px", + zIndex: 3 * f, + visibility: "visible", + }), + ]); + ClearChild($("MovePlant"), $("MovePlantAlpha")); + $("dCardList").removeChild((e = $(d))); + e = null; + ArCard.splice(j, 1); + oS.ChoseCard = ""; + oS.Chose = 0; + GroundOnmousemove = function () {}; + })(); + }, + ViewPlantTitle: function (a) { + var c = $("dTitle"), + b = ArCard[a].PName.prototype; + c.innerHTML = b.CName + "
" + b.Tooltip; + SetStyle(c, { top: 60 * a + "px", left: "100px" }); + }, + } ); diff --git a/game/level/26.js b/game/level/26.js index f264889e..d2f14147 100644 --- a/game/level/26.js +++ b/game/level/26.js @@ -1,104 +1,104 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oConeheadZombie, - oZomboni, - ], - PicArr: (function () { - var a = oSpikeweed.prototype, - b = a.PicArr; - return [ - "images/interface/background3.png", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - Coord: 2, - SunNum: 50, - LF: [0, 1, 1, 2, 2, 1, 1], - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LevelName: "Level 3-6", - LvlEName: 26, - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie1]); - }, - StartGameMusic: "WateryGraves", - }, - { - AZ: [ - [oZombie, 2, 1], - [oZombie2, 3, 1], - [oZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 20, 29, 30]], - [oDuckyTubeZombie2, 1, 6], - [oDuckyTubeZombie3, 1, 6], - [oConeheadZombie, 1, 1], - [oZomboni, 1, 20, [10, 20]], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/Spikeweed.png", - "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oSpikeweed, 27); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:290px;left:636px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oConeheadZombie, + oZomboni, + ], + PicArr: (function () { + var a = oSpikeweed.prototype, + b = a.PicArr; + return [ + "images/interface/background3.png", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + Coord: 2, + SunNum: 50, + LF: [0, 1, 1, 2, 2, 1, 1], + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LevelName: "Level 3-6", + LvlEName: 26, + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie1]); + }, + StartGameMusic: "WateryGraves", + }, + { + AZ: [ + [oZombie, 2, 1], + [oZombie2, 3, 1], + [oZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 20, 29, 30]], + [oDuckyTubeZombie2, 1, 6], + [oDuckyTubeZombie3, 1, 6], + [oConeheadZombie, 1, 1], + [oZomboni, 1, 20, [10, 20]], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/Spikeweed.png", + "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oSpikeweed, 27); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:290px;left:636px", + EDAll + ); + }, + } ); diff --git a/game/level/27.js b/game/level/27.js index daf210df..9aeebfab 100644 --- a/game/level/27.js +++ b/game/level/27.js @@ -1,109 +1,109 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oConeheadZombie, - oBucketheadZombie, - oZomboni, - oSnorkelZombie, - ], - PicArr: (function () { - var a = oTorchwood.prototype, - b = a.PicArr; - return [ - "images/interface/background3.png", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - Coord: 2, - SunNum: 50, - LF: [0, 1, 1, 2, 2, 1, 1], - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LevelName: "Level 3-7", - LvlEName: 27, - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie1]); - }, - StartGameMusic: "WateryGraves", - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 1, 1], - [oZombie3, 2, 1], - [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 20, 29, 30]], - [oDuckyTubeZombie2, 1, 6], - [oDuckyTubeZombie3, 1, 6], - [oConeheadZombie, 2, 1], - [oBucketheadZombie, 1, 1], - [oZomboni, 1, 20, [20, 21, 25, 30]], - [oSnorkelZombie, 1, 15, [15, 16, 18, 20, 25, 30]], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/Torchwood.png", - "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oTorchwood, 28); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:290px;left:636px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oConeheadZombie, + oBucketheadZombie, + oZomboni, + oSnorkelZombie, + ], + PicArr: (function () { + var a = oTorchwood.prototype, + b = a.PicArr; + return [ + "images/interface/background3.png", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + Coord: 2, + SunNum: 50, + LF: [0, 1, 1, 2, 2, 1, 1], + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LevelName: "Level 3-7", + LvlEName: 27, + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie1]); + }, + StartGameMusic: "WateryGraves", + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 1, 1], + [oZombie3, 2, 1], + [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 20, 29, 30]], + [oDuckyTubeZombie2, 1, 6], + [oDuckyTubeZombie3, 1, 6], + [oConeheadZombie, 2, 1], + [oBucketheadZombie, 1, 1], + [oZomboni, 1, 20, [20, 21, 25, 30]], + [oSnorkelZombie, 1, 15, [15, 16, 18, 20, 25, 30]], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/Torchwood.png", + "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oTorchwood, 28); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:290px;left:636px", + EDAll + ); + }, + } ); diff --git a/game/level/28.js b/game/level/28.js index 248d2015..df208c50 100644 --- a/game/level/28.js +++ b/game/level/28.js @@ -1,97 +1,97 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - ], - ZName: [ - oZombie, - oZombie2, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oConeheadZombie, - oDolphinRiderZombie, - ], - PicArr: (function () { - var a = oTallNut.prototype, - b = a.PicArr; - return [ - "images/interface/background3.png", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - Coord: 2, - SunNum: 50, - LF: [0, 1, 1, 2, 2, 1, 1], - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LevelName: "Level 3-8", - LvlEName: 28, - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie1]); - }, - StartGameMusic: "WateryGraves", - }, - { - AZ: [ - [oZombie, 4, 1], - [oZombie2, 1, 1], - [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 19, 20]], - [oDuckyTubeZombie2, 1, 6, [10, 20]], - [oDuckyTubeZombie3, 1, 6, [10, 20]], - [oDuckyTubeZombie3, 1, 6], - [oConeheadZombie, 1, 1], - [oDolphinRiderZombie, 1, 10, [10, 14, 15, 16, 18, 19, 20]], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19], - a2: [1, 2, 3, 10, 4, 5, 6, 15], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/TallNut.png", - "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oTallNut, 29); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:290px;left:636px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + ], + ZName: [ + oZombie, + oZombie2, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oConeheadZombie, + oDolphinRiderZombie, + ], + PicArr: (function () { + var a = oTallNut.prototype, + b = a.PicArr; + return [ + "images/interface/background3.png", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + Coord: 2, + SunNum: 50, + LF: [0, 1, 1, 2, 2, 1, 1], + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LevelName: "Level 3-8", + LvlEName: 28, + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie1]); + }, + StartGameMusic: "WateryGraves", + }, + { + AZ: [ + [oZombie, 4, 1], + [oZombie2, 1, 1], + [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 19, 20]], + [oDuckyTubeZombie2, 1, 6, [10, 20]], + [oDuckyTubeZombie3, 1, 6, [10, 20]], + [oDuckyTubeZombie3, 1, 6], + [oConeheadZombie, 1, 1], + [oDolphinRiderZombie, 1, 10, [10, 14, 15, 16, 18, 19, 20]], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19], + a2: [1, 2, 3, 10, 4, 5, 6, 15], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/TallNut.png", + "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oTallNut, 29); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:290px;left:636px", + EDAll + ); + }, + } ); diff --git a/game/level/29.js b/game/level/29.js index 8c310a9f..47e1b938 100644 --- a/game/level/29.js +++ b/game/level/29.js @@ -1,119 +1,119 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oConeheadZombie, - oBucketheadZombie, - oDolphinRiderZombie, - oPoleVaultingZombie, - oZomboni, - ], - PicArr: [ - "images/interface/background3.png", - "images/interface/ZombieNoteSmall.png", - "images/interface/ZombieNote3.png", - ], - Coord: 2, - SunNum: 50, - LF: [0, 1, 1, 2, 2, 1, 1], - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LevelName: "Level 3-9", - LvlEName: 29, - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie1]); - }, - StartGameMusic: "WateryGraves", - }, - { - AZ: [ - [oZombie, 1, 1], - [oZombie2, 3, 1], - [oZombie3, 1, 1], - [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 19, 20, 25, 30]], - [oDuckyTubeZombie2, 1, 6, [10, 20, 30]], - [oDuckyTubeZombie3, 1, 6, [10, 20, 30]], - [oConeheadZombie, 1, 1], - [oBucketheadZombie, 1, 1], - [oPoleVaultingZombie, 1, 10], - [oDolphinRiderZombie, 1, 10, [10, 14, 15, 16, 18, 19, 20]], - [oZomboni, 1, 30, [30]], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/ZombieNoteSmall.png", - "left:667px;top:220px", - EDAll, - { - onclick: function () { - PlayAudio("winmusic"); - SetHidden($("PointerUD")); - SetStyle(this, { - width: "613px", - height: "399px", - left: "193px", - top: "100px", - }).src = "images/interface/ZombieNote3.png"; - this.onclick = function () { - SelectModal(30); - }; - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oConeheadZombie, + oBucketheadZombie, + oDolphinRiderZombie, + oPoleVaultingZombie, + oZomboni, + ], + PicArr: [ + "images/interface/background3.png", + "images/interface/ZombieNoteSmall.png", + "images/interface/ZombieNote3.png", + ], + Coord: 2, + SunNum: 50, + LF: [0, 1, 1, 2, 2, 1, 1], + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LevelName: "Level 3-9", + LvlEName: 29, + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie1]); + }, + StartGameMusic: "WateryGraves", + }, + { + AZ: [ + [oZombie, 1, 1], + [oZombie2, 3, 1], + [oZombie3, 1, 1], + [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 19, 20, 25, 30]], + [oDuckyTubeZombie2, 1, 6, [10, 20, 30]], + [oDuckyTubeZombie3, 1, 6, [10, 20, 30]], + [oConeheadZombie, 1, 1], + [oBucketheadZombie, 1, 1], + [oPoleVaultingZombie, 1, 10], + [oDolphinRiderZombie, 1, 10, [10, 14, 15, 16, 18, 19, 20]], + [oZomboni, 1, 30, [30]], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/ZombieNoteSmall.png", + "left:667px;top:220px", + EDAll, + { + onclick: function () { + PlayAudio("winmusic"); + SetHidden($("PointerUD")); + SetStyle(this, { + width: "613px", + height: "399px", + left: "193px", + top: "100px", + }).src = "images/interface/ZombieNote3.png"; + this.onclick = function () { + SelectModal(30); + }; + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/3.js b/game/level/3.js index 5f203a84..d78eb202 100644 --- a/game/level/3.js +++ b/game/level/3.js @@ -1,76 +1,76 @@ oS.Init( - { - PName: [oPeashooter, oSunFlower, oCherryBomb], - ZName: [oZombie, oZombie2, oZombie3, oConeheadZombie], - PicArr: (function () { - var a = oWallNut.prototype, - b = a.PicArr; - return [ - "images/interface/background1unsodded2.jpg", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - backgroundImage: "images/interface/background1unsodded2.jpg", - LF: [0, 0, 1, 1, 1, 0], - CanSelectCard: 0, - LevelName: "Level 1-3", - LvlEName: 3, - LargeWaveFlag: { 8: $("imgFlag1") }, - InitLawnMower: function () { - var a = 5; - while (--a > 1) { - CustomSpecial(oLawnCleaner, a, -1); - } - }, - StartGame: function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("dFlagMeter"), $("dTop")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor(); - BeginCool(); - AutoProduceSun(25); - oSym.addTask( - 1500, - function () { - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }, - [] - ); - }); - }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 3, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 1, 1], - ], - FlagNum: 8, - FlagToSumNum: { a1: [3, 5, 7], a2: [1, 2, 3, 6] }, - FlagToMonitor: { 7: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/WallNut.png", - "left:827px;top:330px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oWallNut, 4); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:295px;left:836px", - EDAll - ); - }, - } + { + PName: [oPeashooter, oSunFlower, oCherryBomb], + ZName: [oZombie, oZombie2, oZombie3, oConeheadZombie], + PicArr: (function () { + var a = oWallNut.prototype, + b = a.PicArr; + return [ + "images/interface/background1unsodded2.jpg", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + backgroundImage: "images/interface/background1unsodded2.jpg", + LF: [0, 0, 1, 1, 1, 0], + CanSelectCard: 0, + LevelName: "Level 1-3", + LvlEName: 3, + LargeWaveFlag: { 8: $("imgFlag1") }, + InitLawnMower: function () { + var a = 5; + while (--a > 1) { + CustomSpecial(oLawnCleaner, a, -1); + } + }, + StartGame: function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("dFlagMeter"), $("dTop")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor(); + BeginCool(); + AutoProduceSun(25); + oSym.addTask( + 1500, + function () { + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }, + [] + ); + }); + }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 3, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 1, 1], + ], + FlagNum: 8, + FlagToSumNum: { a1: [3, 5, 7], a2: [1, 2, 3, 6] }, + FlagToMonitor: { 7: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/WallNut.png", + "left:827px;top:330px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oWallNut, 4); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:295px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/30.js b/game/level/30.js index e7f780f3..0a670cee 100644 --- a/game/level/30.js +++ b/game/level/30.js @@ -1,245 +1,245 @@ oS.Init( - { - PName: [ - oLilyPad, - oThreepeater, - oJalapeno, - oSpikeweed, - oTorchwood, - oTangleKlep, - oTallNut, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oConeheadZombie, - oBucketheadZombie, - oDolphinRiderZombie, - oZomboni, - oSnorkelZombie, - ], - PicArr: [ - "images/interface/background3.png", - "images/interface/trophy.png", - ], - Coord: 2, - SunNum: 50, - LF: [0, 1, 1, 2, 2, 1, 1], - backgroundImage: "images/interface/background3.png", - CanSelectCard: 0, - LevelName: "Level 3-10", - LvlEName: 15, - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - StaticCard: 0, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie1]); - }, - StartGameMusic: "Zombieboss", - StartGame: function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - SetHidden($("dSunNum")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - f: function () { - (function () { - var a = ArCard.length; - if (a < 10) { - var c = oS.PName, - b = - oP.FlagZombies < 6 - ? Math.floor( - 1 + Math.random() * 10 - ) < 4 - ? 1 - : Math.floor( - Math.random() * c.length - ) - : Math.floor( - 1 + Math.random() * 10 - ) < 3 - ? 0 - : Math.floor( - Math.random() * c.length - ), - e = c[b], - d = e.prototype, - f = "dCard" + Math.random(); - ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; - NewImg( - f, - d.PicArr[d.CardGif], - "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", - $("dCardList"), - { - onmouseover: function (g) { - ViewPlantTitle(GetChoseCard(f), g); - }, - onmouseout: function () { - SetHidden($("dTitle")); - }, - onclick: function (g) { - ChosePlant(g, oS.ChoseCard, f); - }, - } - ); - } - oSym.addTask(600, arguments.callee, []); - })(); - (function () { - var b = ArCard.length, - a, - c; - while (b--) { - (c = (a = ArCard[b]).PixelTop) > 60 * b && - ($(a.DID).style.top = - (a.PixelTop = c - 1) + "px"); - } - oSym.addTask(5, arguments.callee, []); - })(); - }, - ar: [], - }); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }); - }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 4, 1], - [oZombie3, 3, 1], - [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 15]], - [oDuckyTubeZombie2, 1, 6, [5, 10, 15]], - [oDuckyTubeZombie3, 1, 6, [10, 15]], - [oConeheadZombie, 4, 1], - [oBucketheadZombie, 2, 1], - [oDolphinRiderZombie, 1, 10, [10, 14, 15]], - [oZomboni, 1, 5, [5, 10, 15]], - [oDolphinRiderZombie, 1, 10, [10, 15]], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [3, 6, 12, 20, 18, 24, 30, 40, 36, 42, 48, 60], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/Oxygen.png", - "left:667px;top:330px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oOxygen, 31); - }, - } - ); - }, - }, - { - GetChoseCard: function (b) { - var a = ArCard.length; - while (a--) { - ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); - } - return oS.ChoseCard; - }, - ChosePlant: function (a, b) { - PlayAudio("seedlift"); - a = window.event || a; - var f = ArCard[oS.ChoseCard], - e = - a.clientX - EDAlloffsetLeft + EBody.scrollLeft || - EElement.scrollLeft, - d = a.clientY + EBody.scrollTop || EElement.scrollTop, - c = f.PName.prototype; - oS.Chose = 1; - EditImg( - NewImg( - "MovePlant", - c.PicArr[c.StaticGif], - "left:" + - e - - 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + - "px;top:" + - d + - 20 - - c.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ); - SetAlpha($(f.DID), 50, 0.5); - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant: function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); - oS.ChoseCard = ""; - GroundOnmousemove = function () {}; - }, - GrowPlant: function (l, c, b, f, a) { - var j = oS.ChoseCard, - g = ArCard[j], - i = g.PName, - k = i.prototype, - d = g.DID, - e, - h = oGd.$LF[f]; - k.CanGrow(l, f, a) && - (function () { - PlayAudio( - h != 2 - ? "plant" + Math.floor(1 + Math.random() * 2) - : "plant_water" - ); - new i().Birth(c, b, f, a, l); - oSym.addTask(20, SetNone, [ - SetStyle($("imgGrowSoil"), { - left: c - 30 + "px", - top: b - 40 + "px", - zIndex: 3 * f, - visibility: "visible", - }), - ]); - ClearChild($("MovePlant"), $("MovePlantAlpha")); - $("dCardList").removeChild((e = $(d))); - e = null; - ArCard.splice(j, 1); - oS.ChoseCard = ""; - oS.Chose = 0; - GroundOnmousemove = function () {}; - })(); - }, - ViewPlantTitle: function (a) {}, - } + { + PName: [ + oLilyPad, + oThreepeater, + oJalapeno, + oSpikeweed, + oTorchwood, + oTangleKlep, + oTallNut, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oConeheadZombie, + oBucketheadZombie, + oDolphinRiderZombie, + oZomboni, + oSnorkelZombie, + ], + PicArr: [ + "images/interface/background3.png", + "images/interface/trophy.png", + ], + Coord: 2, + SunNum: 50, + LF: [0, 1, 1, 2, 2, 1, 1], + backgroundImage: "images/interface/background3.png", + CanSelectCard: 0, + LevelName: "Level 3-10", + LvlEName: 15, + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + StaticCard: 0, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie1]); + }, + StartGameMusic: "Zombieboss", + StartGame: function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + SetHidden($("dSunNum")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + f: function () { + (function () { + var a = ArCard.length; + if (a < 10) { + var c = oS.PName, + b = + oP.FlagZombies < 6 + ? Math.floor( + 1 + Math.random() * 10 + ) < 4 + ? 1 + : Math.floor( + Math.random() * c.length + ) + : Math.floor( + 1 + Math.random() * 10 + ) < 3 + ? 0 + : Math.floor( + Math.random() * c.length + ), + e = c[b], + d = e.prototype, + f = "dCard" + Math.random(); + ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; + NewImg( + f, + d.PicArr[d.CardGif], + "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", + $("dCardList"), + { + onmouseover: function (g) { + ViewPlantTitle(GetChoseCard(f), g); + }, + onmouseout: function () { + SetHidden($("dTitle")); + }, + onclick: function (g) { + ChosePlant(g, oS.ChoseCard, f); + }, + } + ); + } + oSym.addTask(600, arguments.callee, []); + })(); + (function () { + var b = ArCard.length, + a, + c; + while (b--) { + (c = (a = ArCard[b]).PixelTop) > 60 * b && + ($(a.DID).style.top = + (a.PixelTop = c - 1) + "px"); + } + oSym.addTask(5, arguments.callee, []); + })(); + }, + ar: [], + }); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }); + }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 4, 1], + [oZombie3, 3, 1], + [oDuckyTubeZombie1, 1, 6, [6, 7, 8, 10, 15]], + [oDuckyTubeZombie2, 1, 6, [5, 10, 15]], + [oDuckyTubeZombie3, 1, 6, [10, 15]], + [oConeheadZombie, 4, 1], + [oBucketheadZombie, 2, 1], + [oDolphinRiderZombie, 1, 10, [10, 14, 15]], + [oZomboni, 1, 5, [5, 10, 15]], + [oDolphinRiderZombie, 1, 10, [10, 15]], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [3, 6, 12, 20, 18, 24, 30, 40, 36, 42, 48, 60], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/Oxygen.png", + "left:667px;top:330px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oOxygen, 31); + }, + } + ); + }, + }, + { + GetChoseCard: function (b) { + var a = ArCard.length; + while (a--) { + ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); + } + return oS.ChoseCard; + }, + ChosePlant: function (a, b) { + PlayAudio("seedlift"); + a = window.event || a; + var f = ArCard[oS.ChoseCard], + e = + a.clientX - EDAlloffsetLeft + EBody.scrollLeft || + EElement.scrollLeft, + d = a.clientY + EBody.scrollTop || EElement.scrollTop, + c = f.PName.prototype; + oS.Chose = 1; + EditImg( + NewImg( + "MovePlant", + c.PicArr[c.StaticGif], + "left:" + + e - + 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + + "px;top:" + + d + + 20 - + c.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ); + SetAlpha($(f.DID), 50, 0.5); + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant: function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); + oS.ChoseCard = ""; + GroundOnmousemove = function () {}; + }, + GrowPlant: function (l, c, b, f, a) { + var j = oS.ChoseCard, + g = ArCard[j], + i = g.PName, + k = i.prototype, + d = g.DID, + e, + h = oGd.$LF[f]; + k.CanGrow(l, f, a) && + (function () { + PlayAudio( + h != 2 + ? "plant" + Math.floor(1 + Math.random() * 2) + : "plant_water" + ); + new i().Birth(c, b, f, a, l); + oSym.addTask(20, SetNone, [ + SetStyle($("imgGrowSoil"), { + left: c - 30 + "px", + top: b - 40 + "px", + zIndex: 3 * f, + visibility: "visible", + }), + ]); + ClearChild($("MovePlant"), $("MovePlantAlpha")); + $("dCardList").removeChild((e = $(d))); + e = null; + ArCard.splice(j, 1); + oS.ChoseCard = ""; + oS.Chose = 0; + GroundOnmousemove = function () {}; + })(); + }, + ViewPlantTitle: function (a) {}, + } ); diff --git a/game/level/31.js b/game/level/31.js index 310014d2..866a19b2 100644 --- a/game/level/31.js +++ b/game/level/31.js @@ -1,162 +1,162 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ], - ZName: [oZombie, oZombie2, oConeheadZombie], - PicArr: (function () { - return [ - "images/interface/backgroundLG.jpg", - "images/interface/Dave.gif", - ]; - })(), - SunNum: 100, - LF: [0, 3, 3, 3, 3, 3, 3], - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - DKind: 0, - LevelName: "Level 4-1", - LvlEName: 31, - AudioArr: ["crazydavelong1", "crazydavelong3"], - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - StartGameMusic: "Lg_pk", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - c.innerHTML = - 'We entered a secret passage I had discovered earlier under the pool.'; - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - c.innerHTML = - 'But this seems to be the forbidden area of the Dragon King, and the exit is locked'; - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - c.innerHTML = - 'Bring oxygen algae to destroy the zombies here.'; - break; - case 3: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - StopMusic(); - PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oZombie, 6, 1], - [oZombie2, 1, 1], - [oConeheadZombie, 3, 10], - ], - FlagNum: 20, - FlagToSumNum: { a1: [3, 3, 7], a2: [1, 2, 3, 8] }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/star.png", - "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, ostar, 32); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:290px;left:636px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ], + ZName: [oZombie, oZombie2, oConeheadZombie], + PicArr: (function () { + return [ + "images/interface/backgroundLG.jpg", + "images/interface/Dave.gif", + ]; + })(), + SunNum: 100, + LF: [0, 3, 3, 3, 3, 3, 3], + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + DKind: 0, + LevelName: "Level 4-1", + LvlEName: 31, + AudioArr: ["crazydavelong1", "crazydavelong3"], + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + StartGameMusic: "Lg_pk", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + c.innerHTML = + 'We entered a secret passage I had discovered earlier under the pool.'; + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + c.innerHTML = + 'But this seems to be the forbidden area of the Dragon King, and the exit is locked'; + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + c.innerHTML = + 'Bring oxygen algae to destroy the zombies here.'; + break; + case 3: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + StopMusic(); + PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oZombie, 6, 1], + [oZombie2, 1, 1], + [oConeheadZombie, 3, 10], + ], + FlagNum: 20, + FlagToSumNum: { a1: [3, 3, 7], a2: [1, 2, 3, 8] }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/star.png", + "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, ostar, 32); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:290px;left:636px", + EDAll + ); + }, + } ); diff --git a/game/level/32.js b/game/level/32.js index b82aa102..12adee32 100644 --- a/game/level/32.js +++ b/game/level/32.js @@ -1,93 +1,93 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ostar, - ], - ZName: [ - oZombie, - oZombie2, - oConeheadZombie, - oCXZombie, - oBucketheadZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - SunNum: 100, - LF: [0, 3, 3, 3, 3, 3, 3], - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - DKind: 0, - LevelName: "Level 4-2", - LvlEName: 32, - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - StartGameMusic: "Lg_pk", - }, - { - AZ: [ - [oZombie, 4, 1], - [oZombie2, 1, 1], - [oConeheadZombie, 2, 12], - [oCXZombie, 1, 5], - [oBucketheadZombie, 1, 15], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 3, 9, 10, 13, 15], - a2: [1, 2, 3, 3, 4, 5, 6, 15], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/TTS.png", - "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oTTS, 33); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:290px;left:636px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ostar, + ], + ZName: [ + oZombie, + oZombie2, + oConeheadZombie, + oCXZombie, + oBucketheadZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + SunNum: 100, + LF: [0, 3, 3, 3, 3, 3, 3], + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + DKind: 0, + LevelName: "Level 4-2", + LvlEName: 32, + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + StartGameMusic: "Lg_pk", + }, + { + AZ: [ + [oZombie, 4, 1], + [oZombie2, 1, 1], + [oConeheadZombie, 2, 12], + [oCXZombie, 1, 5], + [oBucketheadZombie, 1, 15], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 3, 9, 10, 13, 15], + a2: [1, 2, 3, 3, 4, 5, 6, 15], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/TTS.png", + "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oTTS, 33); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:290px;left:636px", + EDAll + ); + }, + } ); diff --git a/game/level/33.js b/game/level/33.js index ebc1fdaa..c8ab5fe7 100644 --- a/game/level/33.js +++ b/game/level/33.js @@ -1,98 +1,98 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ostar, - oTTS, - ], - ZName: [ - oZombie, - oZombie2, - oConeheadZombie, - oCXZombie, - oBucketheadZombie, - oXBZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - SunNum: 100, - LF: [0, 3, 3, 3, 3, 3, 3], - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - DKind: 0, - LevelName: "Level 4-3", - LvlEName: 33, - LargeWaveFlag: { - 10: $("imgFlag4"), - 20: $("imgFlag3"), - 30: $("imgFlag2"), - 40: $("imgFlag1"), - }, - StartGameMusic: "Lg_pk", - }, - { - AZ: [ - [oZombie, 4, 1], - [oZombie2, 2, 1], - [oConeheadZombie, 1, 12], - [oCXZombie, 1, 5], - [oBucketheadZombie, 1, 15], - [oXBZombie, 1, 2], - ], - FlagNum: 40, - FlagToSumNum: { - a1: [3, 3, 9, 10, 13, 15], - a2: [1, 2, 3, 3, 4, 5, 6, 15], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowLargeWave, 0], - 39: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/Gun.png", - "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oGun, 34); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:290px;left:636px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ostar, + oTTS, + ], + ZName: [ + oZombie, + oZombie2, + oConeheadZombie, + oCXZombie, + oBucketheadZombie, + oXBZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + SunNum: 100, + LF: [0, 3, 3, 3, 3, 3, 3], + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + DKind: 0, + LevelName: "Level 4-3", + LvlEName: 33, + LargeWaveFlag: { + 10: $("imgFlag4"), + 20: $("imgFlag3"), + 30: $("imgFlag2"), + 40: $("imgFlag1"), + }, + StartGameMusic: "Lg_pk", + }, + { + AZ: [ + [oZombie, 4, 1], + [oZombie2, 2, 1], + [oConeheadZombie, 1, 12], + [oCXZombie, 1, 5], + [oBucketheadZombie, 1, 15], + [oXBZombie, 1, 2], + ], + FlagNum: 40, + FlagToSumNum: { + a1: [3, 3, 9, 10, 13, 15], + a2: [1, 2, 3, 3, 4, 5, 6, 15], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowLargeWave, 0], + 39: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/Gun.png", + "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oGun, 34); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:290px;left:636px", + EDAll + ); + }, + } ); diff --git a/game/level/34.js b/game/level/34.js index 97eebbe8..f290959f 100644 --- a/game/level/34.js +++ b/game/level/34.js @@ -1,99 +1,99 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ostar, - oTTS, - oGun, - ], - ZName: [ - oZombie, - oZombie2, - oConeheadZombie, - oCXZombie, - oBucketheadZombie, - oXBZombie, - oJX, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - SunNum: 125, - LF: [0, 3, 3, 3, 3, 3, 3], - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - DKind: 0, - LevelName: "Level 4-4", - LvlEName: 33, - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - StartGameMusic: "Lg_pk", - }, - { - AZ: [ - [oZombie, 4, 1], - [oZombie2, 1, 1], - [oConeheadZombie, 1, 4], - [oCXZombie, 1, 10], - [oBucketheadZombie, 1, 15], - [oXBZombie, 1, 2], - [oJX, 1, 2], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 4, 5, 9, 13, 15, 19, 20, 23, 25], - a2: [1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/TenManNut.png", - "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oTenManNut, 35); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:290px;left:636px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ostar, + oTTS, + oGun, + ], + ZName: [ + oZombie, + oZombie2, + oConeheadZombie, + oCXZombie, + oBucketheadZombie, + oXBZombie, + oJX, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + SunNum: 125, + LF: [0, 3, 3, 3, 3, 3, 3], + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + DKind: 0, + LevelName: "Level 4-4", + LvlEName: 33, + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + StartGameMusic: "Lg_pk", + }, + { + AZ: [ + [oZombie, 4, 1], + [oZombie2, 1, 1], + [oConeheadZombie, 1, 4], + [oCXZombie, 1, 10], + [oBucketheadZombie, 1, 15], + [oXBZombie, 1, 2], + [oJX, 1, 2], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 4, 5, 9, 13, 15, 19, 20, 23, 25], + a2: [1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/TenManNut.png", + "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oTenManNut, 35); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:290px;left:636px", + EDAll + ); + }, + } ); diff --git a/game/level/35.js b/game/level/35.js index 76293afe..c582b419 100644 --- a/game/level/35.js +++ b/game/level/35.js @@ -1,320 +1,320 @@ oS.Init( - { - PName: [ostar1], - ZName: [ - oZombie, - oZombie2, - oConeheadZombie, - oCXZombie, - oBucketheadZombie, - oXBZombie, - oJX, - oJackinTheBoxZombie, - oHeiFootballZombie, - ], - PicArr: [ - "images/interface/backgroundLG.jpg", - "images/interface/Stripe.png", - ], - backgroundImage: "images/interface/backgroundLG.jpg", - LF: [0, 3, 3, 3, 3, 3], - CanSelectCard: 0, - DKind: 0, - LevelName: "3-5 Mini Game: Starfish Rolling", - LvlEName: "35", - LargeWaveFlag: { 10: $("imgFlag2"), 20: $("imgFlag1") }, - StartGameMusic: "LoonSkirmish", - StaticCard: 0, - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio("crazydaveshort1"); - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - innerText( - c, - "I still remember the fun of playing petanque with Peter as a kid" - ); - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - innerText( - c, - "Now Peter's not in this damn place, come and play with me~" - ); - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - innerText( - c, - "However, this time we are not rolling balls, but starfish! ." - ); - break; - case 3: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - innerText( - c, - "I believe this is a very fun thing to do!" - ); - break; - case 4: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - }, - [] - ); - } - })(0); - }, - StartGame: function () { - NewEle( - 0, - "div", - "width:22px;height:502px;margin:75px 0 0 485px;position:absolute;z-index:1;background:url(images/interface/Stripe.png)", - 0, - $("tGround") - ); - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetHidden($("dSunNum")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - f: function () { - (function () { - var a = ArCard.length; - if (a < 10) { - var c = [ostar1], - b = Math.floor(Math.random() * c.length), - e = c[b], - d = e.prototype, - f = "dCard" + Math.random(); - ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; - NewImg( - f, - d.PicArr[d.CardGif], - "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", - $("dCardList"), - { - onmouseover: function (g) { - ViewPlantTitle(GetChoseCard(f), g); - }, - onmouseout: function () { - SetHidden($("dTitle")); - }, - onclick: function (g) { - ChosePlant(g, oS.ChoseCard, f); - }, - } - ); - } - oSym.addTask(500, arguments.callee, []); - })(); - (function () { - var b = ArCard.length, - a, - c; - while (b--) { - (c = (a = ArCard[b]).PixelTop) > 60 * b && - ($(a.DID).style.top = - (a.PixelTop = c - 1) + "px"); - } - oSym.addTask(5, arguments.callee, []); - })(); - }, - ar: [], - }); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeter")); - }); - }, - }, - { - AZ: [ - [oZombie, 2, 1], - [oZombie2, 2, 1], - [oConeheadZombie, 1, 1], - [oCXZombie, 1, 11], - [oBucketheadZombie, 1, 1], - [oXBZombie, 1, 1], - [oJX, 1, 1], - [oJackinTheBoxZombie, 1, 1], - [oHeiFootballZombie, 1, 17], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19], - a2: [4, 7, 12, 20, 13, 16, 21, 40], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/SeaAnemone.png", - "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oSeaAnemone, 36); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:290px;left:636px", - EDAll - ); - }, - }, - { - GetChoseCard: function (b) { - var a = ArCard.length; - while (a--) { - ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); - } - return oS.ChoseCard; - }, - ChosePlant: function (a, b) { - PlayAudio("seedlift"); - a = window.event || a; - var f = ArCard[oS.ChoseCard], - e = a.clientX + EBody.scrollLeft || EElement.scrollLeft, - d = a.clientY + EBody.scrollTop || EElement.scrollTop, - c = f.PName.prototype; - oS.Chose = 1; - EditImg( - NewImg( - "MovePlant", - c.PicArr[c.StaticGif], - "left:" + - e - - 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + - "px;top:" + - d + - 20 - - c.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ); - SetAlpha($(f.DID), 50, 0.5); - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant: function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); - oS.ChoseCard = ""; - GroundOnmousemove = function () {}; - }, - GrowPlant: function (l, c, b, f, a) { - var j = $("DivTeach"); - j && j.parentNode.removeChild(j); - if (c > 347) { - innerText( - NewEle( - "DivTeach", - "div", - "line-height:40px;font-size: 14px", - 0, - EDAll - ), - "The starfish fruit can only be placed on the left side of the red line!" - ); - return false; - } - var i = oS.ChoseCard, - g = ArCard[i], - h = g.PName, - k = h.prototype, - d = g.DID, - e; - new h().Birth(c, b, f, a, l); - ClearChild($("MovePlant"), $("MovePlantAlpha")); - $("dCardList").removeChild((e = $(d))); - e = null; - ArCard.splice(i, 1); - oS.ChoseCard = ""; - oS.Chose = 0; - GroundOnmousemove = function () {}; - }, - ViewPlantTitle: function (a) {}, - } + { + PName: [ostar1], + ZName: [ + oZombie, + oZombie2, + oConeheadZombie, + oCXZombie, + oBucketheadZombie, + oXBZombie, + oJX, + oJackinTheBoxZombie, + oHeiFootballZombie, + ], + PicArr: [ + "images/interface/backgroundLG.jpg", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/backgroundLG.jpg", + LF: [0, 3, 3, 3, 3, 3], + CanSelectCard: 0, + DKind: 0, + LevelName: "3-5 Mini Game: Starfish Rolling", + LvlEName: "35", + LargeWaveFlag: { 10: $("imgFlag2"), 20: $("imgFlag1") }, + StartGameMusic: "LoonSkirmish", + StaticCard: 0, + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio("crazydaveshort1"); + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + innerText( + c, + "I still remember the fun of playing petanque with Peter as a kid" + ); + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + innerText( + c, + "Now Peter's not in this damn place, come and play with me~" + ); + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + innerText( + c, + "However, this time we are not rolling balls, but starfish! ." + ); + break; + case 3: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + innerText( + c, + "I believe this is a very fun thing to do!" + ); + break; + case 4: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + }, + [] + ); + } + })(0); + }, + StartGame: function () { + NewEle( + 0, + "div", + "width:22px;height:502px;margin:75px 0 0 485px;position:absolute;z-index:1;background:url(images/interface/Stripe.png)", + 0, + $("tGround") + ); + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetHidden($("dSunNum")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + f: function () { + (function () { + var a = ArCard.length; + if (a < 10) { + var c = [ostar1], + b = Math.floor(Math.random() * c.length), + e = c[b], + d = e.prototype, + f = "dCard" + Math.random(); + ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; + NewImg( + f, + d.PicArr[d.CardGif], + "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", + $("dCardList"), + { + onmouseover: function (g) { + ViewPlantTitle(GetChoseCard(f), g); + }, + onmouseout: function () { + SetHidden($("dTitle")); + }, + onclick: function (g) { + ChosePlant(g, oS.ChoseCard, f); + }, + } + ); + } + oSym.addTask(500, arguments.callee, []); + })(); + (function () { + var b = ArCard.length, + a, + c; + while (b--) { + (c = (a = ArCard[b]).PixelTop) > 60 * b && + ($(a.DID).style.top = + (a.PixelTop = c - 1) + "px"); + } + oSym.addTask(5, arguments.callee, []); + })(); + }, + ar: [], + }); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeter")); + }); + }, + }, + { + AZ: [ + [oZombie, 2, 1], + [oZombie2, 2, 1], + [oConeheadZombie, 1, 1], + [oCXZombie, 1, 11], + [oBucketheadZombie, 1, 1], + [oXBZombie, 1, 1], + [oJX, 1, 1], + [oJackinTheBoxZombie, 1, 1], + [oHeiFootballZombie, 1, 17], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19], + a2: [4, 7, 12, 20, 13, 16, 21, 40], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/SeaAnemone.png", + "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oSeaAnemone, 36); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:290px;left:636px", + EDAll + ); + }, + }, + { + GetChoseCard: function (b) { + var a = ArCard.length; + while (a--) { + ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); + } + return oS.ChoseCard; + }, + ChosePlant: function (a, b) { + PlayAudio("seedlift"); + a = window.event || a; + var f = ArCard[oS.ChoseCard], + e = a.clientX + EBody.scrollLeft || EElement.scrollLeft, + d = a.clientY + EBody.scrollTop || EElement.scrollTop, + c = f.PName.prototype; + oS.Chose = 1; + EditImg( + NewImg( + "MovePlant", + c.PicArr[c.StaticGif], + "left:" + + e - + 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + + "px;top:" + + d + + 20 - + c.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ); + SetAlpha($(f.DID), 50, 0.5); + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant: function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); + oS.ChoseCard = ""; + GroundOnmousemove = function () {}; + }, + GrowPlant: function (l, c, b, f, a) { + var j = $("DivTeach"); + j && j.parentNode.removeChild(j); + if (c > 347) { + innerText( + NewEle( + "DivTeach", + "div", + "line-height:40px;font-size: 14px", + 0, + EDAll + ), + "The starfish fruit can only be placed on the left side of the red line!" + ); + return false; + } + var i = oS.ChoseCard, + g = ArCard[i], + h = g.PName, + k = h.prototype, + d = g.DID, + e; + new h().Birth(c, b, f, a, l); + ClearChild($("MovePlant"), $("MovePlantAlpha")); + $("dCardList").removeChild((e = $(d))); + e = null; + ArCard.splice(i, 1); + oS.ChoseCard = ""; + oS.Chose = 0; + GroundOnmousemove = function () {}; + }, + ViewPlantTitle: function (a) {}, + } ); diff --git a/game/level/36.js b/game/level/36.js index da767270..d13c843c 100644 --- a/game/level/36.js +++ b/game/level/36.js @@ -1,97 +1,97 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ostar, - oTTS, - oGun, - oTenManNut, - oSeaAnemone, - ], - ZName: [ - oZombie, - oZombie2, - oConeheadZombie, - oCXZombie, - oJackinTheBoxZombie, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - SunNum: 125, - LF: [0, 3, 3, 3, 3, 3, 3], - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - DKind: 0, - LevelName: "Level 4-6", - LvlEName: 36, - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - StartGameMusic: "Lg_pk", - }, - { - AZ: [ - [oZombie, 4, 1], - [oZombie2, 1, 1], - [oConeheadZombie, 2, 4], - [oCXZombie, 1, 5, [5, 10, 15, 20, 25, 30]], - [oJackinTheBoxZombie, 1, 10, [10, 20, 30]], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 4, 5, 9, 13, 15, 19, 20, 23, 25], - a2: [1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 20], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/Cactus.png", - "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oCactus, 37); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:290px;left:636px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ostar, + oTTS, + oGun, + oTenManNut, + oSeaAnemone, + ], + ZName: [ + oZombie, + oZombie2, + oConeheadZombie, + oCXZombie, + oJackinTheBoxZombie, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + SunNum: 125, + LF: [0, 3, 3, 3, 3, 3, 3], + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + DKind: 0, + LevelName: "Level 4-6", + LvlEName: 36, + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + StartGameMusic: "Lg_pk", + }, + { + AZ: [ + [oZombie, 4, 1], + [oZombie2, 1, 1], + [oConeheadZombie, 2, 4], + [oCXZombie, 1, 5, [5, 10, 15, 20, 25, 30]], + [oJackinTheBoxZombie, 1, 10, [10, 20, 30]], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 4, 5, 9, 13, 15, 19, 20, 23, 25], + a2: [1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 20], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/Cactus.png", + "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oCactus, 37); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:290px;left:636px", + EDAll + ); + }, + } ); diff --git a/game/level/37.js b/game/level/37.js index 6cb2a38d..659ae454 100644 --- a/game/level/37.js +++ b/game/level/37.js @@ -1,104 +1,104 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ostar, - oTTS, - oGun, - oTenManNut, - oSeaAnemone, - oCactus, - ], - ZName: [ - oZombie, - oBucketheadZombie, - oConeheadZombie, - oCXZombie, - oJackinTheBoxZombie, - oXBZombie, - oJY, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - SunNum: 200, - LF: [0, 3, 3, 3, 3, 3, 3], - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - DKind: 0, - LevelName: "Level 4-7", - LvlEName: 37, - LargeWaveFlag: { - 10: $("imgFlag4"), - 20: $("imgFlag3"), - 30: $("imgFlag2"), - 40: $("imgFlag1"), - }, - StartGameMusic: "Lg_pk", - }, - { - AZ: [ - [oZombie, 4, 1], - [oBucketheadZombie, 1, 20], - [oConeheadZombie, 1, 6], - [oCXZombie, 1, 10, [10, 15, 20, 25, 30]], - [oXBZombie, 1, 20], - [oJackinTheBoxZombie, 1, 30, [30]], - [oJY, 1, 5, [5, 10, 15, 20, 25, 30]], - ], - FlagNum: 40, - FlagToSumNum: { - a1: [3, 4, 5, 9, 9, 13, 15, 19, 20, 23, 25, 30], - a2: [1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 20, 30], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowLargeWave, 0], - 39: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/GatlingPea.png", - "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oGatlingPea, 38); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:290px;left:636px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ostar, + oTTS, + oGun, + oTenManNut, + oSeaAnemone, + oCactus, + ], + ZName: [ + oZombie, + oBucketheadZombie, + oConeheadZombie, + oCXZombie, + oJackinTheBoxZombie, + oXBZombie, + oJY, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + SunNum: 200, + LF: [0, 3, 3, 3, 3, 3, 3], + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + DKind: 0, + LevelName: "Level 4-7", + LvlEName: 37, + LargeWaveFlag: { + 10: $("imgFlag4"), + 20: $("imgFlag3"), + 30: $("imgFlag2"), + 40: $("imgFlag1"), + }, + StartGameMusic: "Lg_pk", + }, + { + AZ: [ + [oZombie, 4, 1], + [oBucketheadZombie, 1, 20], + [oConeheadZombie, 1, 6], + [oCXZombie, 1, 10, [10, 15, 20, 25, 30]], + [oXBZombie, 1, 20], + [oJackinTheBoxZombie, 1, 30, [30]], + [oJY, 1, 5, [5, 10, 15, 20, 25, 30]], + ], + FlagNum: 40, + FlagToSumNum: { + a1: [3, 4, 5, 9, 9, 13, 15, 19, 20, 23, 25, 30], + a2: [1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 20, 30], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowLargeWave, 0], + 39: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/GatlingPea.png", + "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oGatlingPea, 38); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:290px;left:636px", + EDAll + ); + }, + } ); diff --git a/game/level/38.js b/game/level/38.js index fb3a8326..a9549459 100644 --- a/game/level/38.js +++ b/game/level/38.js @@ -1,95 +1,95 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ostar, - oTTS, - oGun, - oTenManNut, - oSeaAnemone, - oCactus, - oGatlingPea, - ], - ZName: [oZombie, oConeheadZombie, oHeiFootballZombie, oXBZombie, oJY], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - SunNum: 200, - LF: [0, 3, 3, 3, 3, 3, 3], - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - DKind: 0, - LevelName: "Level 4-8", - LvlEName: 38, - LargeWaveFlag: { - 10: $("imgFlag4"), - 20: $("imgFlag3"), - 30: $("imgFlag2"), - 45: $("imgFlag1"), - }, - StartGameMusic: "Lg_pk", - }, - { - AZ: [ - [oZombie, 6, 1], - [oConeheadZombie, 2, 1], - [oXBZombie, 1, 20], - [oHeiFootballZombie, 1, 10, [10, 30, 45]], - [oJY, 1, 5, [5, 10, 15, 20, 25, 30, 45]], - ], - FlagNum: 45, - FlagToSumNum: { - a1: [3, 4, 5, 9, 9, 13, 15, 19, 20, 23, 25, 30, 50], - a2: [1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 20, 30, 45], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowLargeWave, 0], - 44: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/TwinSunflower.png", - "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oTwinSunflower, 0); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:290px;left:636px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ostar, + oTTS, + oGun, + oTenManNut, + oSeaAnemone, + oCactus, + oGatlingPea, + ], + ZName: [oZombie, oConeheadZombie, oHeiFootballZombie, oXBZombie, oJY], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + SunNum: 200, + LF: [0, 3, 3, 3, 3, 3, 3], + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + DKind: 0, + LevelName: "Level 4-8", + LvlEName: 38, + LargeWaveFlag: { + 10: $("imgFlag4"), + 20: $("imgFlag3"), + 30: $("imgFlag2"), + 45: $("imgFlag1"), + }, + StartGameMusic: "Lg_pk", + }, + { + AZ: [ + [oZombie, 6, 1], + [oConeheadZombie, 2, 1], + [oXBZombie, 1, 20], + [oHeiFootballZombie, 1, 10, [10, 30, 45]], + [oJY, 1, 5, [5, 10, 15, 20, 25, 30, 45]], + ], + FlagNum: 45, + FlagToSumNum: { + a1: [3, 4, 5, 9, 9, 13, 15, 19, 20, 23, 25, 30, 50], + a2: [1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 20, 30, 45], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowLargeWave, 0], + 44: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/TwinSunflower.png", + "left:627px;top:325px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oTwinSunflower, 0); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:290px;left:636px", + EDAll + ); + }, + } ); diff --git a/game/level/39.js b/game/level/39.js index d00c1659..8f72d012 100644 --- a/game/level/39.js +++ b/game/level/39.js @@ -1,116 +1,116 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ostar, - oTTS, - oGun, - oTenManNut, - oSeaAnemone, - oCactus, - oGatlingPea, - oTwinSunflower, - ], - ZName: [ - oZombie, - oConeheadZombie, - oJackinTheBoxZombie, - oXBZombie, - oJY, - oCXZombie, - oJX, - ], - PicArr: (function () { - return ["images/interface/backgroundLG.jpg"]; - })(), - SunNum: 200, - LF: [0, 3, 3, 3, 3, 3, 3], - backgroundImage: "images/interface/backgroundLG.jpg", - CanSelectCard: 1, - DKind: 0, - LevelName: "Level 4-9", - LvlEName: 39, - LargeWaveFlag: { - 10: $("imgFlag4"), - 20: $("imgFlag3"), - 30: $("imgFlag2"), - 50: $("imgFlag1"), - }, - StartGameMusic: "Lg_pk", - }, - { - AZ: [ - [oZombie, 4, 1], - [oConeheadZombie, 2, 1], - [oXBZombie, 2, 5, [5, 10, 15, 20, 25, 30, 45, 50]], - [oJackinTheBoxZombie, 1, 10, [10, 30, 45, 50]], - [oJY, 2, 7, [7, 10, 15, 20, 25, 30, 45, 50]], - [oCXZombie, 3, 20, [20, 25, 30, 45, 50]], - [oJX, 1, 1], - ], - FlagNum: 50, - FlagToSumNum: { - a1: [3, 4, 5, 9, 9, 13, 15, 19, 20, 23, 25, 30, 50], - a2: [1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 20, 30, 45], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowLargeWave, 0], - 49: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/ZombieNoteSmall.png", - "left:667px;top:220px", - EDAll, - { - onclick: function () { - PlayAudio("winmusic"); - SetHidden($("PointerUD")); - SetStyle(this, { - width: "613px", - height: "399px", - left: "193px", - top: "100px", - }).src = "images/interface/ZombieNoteLG.png"; - this.onclick = function () { - SelectModal(40); - }; - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ostar, + oTTS, + oGun, + oTenManNut, + oSeaAnemone, + oCactus, + oGatlingPea, + oTwinSunflower, + ], + ZName: [ + oZombie, + oConeheadZombie, + oJackinTheBoxZombie, + oXBZombie, + oJY, + oCXZombie, + oJX, + ], + PicArr: (function () { + return ["images/interface/backgroundLG.jpg"]; + })(), + SunNum: 200, + LF: [0, 3, 3, 3, 3, 3, 3], + backgroundImage: "images/interface/backgroundLG.jpg", + CanSelectCard: 1, + DKind: 0, + LevelName: "Level 4-9", + LvlEName: 39, + LargeWaveFlag: { + 10: $("imgFlag4"), + 20: $("imgFlag3"), + 30: $("imgFlag2"), + 50: $("imgFlag1"), + }, + StartGameMusic: "Lg_pk", + }, + { + AZ: [ + [oZombie, 4, 1], + [oConeheadZombie, 2, 1], + [oXBZombie, 2, 5, [5, 10, 15, 20, 25, 30, 45, 50]], + [oJackinTheBoxZombie, 1, 10, [10, 30, 45, 50]], + [oJY, 2, 7, [7, 10, 15, 20, 25, 30, 45, 50]], + [oCXZombie, 3, 20, [20, 25, 30, 45, 50]], + [oJX, 1, 1], + ], + FlagNum: 50, + FlagToSumNum: { + a1: [3, 4, 5, 9, 9, 13, 15, 19, 20, 23, 25, 30, 50], + a2: [1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 20, 30, 45], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowLargeWave, 0], + 49: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/ZombieNoteSmall.png", + "left:667px;top:220px", + EDAll, + { + onclick: function () { + PlayAudio("winmusic"); + SetHidden($("PointerUD")); + SetStyle(this, { + width: "613px", + height: "399px", + left: "193px", + top: "100px", + }).src = "images/interface/ZombieNoteLG.png"; + this.onclick = function () { + SelectModal(40); + }; + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/4.js b/game/level/4.js index 49ce7b88..15694f24 100644 --- a/game/level/4.js +++ b/game/level/4.js @@ -1,143 +1,143 @@ oS.Init( - { - PName: [oPeashooter, oSunFlower, oCherryBomb, oWallNut], - ZName: [oZombie, oZombie2, oZombie3, oConeheadZombie], - PicArr: [ - "images/interface/background1unsodded2.jpg", - "images/interface/background1.jpg", - ], - backgroundImage: "images/interface/background1unsodded2.jpg", - CanSelectCard: 0, - LevelName: "Level 1-4", - LvlEName: 4, - LargeWaveFlag: { 9: $("imgFlag1") }, - StartGame: function () { - NewEle( - "sod3row", - "div", - "position:absolute;left:-115px;top:0;height:600px;width:264px;z-index:0;background:url(images/interface/background1.jpg);over-flow:hidden", - 0, - EDPZ - ); - NewImg( - "SodRoll_1", - "images/interface/SodRoll.png", - "left:122px;top:48px;z-index:1", - EDPZ - ); - NewImg( - "SodRollCap_1", - "images/interface/SodRollCap.png", - "left:117px;top:131px;z-index:1", - EDPZ - ); - NewImg( - "SodRoll_2", - "images/interface/SodRoll.png", - "left:122px;top:428px;z-index:1", - EDPZ - ); - NewImg( - "SodRollCap_2", - "images/interface/SodRollCap.png", - "left:117px;top:511px;z-index:1", - EDPZ - ); - PlayAudio("dirt_rise"); - (function (e, h, b, d, c, g, a, f) { - e += 15; - h += 16; - d += 16; - $("sod3row").style.width = e + "px"; - SetStyle($("SodRoll_1"), { - left: h + "px", - width: --b + "px", - height: "141px", - }); - SetStyle($("SodRoll_2"), { - left: h + "px", - width: b + "px", - height: "141px", - }); - SetStyle($("SodRollCap_1"), { - left: d + "px", - width: --c + "px", - height: --g + "px", - top: ++a + "px", - }); - SetStyle($("SodRollCap_2"), { - left: d + "px", - width: c + "px", - height: g + "px", - top: ++f + "px", - }); - e < 990 - ? oSym.addTask(3, arguments.callee, [ - e, - h, - b, - d, - c, - g, - a, - f, - ]) - : (ClearChild( - $("SodRoll_1"), - $("SodRoll_2"), - $("SodRollCap_1"), - $("SodRollCap_2") - ), - (function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor(); - BeginCool(); - SetVisible($("dFlagMeter"), $("dTop")); - AutoProduceSun(25); - oSym.addTask( - 1500, - function () { - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }, - [] - ); - }); - })()); - })(283, 122, 68, 117, 73, 71, 131, 511); - }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - ], - FlagNum: 9, - FlagToSumNum: { a1: [3, 5, 8], a2: [1, 2, 3, 10] }, - FlagToMonitor: { 8: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/Shovel/ShovelCard.png", - "left:827px;top:330px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oShovel, 5); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:295px;left:836px", - EDAll - ); - }, - } + { + PName: [oPeashooter, oSunFlower, oCherryBomb, oWallNut], + ZName: [oZombie, oZombie2, oZombie3, oConeheadZombie], + PicArr: [ + "images/interface/background1unsodded2.jpg", + "images/interface/background1.jpg", + ], + backgroundImage: "images/interface/background1unsodded2.jpg", + CanSelectCard: 0, + LevelName: "Level 1-4", + LvlEName: 4, + LargeWaveFlag: { 9: $("imgFlag1") }, + StartGame: function () { + NewEle( + "sod3row", + "div", + "position:absolute;left:-115px;top:0;height:600px;width:264px;z-index:0;background:url(images/interface/background1.jpg);over-flow:hidden", + 0, + EDPZ + ); + NewImg( + "SodRoll_1", + "images/interface/SodRoll.png", + "left:122px;top:48px;z-index:1", + EDPZ + ); + NewImg( + "SodRollCap_1", + "images/interface/SodRollCap.png", + "left:117px;top:131px;z-index:1", + EDPZ + ); + NewImg( + "SodRoll_2", + "images/interface/SodRoll.png", + "left:122px;top:428px;z-index:1", + EDPZ + ); + NewImg( + "SodRollCap_2", + "images/interface/SodRollCap.png", + "left:117px;top:511px;z-index:1", + EDPZ + ); + PlayAudio("dirt_rise"); + (function (e, h, b, d, c, g, a, f) { + e += 15; + h += 16; + d += 16; + $("sod3row").style.width = e + "px"; + SetStyle($("SodRoll_1"), { + left: h + "px", + width: --b + "px", + height: "141px", + }); + SetStyle($("SodRoll_2"), { + left: h + "px", + width: b + "px", + height: "141px", + }); + SetStyle($("SodRollCap_1"), { + left: d + "px", + width: --c + "px", + height: --g + "px", + top: ++a + "px", + }); + SetStyle($("SodRollCap_2"), { + left: d + "px", + width: c + "px", + height: g + "px", + top: ++f + "px", + }); + e < 990 + ? oSym.addTask(3, arguments.callee, [ + e, + h, + b, + d, + c, + g, + a, + f, + ]) + : (ClearChild( + $("SodRoll_1"), + $("SodRoll_2"), + $("SodRollCap_1"), + $("SodRollCap_2") + ), + (function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor(); + BeginCool(); + SetVisible($("dFlagMeter"), $("dTop")); + AutoProduceSun(25); + oSym.addTask( + 1500, + function () { + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }, + [] + ); + }); + })()); + })(283, 122, 68, 117, 73, 71, 131, 511); + }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + ], + FlagNum: 9, + FlagToSumNum: { a1: [3, 5, 8], a2: [1, 2, 3, 10] }, + FlagToMonitor: { 8: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/Shovel/ShovelCard.png", + "left:827px;top:330px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oShovel, 5); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:295px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/40.js b/game/level/40.js index 7e2a8fa7..f157c172 100644 --- a/game/level/40.js +++ b/game/level/40.js @@ -1,299 +1,299 @@ oS.Init( - { - PName: [oOxygen, oGun, oSeaAnemone, oGatlingPea], - ZName: [ - oZombie, - oConeheadZombie, - oXBZombie, - oBucketheadZombie, - oCXZombie, - oJX, - oLGBOSS, - ], - PicArr: ["images/interface/backgroundLG.jpg"], - backgroundImage: "images/interface/backgroundLG.jpg", - LF: [0, 3, 3, 3, 3, 3], - CanSelectCard: 0, - DKind: 0, - LevelName: "3-10 Battle of the Dragon King", - LvlEName: "40", - InitLawnMower: function () {}, - LargeWaveFlag: { 15: $("imgFlag2"), 25: $("imgFlag1") }, - StartGameMusic: "Zombieboss", - StaticCard: 0, - StartGame: function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - SetHidden($("dSunNum")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - f: function () { - (function () { - var a = ArCard.length; - if (a < 10) { - var c = oS.PName, - b = - oP.FlagZombies < 6 - ? Math.floor( - 1 + Math.random() * 10 - ) < 4 - ? 1 - : Math.floor( - Math.random() * c.length - ) - : Math.floor( - 1 + Math.random() * 10 - ) < 3 - ? 0 - : Math.floor( - Math.random() * c.length - ), - e = c[b], - d = e.prototype, - f = "dCard" + Math.random(); - ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; - NewImg( - f, - d.PicArr[d.CardGif], - "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", - $("dCardList"), - { - onmouseover: function (g) { - ViewPlantTitle(GetChoseCard(f), g); - }, - onmouseout: function () { - SetHidden($("dTitle")); - }, - onclick: function (g) { - ChosePlant(g, oS.ChoseCard, f); - }, - } - ); - } - oSym.addTask(600, arguments.callee, []); - })(); - (function () { - var b = ArCard.length, - a, - c; - while (b--) { - (c = (a = ArCard[b]).PixelTop) > 60 * b && - ($(a.DID).style.top = - (a.PixelTop = c - 1) + "px"); - } - oSym.addTask(5, arguments.callee, []); - })(); - }, - ar: [], - }); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }); - }, - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 200, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - c.innerHTML = - 'Listen - whats that sound?'; - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - c.innerHTML = - 'What seems to be a rumbling mechanical sound'; - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - c.innerHTML = - 'What might happen, you gotta hold on'; - break; - case 3: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - StopMusic(); - PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oZombie, 5, 1], - [oConeheadZombie, 2, 10], - [oXBZombie, 2, 10], - [oBucketheadZombie, 1, 15], - [oCXZombie, 3, 7], - [oJX, 1, 1], - [oLGBOSS, 1, 25, [25]], - ], - FlagNum: 25, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 30], - a2: [4, 7, 12, 20, 13, 16, 21, 30], - }, - FlagToMonitor: { 14: [ShowLargeWave, 0], 24: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/0.gif", - "left:667px;top:330px;clip:rect(auto,auto,237px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oGoldenPrize, 41); - }, - } - ); - }, - }, - { - GetChoseCard: function (b) { - var a = ArCard.length; - while (a--) { - ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); - } - return oS.ChoseCard; - }, - ChosePlant: function (a, b) { - PlayAudio("seedlift"); - a = window.event || a; - var f = ArCard[oS.ChoseCard], - e = - a.clientX - EDAlloffsetLeft + EBody.scrollLeft || - EElement.scrollLeft, - d = a.clientY + EBody.scrollTop || EElement.scrollTop, - c = f.PName.prototype; - oS.Chose = 1; - EditImg( - NewImg( - "MovePlant", - c.PicArr[c.StaticGif], - "left:" + - e - - 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + - "px;top:" + - d + - 20 - - c.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ); - SetAlpha($(f.DID), 50, 0.5); - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant: function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); - oS.ChoseCard = ""; - GroundOnmousemove = function () {}; - }, - GrowPlant: function (l, c, b, f, a) { - var j = oS.ChoseCard, - g = ArCard[j], - i = g.PName, - k = i.prototype, - d = g.DID, - e, - h = oGd.$LF[f]; - k.CanGrow(l, f, a) && - (function () { - PlayAudio( - h != 2 - ? "plant" + Math.floor(1 + Math.random() * 2) - : "plant_water" - ); - new i().Birth(c, b, f, a, l); - oSym.addTask(20, SetNone, [ - SetStyle($("imgGrowSoil"), { - left: c - 30 + "px", - top: b - 40 + "px", - zIndex: 3 * f, - visibility: "visible", - }), - ]); - ClearChild($("MovePlant"), $("MovePlantAlpha")); - $("dCardList").removeChild((e = $(d))); - e = null; - ArCard.splice(j, 1); - oS.ChoseCard = ""; - oS.Chose = 0; - GroundOnmousemove = function () {}; - })(); - }, - ViewPlantTitle: function (a) {}, - } + { + PName: [oOxygen, oGun, oSeaAnemone, oGatlingPea], + ZName: [ + oZombie, + oConeheadZombie, + oXBZombie, + oBucketheadZombie, + oCXZombie, + oJX, + oLGBOSS, + ], + PicArr: ["images/interface/backgroundLG.jpg"], + backgroundImage: "images/interface/backgroundLG.jpg", + LF: [0, 3, 3, 3, 3, 3], + CanSelectCard: 0, + DKind: 0, + LevelName: "3-10 Battle of the Dragon King", + LvlEName: "40", + InitLawnMower: function () {}, + LargeWaveFlag: { 15: $("imgFlag2"), 25: $("imgFlag1") }, + StartGameMusic: "Zombieboss", + StaticCard: 0, + StartGame: function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + SetHidden($("dSunNum")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + f: function () { + (function () { + var a = ArCard.length; + if (a < 10) { + var c = oS.PName, + b = + oP.FlagZombies < 6 + ? Math.floor( + 1 + Math.random() * 10 + ) < 4 + ? 1 + : Math.floor( + Math.random() * c.length + ) + : Math.floor( + 1 + Math.random() * 10 + ) < 3 + ? 0 + : Math.floor( + Math.random() * c.length + ), + e = c[b], + d = e.prototype, + f = "dCard" + Math.random(); + ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; + NewImg( + f, + d.PicArr[d.CardGif], + "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", + $("dCardList"), + { + onmouseover: function (g) { + ViewPlantTitle(GetChoseCard(f), g); + }, + onmouseout: function () { + SetHidden($("dTitle")); + }, + onclick: function (g) { + ChosePlant(g, oS.ChoseCard, f); + }, + } + ); + } + oSym.addTask(600, arguments.callee, []); + })(); + (function () { + var b = ArCard.length, + a, + c; + while (b--) { + (c = (a = ArCard[b]).PixelTop) > 60 * b && + ($(a.DID).style.top = + (a.PixelTop = c - 1) + "px"); + } + oSym.addTask(5, arguments.callee, []); + })(); + }, + ar: [], + }); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }); + }, + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 200, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + c.innerHTML = + 'Listen - whats that sound?'; + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + c.innerHTML = + 'What seems to be a rumbling mechanical sound'; + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + c.innerHTML = + 'What might happen, you gotta hold on'; + break; + case 3: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + StopMusic(); + PlayMusic((oS.LoadMusic = "ChooseYourSeeds")); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oZombie, 5, 1], + [oConeheadZombie, 2, 10], + [oXBZombie, 2, 10], + [oBucketheadZombie, 1, 15], + [oCXZombie, 3, 7], + [oJX, 1, 1], + [oLGBOSS, 1, 25, [25]], + ], + FlagNum: 25, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 30], + a2: [4, 7, 12, 20, 13, 16, 21, 30], + }, + FlagToMonitor: { 14: [ShowLargeWave, 0], 24: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/0.gif", + "left:667px;top:330px;clip:rect(auto,auto,237px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oGoldenPrize, 41); + }, + } + ); + }, + }, + { + GetChoseCard: function (b) { + var a = ArCard.length; + while (a--) { + ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); + } + return oS.ChoseCard; + }, + ChosePlant: function (a, b) { + PlayAudio("seedlift"); + a = window.event || a; + var f = ArCard[oS.ChoseCard], + e = + a.clientX - EDAlloffsetLeft + EBody.scrollLeft || + EElement.scrollLeft, + d = a.clientY + EBody.scrollTop || EElement.scrollTop, + c = f.PName.prototype; + oS.Chose = 1; + EditImg( + NewImg( + "MovePlant", + c.PicArr[c.StaticGif], + "left:" + + e - + 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + + "px;top:" + + d + + 20 - + c.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ); + SetAlpha($(f.DID), 50, 0.5); + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant: function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); + oS.ChoseCard = ""; + GroundOnmousemove = function () {}; + }, + GrowPlant: function (l, c, b, f, a) { + var j = oS.ChoseCard, + g = ArCard[j], + i = g.PName, + k = i.prototype, + d = g.DID, + e, + h = oGd.$LF[f]; + k.CanGrow(l, f, a) && + (function () { + PlayAudio( + h != 2 + ? "plant" + Math.floor(1 + Math.random() * 2) + : "plant_water" + ); + new i().Birth(c, b, f, a, l); + oSym.addTask(20, SetNone, [ + SetStyle($("imgGrowSoil"), { + left: c - 30 + "px", + top: b - 40 + "px", + zIndex: 3 * f, + visibility: "visible", + }), + ]); + ClearChild($("MovePlant"), $("MovePlantAlpha")); + $("dCardList").removeChild((e = $(d))); + e = null; + ArCard.splice(j, 1); + oS.ChoseCard = ""; + oS.Chose = 0; + GroundOnmousemove = function () {}; + })(); + }, + ViewPlantTitle: function (a) {}, + } ); diff --git a/game/level/41.js b/game/level/41.js index 72bd122e..9a05f7c5 100644 --- a/game/level/41.js +++ b/game/level/41.js @@ -1,242 +1,242 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ostar, - oTTS, - oGun, - oTenManNut, - oSeaAnemone, - oCactus, - oGatlingPea, - oTwinSunflower, - oSnowRepeater, - ], - ZName: [ - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - ], - PicArr: (function () { - var a = oSeaShroom.prototype, - b = a.PicArr; - return [ - "images/interface/background5.jpg", - "images/interface/Dave.gif", - "images/interface/Dave2.gif", - "images/interface/Dave3.gif", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - SunNum: 500, - LF: [0, 2, 2, 2, 2, 2], - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - LevelName: "Level 5-1", - LvlEName: 21, - AudioArr: [ - "crazydaveshort2", - "crazydavelong1", - "crazydavelong2", - "crazydavelong3", - ], - LargeWaveFlag: {}, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(8, 9, 1, [oWarshipsZombie]); - }, - StartGameMusic: "jiaxing", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - innerText( - c, - "We finally escaped from the Dragon Palace, the famous land of fish and rice: Jiaxing" - ); - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - innerText(c, "A small town in Xincheng."); - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - innerText( - c, - "Look at the beautiful bridges and the food there" - ); - break; - case 3: - PlayAudio("crazydaveshort2"); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - innerText( - c, - "However, the author zombie also seems to be stationed here with troops" - ); - break; - case 4: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [5]); - }; - }, - [] - ); - innerText( - c, - "Good luck~ I went to eat Li Minsheng fried buns" - ); - break; - case 5: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - }, - [] - ); - } - })(0); - }, - }, - { - AZ: [ - [oDuckyTubeZombie2, 1, 5], - [oDuckyTubeZombie3, 1, 7], - [oDuckyTubeZombie1, 6, 1], - [oDuckyTubeZombie4, 1, 9], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19], - a2: [1, 2, 3, 10, 4, 5, 6, 15], - }, - FlagToMonitor: {}, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/SeaShroom.png", - "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oSeaShroom, 42); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:490px;left:836px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ostar, + oTTS, + oGun, + oTenManNut, + oSeaAnemone, + oCactus, + oGatlingPea, + oTwinSunflower, + oSnowRepeater, + ], + ZName: [ + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + ], + PicArr: (function () { + var a = oSeaShroom.prototype, + b = a.PicArr; + return [ + "images/interface/background5.jpg", + "images/interface/Dave.gif", + "images/interface/Dave2.gif", + "images/interface/Dave3.gif", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + SunNum: 500, + LF: [0, 2, 2, 2, 2, 2], + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + LevelName: "Level 5-1", + LvlEName: 21, + AudioArr: [ + "crazydaveshort2", + "crazydavelong1", + "crazydavelong2", + "crazydavelong3", + ], + LargeWaveFlag: {}, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(8, 9, 1, [oWarshipsZombie]); + }, + StartGameMusic: "jiaxing", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + innerText( + c, + "We finally escaped from the Dragon Palace, the famous land of fish and rice: Jiaxing" + ); + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + innerText(c, "A small town in Xincheng."); + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + innerText( + c, + "Look at the beautiful bridges and the food there" + ); + break; + case 3: + PlayAudio("crazydaveshort2"); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + innerText( + c, + "However, the author zombie also seems to be stationed here with troops" + ); + break; + case 4: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [5]); + }; + }, + [] + ); + innerText( + c, + "Good luck~ I went to eat Li Minsheng fried buns" + ); + break; + case 5: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + }, + [] + ); + } + })(0); + }, + }, + { + AZ: [ + [oDuckyTubeZombie2, 1, 5], + [oDuckyTubeZombie3, 1, 7], + [oDuckyTubeZombie1, 6, 1], + [oDuckyTubeZombie4, 1, 9], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19], + a2: [1, 2, 3, 10, 4, 5, 6, 15], + }, + FlagToMonitor: {}, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/SeaShroom.png", + "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oSeaShroom, 42); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:490px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/42.js b/game/level/42.js index 2ca0c64c..2e40245e 100644 --- a/game/level/42.js +++ b/game/level/42.js @@ -1,113 +1,113 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ostar, - oTTS, - oGun, - oTenManNut, - oSeaAnemone, - oCactus, - oGatlingPea, - oTwinSunflower, - oSnowRepeater, - oSeaShroom, - ], - ZName: [ - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oSnorkelZombie, - ], - PicArr: (function () { - var a = oCattail.prototype, - b = a.PicArr; - return [ - "images/interface/background5.jpg", - "images/interface/Dave.gif", - "images/interface/Dave2.gif", - "images/interface/Dave3.gif", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - SunNum: 500, - LF: [0, 2, 2, 2, 2, 2], - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - LevelName: "Level 5-2", - LvlEName: 22, - LargeWaveFlag: {}, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(8, 9, 1, [oWarshipsZombie]); - }, - StartGameMusic: "jiaxing", - }, - { - AZ: [ - [oDuckyTubeZombie2, 1, 6], - [oDuckyTubeZombie3, 1, 7], - [oDuckyTubeZombie1, 6, 2, [2]], - [oDuckyTubeZombie4, 1, 10], - [oSnorkelZombie, 1, 1, [1]], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 20], - a2: [1, 2, 3, 10, 4, 5, 9, 15], - }, - FlagToMonitor: {}, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/Ling.png", - "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oCattail, 43); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:490px;left:836px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ostar, + oTTS, + oGun, + oTenManNut, + oSeaAnemone, + oCactus, + oGatlingPea, + oTwinSunflower, + oSnowRepeater, + oSeaShroom, + ], + ZName: [ + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oSnorkelZombie, + ], + PicArr: (function () { + var a = oCattail.prototype, + b = a.PicArr; + return [ + "images/interface/background5.jpg", + "images/interface/Dave.gif", + "images/interface/Dave2.gif", + "images/interface/Dave3.gif", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + SunNum: 500, + LF: [0, 2, 2, 2, 2, 2], + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + LevelName: "Level 5-2", + LvlEName: 22, + LargeWaveFlag: {}, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(8, 9, 1, [oWarshipsZombie]); + }, + StartGameMusic: "jiaxing", + }, + { + AZ: [ + [oDuckyTubeZombie2, 1, 6], + [oDuckyTubeZombie3, 1, 7], + [oDuckyTubeZombie1, 6, 2, [2]], + [oDuckyTubeZombie4, 1, 10], + [oSnorkelZombie, 1, 1, [1]], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 20], + a2: [1, 2, 3, 10, 4, 5, 9, 15], + }, + FlagToMonitor: {}, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/Ling.png", + "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oCattail, 43); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:490px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/43.js b/game/level/43.js index 4135b374..0f12b64f 100644 --- a/game/level/43.js +++ b/game/level/43.js @@ -1,109 +1,109 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ostar, - oTTS, - oGun, - oTenManNut, - oSeaAnemone, - oCactus, - oGatlingPea, - oTwinSunflower, - oSnowRepeater, - oSeaShroom, - oCattail, - ], - ZName: [ - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oSnorkelZombie, - oSubZombie, - ], - PicArr: (function () { - var a = oPumpkinHead.prototype, - b = a.PicArr; - return ["images/interface/background5.jpg"]; - })(), - SunNum: 525, - LF: [0, 2, 2, 2, 2, 2], - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - LevelName: "Level 5-3", - LvlEName: 23, - LargeWaveFlag: {}, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(7, 9, 2, [oWarshipsZombie]); - }, - StartGameMusic: "jiaxing", - }, - { - AZ: [ - [oDuckyTubeZombie2, 1, 6], - [oDuckyTubeZombie3, 1, 7], - [oDuckyTubeZombie1, 6, 1, [1]], - [oDuckyTubeZombie4, 1, 10], - [oSnorkelZombie, 1, 10], - [oSubZombie, 1, 5], - ], - FlagNum: 25, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 20], - a2: [1, 2, 3, 10, 4, 5, 7, 20], - }, - FlagToMonitor: {}, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/PumpkinHead.png", - "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oPumpkinHead, 44); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:490px;left:836px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ostar, + oTTS, + oGun, + oTenManNut, + oSeaAnemone, + oCactus, + oGatlingPea, + oTwinSunflower, + oSnowRepeater, + oSeaShroom, + oCattail, + ], + ZName: [ + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oSnorkelZombie, + oSubZombie, + ], + PicArr: (function () { + var a = oPumpkinHead.prototype, + b = a.PicArr; + return ["images/interface/background5.jpg"]; + })(), + SunNum: 525, + LF: [0, 2, 2, 2, 2, 2], + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + LevelName: "Level 5-3", + LvlEName: 23, + LargeWaveFlag: {}, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(7, 9, 2, [oWarshipsZombie]); + }, + StartGameMusic: "jiaxing", + }, + { + AZ: [ + [oDuckyTubeZombie2, 1, 6], + [oDuckyTubeZombie3, 1, 7], + [oDuckyTubeZombie1, 6, 1, [1]], + [oDuckyTubeZombie4, 1, 10], + [oSnorkelZombie, 1, 10], + [oSubZombie, 1, 5], + ], + FlagNum: 25, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 20], + a2: [1, 2, 3, 10, 4, 5, 7, 20], + }, + FlagToMonitor: {}, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/PumpkinHead.png", + "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oPumpkinHead, 44); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:490px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/44.js b/game/level/44.js index 239515e8..5ac2a4e4 100644 --- a/game/level/44.js +++ b/game/level/44.js @@ -1,110 +1,110 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ostar, - oTTS, - oGun, - oTenManNut, - oSeaAnemone, - oCactus, - oGatlingPea, - oTwinSunflower, - oSnowRepeater, - oSeaShroom, - oCattail, - oPumpkinHead, - ], - ZName: [ - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oDolphinRiderZombie, - oSubZombie, - ], - PicArr: (function () { - var a = oGarlic.prototype, - b = a.PicArr; - return ["images/interface/background5.jpg"]; - })(), - SunNum: 525, - LF: [0, 2, 2, 2, 2, 2], - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - LevelName: "Level 5-4", - LvlEName: 24, - LargeWaveFlag: {}, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(7, 9, 2, [oWarshipsZombie]); - }, - StartGameMusic: "jiaxing", - }, - { - AZ: [ - [oDuckyTubeZombie2, 1, 7], - [oDuckyTubeZombie3, 1, 8], - [oDuckyTubeZombie1, 6, 1, [1]], - [oDuckyTubeZombie4, 1, 10], - [oDolphinRiderZombie, 1, 15], - [oSubZombie, 1, 10], - ], - FlagNum: 25, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 20], - a2: [1, 2, 3, 10, 4, 5, 7, 20], - }, - FlagToMonitor: {}, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/Garlic.png", - "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oGarlic, 45); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:490px;left:836px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ostar, + oTTS, + oGun, + oTenManNut, + oSeaAnemone, + oCactus, + oGatlingPea, + oTwinSunflower, + oSnowRepeater, + oSeaShroom, + oCattail, + oPumpkinHead, + ], + ZName: [ + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oDolphinRiderZombie, + oSubZombie, + ], + PicArr: (function () { + var a = oGarlic.prototype, + b = a.PicArr; + return ["images/interface/background5.jpg"]; + })(), + SunNum: 525, + LF: [0, 2, 2, 2, 2, 2], + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + LevelName: "Level 5-4", + LvlEName: 24, + LargeWaveFlag: {}, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(7, 9, 2, [oWarshipsZombie]); + }, + StartGameMusic: "jiaxing", + }, + { + AZ: [ + [oDuckyTubeZombie2, 1, 7], + [oDuckyTubeZombie3, 1, 8], + [oDuckyTubeZombie1, 6, 1, [1]], + [oDuckyTubeZombie4, 1, 10], + [oDolphinRiderZombie, 1, 15], + [oSubZombie, 1, 10], + ], + FlagNum: 25, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 20], + a2: [1, 2, 3, 10, 4, 5, 7, 20], + }, + FlagToMonitor: {}, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/Garlic.png", + "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oGarlic, 45); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:490px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/45.js b/game/level/45.js index e5b089fa..31ed2b46 100644 --- a/game/level/45.js +++ b/game/level/45.js @@ -1,233 +1,233 @@ oS.Init( - { - PName: [ - oPumpkinHead, - oCattail, - oSnowRepeater, - oTangleKlep, - oSeaShroom, - oLilyPad, - oLilyPad1, - ], - ZName: [ - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - ], - PicArr: [ - "images/interface/background5.jpg", - "images/interface/trophy.png", - ], - LF: [0, 2, 2, 2, 2, 2], - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 0, - DKind: 0, - LevelName: "Level 5-5 传送带", - LvlEName: 25, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - StaticCard: 0, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); - }, - StartGameMusic: "jiaxing", - StartGame: function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - SetHidden($("dSunNum")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - f: function () { - (function () { - var a = ArCard.length; - if (a < 10) { - var c = oS.PName, - b = Math.floor(Math.random() * c.length), - e = c[b], - d = e.prototype, - f = "dCard" + Math.random(); - ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; - NewImg( - f, - d.PicArr[d.CardGif], - "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", - $("dCardList"), - { - onmouseover: function (g) { - ViewPlantTitle(GetChoseCard(f), g); - }, - onmouseout: function () { - SetHidden($("dTitle")); - }, - onclick: function (g) { - ChosePlant(g, oS.ChoseCard, f); - }, - } - ); - } - oSym.addTask(600, arguments.callee, []); - })(); - (function () { - var b = ArCard.length, - a, - c; - while (b--) { - (c = (a = ArCard[b]).PixelTop) > 60 * b && - ($(a.DID).style.top = - (a.PixelTop = c - 1) + "px"); - } - oSym.addTask(5, arguments.callee, []); - })(); - }, - ar: [], - }); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }); - }, - }, - { - AZ: [ - [oDuckyTubeZombie2, 1, 7], - [oDuckyTubeZombie3, 1, 8], - [oDuckyTubeZombie1, 6, 1, [1]], - [oDuckyTubeZombie4, 1, 10], - [oDolphinRiderZombie, 1, 15], - [oSubZombie, 1, 10], - [oSnorkelZombie, 1, 10], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 25], - a2: [1, 2, 3, 10, 4, 5, 10, 20], - }, - FlagToMonitor: {}, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/LotusRoot.png", - "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oLotusRoot, 46); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:490px;left:836px", - EDAll - ); - }, - }, - { - GetChoseCard: function (b) { - if (oS.Chose) { - return; - } - var a = ArCard.length; - while (a--) { - ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); - } - return oS.ChoseCard; - }, - ChosePlant: function (a, b) { - PlayAudio("seedlift"); - a = window.event || a; - var f = ArCard[oS.ChoseCard], - e = - a.clientX - EDAlloffsetLeft + EBody.scrollLeft || - EElement.scrollLeft, - d = a.clientY + EBody.scrollTop || EElement.scrollTop, - c = f.PName.prototype; - oS.Chose = 1; - EditImg( - NewImg( - "MovePlant", - c.PicArr[c.StaticGif], - "left:" + - e - - 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + - "px;top:" + - d + - 20 - - c.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ); - SetAlpha($(f.DID), 50, 0.5); - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant: function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); - oS.ChoseCard = ""; - GroundOnmousemove = function () {}; - }, - GrowPlant: function (l, c, b, f, a) { - var j = oS.ChoseCard, - g = ArCard[j], - i = g.PName, - k = i.prototype, - d = g.DID, - e, - h = oGd.$LF[f]; - k.CanGrow(l, f, a) && - (function () { - PlayAudio( - h != 2 - ? "plant" + Math.floor(1 + Math.random() * 2) - : "plant_water" - ); - new i().Birth(c, b, f, a, l); - oSym.addTask(20, SetNone, [ - SetStyle($("imgGrowSoil"), { - left: c - 30 + "px", - top: b - 40 + "px", - zIndex: 3 * f, - visibility: "visible", - }), - ]); - ClearChild($("MovePlant"), $("MovePlantAlpha")); - $("dCardList").removeChild((e = $(d))); - e = null; - ArCard.splice(j, 1); - oS.ChoseCard = ""; - oS.Chose = 0; - GroundOnmousemove = function () {}; - })(); - }, - ViewPlantTitle: function (a) { - var c = $("dTitle"), - b = ArCard[a].PName.prototype; - c.innerHTML = b.CName + "
" + b.Tooltip; - SetStyle(c, { top: 60 * a + "px", left: "100px" }); - }, - } + { + PName: [ + oPumpkinHead, + oCattail, + oSnowRepeater, + oTangleKlep, + oSeaShroom, + oLilyPad, + oLilyPad1, + ], + ZName: [ + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + ], + PicArr: [ + "images/interface/background5.jpg", + "images/interface/trophy.png", + ], + LF: [0, 2, 2, 2, 2, 2], + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 0, + DKind: 0, + LevelName: "Level 5-5 传送带", + LvlEName: 25, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + StaticCard: 0, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oWarshipsZombie]); + }, + StartGameMusic: "jiaxing", + StartGame: function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + SetHidden($("dSunNum")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + f: function () { + (function () { + var a = ArCard.length; + if (a < 10) { + var c = oS.PName, + b = Math.floor(Math.random() * c.length), + e = c[b], + d = e.prototype, + f = "dCard" + Math.random(); + ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; + NewImg( + f, + d.PicArr[d.CardGif], + "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", + $("dCardList"), + { + onmouseover: function (g) { + ViewPlantTitle(GetChoseCard(f), g); + }, + onmouseout: function () { + SetHidden($("dTitle")); + }, + onclick: function (g) { + ChosePlant(g, oS.ChoseCard, f); + }, + } + ); + } + oSym.addTask(600, arguments.callee, []); + })(); + (function () { + var b = ArCard.length, + a, + c; + while (b--) { + (c = (a = ArCard[b]).PixelTop) > 60 * b && + ($(a.DID).style.top = + (a.PixelTop = c - 1) + "px"); + } + oSym.addTask(5, arguments.callee, []); + })(); + }, + ar: [], + }); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }); + }, + }, + { + AZ: [ + [oDuckyTubeZombie2, 1, 7], + [oDuckyTubeZombie3, 1, 8], + [oDuckyTubeZombie1, 6, 1, [1]], + [oDuckyTubeZombie4, 1, 10], + [oDolphinRiderZombie, 1, 15], + [oSubZombie, 1, 10], + [oSnorkelZombie, 1, 10], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 25], + a2: [1, 2, 3, 10, 4, 5, 10, 20], + }, + FlagToMonitor: {}, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/LotusRoot.png", + "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oLotusRoot, 46); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:490px;left:836px", + EDAll + ); + }, + }, + { + GetChoseCard: function (b) { + if (oS.Chose) { + return; + } + var a = ArCard.length; + while (a--) { + ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); + } + return oS.ChoseCard; + }, + ChosePlant: function (a, b) { + PlayAudio("seedlift"); + a = window.event || a; + var f = ArCard[oS.ChoseCard], + e = + a.clientX - EDAlloffsetLeft + EBody.scrollLeft || + EElement.scrollLeft, + d = a.clientY + EBody.scrollTop || EElement.scrollTop, + c = f.PName.prototype; + oS.Chose = 1; + EditImg( + NewImg( + "MovePlant", + c.PicArr[c.StaticGif], + "left:" + + e - + 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + + "px;top:" + + d + + 20 - + c.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ); + SetAlpha($(f.DID), 50, 0.5); + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant: function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); + oS.ChoseCard = ""; + GroundOnmousemove = function () {}; + }, + GrowPlant: function (l, c, b, f, a) { + var j = oS.ChoseCard, + g = ArCard[j], + i = g.PName, + k = i.prototype, + d = g.DID, + e, + h = oGd.$LF[f]; + k.CanGrow(l, f, a) && + (function () { + PlayAudio( + h != 2 + ? "plant" + Math.floor(1 + Math.random() * 2) + : "plant_water" + ); + new i().Birth(c, b, f, a, l); + oSym.addTask(20, SetNone, [ + SetStyle($("imgGrowSoil"), { + left: c - 30 + "px", + top: b - 40 + "px", + zIndex: 3 * f, + visibility: "visible", + }), + ]); + ClearChild($("MovePlant"), $("MovePlantAlpha")); + $("dCardList").removeChild((e = $(d))); + e = null; + ArCard.splice(j, 1); + oS.ChoseCard = ""; + oS.Chose = 0; + GroundOnmousemove = function () {}; + })(); + }, + ViewPlantTitle: function (a) { + var c = $("dTitle"), + b = ArCard[a].PName.prototype; + c.innerHTML = b.CName + "
" + b.Tooltip; + SetStyle(c, { top: 60 * a + "px", left: "100px" }); + }, + } ); diff --git a/game/level/46.js b/game/level/46.js index 50e8e72d..7b3ae34d 100644 --- a/game/level/46.js +++ b/game/level/46.js @@ -1,114 +1,114 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ostar, - oTTS, - oGun, - oTenManNut, - oSeaAnemone, - oCactus, - oGatlingPea, - oTwinSunflower, - oSnowRepeater, - oSeaShroom, - oCattail, - oPumpkinHead, - oGarlic, - oLotusRoot, - ], - ZName: [ - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - ], - PicArr: (function () { - var a = oStarfruit.prototype, - b = a.PicArr; - return ["images/interface/background5.jpg"]; - })(), - SunNum: 575, - LF: [0, 2, 2, 2, 2, 2], - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - LevelName: "Level 5-6", - LvlEName: 26, - LargeWaveFlag: {}, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 4, [oWarshipsZombie]); - }, - StartGameMusic: "jiaxing", - }, - { - AZ: [ - [oDuckyTubeZombie2, 1, 7], - [oDuckyTubeZombie3, 1, 8], - [oDuckyTubeZombie1, 6, 1, [1]], - [oDuckyTubeZombie4, 1, 10], - [oDolphinRiderZombie, 1, 15], - [oSubZombie, 1, 10], - [oSnorkelZombie, 1, 10], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 25], - a2: [1, 2, 3, 10, 4, 5, 10, 20], - }, - FlagToMonitor: {}, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/Starfruit.png", - "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oStarfruit, 47); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:490px;left:836px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ostar, + oTTS, + oGun, + oTenManNut, + oSeaAnemone, + oCactus, + oGatlingPea, + oTwinSunflower, + oSnowRepeater, + oSeaShroom, + oCattail, + oPumpkinHead, + oGarlic, + oLotusRoot, + ], + ZName: [ + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + ], + PicArr: (function () { + var a = oStarfruit.prototype, + b = a.PicArr; + return ["images/interface/background5.jpg"]; + })(), + SunNum: 575, + LF: [0, 2, 2, 2, 2, 2], + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + LevelName: "Level 5-6", + LvlEName: 26, + LargeWaveFlag: {}, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 4, [oWarshipsZombie]); + }, + StartGameMusic: "jiaxing", + }, + { + AZ: [ + [oDuckyTubeZombie2, 1, 7], + [oDuckyTubeZombie3, 1, 8], + [oDuckyTubeZombie1, 6, 1, [1]], + [oDuckyTubeZombie4, 1, 10], + [oDolphinRiderZombie, 1, 15], + [oSubZombie, 1, 10], + [oSnorkelZombie, 1, 10], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 25], + a2: [1, 2, 3, 10, 4, 5, 10, 20], + }, + FlagToMonitor: {}, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/Starfruit.png", + "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oStarfruit, 47); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:490px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/47.js b/game/level/47.js index 063142a7..3df00350 100644 --- a/game/level/47.js +++ b/game/level/47.js @@ -1,115 +1,115 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ostar, - oTTS, - oGun, - oTenManNut, - oSeaAnemone, - oCactus, - oGatlingPea, - oTwinSunflower, - oSnowRepeater, - oSeaShroom, - oCattail, - oPumpkinHead, - oGarlic, - oLotusRoot, - oStarfruit, - ], - ZName: [ - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDuckyTubeZombie1, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - ], - PicArr: (function () { - var a = oCoffeeBean.prototype, - b = a.PicArr; - return ["images/interface/background5.jpg"]; - })(), - SunNum: 650, - LF: [0, 2, 2, 2, 2, 2], - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - LevelName: "Level 5-7", - LvlEName: 27, - LargeWaveFlag: {}, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(5, 9, 5, [oWarshipsZombie]); - }, - StartGameMusic: "jiaxing", - }, - { - AZ: [ - [oDuckyTubeZombie2, 1, 6], - [oDuckyTubeZombie3, 1, 7], - [oDuckyTubeZombie1, 8, 1, [1]], - [oDuckyTubeZombie4, 1, 9], - [oDolphinRiderZombie, 1, 14], - [oSubZombie, 2, 9], - [oSnorkelZombie, 3, 9], - ], - FlagNum: 35, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 25], - a2: [1, 2, 3, 10, 4, 5, 15, 25], - }, - FlagToMonitor: {}, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/CoffeeBean.png", - "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oCoffeeBean, 48); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:490px;left:836px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ostar, + oTTS, + oGun, + oTenManNut, + oSeaAnemone, + oCactus, + oGatlingPea, + oTwinSunflower, + oSnowRepeater, + oSeaShroom, + oCattail, + oPumpkinHead, + oGarlic, + oLotusRoot, + oStarfruit, + ], + ZName: [ + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDuckyTubeZombie1, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + ], + PicArr: (function () { + var a = oCoffeeBean.prototype, + b = a.PicArr; + return ["images/interface/background5.jpg"]; + })(), + SunNum: 650, + LF: [0, 2, 2, 2, 2, 2], + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + LevelName: "Level 5-7", + LvlEName: 27, + LargeWaveFlag: {}, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(5, 9, 5, [oWarshipsZombie]); + }, + StartGameMusic: "jiaxing", + }, + { + AZ: [ + [oDuckyTubeZombie2, 1, 6], + [oDuckyTubeZombie3, 1, 7], + [oDuckyTubeZombie1, 8, 1, [1]], + [oDuckyTubeZombie4, 1, 9], + [oDolphinRiderZombie, 1, 14], + [oSubZombie, 2, 9], + [oSnorkelZombie, 3, 9], + ], + FlagNum: 35, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 25], + a2: [1, 2, 3, 10, 4, 5, 15, 25], + }, + FlagToMonitor: {}, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/CoffeeBean.png", + "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oCoffeeBean, 48); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:490px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/48.js b/game/level/48.js index 58ed0b46..830c466e 100644 --- a/game/level/48.js +++ b/game/level/48.js @@ -1,114 +1,114 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ostar, - oTTS, - oGun, - oTenManNut, - oSeaAnemone, - oCactus, - oGatlingPea, - oTwinSunflower, - oSnowRepeater, - oSeaShroom, - oCattail, - oPumpkinHead, - oGarlic, - oLotusRoot, - oStarfruit, - oCoffeeBean, - ], - ZName: [ - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - ], - PicArr: (function () { - var a = oGloomShroom.prototype, - b = a.PicArr; - return ["images/interface/background5.jpg"]; - })(), - SunNum: 650, - LF: [0, 2, 2, 2, 2, 2], - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - LevelName: "Level 5-8", - LvlEName: 28, - LargeWaveFlag: {}, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(5, 9, 5, [oWarshipsZombie]); - }, - StartGameMusic: "jiaxing", - }, - { - AZ: [ - [oDuckyTubeZombie2, 1, 1], - [oDuckyTubeZombie3, 1, 7], - [oDuckyTubeZombie4, 1, 9], - [oDolphinRiderZombie, 1, 14], - [oSubZombie, 2, 9], - [oSnorkelZombie, 3, 9], - ], - FlagNum: 35, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 27], - a2: [1, 2, 3, 10, 4, 5, 15, 27], - }, - FlagToMonitor: {}, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/GloomShroom.png", - "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oGloomShroom, 49); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:490px;left:836px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ostar, + oTTS, + oGun, + oTenManNut, + oSeaAnemone, + oCactus, + oGatlingPea, + oTwinSunflower, + oSnowRepeater, + oSeaShroom, + oCattail, + oPumpkinHead, + oGarlic, + oLotusRoot, + oStarfruit, + oCoffeeBean, + ], + ZName: [ + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + ], + PicArr: (function () { + var a = oGloomShroom.prototype, + b = a.PicArr; + return ["images/interface/background5.jpg"]; + })(), + SunNum: 650, + LF: [0, 2, 2, 2, 2, 2], + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + LevelName: "Level 5-8", + LvlEName: 28, + LargeWaveFlag: {}, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(5, 9, 5, [oWarshipsZombie]); + }, + StartGameMusic: "jiaxing", + }, + { + AZ: [ + [oDuckyTubeZombie2, 1, 1], + [oDuckyTubeZombie3, 1, 7], + [oDuckyTubeZombie4, 1, 9], + [oDolphinRiderZombie, 1, 14], + [oSubZombie, 2, 9], + [oSnorkelZombie, 3, 9], + ], + FlagNum: 35, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 27], + a2: [1, 2, 3, 10, 4, 5, 15, 27], + }, + FlagToMonitor: {}, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/GloomShroom.png", + "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oGloomShroom, 49); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:490px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/49.js b/game/level/49.js index f310cd2d..19fde019 100644 --- a/game/level/49.js +++ b/game/level/49.js @@ -1,125 +1,125 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - oPuffShroom, - oSunShroom, - oFumeShroom, - oGraveBuster, - oHypnoShroom, - oScaredyShroom, - oIceShroom, - oDoomShroom, - oLilyPad, - oSquash, - oThreepeater, - oTangleKlep, - oJalapeno, - oSpikeweed, - oTorchwood, - oTallNut, - oOxygen, - ostar, - oTTS, - oGun, - oTenManNut, - oSeaAnemone, - oCactus, - oGatlingPea, - oTwinSunflower, - oSnowRepeater, - oSeaShroom, - oCattail, - oPumpkinHead, - oGarlic, - oLotusRoot, - oStarfruit, - oCoffeeBean, - oGloomShroom, - ], - ZName: [ - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - ], - PicArr: (function () { - return ["images/interface/background5.jpg"]; - })(), - SunNum: 1300, - LF: [0, 2, 2, 2, 2, 2], - backgroundImage: "images/interface/background5.jpg", - CanSelectCard: 1, - LevelName: "Level 5-9", - LvlEName: 29, - LargeWaveFlag: {}, - InitLawnMower: function () { - CustomSpecial(oPoolCleaner, 1, -1); - CustomSpecial(oPoolCleaner, 2, -1); - CustomSpecial(oPoolCleaner, 3, -1); - CustomSpecial(oPoolCleaner, 4, -1); - CustomSpecial(oPoolCleaner, 5, -1); - }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(4, 9, 6, [oWarshipsZombie]); - }, - StartGameMusic: "jiaxing", - }, - { - AZ: [ - [oDuckyTubeZombie1, 1, 4, [4]], - [oDuckyTubeZombie2, 1, 3, [3]], - [oDuckyTubeZombie3, 1, 1, [1]], - [oDuckyTubeZombie4, 1, 5, [5]], - [oDolphinRiderZombie, 2, 6, [7]], - [oSubZombie, 3, 8, [8]], - [oSnorkelZombie, 3, 9, [9]], - ], - FlagNum: 40, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 30], - a2: [1, 7, 12, 20, 13, 16, 21, 30], - }, - FlagToMonitor: {}, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/ZombieNoteSmall.png", - "left:667px;top:220px", - EDAll, - { - onclick: function () { - PlayAudio("winmusic"); - SetHidden($("PointerUD")); - SetStyle(this, { - width: "613px", - height: "399px", - left: "193px", - top: "100px", - }).src = "images/interface/ZombieNote4.png"; - this.onclick = function () { - SelectModal(50); - }; - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oSunShroom, + oFumeShroom, + oGraveBuster, + oHypnoShroom, + oScaredyShroom, + oIceShroom, + oDoomShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oJalapeno, + oSpikeweed, + oTorchwood, + oTallNut, + oOxygen, + ostar, + oTTS, + oGun, + oTenManNut, + oSeaAnemone, + oCactus, + oGatlingPea, + oTwinSunflower, + oSnowRepeater, + oSeaShroom, + oCattail, + oPumpkinHead, + oGarlic, + oLotusRoot, + oStarfruit, + oCoffeeBean, + oGloomShroom, + ], + ZName: [ + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + ], + PicArr: (function () { + return ["images/interface/background5.jpg"]; + })(), + SunNum: 1300, + LF: [0, 2, 2, 2, 2, 2], + backgroundImage: "images/interface/background5.jpg", + CanSelectCard: 1, + LevelName: "Level 5-9", + LvlEName: 29, + LargeWaveFlag: {}, + InitLawnMower: function () { + CustomSpecial(oPoolCleaner, 1, -1); + CustomSpecial(oPoolCleaner, 2, -1); + CustomSpecial(oPoolCleaner, 3, -1); + CustomSpecial(oPoolCleaner, 4, -1); + CustomSpecial(oPoolCleaner, 5, -1); + }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(4, 9, 6, [oWarshipsZombie]); + }, + StartGameMusic: "jiaxing", + }, + { + AZ: [ + [oDuckyTubeZombie1, 1, 4, [4]], + [oDuckyTubeZombie2, 1, 3, [3]], + [oDuckyTubeZombie3, 1, 1, [1]], + [oDuckyTubeZombie4, 1, 5, [5]], + [oDolphinRiderZombie, 2, 6, [7]], + [oSubZombie, 3, 8, [8]], + [oSnorkelZombie, 3, 9, [9]], + ], + FlagNum: 40, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 30], + a2: [1, 7, 12, 20, 13, 16, 21, 30], + }, + FlagToMonitor: {}, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/ZombieNoteSmall.png", + "left:667px;top:220px", + EDAll, + { + onclick: function () { + PlayAudio("winmusic"); + SetHidden($("PointerUD")); + SetStyle(this, { + width: "613px", + height: "399px", + left: "193px", + top: "100px", + }).src = "images/interface/ZombieNote4.png"; + this.onclick = function () { + SelectModal(50); + }; + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/5.js b/game/level/5.js index ad65489b..619a45a7 100644 --- a/game/level/5.js +++ b/game/level/5.js @@ -1,298 +1,301 @@ oS.Init( - { - PName: [oPeashooter, oSunFlower, oCherryBomb, oWallNut], - ZName: [oZombie, oZombie2, oZombie3, oConeheadZombie], - PicArr: (function () { - var a = oPotatoMine.prototype, - b = a.PicArr; - return [ - "images/interface/background1.jpg", - "images/interface/crater1.png", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - backgroundImage: "images/interface/background1.jpg", - CanSelectCard: 0, - LevelName: "1-5 Special Off: Meteor Crater", - LvlClearFunc: function () { - oSym.TimeStep = 10; - }, - LvlEName: 5, - LargeWaveFlag: { 10: $("imgFlag1") }, - StartGameMusic: "LoonSkirmish", - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio("crazydaveshort1"); - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - innerText( - c, - "Neighbors, we managed to fight off some zombies after all the hard work! congratulations" - ); - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - innerText(c, "Now, I have a surprise for you."); - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - innerText(c, "But first, you must clean your lawn."); - break; - case 3: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - innerText(c, "Dig out those plants with your shovel!"); - break; - case 4: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [5]); - }; - }, - [] - ); - innerText(c, "Start digging!"); - break; - case 5: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - }, - [] - ); - } - })(0); - }, - StartGame: function () { - SetHidden($("dSunNum")); - SetVisible($("tdShovel"), $("dTop")); - NewEle("DivTeach", "div", 0, 0, EDAll); - oP.Monitor( - { - ar: [0], - f: function (c) { - var d, - a = oGd.$, - b = oS.Chose; - switch (c) { - case 0: - innerText( - $("DivTeach"), - "Tap to pick up the shovel!" - ); - NewImg( - "PointerUD", - "images/interface/PointerUP.gif", - "top:36px;left:250px", - EDAll - ); - oSym.addTask(10, arguments.callee, [++c]); - break; - case 1: - b < 0 && - (innerText( - $("DivTeach"), - "Click to remove a plant!" - ), - ++c); - oSym.addTask(10, arguments.callee, [c]); - break; - case 2: - !(a["2_6_1"] && a["3_8_1"] && a["4_7_1"]) - ? (innerText( - $("DivTeach"), - "Just keep digging until you have no plants on your lawn!" - ), - ++c) - : b > -1 && - (innerText( - $("DivTeach"), - "Tap the shovel to dig out those plants!" - ), - (c = 1)); - oSym.addTask(10, arguments.callee, [c]); - break; - default: - !(a["2_6_1"] || a["3_8_1"] || a["4_7_1"]) - ? (function () { - SetHidden( - $("DivTeach"), - $("PointerUD") - ); - SetVisible( - $("dSunNum"), - $("dFlagMeter"), - $("dTop") - ); - StopMusic(); - PlayMusic( - (oS.LoadMusic = oS.StartGameMusic) - ); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - BeginCool(); - AutoProduceSun(25); - oSym.addTask( - 2e3, - function () { - oP.AddZombiesFlag(); - SetVisible( - $("dFlagMeterContent") - ); - }, - [] - ); - }); - })() - : oSym.addTask(10, arguments.callee, [3]); - } - }, - }, - function () { - var c = Math.floor(1 + Math.random() * 5), - f = Math.floor(1 + Math.random() * 9), - g = GetX(f) - 55, - e = GetY(c) - 60, - b = c + "_" + f, - a = oP.FlagZombies, - d; - switch (true) { - case a > 3: - SetStyle((d = $("imgCrater")), { - left: g + "px", - top: e + "px", - zIndex: 3 * c, - }); - delete oGd.$Crater[d.getAttribute("S")]; - oGd.$Crater[b] = 2; - d.setAttribute("S", b); - (d = oGd.$[b + "_1"]) && d.Die(); - break; - case a > 2: - NewImg( - "imgCrater", - "images/interface/crater1.png", - "left:" + - g + - "px;top:" + - e + - "px;z-index:" + - 3 * c, - EDAll - ).setAttribute("S", b); - (d = oGd.$[b + "_1"]) && d.Die(); - oGd.$Crater[b] = 2; - } - } - ); - SetVisible($("dFlagMeter")); - CustomPlants(0, 2, 6); - CustomPlants(0, 3, 8); - CustomPlants(0, 4, 7); - }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 3, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 10] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/PotatoMine.png", - "left:587px;top:270px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oPotatoMine, 6); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:235px;left:596px", - EDAll - ); - }, - } + { + PName: [oPeashooter, oSunFlower, oCherryBomb, oWallNut], + ZName: [oZombie, oZombie2, oZombie3, oConeheadZombie], + PicArr: (function () { + var a = oPotatoMine.prototype, + b = a.PicArr; + return [ + "images/interface/background1.jpg", + "images/interface/crater1.png", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + backgroundImage: "images/interface/background1.jpg", + CanSelectCard: 0, + LevelName: "1-5 Special Off: Meteor Crater", + LvlClearFunc: function () { + oSym.TimeStep = 10; + }, + LvlEName: 5, + LargeWaveFlag: { 10: $("imgFlag1") }, + StartGameMusic: "LoonSkirmish", + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio("crazydaveshort1"); + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + innerText( + c, + "Neighbors, we managed to fight off some zombies after all the hard work! congratulations" + ); + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + innerText(c, "Now, I have a surprise for you."); + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + innerText(c, "But first, you must clean your lawn."); + break; + case 3: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + innerText(c, "Dig out those plants with your shovel!"); + break; + case 4: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [5]); + }; + }, + [] + ); + innerText(c, "Start digging!"); + break; + case 5: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + }, + [] + ); + } + })(0); + }, + StartGame: function () { + SetHidden($("dSunNum")); + SetVisible($("tdShovel"), $("dTop")); + NewEle("DivTeach", "div", 0, 0, EDAll); + oP.Monitor( + { + ar: [0], + f: function (c) { + var d, + a = oGd.$, + b = oS.Chose; + switch (c) { + case 0: + innerText( + $("DivTeach"), + "Tap to pick up the shovel!" + ); + NewImg( + "PointerUD", + "images/interface/PointerUP.gif", + "top:36px;left:250px", + EDAll + ); + oSym.addTask(10, arguments.callee, [++c]); + break; + case 1: + b < 0 && + (innerText( + $("DivTeach"), + "Click to remove a plant!" + ), + ++c); + oSym.addTask(10, arguments.callee, [c]); + break; + case 2: + !(a["2_6_1"] && a["3_8_1"] && a["4_7_1"]) + ? (innerText( + $("DivTeach"), + "Just keep digging until you have no plants on your lawn!" + ), + ++c) + : b > -1 && + (innerText( + $("DivTeach"), + "Tap the shovel to dig out those plants!" + ), + (c = 1)); + oSym.addTask(10, arguments.callee, [c]); + break; + default: + !(a["2_6_1"] || a["3_8_1"] || a["4_7_1"]) + ? (function () { + SetHidden( + $("DivTeach"), + $("PointerUD") + ); + SetVisible( + $("dSunNum"), + $("dFlagMeter"), + $("dTop") + ); + StopMusic(); + PlayMusic( + (oS.LoadMusic = + oS.StartGameMusic) + ); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + BeginCool(); + AutoProduceSun(25); + oSym.addTask( + 2e3, + function () { + oP.AddZombiesFlag(); + SetVisible( + $( + "dFlagMeterContent" + ) + ); + }, + [] + ); + }); + })() + : oSym.addTask(10, arguments.callee, [3]); + } + }, + }, + function () { + var c = Math.floor(1 + Math.random() * 5), + f = Math.floor(1 + Math.random() * 9), + g = GetX(f) - 55, + e = GetY(c) - 60, + b = c + "_" + f, + a = oP.FlagZombies, + d; + switch (true) { + case a > 3: + SetStyle((d = $("imgCrater")), { + left: g + "px", + top: e + "px", + zIndex: 3 * c, + }); + delete oGd.$Crater[d.getAttribute("S")]; + oGd.$Crater[b] = 2; + d.setAttribute("S", b); + (d = oGd.$[b + "_1"]) && d.Die(); + break; + case a > 2: + NewImg( + "imgCrater", + "images/interface/crater1.png", + "left:" + + g + + "px;top:" + + e + + "px;z-index:" + + 3 * c, + EDAll + ).setAttribute("S", b); + (d = oGd.$[b + "_1"]) && d.Die(); + oGd.$Crater[b] = 2; + } + } + ); + SetVisible($("dFlagMeter")); + CustomPlants(0, 2, 6); + CustomPlants(0, 3, 8); + CustomPlants(0, 4, 7); + }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 3, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 10] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/PotatoMine.png", + "left:587px;top:270px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oPotatoMine, 6); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:235px;left:596px", + EDAll + ); + }, + } ); diff --git a/game/level/50.js b/game/level/50.js index d3760d99..b68a201f 100644 --- a/game/level/50.js +++ b/game/level/50.js @@ -1,325 +1,325 @@ oS.Init( - { - PName: [oLilyPad, oSnowRepeater, oCattail, oStarfruit, oLilyPad1], - ZName: [ - oDuckyTubeZombie1, - oDuckyTubeZombie2, - oDuckyTubeZombie3, - oDuckyTubeZombie4, - oDolphinRiderZombie, - oSubZombie, - oSnorkelZombie, - oWJY1, - ], - PicArr: ["images/interface/background5.jpg"], - backgroundImage: "images/interface/background5.jpg", - LF: [0, 2, 2, 2, 2, 2], - CanSelectCard: 0, - DKind: 0, - LevelName: "5-10 close", - LvlEName: "50", - InitLawnMower: function () {}, - LargeWaveFlag: {}, - StartGameMusic: "Zombieboss", - StaticCard: 0, - LoadAccess: function (a) { - NewImg( - "dDave", - "images/interface/Dave.gif", - "left:0;top:81px", - EDAll - ); - NewEle("DivTeach", "div", 0, 0, EDAll); - (function (d) { - var b = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [1]); - }; - }, - [] - ); - innerText( - c, - "Judging from the battles of the days, this town is full of dangers. . ." - ); - break; - case 1: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [2]); - }; - }, - [] - ); - innerText(c, "Finally. Now the real challenge arises"); - break; - case 2: - PlayAudio( - "crazydavelong" + Math.floor(1 + Math.random() * 3) - ); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 2, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [3]); - }; - }, - [] - ); - innerText( - c, - "Author Zombies, here we come! Be careful, he will split into a lot of replicas!" - ); - break; - case 3: - PlayAudio("crazydaveshort2"); - c.onclick = null; - $("dDave").src = "images/interface/Dave3.gif"; - oSym.addTask( - 1, - function () { - $("dDave").src = "images/interface/Dave.gif"; - c.onclick = function () { - oSym.addTask(10, b, [4]); - }; - }, - [] - ); - innerText( - c, - "Run away after hitting him, I don't want to stay in this ghost place!" - ); - break; - case 4: - $("dDave").src = "images/interface/Dave2.gif"; - ClearChild($("DivTeach")); - oSym.addTask( - 5, - function () { - ClearChild($("dDave")); - a(0); - }, - [] - ); - } - })(0); - }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(4, 9, 6, [oWarshipsZombie]); - }, - StartGame: function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - SetHidden($("dSunNum")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - f: function () { - (function () { - var a = ArCard.length; - if (a < 10) { - var c = oS.PName, - b = - oP.FlagZombies < 6 - ? Math.floor( - 1 + Math.random() * 10 - ) < 4 - ? 1 - : Math.floor( - Math.random() * c.length - ) - : Math.floor( - 1 + Math.random() * 10 - ) < 3 - ? 0 - : Math.floor( - Math.random() * c.length - ), - e = c[b], - d = e.prototype, - f = "dCard" + Math.random(); - ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; - NewImg( - f, - d.PicArr[d.CardGif], - "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", - $("dCardList"), - { - onmouseover: function (g) { - ViewPlantTitle(GetChoseCard(f), g); - }, - onmouseout: function () { - SetHidden($("dTitle")); - }, - onclick: function (g) { - ChosePlant(g, oS.ChoseCard, f); - }, - } - ); - } - oSym.addTask(600, arguments.callee, []); - })(); - (function () { - var b = ArCard.length, - a, - c; - while (b--) { - (c = (a = ArCard[b]).PixelTop) > 60 * b && - ($(a.DID).style.top = - (a.PixelTop = c - 1) + "px"); - } - oSym.addTask(5, arguments.callee, []); - })(); - }, - ar: [], - }); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }); - }, - }, - { - AZ: [ - [oDuckyTubeZombie1, 1, 1], - [oDuckyTubeZombie2, 1, 10], - [oDuckyTubeZombie3, 1, 10], - [oDuckyTubeZombie4, 1, 10], - [oDolphinRiderZombie, 2, 10], - [oSubZombie, 3, 20], - [oSnorkelZombie, 3, 9], - [oWJY1, 3, 25, [25]], - ], - FlagNum: 25, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 30], - a2: [1, 2, 12, 20, 13, 16, 21, 30], - }, - FlagToMonitor: {}, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/0.gif", - "left:667px;top:330px;clip:rect(auto,auto,237px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oGoldenPrize, 0); - }, - } - ); - }, - }, - { - GetChoseCard: function (b) { - var a = ArCard.length; - while (a--) { - ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); - } - return oS.ChoseCard; - }, - ChosePlant: function (a, b) { - PlayAudio("seedlift"); - a = window.event || a; - var f = ArCard[oS.ChoseCard], - e = - a.clientX - EDAlloffsetLeft + EBody.scrollLeft || - EElement.scrollLeft, - d = a.clientY + EBody.scrollTop || EElement.scrollTop, - c = f.PName.prototype; - oS.Chose = 1; - EditImg( - NewImg( - "MovePlant", - c.PicArr[c.StaticGif], - "left:" + - e - - 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + - "px;top:" + - d + - 20 - - c.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ); - SetAlpha($(f.DID), 50, 0.5); - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant: function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); - oS.ChoseCard = ""; - GroundOnmousemove = function () {}; - }, - GrowPlant: function (l, c, b, f, a) { - var j = oS.ChoseCard, - g = ArCard[j], - i = g.PName, - k = i.prototype, - d = g.DID, - e, - h = oGd.$LF[f]; - k.CanGrow(l, f, a) && - (function () { - PlayAudio( - h != 2 - ? "plant" + Math.floor(1 + Math.random() * 2) - : "plant_water" - ); - new i().Birth(c, b, f, a, l); - oSym.addTask(20, SetNone, [ - SetStyle($("imgGrowSoil"), { - left: c - 30 + "px", - top: b - 40 + "px", - zIndex: 3 * f, - visibility: "visible", - }), - ]); - ClearChild($("MovePlant"), $("MovePlantAlpha")); - $("dCardList").removeChild((e = $(d))); - e = null; - ArCard.splice(j, 1); - oS.ChoseCard = ""; - oS.Chose = 0; - GroundOnmousemove = function () {}; - })(); - }, - ViewPlantTitle: function (a) {}, - } + { + PName: [oLilyPad, oSnowRepeater, oCattail, oStarfruit, oLilyPad1], + ZName: [ + oDuckyTubeZombie1, + oDuckyTubeZombie2, + oDuckyTubeZombie3, + oDuckyTubeZombie4, + oDolphinRiderZombie, + oSubZombie, + oSnorkelZombie, + oWJY1, + ], + PicArr: ["images/interface/background5.jpg"], + backgroundImage: "images/interface/background5.jpg", + LF: [0, 2, 2, 2, 2, 2], + CanSelectCard: 0, + DKind: 0, + LevelName: "5-10 close", + LvlEName: "50", + InitLawnMower: function () {}, + LargeWaveFlag: {}, + StartGameMusic: "Zombieboss", + StaticCard: 0, + LoadAccess: function (a) { + NewImg( + "dDave", + "images/interface/Dave.gif", + "left:0;top:81px", + EDAll + ); + NewEle("DivTeach", "div", 0, 0, EDAll); + (function (d) { + var b = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [1]); + }; + }, + [] + ); + innerText( + c, + "Judging from the battles of the days, this town is full of dangers. . ." + ); + break; + case 1: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [2]); + }; + }, + [] + ); + innerText(c, "Finally. Now the real challenge arises"); + break; + case 2: + PlayAudio( + "crazydavelong" + Math.floor(1 + Math.random() * 3) + ); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 2, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [3]); + }; + }, + [] + ); + innerText( + c, + "Author Zombies, here we come! Be careful, he will split into a lot of replicas!" + ); + break; + case 3: + PlayAudio("crazydaveshort2"); + c.onclick = null; + $("dDave").src = "images/interface/Dave3.gif"; + oSym.addTask( + 1, + function () { + $("dDave").src = "images/interface/Dave.gif"; + c.onclick = function () { + oSym.addTask(10, b, [4]); + }; + }, + [] + ); + innerText( + c, + "Run away after hitting him, I don't want to stay in this ghost place!" + ); + break; + case 4: + $("dDave").src = "images/interface/Dave2.gif"; + ClearChild($("DivTeach")); + oSym.addTask( + 5, + function () { + ClearChild($("dDave")); + a(0); + }, + [] + ); + } + })(0); + }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(4, 9, 6, [oWarshipsZombie]); + }, + StartGame: function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + SetHidden($("dSunNum")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + f: function () { + (function () { + var a = ArCard.length; + if (a < 10) { + var c = oS.PName, + b = + oP.FlagZombies < 6 + ? Math.floor( + 1 + Math.random() * 10 + ) < 4 + ? 1 + : Math.floor( + Math.random() * c.length + ) + : Math.floor( + 1 + Math.random() * 10 + ) < 3 + ? 0 + : Math.floor( + Math.random() * c.length + ), + e = c[b], + d = e.prototype, + f = "dCard" + Math.random(); + ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; + NewImg( + f, + d.PicArr[d.CardGif], + "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", + $("dCardList"), + { + onmouseover: function (g) { + ViewPlantTitle(GetChoseCard(f), g); + }, + onmouseout: function () { + SetHidden($("dTitle")); + }, + onclick: function (g) { + ChosePlant(g, oS.ChoseCard, f); + }, + } + ); + } + oSym.addTask(600, arguments.callee, []); + })(); + (function () { + var b = ArCard.length, + a, + c; + while (b--) { + (c = (a = ArCard[b]).PixelTop) > 60 * b && + ($(a.DID).style.top = + (a.PixelTop = c - 1) + "px"); + } + oSym.addTask(5, arguments.callee, []); + })(); + }, + ar: [], + }); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }); + }, + }, + { + AZ: [ + [oDuckyTubeZombie1, 1, 1], + [oDuckyTubeZombie2, 1, 10], + [oDuckyTubeZombie3, 1, 10], + [oDuckyTubeZombie4, 1, 10], + [oDolphinRiderZombie, 2, 10], + [oSubZombie, 3, 20], + [oSnorkelZombie, 3, 9], + [oWJY1, 3, 25, [25]], + ], + FlagNum: 25, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 30], + a2: [1, 2, 12, 20, 13, 16, 21, 30], + }, + FlagToMonitor: {}, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/0.gif", + "left:667px;top:330px;clip:rect(auto,auto,237px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oGoldenPrize, 0); + }, + } + ); + }, + }, + { + GetChoseCard: function (b) { + var a = ArCard.length; + while (a--) { + ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); + } + return oS.ChoseCard; + }, + ChosePlant: function (a, b) { + PlayAudio("seedlift"); + a = window.event || a; + var f = ArCard[oS.ChoseCard], + e = + a.clientX - EDAlloffsetLeft + EBody.scrollLeft || + EElement.scrollLeft, + d = a.clientY + EBody.scrollTop || EElement.scrollTop, + c = f.PName.prototype; + oS.Chose = 1; + EditImg( + NewImg( + "MovePlant", + c.PicArr[c.StaticGif], + "left:" + + e - + 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + + "px;top:" + + d + + 20 - + c.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ); + SetAlpha($(f.DID), 50, 0.5); + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant: function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); + oS.ChoseCard = ""; + GroundOnmousemove = function () {}; + }, + GrowPlant: function (l, c, b, f, a) { + var j = oS.ChoseCard, + g = ArCard[j], + i = g.PName, + k = i.prototype, + d = g.DID, + e, + h = oGd.$LF[f]; + k.CanGrow(l, f, a) && + (function () { + PlayAudio( + h != 2 + ? "plant" + Math.floor(1 + Math.random() * 2) + : "plant_water" + ); + new i().Birth(c, b, f, a, l); + oSym.addTask(20, SetNone, [ + SetStyle($("imgGrowSoil"), { + left: c - 30 + "px", + top: b - 40 + "px", + zIndex: 3 * f, + visibility: "visible", + }), + ]); + ClearChild($("MovePlant"), $("MovePlantAlpha")); + $("dCardList").removeChild((e = $(d))); + e = null; + ArCard.splice(j, 1); + oS.ChoseCard = ""; + oS.Chose = 0; + GroundOnmousemove = function () {}; + })(); + }, + ViewPlantTitle: function (a) {}, + } ); diff --git a/game/level/6.js b/game/level/6.js index 34598f98..ab73eb77 100644 --- a/game/level/6.js +++ b/game/level/6.js @@ -1,58 +1,58 @@ oS.Init( - { - PName: [oPeashooter, oSunFlower, oCherryBomb, oWallNut, oPotatoMine], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oPoleVaultingZombie, - ], - PicArr: (function () { - var a = oSnowPea.prototype, - b = a.PicArr; - return [ - "images/interface/background1.jpg", - "images/interface/crater1.png", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - backgroundImage: "images/interface/background1.jpg", - CanSelectCard: 0, - LevelName: "Level 1-6", - LvlEName: 6, - LargeWaveFlag: { 9: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oPoleVaultingZombie, 1, 1], - ], - FlagNum: 9, - FlagToSumNum: { a1: [3, 5, 8], a2: [1, 2, 3, 9] }, - FlagToMonitor: { 8: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/SnowPea.png", - "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oSnowPea, 7); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:490px;left:836px", - EDAll - ); - }, - } + { + PName: [oPeashooter, oSunFlower, oCherryBomb, oWallNut, oPotatoMine], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oPoleVaultingZombie, + ], + PicArr: (function () { + var a = oSnowPea.prototype, + b = a.PicArr; + return [ + "images/interface/background1.jpg", + "images/interface/crater1.png", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + backgroundImage: "images/interface/background1.jpg", + CanSelectCard: 0, + LevelName: "Level 1-6", + LvlEName: 6, + LargeWaveFlag: { 9: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oPoleVaultingZombie, 1, 1], + ], + FlagNum: 9, + FlagToSumNum: { a1: [3, 5, 8], a2: [1, 2, 3, 9] }, + FlagToMonitor: { 8: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/SnowPea.png", + "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oSnowPea, 7); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:490px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/7.js b/game/level/7.js index 2c0131c4..6c221ec4 100644 --- a/game/level/7.js +++ b/game/level/7.js @@ -1,67 +1,67 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oPoleVaultingZombie, - ], - PicArr: (function () { - var a = oChomper.prototype, - b = a.PicArr; - return [ - "images/interface/background1.jpg", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - backgroundImage: "images/interface/background1.jpg", - CanSelectCard: 0, - LevelName: "Level 1-7", - LvlEName: 7, - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oPoleVaultingZombie, 1, 1], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19], - a2: [1, 2, 3, 10, 4, 5, 6, 15], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/Chomper.png", - "left:667px;top:220px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oChomper, 8); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oPoleVaultingZombie, + ], + PicArr: (function () { + var a = oChomper.prototype, + b = a.PicArr; + return [ + "images/interface/background1.jpg", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + backgroundImage: "images/interface/background1.jpg", + CanSelectCard: 0, + LevelName: "Level 1-7", + LvlEName: 7, + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oPoleVaultingZombie, 1, 1], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19], + a2: [1, 2, 3, 10, 4, 5, 6, 15], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/Chomper.png", + "left:667px;top:220px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oChomper, 8); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/8.js b/game/level/8.js index ab4cd6cc..d7a4e404 100644 --- a/game/level/8.js +++ b/game/level/8.js @@ -1,65 +1,65 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oBucketheadZombie, - ], - PicArr: (function () { - var a = oRepeater.prototype, - b = a.PicArr; - return [ - "images/interface/background1.jpg", - b[a.CardGif], - b[a.NormalGif], - ]; - })(), - backgroundImage: "images/interface/background1.jpg", - CanSelectCard: 1, - LevelName: "Level 1-8", - LvlEName: 8, - LargeWaveFlag: { 10: $("imgFlag1") }, - }, - { - AZ: [ - [oZombie, 3, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oBucketheadZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 10] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/Card/Plants/Repeater.png", - "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oRepeater, 9); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:490px;left:836px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oBucketheadZombie, + ], + PicArr: (function () { + var a = oRepeater.prototype, + b = a.PicArr; + return [ + "images/interface/background1.jpg", + b[a.CardGif], + b[a.NormalGif], + ]; + })(), + backgroundImage: "images/interface/background1.jpg", + CanSelectCard: 1, + LevelName: "Level 1-8", + LvlEName: 8, + LargeWaveFlag: { 10: $("imgFlag1") }, + }, + { + AZ: [ + [oZombie, 3, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oBucketheadZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 10] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/Card/Plants/Repeater.png", + "left:827px;top:525px;clip:rect(auto,auto,60px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oRepeater, 9); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:490px;left:836px", + EDAll + ); + }, + } ); diff --git a/game/level/9.js b/game/level/9.js index 217a9432..3e9e875f 100644 --- a/game/level/9.js +++ b/game/level/9.js @@ -1,85 +1,85 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oRepeater, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oPoleVaultingZombie, - oBucketheadZombie, - ], - PicArr: [ - "images/interface/background1.jpg", - "images/interface/ZombieNoteSmall.png", - "images/interface/ZombieNote1.png", - ], - backgroundImage: "images/interface/background1.jpg", - CanSelectCard: 1, - LevelName: "Level 1-9", - LvlEName: 9, - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 2, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oPoleVaultingZombie, 1, 1], - [oBucketheadZombie, 1, 1], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/ZombieNoteSmall.png", - "left:667px;top:220px", - EDAll, - { - onclick: function () { - PlayAudio("winmusic"); - SetHidden($("PointerUD")); - SetStyle(this, { - width: "613px", - height: "399px", - left: "193px", - top: "100px", - }).src = "images/interface/ZombieNote1.png"; - this.onclick = function () { - SelectModal(10); - }; - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oPoleVaultingZombie, + oBucketheadZombie, + ], + PicArr: [ + "images/interface/background1.jpg", + "images/interface/ZombieNoteSmall.png", + "images/interface/ZombieNote1.png", + ], + backgroundImage: "images/interface/background1.jpg", + CanSelectCard: 1, + LevelName: "Level 1-9", + LvlEName: 9, + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 2, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oPoleVaultingZombie, 1, 1], + [oBucketheadZombie, 1, 1], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/ZombieNoteSmall.png", + "left:667px;top:220px", + EDAll, + { + onclick: function () { + PlayAudio("winmusic"); + SetHidden($("PointerUD")); + SetStyle(this, { + width: "613px", + height: "399px", + left: "193px", + top: "100px", + }).src = "images/interface/ZombieNote1.png"; + this.onclick = function () { + SelectModal(10); + }; + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/AirRaid.js b/game/level/AirRaid.js index d510d27d..e11ec8e9 100644 --- a/game/level/AirRaid.js +++ b/game/level/AirRaid.js @@ -1,86 +1,86 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oSplitPea, - oJalapeno, - oSpikeweed, - oRepeater, - oTallNut, - oPumpkinHead, - oSquash, - oFlowerPot, - oTorchwood, - oThreepeater, - oGatlingPea, - oTwinSunflower, - oSpikerock, - oFumeShroom, - oCoffeeBean, - oGloomShroom, - oSunShroom, - oPuffShroom, - oScaredyShroom, - oGarlic, - oGraveBuster, - oStarfruit, - oLilyPad, - oHypnoShroom, - oIceShroom, - oDoomShroom, - oTangleKlep, - oSeaShroom, - oPlantern, - oCactus, - oTenManNut, - oSnowRepeater, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [oImp, oBalloonZombie], - PicArr: ["images/interface/background1.jpg"], - LF: [0, 1, 1, 1, 1, 1, 0], - backgroundImage: "images/interface/background1.jpg", - CanSelectCard: 1, - LevelName: "Air Raid", - LvlEName: "AirRaid", - SunNum: 500, - LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, - }, - { - AZ: [ - [oImp, 3, 1, [1, 10, 20]], - [oBalloonZombie, 9, 2], - ], - FlagNum: 20, - FlagToSumNum: { a1: [3, 5], a2: [1, 2, 3] }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(0); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oSplitPea, + oJalapeno, + oSpikeweed, + oRepeater, + oTallNut, + oPumpkinHead, + oSquash, + oFlowerPot, + oTorchwood, + oThreepeater, + oGatlingPea, + oTwinSunflower, + oSpikerock, + oFumeShroom, + oCoffeeBean, + oGloomShroom, + oSunShroom, + oPuffShroom, + oScaredyShroom, + oGarlic, + oGraveBuster, + oStarfruit, + oLilyPad, + oHypnoShroom, + oIceShroom, + oDoomShroom, + oTangleKlep, + oSeaShroom, + oPlantern, + oCactus, + oTenManNut, + oSnowRepeater, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [oImp, oBalloonZombie], + PicArr: ["images/interface/background1.jpg"], + LF: [0, 1, 1, 1, 1, 1, 0], + backgroundImage: "images/interface/background1.jpg", + CanSelectCard: 1, + LevelName: "Air Raid", + LvlEName: "AirRaid", + SunNum: 500, + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + }, + { + AZ: [ + [oImp, 3, 1, [1, 10, 20]], + [oBalloonZombie, 9, 2], + ], + FlagNum: 20, + FlagToSumNum: { a1: [3, 5], a2: [1, 2, 3] }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(0); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/BoxedSurprise.js b/game/level/BoxedSurprise.js index e5396a72..f46d5db6 100644 --- a/game/level/BoxedSurprise.js +++ b/game/level/BoxedSurprise.js @@ -1,80 +1,80 @@ oS.Init( - { - PName: [ - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oJalapeno, - oTallNut, - oPumpkinHead, - oSquash, - oSunShroom, - oPuffShroom, - oScaredyShroom, - oTenManNut, - oSnowRepeater, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oConeheadZombie, - oJackinTheBoxZombie, - oScreenDoorZombie, - ], - PicArr: ["images/interface/background2.jpg"], - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 1, - SunNum: 1500, - DKind: 0, - LevelName: "Boxed Surprise", - LvlEName: "BoxedSurprise", - StartGameMusic: "Moongrains", - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 6, 1], - [oConeheadZombie, 1, 1], - [oJackinTheBoxZombie, 3, 10, [10, 15, 20, 25, 30]], - [oScreenDoorZombie, 1, 5], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25, 48, 60], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(0); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oJalapeno, + oTallNut, + oPumpkinHead, + oSquash, + oSunShroom, + oPuffShroom, + oScaredyShroom, + oTenManNut, + oSnowRepeater, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oConeheadZombie, + oJackinTheBoxZombie, + oScreenDoorZombie, + ], + PicArr: ["images/interface/background2.jpg"], + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 1, + SunNum: 1500, + DKind: 0, + LevelName: "Boxed Surprise", + LvlEName: "BoxedSurprise", + StartGameMusic: "Moongrains", + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 6, 1], + [oConeheadZombie, 1, 1], + [oJackinTheBoxZombie, 3, 10, [10, 15, 20, 25, 30]], + [oScreenDoorZombie, 1, 5], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25, 48, 60], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(0); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/FB.js b/game/level/FB.js index c33db5ce..ec52a0f8 100644 --- a/game/level/FB.js +++ b/game/level/FB.js @@ -1,240 +1,240 @@ oS.Init( - { - PName: [ - oFlowerPot, - oCFlowerPot, - oJalapeno, - oRepeater, - oThreepeater, - oTenManNut, - oBigChomper, - ], - ZName: [ - oCZombie, - oCZombie2, - oCZombie3, - oCConeheadZombie, - oCBucketheadZombie, - othugZombie, - oEunZombie, - oZZ, - ], - PicArr: ["images/interface/backgroundwall.jpg"], - backgroundImage: "images/interface/backgroundwall.jpg", - LF: [0, 3, 3, 3, 3, 3, 3], - CanSelectCard: 0, - DKind: 0, - LevelName: "Battle of the Pass", - LvlEName: "40", - LargeWaveFlag: { - 10: $("imgFlag4"), - 20: $("imgFlag3"), - 30: $("imgFlag2"), - 40: $("imgFlag1"), - }, - InitLawnMower: function () { - CustomSpecial(oCleaner, 1, -1); - CustomSpecial(oCleaner, 2, -1); - CustomSpecial(oCleaner, 3, -1); - CustomSpecial(oCleaner, 4, -1); - CustomSpecial(oCleaner, 5, -1); - }, - StartGameMusic: "Zombieboss", - StaticCard: 0, - StartGame: function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - SetHidden($("dSunNum")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - f: function () { - (function () { - var a = ArCard.length; - if (a < 10) { - var c = oS.PName, - b = - oP.FlagZombies < 6 - ? Math.floor( - 1 + Math.random() * 10 - ) < 4 - ? 1 - : Math.floor( - Math.random() * c.length - ) - : Math.floor( - 1 + Math.random() * 10 - ) < 3 - ? 0 - : Math.floor( - Math.random() * c.length - ), - e = c[b], - d = e.prototype, - f = "dCard" + Math.random(); - ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; - NewImg( - f, - d.PicArr[d.CardGif], - "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", - $("dCardList"), - { - onmouseover: function (g) { - ViewPlantTitle(GetChoseCard(f), g); - }, - onmouseout: function () { - SetHidden($("dTitle")); - }, - onclick: function (g) { - ChosePlant(g, oS.ChoseCard, f); - }, - } - ); - } - oSym.addTask(600, arguments.callee, []); - })(); - (function () { - var b = ArCard.length, - a, - c; - while (b--) { - (c = (a = ArCard[b]).PixelTop) > 60 * b && - ($(a.DID).style.top = - (a.PixelTop = c - 1) + "px"); - } - oSym.addTask(5, arguments.callee, []); - })(); - }, - ar: [], - }); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }); - }, - }, - { - AZ: [ - [oCZombie, 1, 1], - [oCZombie2, 1, 5], - [oCZombie3, 2, 10], - [oCConeheadZombie, 2, 15], - [oCBucketheadZombie, 2, 20], - [othugZombie, 1, 25], - [oEunZombie, 1, 30], - [oZZ, 1, 35], - ], - FlagNum: 40, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25, 48, 60], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowLargeWave, 0], - 39: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/0.gif", - "left:667px;top:330px;clip:rect(auto,auto,237px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oGoldenPrize, 0); - }, - } - ); - }, - }, - { - GetChoseCard: function (b) { - var a = ArCard.length; - while (a--) { - ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); - } - return oS.ChoseCard; - }, - ChosePlant: function (a, b) { - PlayAudio("seedlift"); - a = window.event || a; - var f = ArCard[oS.ChoseCard], - e = - a.clientX - EDAlloffsetLeft + EBody.scrollLeft || - EElement.scrollLeft, - d = a.clientY + EBody.scrollTop || EElement.scrollTop, - c = f.PName.prototype; - oS.Chose = 1; - EditImg( - NewImg( - "MovePlant", - c.PicArr[c.StaticGif], - "left:" + - e - - 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + - "px;top:" + - d + - 20 - - c.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ); - SetAlpha($(f.DID), 50, 0.5); - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant: function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); - oS.ChoseCard = ""; - GroundOnmousemove = function () {}; - }, - GrowPlant: function (l, c, b, f, a) { - var j = oS.ChoseCard, - g = ArCard[j], - i = g.PName, - k = i.prototype, - d = g.DID, - e, - h = oGd.$LF[f]; - k.CanGrow(l, f, a) && - (function () { - PlayAudio( - h != 2 - ? "plant" + Math.floor(1 + Math.random() * 2) - : "plant_water" - ); - new i().Birth(c, b, f, a, l); - oSym.addTask(20, SetNone, [ - SetStyle($("imgGrowSoil"), { - left: c - 30 + "px", - top: b - 40 + "px", - zIndex: 3 * f, - visibility: "visible", - }), - ]); - ClearChild($("MovePlant"), $("MovePlantAlpha")); - $("dCardList").removeChild((e = $(d))); - e = null; - ArCard.splice(j, 1); - oS.ChoseCard = ""; - oS.Chose = 0; - GroundOnmousemove = function () {}; - })(); - }, - ViewPlantTitle: function (a) {}, - } + { + PName: [ + oFlowerPot, + oCFlowerPot, + oJalapeno, + oRepeater, + oThreepeater, + oTenManNut, + oBigChomper, + ], + ZName: [ + oCZombie, + oCZombie2, + oCZombie3, + oCConeheadZombie, + oCBucketheadZombie, + othugZombie, + oEunZombie, + oZZ, + ], + PicArr: ["images/interface/backgroundwall.jpg"], + backgroundImage: "images/interface/backgroundwall.jpg", + LF: [0, 3, 3, 3, 3, 3, 3], + CanSelectCard: 0, + DKind: 0, + LevelName: "Battle of the Pass", + LvlEName: "40", + LargeWaveFlag: { + 10: $("imgFlag4"), + 20: $("imgFlag3"), + 30: $("imgFlag2"), + 40: $("imgFlag1"), + }, + InitLawnMower: function () { + CustomSpecial(oCleaner, 1, -1); + CustomSpecial(oCleaner, 2, -1); + CustomSpecial(oCleaner, 3, -1); + CustomSpecial(oCleaner, 4, -1); + CustomSpecial(oCleaner, 5, -1); + }, + StartGameMusic: "Zombieboss", + StaticCard: 0, + StartGame: function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + SetHidden($("dSunNum")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + f: function () { + (function () { + var a = ArCard.length; + if (a < 10) { + var c = oS.PName, + b = + oP.FlagZombies < 6 + ? Math.floor( + 1 + Math.random() * 10 + ) < 4 + ? 1 + : Math.floor( + Math.random() * c.length + ) + : Math.floor( + 1 + Math.random() * 10 + ) < 3 + ? 0 + : Math.floor( + Math.random() * c.length + ), + e = c[b], + d = e.prototype, + f = "dCard" + Math.random(); + ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; + NewImg( + f, + d.PicArr[d.CardGif], + "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", + $("dCardList"), + { + onmouseover: function (g) { + ViewPlantTitle(GetChoseCard(f), g); + }, + onmouseout: function () { + SetHidden($("dTitle")); + }, + onclick: function (g) { + ChosePlant(g, oS.ChoseCard, f); + }, + } + ); + } + oSym.addTask(600, arguments.callee, []); + })(); + (function () { + var b = ArCard.length, + a, + c; + while (b--) { + (c = (a = ArCard[b]).PixelTop) > 60 * b && + ($(a.DID).style.top = + (a.PixelTop = c - 1) + "px"); + } + oSym.addTask(5, arguments.callee, []); + })(); + }, + ar: [], + }); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }); + }, + }, + { + AZ: [ + [oCZombie, 1, 1], + [oCZombie2, 1, 5], + [oCZombie3, 2, 10], + [oCConeheadZombie, 2, 15], + [oCBucketheadZombie, 2, 20], + [othugZombie, 1, 25], + [oEunZombie, 1, 30], + [oZZ, 1, 35], + ], + FlagNum: 40, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25, 48, 60], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowLargeWave, 0], + 39: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/0.gif", + "left:667px;top:330px;clip:rect(auto,auto,237px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oGoldenPrize, 0); + }, + } + ); + }, + }, + { + GetChoseCard: function (b) { + var a = ArCard.length; + while (a--) { + ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); + } + return oS.ChoseCard; + }, + ChosePlant: function (a, b) { + PlayAudio("seedlift"); + a = window.event || a; + var f = ArCard[oS.ChoseCard], + e = + a.clientX - EDAlloffsetLeft + EBody.scrollLeft || + EElement.scrollLeft, + d = a.clientY + EBody.scrollTop || EElement.scrollTop, + c = f.PName.prototype; + oS.Chose = 1; + EditImg( + NewImg( + "MovePlant", + c.PicArr[c.StaticGif], + "left:" + + e - + 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + + "px;top:" + + d + + 20 - + c.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ); + SetAlpha($(f.DID), 50, 0.5); + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant: function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); + oS.ChoseCard = ""; + GroundOnmousemove = function () {}; + }, + GrowPlant: function (l, c, b, f, a) { + var j = oS.ChoseCard, + g = ArCard[j], + i = g.PName, + k = i.prototype, + d = g.DID, + e, + h = oGd.$LF[f]; + k.CanGrow(l, f, a) && + (function () { + PlayAudio( + h != 2 + ? "plant" + Math.floor(1 + Math.random() * 2) + : "plant_water" + ); + new i().Birth(c, b, f, a, l); + oSym.addTask(20, SetNone, [ + SetStyle($("imgGrowSoil"), { + left: c - 30 + "px", + top: b - 40 + "px", + zIndex: 3 * f, + visibility: "visible", + }), + ]); + ClearChild($("MovePlant"), $("MovePlantAlpha")); + $("dCardList").removeChild((e = $(d))); + e = null; + ArCard.splice(j, 1); + oS.ChoseCard = ""; + oS.Chose = 0; + GroundOnmousemove = function () {}; + })(); + }, + ViewPlantTitle: function (a) {}, + } ); diff --git a/game/level/HypnoHysteria.js b/game/level/HypnoHysteria.js index 714c458e..33a2af3f 100644 --- a/game/level/HypnoHysteria.js +++ b/game/level/HypnoHysteria.js @@ -1,195 +1,195 @@ oS.Init( - { - PName: [oHypnoShroom], - ZName: [ - oZombie, - oConeheadZombie, - oDancingZombie, - oFootballZombie, - oHeiFootballZombie, - ], - PicArr: [ - "images/interface/background2.jpg", - "images/interface/trophy.png", - ], - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 0, - DKind: 0, - LevelName: "Hypno Hysteria", - LvlEName: "HypnoHysteria", - LvlClearFunc: function () { - oSym.TimeStep = 10; - }, - LargeWaveFlag: { 10: $("imgFlag1") }, - StaticCard: 0, - StartGameMusic: "LoonSkirmish", - StartGame: function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - SetHidden($("dSunNum")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - f: function () { - (function () { - var a = ArCard.length; - if (a < 10) { - var c = oS.PName, - b = Math.floor(Math.random() * c.length), - e = c[b], - d = e.prototype, - f = "dCard" + Math.random(); - ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; - NewImg( - f, - d.PicArr[d.CardGif], - "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", - $("dCardList"), - { - onmouseover: function (g) { - ViewPlantTitle(GetChoseCard(f), g); - }, - onmouseout: function () { - SetHidden($("dTitle")); - }, - onclick: function (g) { - ChosePlant(g, oS.ChoseCard, f); - }, - } - ); - } - oSym.addTask(600, arguments.callee, []); - })(); - (function () { - var b = ArCard.length, - a, - c; - while (b--) { - (c = (a = ArCard[b]).PixelTop) > 60 * b && - ($(a.DID).style.top = - (a.PixelTop = c - 1) + "px"); - } - oSym.addTask(5, arguments.callee, []); - })(); - }, - ar: [], - }); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }); - }, - }, - { - AZ: [ - [oZombie, 4, 1], - [oConeheadZombie, 3, 6], - [oFootballZombie, 1, 1], - [oHeiFootballZombie, 1, 10], - ], - FlagNum: 10, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19], - a2: [3, 6, 12, 20, 24, 36, 48, 60], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(0); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:198px;left:269px", - EDAll - ); - }, - }, - { - GetChoseCard: function (b) { - var a = ArCard.length; - while (a--) { - ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); - } - return oS.ChoseCard; - }, - ChosePlant: function (a, b) { - a = window.event || a; - var f = ArCard[oS.ChoseCard], - e = a.clientX + EBody.scrollLeft || EElement.scrollLeft, - d = a.clientY + EBody.scrollTop || EElement.scrollTop, - c = f.PName.prototype; - oS.Chose = 1; - EditImg( - NewImg( - "MovePlant", - c.PicArr[c.StaticGif], - "left:" + - e - - 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + - "px;top:" + - d + - 20 - - c.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ); - SetAlpha($(f.DID), 50, 0.5); - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant: function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); - oS.ChoseCard = ""; - GroundOnmousemove = function () {}; - }, - GrowPlant: function (k, c, b, f, a) { - var i = oS.ChoseCard, - g = ArCard[i], - h = g.PName, - j = h.prototype, - d = g.DID, - e; - j.CanGrow(k, f, a) && - (function () { - new h().Birth(c, b, f, a, k); - oSym.addTask(20, SetNone, [ - SetStyle($("imgGrowSoil"), { - left: c - 30 + "px", - top: b - 40 + "px", - zIndex: 3 * f, - visibility: "visible", - }), - ]); - ClearChild($("MovePlant"), $("MovePlantAlpha")); - $("dCardList").removeChild((e = $(d))); - e = null; - ArCard.splice(i, 1); - oS.ChoseCard = ""; - oS.Chose = 0; - GroundOnmousemove = function () {}; - })(); - }, - ViewPlantTitle: function (a) {}, - } + { + PName: [oHypnoShroom], + ZName: [ + oZombie, + oConeheadZombie, + oDancingZombie, + oFootballZombie, + oHeiFootballZombie, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + ], + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 0, + DKind: 0, + LevelName: "Hypno Hysteria", + LvlEName: "HypnoHysteria", + LvlClearFunc: function () { + oSym.TimeStep = 10; + }, + LargeWaveFlag: { 10: $("imgFlag1") }, + StaticCard: 0, + StartGameMusic: "LoonSkirmish", + StartGame: function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + SetHidden($("dSunNum")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + f: function () { + (function () { + var a = ArCard.length; + if (a < 10) { + var c = oS.PName, + b = Math.floor(Math.random() * c.length), + e = c[b], + d = e.prototype, + f = "dCard" + Math.random(); + ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; + NewImg( + f, + d.PicArr[d.CardGif], + "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", + $("dCardList"), + { + onmouseover: function (g) { + ViewPlantTitle(GetChoseCard(f), g); + }, + onmouseout: function () { + SetHidden($("dTitle")); + }, + onclick: function (g) { + ChosePlant(g, oS.ChoseCard, f); + }, + } + ); + } + oSym.addTask(600, arguments.callee, []); + })(); + (function () { + var b = ArCard.length, + a, + c; + while (b--) { + (c = (a = ArCard[b]).PixelTop) > 60 * b && + ($(a.DID).style.top = + (a.PixelTop = c - 1) + "px"); + } + oSym.addTask(5, arguments.callee, []); + })(); + }, + ar: [], + }); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }); + }, + }, + { + AZ: [ + [oZombie, 4, 1], + [oConeheadZombie, 3, 6], + [oFootballZombie, 1, 1], + [oHeiFootballZombie, 1, 10], + ], + FlagNum: 10, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19], + a2: [3, 6, 12, 20, 24, 36, 48, 60], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(0); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:198px;left:269px", + EDAll + ); + }, + }, + { + GetChoseCard: function (b) { + var a = ArCard.length; + while (a--) { + ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); + } + return oS.ChoseCard; + }, + ChosePlant: function (a, b) { + a = window.event || a; + var f = ArCard[oS.ChoseCard], + e = a.clientX + EBody.scrollLeft || EElement.scrollLeft, + d = a.clientY + EBody.scrollTop || EElement.scrollTop, + c = f.PName.prototype; + oS.Chose = 1; + EditImg( + NewImg( + "MovePlant", + c.PicArr[c.StaticGif], + "left:" + + e - + 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + + "px;top:" + + d + + 20 - + c.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ); + SetAlpha($(f.DID), 50, 0.5); + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant: function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); + oS.ChoseCard = ""; + GroundOnmousemove = function () {}; + }, + GrowPlant: function (k, c, b, f, a) { + var i = oS.ChoseCard, + g = ArCard[i], + h = g.PName, + j = h.prototype, + d = g.DID, + e; + j.CanGrow(k, f, a) && + (function () { + new h().Birth(c, b, f, a, k); + oSym.addTask(20, SetNone, [ + SetStyle($("imgGrowSoil"), { + left: c - 30 + "px", + top: b - 40 + "px", + zIndex: 3 * f, + visibility: "visible", + }), + ]); + ClearChild($("MovePlant"), $("MovePlantAlpha")); + $("dCardList").removeChild((e = $(d))); + e = null; + ArCard.splice(i, 1); + oS.ChoseCard = ""; + oS.Chose = 0; + GroundOnmousemove = function () {}; + })(); + }, + ViewPlantTitle: function (a) {}, + } ); diff --git a/game/level/SunPower.js b/game/level/SunPower.js index 0f883fb4..7ea22631 100644 --- a/game/level/SunPower.js +++ b/game/level/SunPower.js @@ -1,114 +1,114 @@ oS.Init( - { - PName: [ - oCherryBomb, - oJalapeno, - oPotatoMine, - oGarlic, - oWallNut, - oSquash, - oThreepeater, - ], - ZName: [oPoleVaultingZombie, oZombie], - ShowScroll: true, - SunNum: 325, - LF: [0, 1, 1, 1, 1, 1], - ZF: [0, 1, 0, 1, 0, 1], - PicArr: (function () { - return ["images/interface/background1.jpg"]; - })(), - backgroundImage: "images/interface/background1.jpg", - CanSelectCard: 0, - LevelName: "Sun Power", - LvlClearFunc: function () { - oSym.TimeStep = 10; - }, - LvlEName: "SunPower", - LargeWaveFlag: { 10: $("imgFlag1") }, - StartGameMusic: "LoonSkirmish", - StartGame: function () { - oS.SunFlowerNum = 0; - NewEle( - "DivTeach", - "div", - 0, - { innerHTML: "Don't let the zombies eat your sunflowers!" }, - EDAll - ); - var a; - for (a = 1; a < 7; a++) { - CustomSpecial(oSunFlower, 1, a); - } - for (a = 1; a < 7; a++) { - CustomSpecial(oSunFlower, 3, a); - } - for (a = 1; a < 7; a++) { - CustomSpecial(oSunFlower, 5, a); - } - StopMusic(); - NewMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor(); - (function () { - var b = 0; - for (v in $P) { - $P[v].EName == "oSunFlower" && ++b; - } - b > 17 - ? oSym.addTask(200, arguments.callee, []) - : GameOver("Level Failed,
Please try again!"); - })(); - BeginCool(); - oS.DKind && AutoProduceSun(25); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - oSym.addTask( - 500, - function () { - ClearChild($("DivTeach")); - }, - [] - ); - }); - }, - }, - { - AZ: [ - [oPoleVaultingZombie, 3, 3], - [oZombie, 1, 1], - ], - FlagNum: 10, - FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 10] }, - FlagToMonitor: { 9: [ShowFinalWave, 0] }, - FlagToEnd: function () { - (function () { - var a = 0; - for (v in $P) { - $P[v].EName == "oSunFlower" && ++a; - } - a > 9 - ? NewImg( - "imgSF", - "images/interface/trophy.png", - "left:417px;top:233px;z-index:256", - EDAll, - { - onclick: function () { - PlayAudio("winmusic"); - SelectModal(0); - HiddenOptions(); - SetBlock( - $("dSurface"), - $("iSurfaceBackground") - ); - ShowNameDiv(); - }, - } - ) - : GameOver("条件失败
请再接再厉!"); - })(); - }, - } + { + PName: [ + oCherryBomb, + oJalapeno, + oPotatoMine, + oGarlic, + oWallNut, + oSquash, + oThreepeater, + ], + ZName: [oPoleVaultingZombie, oZombie], + ShowScroll: true, + SunNum: 325, + LF: [0, 1, 1, 1, 1, 1], + ZF: [0, 1, 0, 1, 0, 1], + PicArr: (function () { + return ["images/interface/background1.jpg"]; + })(), + backgroundImage: "images/interface/background1.jpg", + CanSelectCard: 0, + LevelName: "Sun Power", + LvlClearFunc: function () { + oSym.TimeStep = 10; + }, + LvlEName: "SunPower", + LargeWaveFlag: { 10: $("imgFlag1") }, + StartGameMusic: "LoonSkirmish", + StartGame: function () { + oS.SunFlowerNum = 0; + NewEle( + "DivTeach", + "div", + 0, + { innerHTML: "Don't let the zombies eat your sunflowers!" }, + EDAll + ); + var a; + for (a = 1; a < 7; a++) { + CustomSpecial(oSunFlower, 1, a); + } + for (a = 1; a < 7; a++) { + CustomSpecial(oSunFlower, 3, a); + } + for (a = 1; a < 7; a++) { + CustomSpecial(oSunFlower, 5, a); + } + StopMusic(); + NewMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor(); + (function () { + var b = 0; + for (v in $P) { + $P[v].EName == "oSunFlower" && ++b; + } + b > 17 + ? oSym.addTask(200, arguments.callee, []) + : GameOver("Level Failed,
Please try again!"); + })(); + BeginCool(); + oS.DKind && AutoProduceSun(25); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + oSym.addTask( + 500, + function () { + ClearChild($("DivTeach")); + }, + [] + ); + }); + }, + }, + { + AZ: [ + [oPoleVaultingZombie, 3, 3], + [oZombie, 1, 1], + ], + FlagNum: 10, + FlagToSumNum: { a1: [3, 5, 9], a2: [1, 2, 3, 10] }, + FlagToMonitor: { 9: [ShowFinalWave, 0] }, + FlagToEnd: function () { + (function () { + var a = 0; + for (v in $P) { + $P[v].EName == "oSunFlower" && ++a; + } + a > 9 + ? NewImg( + "imgSF", + "images/interface/trophy.png", + "left:417px;top:233px;z-index:256", + EDAll, + { + onclick: function () { + PlayAudio("winmusic"); + SelectModal(0); + HiddenOptions(); + SetBlock( + $("dSurface"), + $("iSurfaceBackground") + ); + ShowNameDiv(); + }, + } + ) + : GameOver("条件失败
请再接再厉!"); + })(); + }, + } ); diff --git a/game/level/TripleThreatDefense.js b/game/level/TripleThreatDefense.js index fd164105..2fceba48 100644 --- a/game/level/TripleThreatDefense.js +++ b/game/level/TripleThreatDefense.js @@ -1,190 +1,190 @@ oS.Init( - { - PName: [oRepeater, oFumeShroom], - ZName: [oZombie, oPoleVaultingZombie], - PicArr: [ - "images/interface/background2.jpg", - "images/interface/trophy.png", - ], - backgroundImage: "images/interface/background2.jpg", - CanSelectCard: 0, - DKind: 0, - LevelName: "Triple Threat Defense", - LvlEName: "TripleThreatDefense", - LargeWaveFlag: { 10: $("imgFlag1") }, - StaticCard: 0, - InitLawnMower: function () {}, - StartGameMusic: "LoonSkirmish", - StartGame: function () { - NewEle( - 0, - "div", - "width:22px;height:502px;margin:75px 0 0 485px;position:absolute;z-index:1;background:url(images/interface/Stripe.png)", - 0, - $("tGround") - ); - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - SetHidden($("dSunNum")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - f: function () { - (function () { - var a = ArCard.length; - if (a < 10) { - var c = oS.PName, - b = Math.floor(Math.random() * c.length), - e = c[b], - d = e.prototype, - f = "dCard" + Math.random(); - ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; - NewImg( - f, - d.PicArr[d.CardGif], - "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", - $("dCardList"), - { - onmouseover: function (g) { - ViewPlantTitle(GetChoseCard(f), g); - }, - onmouseout: function () { - SetHidden($("dTitle")); - }, - onclick: function (g) { - ChosePlant(g, oS.ChoseCard, f); - }, - } - ); - } - oSym.addTask(600, arguments.callee, []); - })(); - (function () { - var b = ArCard.length, - a, - c; - while (b--) { - (c = (a = ArCard[b]).PixelTop) > 60 * b && - ($(a.DID).style.top = - (a.PixelTop = c - 1) + "px"); - } - oSym.addTask(5, arguments.callee, []); - })(); - }, - ar: [], - }); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }); - }, - }, - { - AZ: [ - [oZombie, 1, 1], - [oPoleVaultingZombie, 2, 1], - ], - FlagNum: 10, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [3, 6, 12, 20, 18, 24, 30, 40, 36, 42, 48, 60], - }, - FlagToMonitor: { 9: [ShowLargeWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:667px;top:220px", - EDAll, - { - onclick: function () { - SelectModal(0); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - }, - { - GetChoseCard: function (b) { - if (oS.Chose) { - return; - } - var a = ArCard.length; - while (a--) { - ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); - } - return oS.ChoseCard; - }, - ChosePlant: function (a, b) { - PlayAudio("seedlift"); - a = window.event || a; - var f = ArCard[oS.ChoseCard], - e = a.clientX + EBody.scrollLeft || EElement.scrollLeft, - d = a.clientY + EBody.scrollTop || EElement.scrollTop, - c = f.PName.prototype; - oS.Chose = 1; - EditImg( - NewImg( - "MovePlant", - c.PicArr[c.StaticGif], - "left:" + - e - - 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + - "px;top:" + - d + - 20 - - c.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ); - SetAlpha($(f.DID), 50, 0.5); - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant: function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); - oS.ChoseCard = ""; - GroundOnmousemove = function () {}; - }, - GrowPlant: function (l, c, b, f, a) { - var j = $("DivTeach"); - j && j.parentNode.removeChild(j); - if (c > 347) { - return false; - } - var i = oS.ChoseCard, - g = ArCard[i], - h = g.PName, - k = h.prototype, - d = g.DID, - e; - new h().Birth(c, b, f, a, l); - ClearChild($("MovePlant"), $("MovePlantAlpha")); - $("dCardList").removeChild((e = $(d))); - e = null; - ArCard.splice(i, 1); - oS.ChoseCard = ""; - oS.Chose = 0; - GroundOnmousemove = function () {}; - }, - ViewPlantTitle: function (a) {}, - } + { + PName: [oRepeater, oFumeShroom], + ZName: [oZombie, oPoleVaultingZombie], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + ], + backgroundImage: "images/interface/background2.jpg", + CanSelectCard: 0, + DKind: 0, + LevelName: "Triple Threat Defense", + LvlEName: "TripleThreatDefense", + LargeWaveFlag: { 10: $("imgFlag1") }, + StaticCard: 0, + InitLawnMower: function () {}, + StartGameMusic: "LoonSkirmish", + StartGame: function () { + NewEle( + 0, + "div", + "width:22px;height:502px;margin:75px 0 0 485px;position:absolute;z-index:1;background:url(images/interface/Stripe.png)", + 0, + $("tGround") + ); + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + SetHidden($("dSunNum")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + f: function () { + (function () { + var a = ArCard.length; + if (a < 10) { + var c = oS.PName, + b = Math.floor(Math.random() * c.length), + e = c[b], + d = e.prototype, + f = "dCard" + Math.random(); + ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; + NewImg( + f, + d.PicArr[d.CardGif], + "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", + $("dCardList"), + { + onmouseover: function (g) { + ViewPlantTitle(GetChoseCard(f), g); + }, + onmouseout: function () { + SetHidden($("dTitle")); + }, + onclick: function (g) { + ChosePlant(g, oS.ChoseCard, f); + }, + } + ); + } + oSym.addTask(600, arguments.callee, []); + })(); + (function () { + var b = ArCard.length, + a, + c; + while (b--) { + (c = (a = ArCard[b]).PixelTop) > 60 * b && + ($(a.DID).style.top = + (a.PixelTop = c - 1) + "px"); + } + oSym.addTask(5, arguments.callee, []); + })(); + }, + ar: [], + }); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }); + }, + }, + { + AZ: [ + [oZombie, 1, 1], + [oPoleVaultingZombie, 2, 1], + ], + FlagNum: 10, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [3, 6, 12, 20, 18, 24, 30, 40, 36, 42, 48, 60], + }, + FlagToMonitor: { 9: [ShowLargeWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:667px;top:220px", + EDAll, + { + onclick: function () { + SelectModal(0); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + }, + { + GetChoseCard: function (b) { + if (oS.Chose) { + return; + } + var a = ArCard.length; + while (a--) { + ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); + } + return oS.ChoseCard; + }, + ChosePlant: function (a, b) { + PlayAudio("seedlift"); + a = window.event || a; + var f = ArCard[oS.ChoseCard], + e = a.clientX + EBody.scrollLeft || EElement.scrollLeft, + d = a.clientY + EBody.scrollTop || EElement.scrollTop, + c = f.PName.prototype; + oS.Chose = 1; + EditImg( + NewImg( + "MovePlant", + c.PicArr[c.StaticGif], + "left:" + + e - + 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + + "px;top:" + + d + + 20 - + c.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ); + SetAlpha($(f.DID), 50, 0.5); + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant: function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); + oS.ChoseCard = ""; + GroundOnmousemove = function () {}; + }, + GrowPlant: function (l, c, b, f, a) { + var j = $("DivTeach"); + j && j.parentNode.removeChild(j); + if (c > 347) { + return false; + } + var i = oS.ChoseCard, + g = ArCard[i], + h = g.PName, + k = h.prototype, + d = g.DID, + e; + new h().Birth(c, b, f, a, l); + ClearChild($("MovePlant"), $("MovePlantAlpha")); + $("dCardList").removeChild((e = $(d))); + e = null; + ArCard.splice(i, 1); + oS.ChoseCard = ""; + oS.Chose = 0; + GroundOnmousemove = function () {}; + }, + ViewPlantTitle: function (a) {}, + } ); diff --git a/game/level/WJY.js b/game/level/WJY.js index 092623a8..89e9d142 100644 --- a/game/level/WJY.js +++ b/game/level/WJY.js @@ -1,105 +1,105 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oWallNut, - oSnowPea, - oSplitPea, - oSpikeweed, - oRepeater, - oTallNut, - oPumpkinHead, - oFlowerPot, - oTorchwood, - oThreepeater, - oGatlingPea, - oTwinSunflower, - oSpikerock, - oFumeShroom, - oCoffeeBean, - oGloomShroom, - oSunShroom, - oPuffShroom, - oScaredyShroom, - oGarlic, - oGraveBuster, - oStarfruit, - oLilyPad, - oIceShroom, - oSeaShroom, - oPlantern, - oCactus, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - ], - ZName: [ - oCZombie, - oCZombie2, - oCZombie3, - oCBucketheadZombie, - oDuckyTubeZombie1, - oCSnorkelZombie, - oScreenDoorZombie, - oDuckyTubeZombie2, - oWJY, - oWJY1, - ], - PicArr: ["images/interface/backgroundX1.jpg"], - LF: [0, 2, 3, 3, 2, 2, 0], - backgroundImage: "images/interface/backgroundX1.jpg", - CanSelectCard: 1, - LevelName: "Meeting the Author", - LvlEName: 9, - SunNum: 2e3, - coord: 2, - InitLawnMower: function () {}, - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - StartGameMusic: "Zombieboss", - }, - { - AZ: [ - [oCZombie, 1, 1], - [oCZombie2, 1, 2], - [oCZombie3, 2, 3], - [oCBucketheadZombie, 1, 10], - [oDuckyTubeZombie1, 1, 5], - [oCSnorkelZombie, 1, 17], - [oScreenDoorZombie, 1, 9], - [oDuckyTubeZombie2, 1, 10], - [oWJY, 1, 30, [30]], - [oWJY1, 1, 30, [30]], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/0.gif", - "left:667px;top:330px;clip:rect(auto,auto,237px,auto)", - EDAll, - { - onclick: function () { - GetNewCard(this, oGoldenPrize, 0); - }, - } - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oWallNut, + oSnowPea, + oSplitPea, + oSpikeweed, + oRepeater, + oTallNut, + oPumpkinHead, + oFlowerPot, + oTorchwood, + oThreepeater, + oGatlingPea, + oTwinSunflower, + oSpikerock, + oFumeShroom, + oCoffeeBean, + oGloomShroom, + oSunShroom, + oPuffShroom, + oScaredyShroom, + oGarlic, + oGraveBuster, + oStarfruit, + oLilyPad, + oIceShroom, + oSeaShroom, + oPlantern, + oCactus, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + ], + ZName: [ + oCZombie, + oCZombie2, + oCZombie3, + oCBucketheadZombie, + oDuckyTubeZombie1, + oCSnorkelZombie, + oScreenDoorZombie, + oDuckyTubeZombie2, + oWJY, + oWJY1, + ], + PicArr: ["images/interface/backgroundX1.jpg"], + LF: [0, 2, 3, 3, 2, 2, 0], + backgroundImage: "images/interface/backgroundX1.jpg", + CanSelectCard: 1, + LevelName: "Meeting the Author", + LvlEName: 9, + SunNum: 2e3, + coord: 2, + InitLawnMower: function () {}, + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + StartGameMusic: "Zombieboss", + }, + { + AZ: [ + [oCZombie, 1, 1], + [oCZombie2, 1, 2], + [oCZombie3, 2, 3], + [oCBucketheadZombie, 1, 10], + [oDuckyTubeZombie1, 1, 5], + [oCSnorkelZombie, 1, 17], + [oScreenDoorZombie, 1, 9], + [oDuckyTubeZombie2, 1, 10], + [oWJY, 1, 30, [30]], + [oWJY1, 1, 30, [30]], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 7, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 8, 4, 5, 6, 15, 7, 8, 9, 25], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/0.gif", + "left:667px;top:330px;clip:rect(auto,auto,237px,auto)", + EDAll, + { + onclick: function () { + GetNewCard(this, oGoldenPrize, 0); + }, + } + ); + }, + } ); diff --git a/game/level/WallNutBowling.js b/game/level/WallNutBowling.js index 6dc05061..53dc7152 100644 --- a/game/level/WallNutBowling.js +++ b/game/level/WallNutBowling.js @@ -1,234 +1,234 @@ oS.Init( - { - PName: [oNutBowling, oHugeNutBowling, oBoomNutBowling], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oDancingZombie, - oBackupDancer, - oScreenDoorZombie, - oFootballZombie, - oNewspaperZombie, - oBucketheadZombie, - oPoleVaultingZombie, - ], - PicArr: [ - "images/interface/background1.jpg", - "images/interface/Stripe.png", - ], - backgroundImage: "images/interface/background1.jpg", - LF: [0, 1, 1, 1, 1, 1], - CanSelectCard: 0, - DKind: 0, - LevelName: "Wall-nut Bowling", - LvlEName: "NutBowling", - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - StaticCard: 0, - StartGameMusic: "LoonSkirmish", - StartGame: function () { - NewEle( - 0, - "div", - "width:22px;height:502px;margin:75px 0 0 485px;position:absolute;z-index:1;background:url(images/interface/Stripe.png)", - 0, - $("tGround") - ); - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetHidden($("dSunNum")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - f: function () { - (function () { - var a = ArCard.length; - if (a < 10) { - var c = [ - oNutBowling, - oNutBowling, - oNutBowling, - oNutBowling, - oNutBowling, - oBoomNutBowling, - oHugeNutBowling, - ], - b = Math.floor(Math.random() * c.length), - e = c[b], - d = e.prototype, - f = "dCard" + Math.random(); - ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; - NewImg( - f, - d.PicArr[d.CardGif], - "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", - $("dCardList"), - { - onmouseover: function (g) { - ViewPlantTitle(GetChoseCard(f), g); - }, - onmouseout: function () { - SetHidden($("dTitle")); - }, - onclick: function (g) { - ChosePlant(g, oS.ChoseCard, f); - }, - } - ); - } - oSym.addTask(500, arguments.callee, []); - })(); - (function () { - var b = ArCard.length, - a, - c; - while (b--) { - (c = (a = ArCard[b]).PixelTop) > 60 * b && - ($(a.DID).style.top = - (a.PixelTop = c - 1) + "px"); - } - oSym.addTask(5, arguments.callee, []); - })(); - }, - ar: [], - }); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeter")); - }); - }, - }, - { - AZ: [ - [oZombie, 2, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 3, 1], - [oBucketheadZombie, 3, 1], - [oNewspaperZombie, 2, 1], - [oPoleVaultingZombie, 2, 10], - [oScreenDoorZombie, 2, 10], - [oFootballZombie, 1, 10], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [4, 7, 12, 20, 13, 16, 21, 40, 22, 25, 30, 50], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(0); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:198px;left:269px", - EDAll - ); - }, - }, - { - GetChoseCard: function (b) { - if (oS.Chose) { - return; - } - var a = ArCard.length; - while (a--) { - ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); - } - return oS.ChoseCard; - }, - ChosePlant: function (a, b) { - PlayAudio("seedlift"); - a = window.event || a; - var f = ArCard[oS.ChoseCard], - e = a.clientX + EBody.scrollLeft || EElement.scrollLeft, - d = a.clientY + EBody.scrollTop || EElement.scrollTop, - c = f.PName.prototype; - oS.Chose = 1; - EditImg( - NewImg( - "MovePlant", - c.PicArr[c.StaticGif], - "left:" + - e - - 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + - "px;top:" + - d + - 20 - - c.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ); - SetAlpha($(f.DID), 50, 0.5); - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant: function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); - oS.ChoseCard = ""; - GroundOnmousemove = function () {}; - }, - GrowPlant: function (l, c, b, f, a) { - var j = $("DivTeach"); - j && j.parentNode.removeChild(j); - if (c > 347) { - innerText( - NewEle( - "DivTeach", - "div", - "line-height:40px;font-size: 14px", - 0, - EDAll - ), - "" - ); - return false; - } - var i = oS.ChoseCard, - g = ArCard[i], - h = g.PName, - k = h.prototype, - d = g.DID, - e; - new h().Birth(c, b, f, a, l); - ClearChild($("MovePlant"), $("MovePlantAlpha")); - $("dCardList").removeChild((e = $(d))); - e = null; - ArCard.splice(i, 1); - oS.ChoseCard = ""; - oS.Chose = 0; - GroundOnmousemove = function () {}; - }, - ViewPlantTitle: function (a) {}, - } + { + PName: [oNutBowling, oHugeNutBowling, oBoomNutBowling], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oDancingZombie, + oBackupDancer, + oScreenDoorZombie, + oFootballZombie, + oNewspaperZombie, + oBucketheadZombie, + oPoleVaultingZombie, + ], + PicArr: [ + "images/interface/background1.jpg", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background1.jpg", + LF: [0, 1, 1, 1, 1, 1], + CanSelectCard: 0, + DKind: 0, + LevelName: "Wall-nut Bowling", + LvlEName: "NutBowling", + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + StaticCard: 0, + StartGameMusic: "LoonSkirmish", + StartGame: function () { + NewEle( + 0, + "div", + "width:22px;height:502px;margin:75px 0 0 485px;position:absolute;z-index:1;background:url(images/interface/Stripe.png)", + 0, + $("tGround") + ); + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetHidden($("dSunNum")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + f: function () { + (function () { + var a = ArCard.length; + if (a < 10) { + var c = [ + oNutBowling, + oNutBowling, + oNutBowling, + oNutBowling, + oNutBowling, + oBoomNutBowling, + oHugeNutBowling, + ], + b = Math.floor(Math.random() * c.length), + e = c[b], + d = e.prototype, + f = "dCard" + Math.random(); + ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; + NewImg( + f, + d.PicArr[d.CardGif], + "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", + $("dCardList"), + { + onmouseover: function (g) { + ViewPlantTitle(GetChoseCard(f), g); + }, + onmouseout: function () { + SetHidden($("dTitle")); + }, + onclick: function (g) { + ChosePlant(g, oS.ChoseCard, f); + }, + } + ); + } + oSym.addTask(500, arguments.callee, []); + })(); + (function () { + var b = ArCard.length, + a, + c; + while (b--) { + (c = (a = ArCard[b]).PixelTop) > 60 * b && + ($(a.DID).style.top = + (a.PixelTop = c - 1) + "px"); + } + oSym.addTask(5, arguments.callee, []); + })(); + }, + ar: [], + }); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeter")); + }); + }, + }, + { + AZ: [ + [oZombie, 2, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 3, 1], + [oBucketheadZombie, 3, 1], + [oNewspaperZombie, 2, 1], + [oPoleVaultingZombie, 2, 10], + [oScreenDoorZombie, 2, 10], + [oFootballZombie, 1, 10], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [4, 7, 12, 20, 13, 16, 21, 40, 22, 25, 30, 50], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(0); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:198px;left:269px", + EDAll + ); + }, + }, + { + GetChoseCard: function (b) { + if (oS.Chose) { + return; + } + var a = ArCard.length; + while (a--) { + ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); + } + return oS.ChoseCard; + }, + ChosePlant: function (a, b) { + PlayAudio("seedlift"); + a = window.event || a; + var f = ArCard[oS.ChoseCard], + e = a.clientX + EBody.scrollLeft || EElement.scrollLeft, + d = a.clientY + EBody.scrollTop || EElement.scrollTop, + c = f.PName.prototype; + oS.Chose = 1; + EditImg( + NewImg( + "MovePlant", + c.PicArr[c.StaticGif], + "left:" + + e - + 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + + "px;top:" + + d + + 20 - + c.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ); + SetAlpha($(f.DID), 50, 0.5); + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant: function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); + oS.ChoseCard = ""; + GroundOnmousemove = function () {}; + }, + GrowPlant: function (l, c, b, f, a) { + var j = $("DivTeach"); + j && j.parentNode.removeChild(j); + if (c > 347) { + innerText( + NewEle( + "DivTeach", + "div", + "line-height:40px;font-size: 14px", + 0, + EDAll + ), + "" + ); + return false; + } + var i = oS.ChoseCard, + g = ArCard[i], + h = g.PName, + k = h.prototype, + d = g.DID, + e; + new h().Birth(c, b, f, a, l); + ClearChild($("MovePlant"), $("MovePlantAlpha")); + $("dCardList").removeChild((e = $(d))); + e = null; + ArCard.splice(i, 1); + oS.ChoseCard = ""; + oS.Chose = 0; + GroundOnmousemove = function () {}; + }, + ViewPlantTitle: function (a) {}, + } ); diff --git a/game/level/ZombieGames.js b/game/level/ZombieGames.js index 521d4bd8..85464b90 100644 --- a/game/level/ZombieGames.js +++ b/game/level/ZombieGames.js @@ -1,98 +1,98 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oSplitPea, - oJalapeno, - oSpikeweed, - oRepeater, - oTallNut, - oPumpkinHead, - oSquash, - oFlowerPot, - oTorchwood, - oThreepeater, - oGatlingPea, - oTwinSunflower, - oSpikerock, - oFumeShroom, - oCoffeeBean, - oGloomShroom, - oSunShroom, - oPuffShroom, - oScaredyShroom, - oGraveBuster, - oStarfruit, - oLilyPad, - oHypnoShroom, - oIceShroom, - oDoomShroom, - oTangleKlep, - oSeaShroom, - oPlantern, - oCactus, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oPoleVaultingZombie, - oHeiFootballZombie, - oFootballZombie, - oDolphinRiderZombie, - ], - PicArr: ["images/interface/background3.png"], - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LF: [0, 1, 1, 2, 2, 1, 1], - Coord: 2, - SunNum: 1500, - LevelName: "Zombie Games", - LvlEName: "ZombieGames", - LargeWaveFlag: { 10: $("imgFlag2"), 20: $("imgFlag1") }, - StartGameMusic: "GrazeTheRoof2", - }, - { - AZ: [ - [oZombie, 5, 1], - [oPoleVaultingZombie, 3, 3], - [oHeiFootballZombie, 2, 10, [10, 20]], - [oFootballZombie, 2, 5, [5, 15, 20]], - [oDolphinRiderZombie, 2, 20, [20]], - ], - FlagNum: 20, - FlagToSumNum: { a1: [3, 5, 9], a2: [3, 4, 5, 10] }, - FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(0); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oSplitPea, + oJalapeno, + oSpikeweed, + oRepeater, + oTallNut, + oPumpkinHead, + oSquash, + oFlowerPot, + oTorchwood, + oThreepeater, + oGatlingPea, + oTwinSunflower, + oSpikerock, + oFumeShroom, + oCoffeeBean, + oGloomShroom, + oSunShroom, + oPuffShroom, + oScaredyShroom, + oGraveBuster, + oStarfruit, + oLilyPad, + oHypnoShroom, + oIceShroom, + oDoomShroom, + oTangleKlep, + oSeaShroom, + oPlantern, + oCactus, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oPoleVaultingZombie, + oHeiFootballZombie, + oFootballZombie, + oDolphinRiderZombie, + ], + PicArr: ["images/interface/background3.png"], + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LF: [0, 1, 1, 2, 2, 1, 1], + Coord: 2, + SunNum: 1500, + LevelName: "Zombie Games", + LvlEName: "ZombieGames", + LargeWaveFlag: { 10: $("imgFlag2"), 20: $("imgFlag1") }, + StartGameMusic: "GrazeTheRoof2", + }, + { + AZ: [ + [oZombie, 5, 1], + [oPoleVaultingZombie, 3, 3], + [oHeiFootballZombie, 2, 10, [10, 20]], + [oFootballZombie, 2, 5, [5, 15, 20]], + [oDolphinRiderZombie, 2, 20, [20]], + ], + FlagNum: 20, + FlagToSumNum: { a1: [3, 5, 9], a2: [3, 4, 5, 10] }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(0); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/achievements.js b/game/level/achievements.js index b3a4fe16..68896494 100644 --- a/game/level/achievements.js +++ b/game/level/achievements.js @@ -3,68 +3,68 @@ var customtitle = "Achievements"; var customcolumns = 4; var customsun = 150; oS.Init({ - PicArr: (function () { - a = "images/interface/"; - return [ - ShadowPNG, - a + "BackButton.png", - a + "Achievement0.png", - a + "Achievement-1.png", - a + "Achievement1.png", - ]; - })(), - LevelName: "Achievements", - LevelEName: 150, - ShowScroll: 1, - LoadMusic: "ChooseYourSeeds", - StartGameMusic: "ChooseYourSeeds", - AudioArr: ["ChooseYourSeeds", "pvzs"], - backgroundImage: "images/interface/Achievements_Background.png", - LoadAccess: function (a) { - NewImg( - "imgSF", - "images/interface/BackButton.png", - "left:785px;top:530px", - EDAll, - { - onclick: function () { - SelectModal(0); - SetBlock($("dSurface"), $("iSurfaceBackground")); - }, - } - ); - NewImg( - "imgSF", - "images/interface/Achievement0.png", - "left:50px;top:130px", - EDAll, - { - onclick: function () { - SelectModal("" + "izombie1" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/Achievement-1.png", - "left:200px;top:130px", - EDAll, - { - onclick: function () { - SelectModal("" + "izombie2" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/Achievement1.png", - "left:350px;top:130px;filter:brightness(0.8);opacity:0.55", - EDAll, - { - onclick: function () { - SelectModal("" + "izombie3" + ""); - }, - } - ); - }, + PicArr: (function () { + a = "images/interface/"; + return [ + ShadowPNG, + a + "BackButton.png", + a + "Achievement0.png", + a + "Achievement-1.png", + a + "Achievement1.png", + ]; + })(), + LevelName: "Achievements", + LevelEName: 150, + ShowScroll: 1, + LoadMusic: "ChooseYourSeeds", + StartGameMusic: "ChooseYourSeeds", + AudioArr: ["ChooseYourSeeds", "pvzs"], + backgroundImage: "images/interface/Achievements_Background.png", + LoadAccess: function (a) { + NewImg( + "imgSF", + "images/interface/BackButton.png", + "left:785px;top:530px", + EDAll, + { + onclick: function () { + SelectModal(0); + SetBlock($("dSurface"), $("iSurfaceBackground")); + }, + } + ); + NewImg( + "imgSF", + "images/interface/Achievement0.png", + "left:50px;top:130px", + EDAll, + { + onclick: function () { + SelectModal("" + "izombie1" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/Achievement-1.png", + "left:200px;top:130px", + EDAll, + { + onclick: function () { + SelectModal("" + "izombie2" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/Achievement1.png", + "left:350px;top:130px;filter:brightness(0.8);opacity:0.55", + EDAll, + { + onclick: function () { + SelectModal("" + "izombie3" + ""); + }, + } + ); + }, }); diff --git a/game/level/btlzombie.js b/game/level/btlzombie.js index 342d726f..eef4e196 100644 --- a/game/level/btlzombie.js +++ b/game/level/btlzombie.js @@ -1,231 +1,231 @@ oS.Init( - { - PName: [oLilyPad, oPeashooter, oCherryBomb, oWallNut], - ZName: [ - oSmallZombie, - oSmallFlagZombie, - oSmallDuckyTubeZombie1, - oSmallConeheadZombie, - oSmallFootballZombie, - oSmallSnorkelZombie, - ], - PicArr: [ - "images/interface/background3.png", - "images/interface/trophy.png", - ], - Coord: 2, - LF: [0, 1, 1, 2, 2, 1, 1], - backgroundImage: "images/interface/background3.png", - CanSelectCard: 0, - LevelName: "Big Trouble Little Zombie", - LvlEName: 30, - LargeWaveFlag: { - 5: $("imgFlag3"), - 10: $("imgFlag2"), - 15: $("imgFlag1"), - }, - StaticCard: 0, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie1]); - }, - StartGameMusic: "LoonSkirmish", - StartGame: function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - SetHidden($("dSunNum")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - f: function () { - (function () { - var a = ArCard.length; - if (a < 10) { - var c = oS.PName, - b = - oP.FlagZombies < 6 - ? Math.floor( - 1 + Math.random() * 10 - ) < 4 - ? 1 - : Math.floor( - Math.random() * c.length - ) - : Math.floor( - 1 + Math.random() * 10 - ) < 3 - ? 0 - : Math.floor( - Math.random() * c.length - ), - e = c[b], - d = e.prototype, - f = "dCard" + Math.random(); - ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; - NewImg( - f, - d.PicArr[d.CardGif], - "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", - $("dCardList"), - { - onmouseover: function (g) { - ViewPlantTitle(GetChoseCard(f), g); - }, - onmouseout: function () { - SetHidden($("dTitle")); - }, - onclick: function (g) { - ChosePlant(g, oS.ChoseCard, f); - }, - } - ); - } - oSym.addTask(600, arguments.callee, []); - })(); - (function () { - var b = ArCard.length, - a, - c; - while (b--) { - (c = (a = ArCard[b]).PixelTop) > 60 * b && - ($(a.DID).style.top = - (a.PixelTop = c - 1) + "px"); - } - oSym.addTask(5, arguments.callee, []); - })(); - }, - ar: [], - }); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }); - }, - }, - { - AZ: [ - [oSmallZombie, 3, 1], - [oSmallDuckyTubeZombie1, 1, 1, [1, 5, 10, 15]], - [oSmallConeheadZombie, 4, 1], - [oSmallFootballZombie, 2, 1], - [oSmallSnorkelZombie, 2, 5, [5, 10, 15]], - ], - FlagNum: 15, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [3, 6, 12, 20, 18, 24, 30, 40, 36, 42, 48, 60], - }, - FlagToMonitor: { - 4: [ShowLargeWave, 0], - 9: [ShowLargeWave, 0], - 14: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:667px;top:220px", - EDAll, - { - onclick: function () { - SelectModal(0); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - }, - { - GetChoseCard: function (b) { - var a = ArCard.length; - while (a--) { - ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); - } - return oS.ChoseCard; - }, - ChosePlant: function (a, b) { - PlayAudio("seedlift"); - a = window.event || a; - var f = ArCard[oS.ChoseCard], - e = - a.clientX - EDAlloffsetLeft + EBody.scrollLeft || - EElement.scrollLeft, - d = a.clientY + EBody.scrollTop || EElement.scrollTop, - c = f.PName.prototype; - oS.Chose = 1; - EditImg( - NewImg( - "MovePlant", - c.PicArr[c.StaticGif], - "left:" + - e - - 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + - "px;top:" + - d + - 20 - - c.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ); - SetAlpha($(f.DID), 50, 0.5); - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant: function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); - oS.ChoseCard = ""; - GroundOnmousemove = function () {}; - }, - GrowPlant: function (l, c, b, f, a) { - var j = oS.ChoseCard, - g = ArCard[j], - i = g.PName, - k = i.prototype, - d = g.DID, - e, - h = oGd.$LF[f]; - k.CanGrow(l, f, a) && - (function () { - PlayAudio( - h != 2 - ? "plant" + Math.floor(1 + Math.random() * 2) - : "plant_water" - ); - new i().Birth(c, b, f, a, l); - oSym.addTask(20, SetNone, [ - SetStyle($("imgGrowSoil"), { - left: c - 30 + "px", - top: b - 40 + "px", - zIndex: 3 * f, - visibility: "visible", - }), - ]); - ClearChild($("MovePlant"), $("MovePlantAlpha")); - $("dCardList").removeChild((e = $(d))); - e = null; - ArCard.splice(j, 1); - oS.ChoseCard = ""; - oS.Chose = 0; - GroundOnmousemove = function () {}; - })(); - }, - ViewPlantTitle: function (a) {}, - } + { + PName: [oLilyPad, oPeashooter, oCherryBomb, oWallNut], + ZName: [ + oSmallZombie, + oSmallFlagZombie, + oSmallDuckyTubeZombie1, + oSmallConeheadZombie, + oSmallFootballZombie, + oSmallSnorkelZombie, + ], + PicArr: [ + "images/interface/background3.png", + "images/interface/trophy.png", + ], + Coord: 2, + LF: [0, 1, 1, 2, 2, 1, 1], + backgroundImage: "images/interface/background3.png", + CanSelectCard: 0, + LevelName: "Big Trouble Little Zombie", + LvlEName: 30, + LargeWaveFlag: { + 5: $("imgFlag3"), + 10: $("imgFlag2"), + 15: $("imgFlag1"), + }, + StaticCard: 0, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie1]); + }, + StartGameMusic: "LoonSkirmish", + StartGame: function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + SetHidden($("dSunNum")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + f: function () { + (function () { + var a = ArCard.length; + if (a < 10) { + var c = oS.PName, + b = + oP.FlagZombies < 6 + ? Math.floor( + 1 + Math.random() * 10 + ) < 4 + ? 1 + : Math.floor( + Math.random() * c.length + ) + : Math.floor( + 1 + Math.random() * 10 + ) < 3 + ? 0 + : Math.floor( + Math.random() * c.length + ), + e = c[b], + d = e.prototype, + f = "dCard" + Math.random(); + ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; + NewImg( + f, + d.PicArr[d.CardGif], + "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", + $("dCardList"), + { + onmouseover: function (g) { + ViewPlantTitle(GetChoseCard(f), g); + }, + onmouseout: function () { + SetHidden($("dTitle")); + }, + onclick: function (g) { + ChosePlant(g, oS.ChoseCard, f); + }, + } + ); + } + oSym.addTask(600, arguments.callee, []); + })(); + (function () { + var b = ArCard.length, + a, + c; + while (b--) { + (c = (a = ArCard[b]).PixelTop) > 60 * b && + ($(a.DID).style.top = + (a.PixelTop = c - 1) + "px"); + } + oSym.addTask(5, arguments.callee, []); + })(); + }, + ar: [], + }); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }); + }, + }, + { + AZ: [ + [oSmallZombie, 3, 1], + [oSmallDuckyTubeZombie1, 1, 1, [1, 5, 10, 15]], + [oSmallConeheadZombie, 4, 1], + [oSmallFootballZombie, 2, 1], + [oSmallSnorkelZombie, 2, 5, [5, 10, 15]], + ], + FlagNum: 15, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [3, 6, 12, 20, 18, 24, 30, 40, 36, 42, 48, 60], + }, + FlagToMonitor: { + 4: [ShowLargeWave, 0], + 9: [ShowLargeWave, 0], + 14: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:667px;top:220px", + EDAll, + { + onclick: function () { + SelectModal(0); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + }, + { + GetChoseCard: function (b) { + var a = ArCard.length; + while (a--) { + ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); + } + return oS.ChoseCard; + }, + ChosePlant: function (a, b) { + PlayAudio("seedlift"); + a = window.event || a; + var f = ArCard[oS.ChoseCard], + e = + a.clientX - EDAlloffsetLeft + EBody.scrollLeft || + EElement.scrollLeft, + d = a.clientY + EBody.scrollTop || EElement.scrollTop, + c = f.PName.prototype; + oS.Chose = 1; + EditImg( + NewImg( + "MovePlant", + c.PicArr[c.StaticGif], + "left:" + + e - + 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + + "px;top:" + + d + + 20 - + c.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ); + SetAlpha($(f.DID), 50, 0.5); + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant: function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); + oS.ChoseCard = ""; + GroundOnmousemove = function () {}; + }, + GrowPlant: function (l, c, b, f, a) { + var j = oS.ChoseCard, + g = ArCard[j], + i = g.PName, + k = i.prototype, + d = g.DID, + e, + h = oGd.$LF[f]; + k.CanGrow(l, f, a) && + (function () { + PlayAudio( + h != 2 + ? "plant" + Math.floor(1 + Math.random() * 2) + : "plant_water" + ); + new i().Birth(c, b, f, a, l); + oSym.addTask(20, SetNone, [ + SetStyle($("imgGrowSoil"), { + left: c - 30 + "px", + top: b - 40 + "px", + zIndex: 3 * f, + visibility: "visible", + }), + ]); + ClearChild($("MovePlant"), $("MovePlantAlpha")); + $("dCardList").removeChild((e = $(d))); + e = null; + ArCard.splice(j, 1); + oS.ChoseCard = ""; + oS.Chose = 0; + GroundOnmousemove = function () {}; + })(); + }, + ViewPlantTitle: function (a) {}, + } ); diff --git a/game/level/changelog.js b/game/level/changelog.js index 9de78923..3782a29c 100644 --- a/game/level/changelog.js +++ b/game/level/changelog.js @@ -1,29 +1,29 @@ oS.Init({ - PicArr: (function () { - a = "images/interface/"; - return [ - ShadowPNG, - a + "BackButton.png", - a + "izombie1.png", - a + "izombie2.png", - a + "izombie3.png", - a + "izombie4.png", - a + "izombie5.png", - a + "izombie6.png", - a + "izombie7.png", - a + "izombie8.png", - a + "izombie9.png", - a + "izombie10.png", - ]; - })(), - LevelName: "Changelog", - LevelEName: "Changelog", - ShowScroll: 1, - LoadMusic: "Cerebrawl", - StartGameMusic: "Cerebrawl", - AudioArr: ["Cerebrawl", "pvzs"], - backgroundImage: "images/interface/IZombie_Background.png", - LoadAccess: function (a) { -

h

; - }, + PicArr: (function () { + a = "images/interface/"; + return [ + ShadowPNG, + a + "BackButton.png", + a + "izombie1.png", + a + "izombie2.png", + a + "izombie3.png", + a + "izombie4.png", + a + "izombie5.png", + a + "izombie6.png", + a + "izombie7.png", + a + "izombie8.png", + a + "izombie9.png", + a + "izombie10.png", + ]; + })(), + LevelName: "Changelog", + LevelEName: "Changelog", + ShowScroll: 1, + LoadMusic: "Cerebrawl", + StartGameMusic: "Cerebrawl", + AudioArr: ["Cerebrawl", "pvzs"], + backgroundImage: "images/interface/IZombie_Background.png", + LoadAccess: function (a) { +

h

; + }, }); diff --git a/game/level/izombie10.js b/game/level/izombie10.js index e7bc591b..931f0180 100644 --- a/game/level/izombie10.js +++ b/game/level/izombie10.js @@ -3,106 +3,106 @@ 关卡植物: 5大喷 3南瓜 3魅惑 4土豆 8小向 4三线 3机枪 3仙人掌 10荷叶 */ oS.Init({ - PName: [ - oFumeShroom, - oPumpkinHead, - oHypnoShroom, - oPotatoMine, - oSunFlower, - oThreepeater, - oGatlingPea, - oCactus, - oILilyPad, - ], - ZName: [ - oIZombie, - oIConeheadZombie, - oIBucketheadZombie, - oIDuckyTubeZombie1, - oIDuckyTubeZombie2, - oIDuckyTubeZombie3, - oIScreenDoorZombie, - oIPoleVaultingZombie, - oIBalloonZombie, - ], - PicArr: [ - "images/interface/background4.jpg", - "images/interface/trophy.png", - "images/interface/Stripe.png", - ], - backgroundImage: "images/interface/background4.jpg", - Coord: 2, - DKind: 0, - LF: [0, 1, 1, 2, 2, 1, 1], - ShowScroll: false, - ProduceSun: false, - SunNum: 350, - BrainsNum: 6, - CardKind: 1, - LevelName: "I, Zombie No Like Water", - LvlEName: "izombie10", - LoadMusic: "Cerebrawl", - StartGameMusic: "Cerebrawl", - ArP: { - ArC: [1, 5], - ArR: [1, 6], - Auto: 1, - P: { - Arr: [ - 7, 7, 7, 0, 0, 0, 0, 0, 2, 2, 2, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, - 5, 5, 6, 6, 6, - ], - Arr1: [3, 3, 3, 3], - Arr2: [1, 1, 1], - }, - }, - RandomGrow: function (Point, Arr) { - Point.sort(function () { - return Math.random() - 0.5; - }); - Arr.sort(function () { - return Math.random() - 0.5; - }); - while (Point.length && Arr.length) - CustomSpecial( - oS.PName[Arr[Arr.length - 1]], - Point[Point.length - 1][1], - Point[Point.length - 1][0], - 1 - ), - Point.length--, - Arr.length--; - }, - RiddleAutoGrow: function () { - var k = oS.ArP, - f = k.ArC, - j = k.ArR, - e = k.P, - d = oS.PName, - Arr = []; - var SummonRange = function (Arr, l, r) { - for (; l <= r; ++l) - for (var j = f[0]; j <= f[1]; ++j) Arr.push([j, l]); - }; - for (var i = f[0]; i <= f[1]; ++i) - CustomSpecial(oILilyPad, 3, i), CustomSpecial(oLilyPad, 4, i); // 荷叶 - SummonRange(Arr, 3, 4), oS.RandomGrow(Arr, e.Arr); // 处理泳池的植物 - SummonRange(Arr, 1, 2), - SummonRange(Arr, 5, 6), - oS.RandomGrow(Arr, e.Arr1), - oS.RandomGrow(Arr, e.Arr); // 处理剩余的植物 - SummonRange(Arr, 1, 6), oS.RandomGrow(Arr, e.Arr2); // 处理南瓜头 - for (var i = j[0]; i <= j[1]; ++i) CustomSpecial(oBrains, i, 0); // 脑子 - NewImg( - "iStripe", - "images/interface/Stripe.png", - "left:" + (GetX1X2(6)[0] - 11) + "px;top:65px", - EDAll - ); - }, - StartGame: function () { - oP.Monitor(), BeginCool(); - SetVisible($("dFlagMeter"), $("dFlagMeterContent"), $("dTop")); - oS.RiddleAutoGrow(); - }, + PName: [ + oFumeShroom, + oPumpkinHead, + oHypnoShroom, + oPotatoMine, + oSunFlower, + oThreepeater, + oGatlingPea, + oCactus, + oILilyPad, + ], + ZName: [ + oIZombie, + oIConeheadZombie, + oIBucketheadZombie, + oIDuckyTubeZombie1, + oIDuckyTubeZombie2, + oIDuckyTubeZombie3, + oIScreenDoorZombie, + oIPoleVaultingZombie, + oIBalloonZombie, + ], + PicArr: [ + "images/interface/background4.jpg", + "images/interface/trophy.png", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background4.jpg", + Coord: 2, + DKind: 0, + LF: [0, 1, 1, 2, 2, 1, 1], + ShowScroll: false, + ProduceSun: false, + SunNum: 350, + BrainsNum: 6, + CardKind: 1, + LevelName: "I, Zombie No Like Water", + LvlEName: "izombie10", + LoadMusic: "Cerebrawl", + StartGameMusic: "Cerebrawl", + ArP: { + ArC: [1, 5], + ArR: [1, 6], + Auto: 1, + P: { + Arr: [ + 7, 7, 7, 0, 0, 0, 0, 0, 2, 2, 2, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, + 5, 5, 6, 6, 6, + ], + Arr1: [3, 3, 3, 3], + Arr2: [1, 1, 1], + }, + }, + RandomGrow: function (Point, Arr) { + Point.sort(function () { + return Math.random() - 0.5; + }); + Arr.sort(function () { + return Math.random() - 0.5; + }); + while (Point.length && Arr.length) + CustomSpecial( + oS.PName[Arr[Arr.length - 1]], + Point[Point.length - 1][1], + Point[Point.length - 1][0], + 1 + ), + Point.length--, + Arr.length--; + }, + RiddleAutoGrow: function () { + var k = oS.ArP, + f = k.ArC, + j = k.ArR, + e = k.P, + d = oS.PName, + Arr = []; + var SummonRange = function (Arr, l, r) { + for (; l <= r; ++l) + for (var j = f[0]; j <= f[1]; ++j) Arr.push([j, l]); + }; + for (var i = f[0]; i <= f[1]; ++i) + CustomSpecial(oILilyPad, 3, i), CustomSpecial(oLilyPad, 4, i); // 荷叶 + SummonRange(Arr, 3, 4), oS.RandomGrow(Arr, e.Arr); // 处理泳池的植物 + SummonRange(Arr, 1, 2), + SummonRange(Arr, 5, 6), + oS.RandomGrow(Arr, e.Arr1), + oS.RandomGrow(Arr, e.Arr); // 处理剩余的植物 + SummonRange(Arr, 1, 6), oS.RandomGrow(Arr, e.Arr2); // 处理南瓜头 + for (var i = j[0]; i <= j[1]; ++i) CustomSpecial(oBrains, i, 0); // 脑子 + NewImg( + "iStripe", + "images/interface/Stripe.png", + "left:" + (GetX1X2(6)[0] - 11) + "px;top:65px", + EDAll + ); + }, + StartGame: function () { + oP.Monitor(), BeginCool(); + SetVisible($("dFlagMeter"), $("dFlagMeterContent"), $("dTop")); + oS.RiddleAutoGrow(); + }, }); diff --git a/game/level/izombie2.js b/game/level/izombie2.js index 3475155c..7f3e07e1 100644 --- a/game/level/izombie2.js +++ b/game/level/izombie2.js @@ -1,4 +1,5 @@ oS.Init({ +<<<<<<< HEAD PName: [oPeashooter, oSunFlower, oSnowPea, oSpikeweed], ZName: [oIZombie, oIScreenDoorZombie, oIBucketheadZombie], PicArr: [ @@ -95,4 +96,101 @@ oS.Init({ SetVisible($("dFlagMeter")); oS.RiddleAutoGrow(); }, +======= + PName: [oPeashooter, oSunFlower, oSnowPea, oSpikeweed], + ZName: [oIZombie, oIScreenDoorZombie, oIBucketheadZombie], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + ShowScroll: false, + SunNum: 150, + BrainsNum: 5, + ProduceSun: false, + CardKind: 1, + LevelName: "I, Zombie Too", + StartGameMusic: "Cerebrawl", + InitLawnMower: function () { + var a = 6; + while (--a) { + CustomSpecial(oBrains, a, -1); + } + }, + ArP: { + ArC: [1, 4], + ArR: [1, 5], + Auto: 1, + P: [0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3], + }, + RiddleAutoGrow: function () { + var k = oS.ArP, + f = k.ArC, + j = k.ArR, + e = k.P, + d = oS.PName, + c, + g = f[0], + b = f[1], + i = j[0], + h = j[1], + a; + if (k.Auto) { + while (i <= h) { + CustomSpecial(oBrains, i, 0); + for (a = g; a <= b; a++) { + CustomSpecial( + d[e[(c = Math.floor(Math.random() * e.length))]], + i, + a + ); + e.splice(c, 1); + } + ++i; + } + } + NewImg( + "iStripe", + "images/interface/Stripe.png", + "left:" + (GetX1X2(5)[0] - 11) + "px;top:65px", + EDAll + ); + }, + StartGame: function () { + SetVisible($("dSunNum")); + SetBlock($("dTop")); + NewEle("DivTeach", "div", 0, 0, EDAll); + oP.Monitor({ + ar: [0], + f: function (d) { + var b = oS.Chose, + a = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + BeginCool(); + c.onclick = null; + oSym.addTask( + 500, + function () { + SetNone(c); + }, + [] + ); + (function () { + SetVisible($("dFlagMeter"), $("dFlagMeterContent")); + ClearChild($("oEmbed")); + StopMusic(); + PlayMusic((oS.LoadMusic = "Cerebrawl")); + BeginCool(); + oP.Monitor(); + })(); + } + }, + }); + SetVisible($("dFlagMeter")); + oS.RiddleAutoGrow(); + }, +>>>>>>> 2d4ea63a9dbaef1b40ae59ff2f5572122ce54cb3 }); diff --git a/game/level/izombie3.js b/game/level/izombie3.js index 94efca2e..baf79311 100644 --- a/game/level/izombie3.js +++ b/game/level/izombie3.js @@ -1,4 +1,5 @@ oS.Init({ +<<<<<<< HEAD PName: [oPeashooter, oSunFlower, oTorchwood, oPotatoMine, oSplitPea], ZName: [oIZombie, oIBucketheadZombie, oIJackinTheBoxZombie], PicArr: [ @@ -95,4 +96,101 @@ oS.Init({ SetVisible($("dFlagMeter")); oS.RiddleAutoGrow(); }, +======= + PName: [oPeashooter, oSunFlower, oTorchwood, oIPotatoMine, oSplitPea], + ZName: [oIZombie, oIBucketheadZombie, oIJackinTheBoxZombie], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + ShowScroll: false, + SunNum: 150, + BrainsNum: 5, + ProduceSun: false, + CardKind: 1, + LevelName: "Can You Dig It?", + StartGameMusic: "Cerebrawl", + InitLawnMower: function () { + var a = 6; + while (--a) { + CustomSpecial(oBrains, a, -1); + } + }, + ArP: { + ArC: [1, 4], + ArR: [1, 5], + Auto: 1, + P: [0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 4], + }, + RiddleAutoGrow: function () { + var k = oS.ArP, + f = k.ArC, + j = k.ArR, + e = k.P, + d = oS.PName, + c, + g = f[0], + b = f[1], + i = j[0], + h = j[1], + a; + if (k.Auto) { + while (i <= h) { + CustomSpecial(oBrains, i, 0); + for (a = g; a <= b; a++) { + CustomSpecial( + d[e[(c = Math.floor(Math.random() * e.length))]], + i, + a + ); + e.splice(c, 1); + } + ++i; + } + } + NewImg( + "iStripe", + "images/interface/Stripe.png", + "left:" + (GetX1X2(5)[0] - 11) + "px;top:65px", + EDAll + ); + }, + StartGame: function () { + SetVisible($("dSunNum")); + SetBlock($("dTop")); + NewEle("DivTeach", "div", 0, 0, EDAll); + oP.Monitor({ + ar: [0], + f: function (d) { + var b = oS.Chose, + a = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + BeginCool(); + c.onclick = null; + oSym.addTask( + 500, + function () { + SetNone(c); + }, + [] + ); + (function () { + SetVisible($("dFlagMeter"), $("dFlagMeterContent")); + ClearChild($("oEmbed")); + StopMusic(); + PlayMusic((oS.LoadMusic = "Cerebrawl")); + BeginCool(); + oP.Monitor(); + })(); + } + }, + }); + SetVisible($("dFlagMeter")); + oS.RiddleAutoGrow(); + }, +>>>>>>> 2d4ea63a9dbaef1b40ae59ff2f5572122ce54cb3 }); diff --git a/game/level/izombie4.js b/game/level/izombie4.js index 47eb55c8..233c9701 100644 --- a/game/level/izombie4.js +++ b/game/level/izombie4.js @@ -1,4 +1,5 @@ oS.Init({ +<<<<<<< HEAD PName: [oPeashooter, oSunFlower, oFumeShroom, oWallNut, oSnowPea], ZName: [oIZombie, oIBucketheadZombie, oIJackinTheBoxZombie], PicArr: [ @@ -112,4 +113,118 @@ oS.Init({ SetVisible($("dFlagMeter")); oS.RiddleAutoGrow(); }, +======= + PName: [oPeashooter, oSunFlower, oIFumeShroom, oWallNut, oSnowPea], + ZName: [oIZombie, oIBucketheadZombie, oIJackinTheBoxZombie], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + ShowScroll: false, + SunNum: 150, + BrainsNum: 5, + ProduceSun: false, + CardKind: 1, + LevelName: "Totally Nuts", + StartGameMusic: "Cerebrawl", + InitLawnMower: function () { + var a = 6; + while (--a) { + CustomSpecial(oBrains, a, -1); + } + }, + ArP: { + ArC: [1, 4], + ArR: [1, 5], + Auto: 1, + P: [0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 4, 4, 3, 3, 3, 3, 3], + }, + ArPN: { + ArNC: [4, 4], + ArNR: [1, 5], + Auto: 1, + PN: [3, 3, 3, 3, 3], + }, + RiddleAutoGrow: function () { + var k = oS.ArP, + f = k.ArC, + j = k.ArR, + e = k.P, + d = oS.PName, + c, + g = f[0], + b = f[1], + i = j[0], + h = j[1], + a; + var nk = oS.ArPN, + nf = nk.ArNC, + nj = nk.ArNR, + ne = nk.PN, + nd = oS.PName, + nc, + ng = nf[0], + nb = nf[1], + ni = nj[0], + nh = nj[1], + na; + if (k.Auto) { + while (i <= h) { + CustomSpecial(oBrains, i, 0); + for (a = g; a <= b; a++) { + CustomSpecial( + d[e[(c = Math.floor(Math.random() * e.length))]], + i, + a + ); + e.splice(c, 1); + } + ++i; + } + } + NewImg( + "iStripe", + "images/interface/Stripe.png", + "left:" + (GetX1X2(5)[0] - 11) + "px;top:65px", + EDAll + ); + }, + StartGame: function () { + SetVisible($("dSunNum")); + SetBlock($("dTop")); + NewEle("DivTeach", "div", 0, 0, EDAll); + oP.Monitor({ + ar: [0], + f: function (d) { + var b = oS.Chose, + a = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + BeginCool(); + c.onclick = null; + oSym.addTask( + 500, + function () { + SetNone(c); + }, + [] + ); + (function () { + SetVisible($("dFlagMeter"), $("dFlagMeterContent")); + ClearChild($("oEmbed")); + StopMusic(); + PlayMusic((oS.LoadMusic = "Cerebrawl")); + BeginCool(); + oP.Monitor(); + })(); + } + }, + }); + SetVisible($("dFlagMeter")); + oS.RiddleAutoGrow(); + }, +>>>>>>> 2d4ea63a9dbaef1b40ae59ff2f5572122ce54cb3 }); diff --git a/game/level/izombie5.js b/game/level/izombie5.js index 06728890..a3aa4f81 100644 --- a/game/level/izombie5.js +++ b/game/level/izombie5.js @@ -1,4 +1,5 @@ oS.Init({ +<<<<<<< HEAD PName: [oPeashooter, oSunFlower, oSnowPea, oCactus], ZName: [ oIZombie, @@ -100,4 +101,106 @@ oS.Init({ SetVisible($("dFlagMeter")); oS.RiddleAutoGrow(); }, +======= + PName: [oPeashooter, oSunFlower, oSnowPea, oCactus], + ZName: [ + oIZombie, + oIBucketheadZombie, + oIJackinTheBoxZombie, + oIBalloonZombie, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + ShowScroll: false, + SunNum: 150, + BrainsNum: 5, + ProduceSun: false, + CardKind: 1, + LevelName: "I, Zombie", + StartGameMusic: "Cerebrawl", + InitLawnMower: function () { + var a = 6; + while (--a) { + CustomSpecial(oBrains, a, -1); + } + }, + ArP: { + ArC: [1, 4], + ArR: [1, 5], + Auto: 1, + P: [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 3, 3, 3], + }, + RiddleAutoGrow: function () { + var k = oS.ArP, + f = k.ArC, + j = k.ArR, + e = k.P, + d = oS.PName, + c, + g = f[0], + b = f[1], + i = j[0], + h = j[1], + a; + if (k.Auto) { + while (i <= h) { + CustomSpecial(oBrains, i, 0); + for (a = g; a <= b; a++) { + CustomSpecial( + d[e[(c = Math.floor(Math.random() * e.length))]], + i, + a + ); + e.splice(c, 1); + } + ++i; + } + } + NewImg( + "iStripe", + "images/interface/Stripe.png", + "left:" + (GetX1X2(5)[0] - 11) + "px;top:65px", + EDAll + ); + }, + StartGame: function () { + SetVisible($("dSunNum")); + SetBlock($("dTop")); + NewEle("DivTeach", "div", 0, 0, EDAll); + oP.Monitor({ + ar: [0], + f: function (d) { + var b = oS.Chose, + a = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + BeginCool(); + c.onclick = null; + oSym.addTask( + 500, + function () { + SetNone(c); + }, + [] + ); + (function () { + SetVisible($("dFlagMeter"), $("dFlagMeterContent")); + ClearChild($("oEmbed")); + StopMusic(); + PlayMusic((oS.LoadMusic = "Cerebrawl")); + BeginCool(); + oP.Monitor(); + })(); + } + }, + }); + SetVisible($("dFlagMeter")); + oS.RiddleAutoGrow(); + }, +>>>>>>> 2d4ea63a9dbaef1b40ae59ff2f5572122ce54cb3 }); diff --git a/game/level/izombie6.js b/game/level/izombie6.js index ce423129..7bd95f3a 100644 --- a/game/level/izombie6.js +++ b/game/level/izombie6.js @@ -1,4 +1,5 @@ oS.Init({ +<<<<<<< HEAD PName: [ oPeashooter, oSunFlower, @@ -106,4 +107,112 @@ oS.Init({ SetVisible($("dFlagMeter")); oS.RiddleAutoGrow(); }, +======= + PName: [ + oPeashooter, + oSunFlower, + oSnowPea, + oSquash, + oTorchwood, + oSpikeweed, + oGarlic, + ], + ZName: [oIZombie, oIBucketheadZombie, oIPoleVaultingZombie, oICXZombie], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + ShowScroll: false, + SunNum: 150, + BrainsNum: 5, + ProduceSun: false, + CardKind: 1, + LevelName: "Me Smash!", + StartGameMusic: "Cerebrawl", + InitLawnMower: function () { + var a = 6; + while (--a) { + CustomSpecial(oBrains, a, -1); + } + }, + ArP: { + ArC: [1, 5], + ArR: [1, 5], + Auto: 1, + P: [ + 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 3, 3, 3, 4, 4, 5, 5, 5, + 6, 6, + ], + }, + RiddleAutoGrow: function () { + var k = oS.ArP, + f = k.ArC, + j = k.ArR, + e = k.P, + d = oS.PName, + c, + g = f[0], + b = f[1], + i = j[0], + h = j[1], + a; + if (k.Auto) { + while (i <= h) { + CustomSpecial(oBrains, i, 0); + for (a = g; a <= b; a++) { + CustomSpecial( + d[e[(c = Math.floor(Math.random() * e.length))]], + i, + a + ); + e.splice(c, 1); + } + ++i; + } + } + NewImg( + "iStripe", + "images/interface/Stripe.png", + "left:" + (GetX1X2(6)[0] - 11) + "px;top:65px", + EDAll + ); + }, + StartGame: function () { + SetVisible($("dSunNum")); + SetBlock($("dTop")); + NewEle("DivTeach", "div", 0, 0, EDAll); + oP.Monitor({ + ar: [0], + f: function (d) { + var b = oS.Chose, + a = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + BeginCool(); + c.onclick = null; + oSym.addTask( + 500, + function () { + SetNone(c); + }, + [] + ); + (function () { + SetVisible($("dFlagMeter"), $("dFlagMeterContent")); + ClearChild($("oEmbed")); + StopMusic(); + PlayMusic((oS.LoadMusic = "Cerebrawl")); + BeginCool(); + oP.Monitor(); + })(); + } + }, + }); + SetVisible($("dFlagMeter")); + oS.RiddleAutoGrow(); + }, +>>>>>>> 2d4ea63a9dbaef1b40ae59ff2f5572122ce54cb3 }); diff --git a/game/level/izombie7.js b/game/level/izombie7.js index c275d7bc..79efbd6e 100644 --- a/game/level/izombie7.js +++ b/game/level/izombie7.js @@ -1,4 +1,5 @@ oS.Init( +<<<<<<< HEAD { PName: [oSunFlower, oPotatoMine, oChomper], ZName: [ @@ -85,4 +86,91 @@ oS.Init( } }, } +======= + { + PName: [oSunFlower, oPotatoMine, oChomper], + ZName: [ + oIZombie, + oIPoleVaultingZombie, + oIBucketheadZombie, + oIDancingZombie, + oBackupDancer, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + ShowScroll: false, + SunNum: 150, + BrainsNum: 5, + ProduceSun: false, + CardKind: 1, + LevelName: "Zomboogie", + LvlEName: "IZombie7", + LoadMusic: "Cerebrawl", + StartGameMusic: "Cerebrawl", + ArP: { + ArC: [1, 5], + ArR: [1, 5], + Auto: 1, + P: [ + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, + 2, 2, 2, 2, + ], + }, + RiddleAutoGrow: function () { + var k = oS.ArP, + f = k.ArC, + j = k.ArR, + e = k.P, + d = oS.PName, + c, + g = f[0], + b = f[1], + i = j[0], + h = j[1], + a; + if (k.Auto) { + while (i <= h) { + CustomSpecial(oBrains, i, 0); + for (a = g; a <= b; a++) { + CustomSpecial( + d[e[(c = Math.floor(Math.random() * e.length))]], + i, + a, + 1 + ); + e.splice(c, 1); + } + ++i; + } + } + NewImg( + "iStripe", + "images/interface/Stripe.png", + "left:" + (GetX1X2(6)[0] - 11) + "px;top:65px", + EDAll + ); + }, + StartGame: function () { + oP.Monitor(); + BeginCool(); + SetVisible($("dFlagMeter"), $("dFlagMeterContent"), $("dTop")); + oS.RiddleAutoGrow(); + }, + }, + 0, + { + AutoSelectCard: function () { + var c = oS.ArCard, + b = -1, + a = c.length - 1; + while (++b < a) { + SelectCard(c[b].prototype.EName); + } + }, + } +>>>>>>> 2d4ea63a9dbaef1b40ae59ff2f5572122ce54cb3 ); diff --git a/game/level/izombie8.js b/game/level/izombie8.js index a24fb1ae..a4017c0c 100644 --- a/game/level/izombie8.js +++ b/game/level/izombie8.js @@ -1,4 +1,5 @@ oS.Init({ +<<<<<<< HEAD PName: [oPeashooter, oSunFlower, oWallNut, oPotatoMine, oSquash], ZName: [ oIImp, @@ -105,4 +106,111 @@ oS.Init({ SetVisible($("dFlagMeter")); oS.RiddleAutoGrow(); }, +======= + PName: [oPeashooter, oSunFlower, oWallNut, oIPotatoMine, oSquash], + ZName: [ + oIImp, + oIConeheadZombie, + oIBucketheadZombie, + oIJackinTheBoxZombie, + oIPoleVaultingZombie, + oIScreenDoorZombie, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + ShowScroll: false, + SunNum: 150, + BrainsNum: 5, + ProduceSun: false, + CardKind: 1, + LevelName: "Three Hit Wonder", + StartGameMusic: "Cerebrawl", + InitLawnMower: function () { + var a = 6; + while (--a) { + CustomSpecial(oBrains, a, -1); + } + }, + ArP: { + ArC: [1, 5], + ArR: [1, 5], + Auto: 1, + P: [ + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, + 4, 4, + ], + }, + RiddleAutoGrow: function () { + var k = oS.ArP, + f = k.ArC, + j = k.ArR, + e = k.P, + d = oS.PName, + c, + g = f[0], + b = f[1], + i = j[0], + h = j[1], + a; + if (k.Auto) { + while (i <= h) { + CustomSpecial(oBrains, i, 0); + for (a = g; a <= b; a++) { + CustomSpecial( + d[e[(c = Math.floor(Math.random() * e.length))]], + i, + a + ); + e.splice(c, 1); + } + ++i; + } + } + NewImg( + "iStripe", + "images/interface/Stripe.png", + "left:" + (GetX1X2(6)[0] - 11) + "px;top:65px", + EDAll + ); + }, + StartGame: function () { + SetVisible($("dSunNum")); + SetBlock($("dTop")); + NewEle("DivTeach", "div", 0, 0, EDAll); + oP.Monitor({ + ar: [0], + f: function (d) { + var b = oS.Chose, + a = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + BeginCool(); + c.onclick = null; + oSym.addTask( + 500, + function () { + SetNone(c); + }, + [] + ); + (function () { + SetVisible($("dFlagMeter"), $("dFlagMeterContent")); + ClearChild($("oEmbed")); + StopMusic(); + PlayMusic((oS.LoadMusic = "Cerebrawl")); + BeginCool(); + oP.Monitor(); + })(); + } + }, + }); + SetVisible($("dFlagMeter")); + oS.RiddleAutoGrow(); + }, +>>>>>>> 2d4ea63a9dbaef1b40ae59ff2f5572122ce54cb3 }); diff --git a/game/level/izombie9.js b/game/level/izombie9.js index f20703eb..a558c9db 100644 --- a/game/level/izombie9.js +++ b/game/level/izombie9.js @@ -1,4 +1,5 @@ oS.Init({ +<<<<<<< HEAD PName: [ oPeashooter, oSunFlower, @@ -121,4 +122,127 @@ oS.Init({ SetVisible($("dFlagMeter")); oS.RiddleAutoGrow(); }, +======= + PName: [ + oPeashooter, + oSunFlower, + oIPotatoMine, + oSnowPea, + oChomper, + oIFumeShroom, + oIScaredyShroom, + oSquash, + oThreepeater, + oTorchwood, + oTallNut, + oSplitPea, + oStarfruit, + oIHypnoShroom, + ], + ZName: [ + oIImp, + oIConeheadZombie, + oIPoleVaultingZombie, + oIBucketheadZombie, + oIFootballZombie, + oIJackinTheBoxZombie, + oIScreenDoorZombie, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + ShowScroll: false, + SunNum: 150, + BrainsNum: 5, + ProduceSun: false, + CardKind: 1, + LevelName: "All your brainz r belong to us", + StartGameMusic: "Cerebrawl", + InitLawnMower: function () { + var a = 6; + while (--a) { + CustomSpecial(oBrains, a, -1); + } + }, + ArP: { + ArC: [1, 6], + ArR: [1, 5], + Auto: 1, + P: [ + 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 4, 4, 4, 4, 5, 6, + 7, 8, 9, 10, 11, 11, 12, 13, + ], + }, + RiddleAutoGrow: function () { + var k = oS.ArP, + f = k.ArC, + j = k.ArR, + e = k.P, + d = oS.PName, + c, + g = f[0], + b = f[1], + i = j[0], + h = j[1], + a; + if (k.Auto) { + while (i <= h) { + CustomSpecial(oBrains, i, 0); + for (a = g; a <= b; a++) { + CustomSpecial( + d[e[(c = Math.floor(Math.random() * e.length))]], + i, + a + ); + e.splice(c, 1); + } + ++i; + } + } + NewImg( + "iStripe", + "images/interface/Stripe.png", + "left:" + (GetX1X2(7)[0] - 11) + "px;top:65px", + EDAll + ); + }, + StartGame: function () { + SetVisible($("dSunNum")); + SetBlock($("dTop")); + NewEle("DivTeach", "div", 0, 0, EDAll); + oP.Monitor({ + ar: [0], + f: function (d) { + var b = oS.Chose, + a = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + BeginCool(); + c.onclick = null; + oSym.addTask( + 500, + function () { + SetNone(c); + }, + [] + ); + (function () { + SetVisible($("dFlagMeter"), $("dFlagMeterContent")); + ClearChild($("oEmbed")); + StopMusic(); + PlayMusic((oS.LoadMusic = "Cerebrawl")); + BeginCool(); + oP.Monitor(); + })(); + } + }, + }); + SetVisible($("dFlagMeter")); + oS.RiddleAutoGrow(); + }, +>>>>>>> 2d4ea63a9dbaef1b40ae59ff2f5572122ce54cb3 }); diff --git a/game/level/izombiecustomlevelnormal.js b/game/level/izombiecustomlevelnormal.js index 4847210b..d72f12c8 100644 --- a/game/level/izombiecustomlevelnormal.js +++ b/game/level/izombiecustomlevelnormal.js @@ -1,52 +1,53 @@ // make sure everything in levelDataToLoad is defined if (typeof levelDataToLoad === "undefined") { - alert("Invalid level data!"); - SelectModal(0); + alert("Invalid level data!"); + SelectModal(0); } else { - // make sure its a table the one with {} - if (typeof levelDataToLoad !== "object") { - alert("Invalid level data!"); - SelectModal(0); - } - // make sure it has the right keys - if ( - !levelDataToLoad.hasOwnProperty("plants") || - !levelDataToLoad.hasOwnProperty("music") || - !levelDataToLoad.hasOwnProperty("sun") || - !levelDataToLoad.hasOwnProperty("lfValue") || - !levelDataToLoad.hasOwnProperty("stripeCol") - ) { - alert("Invalid level data!"); - SelectModal(0); - } - // make sure the keys are the right types - if ( - !Array.isArray(levelDataToLoad.plants) || - typeof levelDataToLoad.music !== "string" || - typeof levelDataToLoad.sun !== "number" || - typeof levelDataToLoad.name !== "string" || - !Array.isArray(levelDataToLoad.lfValue) || - typeof levelDataToLoad.stripeCol !== "number" - ) { - alert("Invalid level data!"); - SelectModal(0); - } + // make sure its a table the one with {} + if (typeof levelDataToLoad !== "object") { + alert("Invalid level data!"); + SelectModal(0); + } + // make sure it has the right keys + if ( + !levelDataToLoad.hasOwnProperty("plants") || + !levelDataToLoad.hasOwnProperty("music") || + !levelDataToLoad.hasOwnProperty("sun") || + !levelDataToLoad.hasOwnProperty("lfValue") || + !levelDataToLoad.hasOwnProperty("stripeCol") + ) { + alert("Invalid level data!"); + SelectModal(0); + } + // make sure the keys are the right types + if ( + !Array.isArray(levelDataToLoad.plants) || + typeof levelDataToLoad.music !== "string" || + typeof levelDataToLoad.sun !== "number" || + typeof levelDataToLoad.name !== "string" || + !Array.isArray(levelDataToLoad.lfValue) || + typeof levelDataToLoad.stripeCol !== "number" + ) { + alert("Invalid level data!"); + SelectModal(0); + } } for (let i = 0; i < levelDataToLoad.plants.length; i++) { - let plant = levelDataToLoad.plants[i]; - if (!pNameValue.includes(window[plant.plantName])) { - pNameValue.push(window[plant.plantName]); - } + let plant = levelDataToLoad.plants[i]; + if (!pNameValue.includes(window[plant.plantName])) { + pNameValue.push(window[plant.plantName]); + } } // if lfValue is [0, 1, 1, 2, 2, 1, 1], then we use background4, otherwise background2 backgroundImage = - levelDataToLoad.lfValue[3] === 2 - ? "images/interface/background4.jpg" - : "images/interface/background2.jpg"; + levelDataToLoad.lfValue[3] === 2 + ? "images/interface/background4.jpg" + : "images/interface/background2.jpg"; // if its [0, 1, 1, 2, 2, 1, 1], then we use 6 brains, otherwise 5 brainsNum = levelDataToLoad.lfValue[3] === 2 ? 6 : 5; oS.Init({ +<<<<<<< HEAD PName: pNameValue, ZName: [ oIImp, @@ -101,6 +102,61 @@ oS.Init({ while (i <= h) { CustomSpecial(oBrains, i, 0); /*for (a = g; a <= b; a++) { +======= + PName: pNameValue, + ZName: [ + oIImp, + oIConeheadZombie, + oIPoleVaultingZombie, + oIBucketheadZombie, + oIFootballZombie, + oIJackinTheBoxZombie, + oIScreenDoorZombie, + ], + PicArr: [ + backgroundImage, + "images/interface/trophy.png", + "images/interface/Stripe.png", + ], + LF: levelDataToLoad.lfValue, + backgroundImage: backgroundImage, + ShowScroll: false, + SunNum: levelDataToLoad.sun, + BrainsNum: 5, + ProduceSun: false, + CardKind: 1, + LevelName: levelDataToLoad.name, + LevelEName: "izombiecustomlevelnormal", + StartGameMusic: levelDataToLoad.music, + InitLawnMower: function () { + var a = 6; + while (--a) { + CustomSpecial(oBrains, a, -1); + } + }, + ArP: { + ArC: [1, levelDataToLoad.stripeCol - 1], + ArR: [1, 5], + Auto: 1, + P: [], + }, + RiddleAutoGrow: function () { + var k = oS.ArP, + f = k.ArC, + j = k.ArR, + e = k.P, + d = oS.PName, + c, + g = f[0], + b = f[1], + i = j[0], + h = j[1], + a; + if (k.Auto) { + while (i <= h) { + CustomSpecial(oBrains, i, 0); + /*for (a = g; a <= b; a++) { +>>>>>>> 2d4ea63a9dbaef1b40ae59ff2f5572122ce54cb3 CustomSpecial( d[e[(c = Math.floor(Math.random() * e.length))]], i, @@ -108,54 +164,55 @@ oS.Init({ ); e.splice(c, 1); }*/ - ++i; - } - } - NewImg( - "iStripe", - "images/interface/Stripe.png", - "left:" + (GetX1X2(levelDataToLoad.stripeCol)[0] - 11) + "px;top:65px", - EDAll - ); - }, - StartGame: function () { - SetVisible($("dSunNum")); - SetBlock($("dTop")); - NewEle("DivTeach", "div", 0, 0, EDAll); - oP.Monitor({ - ar: [0], - f: function (d) { - var b = oS.Chose, - a = arguments.callee, - c = $("DivTeach"); - switch (d) { - case 0: - BeginCool(); - c.onclick = null; - oSym.addTask( - 500, - function () { - SetNone(c); - }, - [] - ); - (function () { - SetVisible($("dFlagMeter"), $("dFlagMeterContent")); - ClearChild($("oEmbed")); - StopMusic(); - PlayMusic((oS.LoadMusic = levelDataToLoad.music)); - BeginCool(); - oP.Monitor(); - })(); - } - }, - }); - SetVisible($("dFlagMeter")); - oS.RiddleAutoGrow(); - }, + ++i; + } + } + NewImg( + "iStripe", + "images/interface/Stripe.png", + "left:" + + (GetX1X2(levelDataToLoad.stripeCol)[0] - 11) + + "px;top:65px", + EDAll + ); + }, + StartGame: function () { + SetVisible($("dSunNum")); + SetBlock($("dTop")); + NewEle("DivTeach", "div", 0, 0, EDAll); + oP.Monitor({ + ar: [0], + f: function (d) { + var b = oS.Chose, + a = arguments.callee, + c = $("DivTeach"); + switch (d) { + case 0: + BeginCool(); + c.onclick = null; + oSym.addTask( + 500, + function () { + SetNone(c); + }, + [] + ); + (function () { + SetVisible($("dFlagMeter"), $("dFlagMeterContent")); + ClearChild($("oEmbed")); + StopMusic(); + PlayMusic((oS.LoadMusic = levelDataToLoad.music)); + BeginCool(); + oP.Monitor(); + })(); + } + }, + }); + SetVisible($("dFlagMeter")); + oS.RiddleAutoGrow(); + }, }); - restoreToPlants(levelDataToLoad); // load the plants // clear all query parameters from the url without reloadng -window.history.pushState({}, document.title, window.location.pathname); \ No newline at end of file +window.history.pushState({}, document.title, window.location.pathname); diff --git a/game/level/izombiecustomlevelwater.js b/game/level/izombiecustomlevelwater.js index 0a976e47..6512c011 100644 --- a/game/level/izombiecustomlevelwater.js +++ b/game/level/izombiecustomlevelwater.js @@ -1,94 +1,94 @@ // make sure everything in levelDataToLoad is defined if (typeof levelDataToLoad === "undefined") { - alert("Invalid level data!"); - SelectModal(0); + alert("Invalid level data!"); + SelectModal(0); } else { - // make sure its a table the one with {} - if (typeof levelDataToLoad !== "object") { - alert("Invalid level data!"); - SelectModal(0); - } - // make sure it has the right keys - if ( - !levelDataToLoad.hasOwnProperty("plants") || - !levelDataToLoad.hasOwnProperty("music") || - !levelDataToLoad.hasOwnProperty("sun") || - !levelDataToLoad.hasOwnProperty("lfValue") || - !levelDataToLoad.hasOwnProperty("stripeCol") - ) { - alert("Invalid level data!"); - SelectModal(0); - } - // make sure the keys are the right types - if ( - !Array.isArray(levelDataToLoad.plants) || - typeof levelDataToLoad.music !== "string" || - typeof levelDataToLoad.sun !== "number" || - typeof levelDataToLoad.name !== "string" || - !Array.isArray(levelDataToLoad.lfValue) || - typeof levelDataToLoad.stripeCol !== "number" - ) { - alert("Invalid level data!"); - SelectModal(0); - } + // make sure its a table the one with {} + if (typeof levelDataToLoad !== "object") { + alert("Invalid level data!"); + SelectModal(0); + } + // make sure it has the right keys + if ( + !levelDataToLoad.hasOwnProperty("plants") || + !levelDataToLoad.hasOwnProperty("music") || + !levelDataToLoad.hasOwnProperty("sun") || + !levelDataToLoad.hasOwnProperty("lfValue") || + !levelDataToLoad.hasOwnProperty("stripeCol") + ) { + alert("Invalid level data!"); + SelectModal(0); + } + // make sure the keys are the right types + if ( + !Array.isArray(levelDataToLoad.plants) || + typeof levelDataToLoad.music !== "string" || + typeof levelDataToLoad.sun !== "number" || + typeof levelDataToLoad.name !== "string" || + !Array.isArray(levelDataToLoad.lfValue) || + typeof levelDataToLoad.stripeCol !== "number" + ) { + alert("Invalid level data!"); + SelectModal(0); + } } for (let i = 0; i < levelDataToLoad.plants.length; i++) { - let plant = levelDataToLoad.plants[i]; - if (!pNameValue.includes(window[plant.plantName])) { - pNameValue.push(window[plant.plantName]); - } + let plant = levelDataToLoad.plants[i]; + if (!pNameValue.includes(window[plant.plantName])) { + pNameValue.push(window[plant.plantName]); + } } // if lfValue is [0, 1, 1, 2, 2, 1, 1], then we use background4, otherwise background2 backgroundImage = - levelDataToLoad.lfValue[3] === 2 - ? "images/interface/background4.jpg" - : "images/interface/background2.jpg"; + levelDataToLoad.lfValue[3] === 2 + ? "images/interface/background4.jpg" + : "images/interface/background2.jpg"; // if its [0, 1, 1, 2, 2, 1, 1], then we use 6 brains, otherwise 5 brainsNum = levelDataToLoad.lfValue[3] === 2 ? 6 : 5; oS.Init({ - PName: pNameValue, - ZName: [ - oIZombie, - oIConeheadZombie, - oIBucketheadZombie, - oIDuckyTubeZombie1, - oIDuckyTubeZombie2, - oIDuckyTubeZombie3, - oIScreenDoorZombie, - oIPoleVaultingZombie, - oIBalloonZombie, - ], - PicArr: [ - backgroundImage, - "images/interface/trophy.png", - "images/interface/Stripe.png", - ], - backgroundImage: backgroundImage, - Coord: 2, - DKind: 0, - LF: levelDataToLoad.lfValue, - ShowScroll: false, - ProduceSun: false, - SunNum: 350, - BrainsNum: 6, - CardKind: 1, - LevelName: levelDataToLoad.name, - LvlEName: "izombiecustomlevelwater", - LoadMusic: levelDataToLoad.music, - StartGameMusic: levelDataToLoad.music, - ArP: { - ArC: [1, levelDataToLoad.stripeCol - 1], - ArR: [1, 6], - Auto: 1, - P: { - Arr: [], - Arr1: [], - Arr2: [], - }, - }, - RandomGrow: function (Point, Arr) { - /*Point.sort(function () { + PName: pNameValue, + ZName: [ + oIZombie, + oIConeheadZombie, + oIBucketheadZombie, + oIDuckyTubeZombie1, + oIDuckyTubeZombie2, + oIDuckyTubeZombie3, + oIScreenDoorZombie, + oIPoleVaultingZombie, + oIBalloonZombie, + ], + PicArr: [ + backgroundImage, + "images/interface/trophy.png", + "images/interface/Stripe.png", + ], + backgroundImage: backgroundImage, + Coord: 2, + DKind: 0, + LF: levelDataToLoad.lfValue, + ShowScroll: false, + ProduceSun: false, + SunNum: 350, + BrainsNum: 6, + CardKind: 1, + LevelName: levelDataToLoad.name, + LvlEName: "izombiecustomlevelwater", + LoadMusic: levelDataToLoad.music, + StartGameMusic: levelDataToLoad.music, + ArP: { + ArC: [1, levelDataToLoad.stripeCol - 1], + ArR: [1, 6], + Auto: 1, + P: { + Arr: [], + Arr1: [], + Arr2: [], + }, + }, + RandomGrow: function (Point, Arr) { + /*Point.sort(function () { return Math.random() - 0.5; }); Arr.sort(function () { @@ -103,42 +103,43 @@ oS.Init({ ), Point.length--, Arr.length--;*/ - }, - RiddleAutoGrow: function () { - var k = oS.ArP, - f = k.ArC, - j = k.ArR, - e = k.P, - d = oS.PName, - Arr = []; - var SummonRange = function (Arr, l, r) { - for (; l <= r; ++l) - for (var j = f[0]; j <= f[1]; ++j) Arr.push([j, l]); - }; - /*for (var i = f[0]; i <= f[1]; ++i) + }, + RiddleAutoGrow: function () { + var k = oS.ArP, + f = k.ArC, + j = k.ArR, + e = k.P, + d = oS.PName, + Arr = []; + var SummonRange = function (Arr, l, r) { + for (; l <= r; ++l) + for (var j = f[0]; j <= f[1]; ++j) Arr.push([j, l]); + }; + /*for (var i = f[0]; i <= f[1]; ++i) CustomSpecial(oILilyPad, 3, i), CustomSpecial(oLilyPad, 4, i); // 荷叶*/ - SummonRange(Arr, 3, 4), oS.RandomGrow(Arr, e.Arr); // 处理泳池的植物 - SummonRange(Arr, 1, 2), - SummonRange(Arr, 5, 6), - oS.RandomGrow(Arr, e.Arr1), - oS.RandomGrow(Arr, e.Arr); // 处理剩余的植物 - SummonRange(Arr, 1, 6), oS.RandomGrow(Arr, e.Arr2); // 处理南瓜头 - for (var i = j[0]; i <= j[1]; ++i) CustomSpecial(oBrains, i, 0); // 脑子 - NewImg( - "iStripe", - "images/interface/Stripe.png", - "left:" + (GetX1X2(levelDataToLoad.stripeCol)[0] - 11) + "px;top:65px", - EDAll - ); - }, - StartGame: function () { - oP.Monitor(), BeginCool(); - SetVisible($("dFlagMeter"), $("dFlagMeterContent"), $("dTop")); - oS.RiddleAutoGrow(); - }, + SummonRange(Arr, 3, 4), oS.RandomGrow(Arr, e.Arr); // 处理泳池的植物 + SummonRange(Arr, 1, 2), + SummonRange(Arr, 5, 6), + oS.RandomGrow(Arr, e.Arr1), + oS.RandomGrow(Arr, e.Arr); // 处理剩余的植物 + SummonRange(Arr, 1, 6), oS.RandomGrow(Arr, e.Arr2); // 处理南瓜头 + for (var i = j[0]; i <= j[1]; ++i) CustomSpecial(oBrains, i, 0); // 脑子 + NewImg( + "iStripe", + "images/interface/Stripe.png", + "left:" + + (GetX1X2(levelDataToLoad.stripeCol)[0] - 11) + + "px;top:65px", + EDAll + ); + }, + StartGame: function () { + oP.Monitor(), BeginCool(); + SetVisible($("dFlagMeter"), $("dFlagMeterContent"), $("dTop")); + oS.RiddleAutoGrow(); + }, }); - restoreToPlants(levelDataToLoad); // load the plants // clear all query parameters from the url without reloadng -window.history.pushState({}, document.title, window.location.pathname); \ No newline at end of file +window.history.pushState({}, document.title, window.location.pathname); diff --git a/game/level/izombiecustommenu.js b/game/level/izombiecustommenu.js index 9201b87b..27b6ee34 100644 --- a/game/level/izombiecustommenu.js +++ b/game/level/izombiecustommenu.js @@ -3,74 +3,74 @@ var customtitle = "I, Zombie Level Editor"; var customcolumns = 4; var customsun = 150; oS.Init({ - PicArr: (function () { - a = "images/interface/"; - return [ShadowPNG]; - })(), - LevelName: "I, Zombie Menu", - LevelEName: 150, - ShowScroll: 1, - LoadMusic: "Cerebrawl", - StartGameMusic: "Cerebrawl", - AudioArr: ["Cerebrawl", "pvzs"], - backgroundImage: "images/interface/IZombie_Background.png", - LoadAccess: function (a) { - NewImg( - "imgSF", - "images/interface/BackButton.png", - "left:785px;top:530px", - EDAll, - { - onclick: function () { - SelectModal(0); - SetBlock($("dSurface"), $("iSurfaceBackground")); - }, - } - ); - // native code from now on - let inputDataElement = document.createElement("input"); - inputDataElement.type = "search"; // just for a clear button - inputDataElement.placeholder = "Level data here..."; - inputDataElement.style.position = "absolute"; - inputDataElement.style.left = "50%"; - inputDataElement.style.top = "50%"; - inputDataElement.style.transform = "translate(-50%, -50%)"; - inputDataElement.style.width = "50%"; - inputDataElement.style.padding = "7px"; - inputDataElement.style.borderStyle = "solid"; - inputDataElement.style.borderRadius = "10px"; - inputDataElement.style.fontSize = "large"; - $("dAll").appendChild(inputDataElement); - // now the button - let buttonElement = document.createElement("input"); - buttonElement.setAttribute("type", "button"); - buttonElement.setAttribute("value", "LOAD LEVEL"); - buttonElement.id = "btnNextLevel"; // not actually a next level button, but it's the same style - buttonElement.style.top = "60%"; - buttonElement.onclick = function () { - // store the input value and disable it, then make it say "Loading..." - let levelData = inputDataElement.value; - inputDataElement.disabled = true; - inputDataElement.value = "Loading..."; - // decode the input value by using parseClone(datahere) - try { - levelDataToLoad = parseClone(levelData); - } catch (e) { - inputDataElement.value = "Invalid level data!"; - inputDataElement.disabled = false; - return; - } - // load the izombiecustomlevel level - if (levelDataToLoad.lfValue[3] === 2) { - SelectModal("izombiecustomlevelwater"); - } else { - SelectModal("izombiecustomlevelnormal"); - } - }; - // put in #dAll - $("dAll").appendChild(buttonElement); - }, + PicArr: (function () { + a = "images/interface/"; + return [ShadowPNG]; + })(), + LevelName: "I, Zombie Menu", + LevelEName: 150, + ShowScroll: 1, + LoadMusic: "Cerebrawl", + StartGameMusic: "Cerebrawl", + AudioArr: ["Cerebrawl", "pvzs"], + backgroundImage: "images/interface/IZombie_Background.png", + LoadAccess: function (a) { + NewImg( + "imgSF", + "images/interface/BackButton.png", + "left:785px;top:530px", + EDAll, + { + onclick: function () { + SelectModal(0); + SetBlock($("dSurface"), $("iSurfaceBackground")); + }, + } + ); + // native code from now on + let inputDataElement = document.createElement("input"); + inputDataElement.type = "search"; // just for a clear button + inputDataElement.placeholder = "Level data here..."; + inputDataElement.style.position = "absolute"; + inputDataElement.style.left = "50%"; + inputDataElement.style.top = "50%"; + inputDataElement.style.transform = "translate(-50%, -50%)"; + inputDataElement.style.width = "50%"; + inputDataElement.style.padding = "7px"; + inputDataElement.style.borderStyle = "solid"; + inputDataElement.style.borderRadius = "10px"; + inputDataElement.style.fontSize = "large"; + $("dAll").appendChild(inputDataElement); + // now the button + let buttonElement = document.createElement("input"); + buttonElement.setAttribute("type", "button"); + buttonElement.setAttribute("value", "LOAD LEVEL"); + buttonElement.id = "btnNextLevel"; // not actually a next level button, but it's the same style + buttonElement.style.top = "60%"; + buttonElement.onclick = function () { + // store the input value and disable it, then make it say "Loading..." + let levelData = inputDataElement.value; + inputDataElement.disabled = true; + inputDataElement.value = "Loading..."; + // decode the input value by using parseClone(datahere) + try { + levelDataToLoad = parseClone(levelData); + } catch (e) { + inputDataElement.value = "Invalid level data!"; + inputDataElement.disabled = false; + return; + } + // load the izombiecustomlevel level + if (levelDataToLoad.lfValue[3] === 2) { + SelectModal("izombiecustomlevelwater"); + } else { + SelectModal("izombiecustomlevelnormal"); + } + }; + // put in #dAll + $("dAll").appendChild(buttonElement); + }, }); // clear all query parameters from the url without reloadng -window.history.pushState({}, document.title, window.location.pathname); \ No newline at end of file +window.history.pushState({}, document.title, window.location.pathname); diff --git a/game/level/izombieleveleditorbeta.js b/game/level/izombieleveleditorbeta.js new file mode 100644 index 00000000..2b4a12b0 --- /dev/null +++ b/game/level/izombieleveleditorbeta.js @@ -0,0 +1,682 @@ +(function () { + /* + ChoseMode: 选关界面 + NGrass: 黑夜草地 + NPool: 黑夜泳池 + DReversal: 水路反转 + */ + var IZMode = oS.NowLevel != null ? oS.NowLevel : "ChoseMode"; // 读取当前关卡模式 + var Change_Level = function (ModeName) { + (oS.NowLevel = ModeName), SelectModal(oS.Lvl), (oS.NowLevel = ModeName); + }; // 以特定模式重新载入本关 + var $FJ = function (a, b) { + // 覆盖数组 + var ret = {}; + for (var i in a) ret[i] = a[i]; + for (var i in b) ret[i] = b[i]; + return ret; + }; + + // 三种创建的模板 + var oSys = { + MapKind: "0", + Coord: 1, + LF: [0, 1, 1, 1, 1, 1], + // PName: [oPeashooter, oSunFlower, oWallNut, oPotatoMine, oSnowPea, oChomper, oRepeater, oPuffShroom, oFumeShroom, oScaredyShroom, oSquash, oThreepeater, oSpikeweed, oTorchwood, oTallNut, oCactus, oSplitPea, oStarfruit, oGarlic], + PName: [ + oPeashooter, + oSunFlower, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oFumeShroom, + oHypnoShroom, + oScaredyShroom, + oSquash, + oThreepeater, + oSpikeweed, + oTorchwood, + oTallNut, + oCactus, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oGarlic, + oGatlingPea, + oGloomShroom, + oSpikerock, + ], + ZName: [oZombie], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + ], + backgroundImage: "images/interface/background2.jpg", + BrainsNum: 5, + ProduceSun: false, + SunNum: 9990, + DKind: 0, + LevelName: "I, Zombie Level Editor - Night", + LvlEName: "ImZombieCreateGame", + LoadMusic: "Cerebrawl", + StartGameMusic: "Cerebrawl", + LargeWaveFlag: { 10: $("imgFlag3"), 20: $("imgFlag1") }, + InitLawnMower: function () { + var a = oS.R + 1; + while (--a) CustomSpecial(oBrains, a, -1); + }, + LvlClearFunc: function () { + oS.ScrollScreen = oS.LvlVar.ScrollScreen; + delete oS.LvlVar.ScrollScreen; + delete oS.NowLevel; // 清除关卡阶段数据 + }, + ArP: { ArC: [1, 4], ArR: [1, 5] }, + LoadAccess: function (a) { + !oS.LvlVar + ? (oS.LvlVar = { ScrollScreen: oS.ScrollScreen }) + : (oS.LvlVar.ScrollScreen = oS.ScrollScreen); // 关卡数据 + $("tGround").style.left = "-115px"; + oS.ScrollScreen = function () { + // 移动重写 + $("tGround").style.left = 0; + ClearChild($("dButton1"), $("dButton2")); + (function () { + (EDAll.scrollLeft += 25) < 500 + ? oSym.addTask(2, arguments.callee, []) + : SetVisible( + $("dMenu"), + $("dSelectCard"), + $("dCardList") + ); + })(); + }; + a(0); + }, + StartGame: function () { + oP.Monitor({ + ar: [], + f: function () { + var a = NewEle( + "DivTeach", + "div", + "line-height:40px;font-size:14px;top:380px", + 0, + EDAll + ); // 选择阵型列数 + var b = function (c) { + ClearChild($("DivTeach")), ImmediatelyCool(); // 取消冻结全部植物 + SetVisible($("tdShovel"), $("dFlagMeter")); // 显示铲子 + NewImg( + "iStripe", + "images/interface/Stripe.png", + "left:" + (GetX1X2(c)[0] - 11) + "px;top:65px", + EDAll + ); // 生成线 + NewEle( + "btnClickSave", + "button", + "position:absolute;left:750px;top:250px;height:50px;width:100px;font-family:幼圆;font-size:18px;z-index:100", + { + // 保存按钮 + innerHTML: "Save Level", + onclick: function () { + var g = oGd.$, + k, + m = "", + i, + l, + f, + takeScreenshot, + d = oS.ArP.ArC[1] - 1, + h = oS.ArP.ArR[1], + r = 0, + z = "", + j = { + // 植物数据 + default: "01", // 默认 + oPeashooter: "01", // 普通植物 1 ~ 40 + oSunFlower: "02", + oCherryBomb: "03", + oWallNut: "04", + oPotatoMine: "05", + oSnowPea: "06", + oChomper: "07", + oRepeater: "08", + oPuffShroom: "09", + oSunShroom: "10", + oFumeShroom: "11", + oGraveBuster: "12", + oHypnoShroom: "13", + oScaredyShroom: "14", + oIceShroom: "15", + oDoomShroom: "16", + oLilyPad: "17", + oSquash: "18", + oThreepeater: "19", + oTangleKlep: "20", + oJalapeno: "21", + oSpikeweed: "22", + oTorchwood: "23", + oTallNut: "24", + oSeaShroom: "25", + oPlantern: "26", + oCactus: "27", + oBlover: "28", + oSplitPea: "29", + oStarfruit: "30", + oPumpkinHead: "31", + oFlowerPot: "34", + oCoffeeBean: "36", + oGarlic: "37", + oGatlingPea: "41", // 紫卡: 41 ~ 48 + oTwinSunflower: "42", + oGloomShroom: "43", + oSpikerock: "47", + oBrains: "51", // 其他植物: 50 ~ 70 + oLawnCleaner: "52", + oPoolCleaner: "53", + oNutBowling: "54", + oHugeNutBowling: "55", + oBoomNutBowling: "56", + }; + + for (k in g) + if (g.hasOwnProperty(k)) + (z = + (i = k.split("_"))[0] + + i[1] + + $SEql(g[k].EName, j)), + (m = z + m), + (r = Math.max(r, i[1])); // 生成植物数据,采用倒叙生成 + + if ($P.length < h * d * (4 / 5)) { + if ( + !confirm( + "The amount of plants is less than 80% of the set range. Do you want to continue?" + ) + ) { + return; + } + } + + if ( + (f = prompt( + "Please enter the amount of sunlight, range 50-1000.", + "150" + )) == null + ) + return; // 用户未输入, 返回 + if ( + isNaN((f = Number(f))) || + f < 50 || + f > 1000 + ) + return alert( + "Please enter a number in the range 50-1000!" + ); // 输入阳光 + + takeScreenshot = confirm("Take a screenshot? This will drastically increase the size of the level data."); + function finishSave() { + $("btnClickSave").innerHTML = "Saved!"; + let levelDataElement = + document.createElement("input"); + levelDataElement.type = "search"; // just for a clear button + levelDataElement.placeholder = + "Level data here..."; + levelDataElement.readOnly = true; + levelDataElement.style.position = + "absolute"; + levelDataElement.style.left = "50%"; + levelDataElement.style.top = "50%"; + levelDataElement.style.transform = + "translate(-50%, -50%)"; + levelDataElement.style.width = "50%"; + levelDataElement.style.padding = "7px"; + levelDataElement.style.borderStyle = + "solid"; + levelDataElement.style.borderRadius = + "10px"; + levelDataElement.style.fontSize = + "large"; + levelDataElement.style.zIndex = "1000"; + levelDataElement.value = stringifyClone( + cloneFromPlants(l, f) + ); + $("dAll").appendChild(levelDataElement); + let buttonElement = + document.createElement("input"); + buttonElement.setAttribute( + "type", + "button" + ); + buttonElement.setAttribute( + "value", + "EXIT" + ); + buttonElement.id = "btnNextLevel"; // not actually a next level button, but it's the same style + buttonElement.style.top = "60%"; + buttonElement.onclick = function () { + $("dAll").style.zIndex = ""; + let oldLv = oS.Lvl; + SelectModal(0); + SetBlock( + $("dSurface"), + $("iSurfaceBackground") + ); + oS.Lvl = oldLv; + }; + buttonElement.style.zIndex = "1000"; + // put in #dAll + $("dAll").appendChild(buttonElement); + let coverElement = + document.createElement("div"); + coverElement.style.position = + "absolute"; + coverElement.style.left = "0"; + coverElement.style.top = "0"; + coverElement.style.width = "100%"; + coverElement.style.height = "100%"; + coverElement.style.backgroundColor = + "rgba(0, 0, 0, 0.75)"; + coverElement.style.zIndex = "999"; + $("dAll").appendChild(coverElement); + let titleElement = + document.createElement("div"); + titleElement.style.position = + "absolute"; + titleElement.style.left = "50%"; + titleElement.style.top = "30%"; + titleElement.style.transform = + "translate(-50%, -50%)"; + titleElement.style.width = "40%"; + titleElement.style.height = "40px"; + titleElement.innerText = + "Here's your level data - keep this somewhere safe!"; + titleElement.style.fontSize = + "xx-large"; + titleElement.style.textAlign = "center"; + titleElement.style.color = "white"; + titleElement.style.zIndex = "1000"; + $("dAll").appendChild(titleElement); + $("dAll").style.zIndex = "10000"; + } + if ( + (l = prompt( + "Please enter a title for your custom level (within 50 characters)\nIf not entered, the default title will be used.", + "" + )) != null && + l.length <= 50 + ) { + ($("btnClickSave").innerHTML = + "Saving.."), + ($("btnClickSave").disabled = + "disabled"); // 按钮样式 + // Ajax("asp/ImZombieCreateGame.asp", "post", "mapkind=" + oS.MapKind + "&SNum=" + f + "&T=" + escape(l) + "&C=" + escape(m), function(c){eval(c)}); // 发送请求 + if (takeScreenshot) { + captureScreenshot().then((data) => { + finishSave(); + } + ).catch((error) => { + console.error("Screenshot capture failed:", error); + finishSave(); + }); + } else { + finishSave(); + } + } + }, + }, + EDAll + ); + oS.ArP.ArC = [1, c]; // 规定种植范围 + oS.ArP.ArR = [1, oS.R]; // 行 + }; + innerText( + NewEle( + "spanT", + "span", + "position:absolute;left:-30px;width:620px;text-align:left;font-family:briannetodd;font-size:large;line-height:50px;color: #fff", + 0, + a + ), + "How many columns to place your plants in: " + ); // 选列 + + // 选择按钮 + innerText( + NewEle( + "btnClick3", + "button", + "position:absolute;left:280px;top:10px;height:30px;width:40px;font-family:briannetodd;font-size:large;border-radius:10px;border-style:solid", + { + onclick: function () { + b(3); + }, + }, + a + ), + "2" + ); + innerText( + NewEle( + "btnClick4", + "button", + "position:absolute;left:330px;top:10px;height:30px;width:40px;font-family:briannetodd;font-size:large;border-radius:10px;border-style:solid", + { + onclick: function () { + b(4); + }, + }, + a + ), + "3" + ); + innerText( + NewEle( + "btnClick5", + "button", + "position:absolute;left:380px;top:10px;height:30px;width:40px;font-family:briannetodd;font-size:large;border-radius:10px;border-style:solid", + { + onclick: function () { + b(5); + }, + }, + a + ), + "4" + ); + innerText( + NewEle( + "btnClick6", + "button", + "position:absolute;left:430px;top:10px;height:30px;width:40px;font-family:briannetodd;font-size:large;border-radius:10px;border-style:solid", + { + onclick: function () { + b(6); + }, + }, + a + ), + "5" + ); + innerText( + NewEle( + "btnClick7", + "button", + "position:absolute;left:480px;top:10px;height:30px;width:40px;font-family:briannetodd;font-size:large;border-radius:10px;border-style:solid", + { + onclick: function () { + b(7); + }, + }, + a + ), + "6" + ); + innerText( + NewEle( + "btnClick8", + "button", + "position:absolute;left:530px;top:10px;height:30px;width:40px;font-family:briannetodd;font-size:large;border-radius:10px;border-style:solid", + { + onclick: function () { + b(8); + }, + }, + a + ), + "7" + ); + innerText( + NewEle( + "btnClick9", + "button", + "position:absolute;left:580px;top:10px;height:30px;width:40px;font-family:briannetodd;font-size:large;border-radius:10px;border-style:solid", + { + onclick: function () { + b(9); + }, + }, + a + ), + "8" + ); + }, + }); + }, + }; + var oPlt = { + AZ: [[oZombie, 4, 1]], + FlagNum: 20, + FlagToSumNum: { a1: [19], a2: [1, 2] }, + FlagToMonitor: { 9: [ShowLargeWave, 0], 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(0); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:198px;left:269px", + EDAll + ); + }, + }; + var oWin = { + // 全局函数覆盖 + GrowPlant: function (k, d, c, e, b) { + var i = oS.ChoseCard, + f = ArCard[i], + g = f.PName, + j = g.prototype, + h = j.coolTime, + a; + j.CanGrow(k, e, b) && + (CustomSpecial(g, e, b, 1), + oSym.addTask(20, SetHidden, [ + SetStyle($("imgGrowSoil"), { + left: d - 30 + "px", + top: c - 40 + "px", + zIndex: 3 * e, + visibility: "visible", + }), + ])); + CancelPlant(); // 无冷却 + }, + ViewPlantTitle: function (a) { + var c = $("dTitle"), + b = ArCard[a].PName.prototype; + c.innerHTML = b.CName + "
" + b.Tooltip; + SetStyle(c, { + top: 60 * a + "px", + left: EDAlloffsetLeft + 100 + "px", + }); + }, + }; + + // 根据不同模式开始不同关卡 + + $SEql(IZMode, { + // 每个阶段函数 + ChoseMode: function () { + // 选择模式 + oS.Init( + $FJ(oSys, { + PicArr: [], + LoadAccess: function () { + !oS.LvlVar + ? (oS.LvlVar = { ScrollScreen: oS.ScrollScreen }) + : (oS.LvlVar.ScrollScreen = oS.ScrollScreen); // 关卡数据 + + NewEle( + "dChosePanel", + "div", + "display:block;position:absolute;left:0px;top:0px", + 0, + EDAll, + { class: "Almanac_ZombieBack" } + ); + NewEle( + "dChoseTitle", + "div", + "position:relative;text-align:center;line-height:88px;height:88px;width:100%;font-size:30px;font-weight:bold;font-family:黑体;color:#fff", + { innerHTML: "Select mode" }, + $("dChosePanel"), + { class: "dRiddleTitle" } + ); + + NewEle( + "dBack", + "div", + "position:absolute;width:89px;height:26px;top:564px;left:700px;background-position:center top;background:url(images/interface/Almanac_CloseButton.png);cursor:pointer;text-align:center;line-height:26px;color:#000080;font-size:12px;", + { + onmouseover: function () { + this.style.backgroundPosition = "bottom"; + }, + onmouseout: function () { + this.style.backgroundPosition = "top"; + }, + onclick: function () { + Return_Block(); + }, + innerText: "Back", + }, + EDAll, + { class: "button" } + ); + + NewEle( + "dGrassDiv", + "div", + "left:100px;top:100px;background-image:url(images/interface/background2.jpg);display:block;position:absolute;z-index:100;cursor:pointer;background-position:-25px,0px;background-size:324px,139px;background-repeat:no-repeat;width:275px;height:139px;border:5px solid rgba(255,255,255,0.5);border-radius:15px;", + { + onclick: function () { + Change_Level("NGrass"); + }, + }, + EDAll + ); + NewEle( + "dGrassTXT", + "div", + "text-align:center;line-height:60px;font-size:30px;font-weight:bold;font-family:黑体;color:#fff;position:relative;top:15px;", + { + innerHTML: + 'Night
Click here to select this mode', + }, + $("dGrassDiv") + ); + + NewEle( + "dPoolDiv", + "div", + "left:100px;top:250px;background-image:url(images/interface/background4.jpg);display:block;position:absolute;z-index:100;cursor:pointer;background-position:-25px,0px;background-size:324px,139px;background-repeat:no-repeat;width:275px;height:139px;border:5px solid rgba(255,255,255,0.5);border-radius:15px;", + { + onclick: function () { + Change_Level("NPool"); + }, + }, + EDAll + ); + NewEle( + "dPoolTXT", + "div", + "text-align:center;line-height:60px;font-size:30px;font-weight:bold;font-family:黑体;color:#fff;position:relative;top:15px;", + { + innerHTML: + 'Night Pool
Click here to select this mode', + }, + $("dPoolDiv") + ); + + SetVisible($("dMenu")); // 显示菜单按钮 + }, + LvlClearFunc: function () { + oS.ScrollScreen = oS.LvlVar.ScrollScreen; + delete oS.LvlVar.ScrollScreen; + }, + }), + $FJ(oPlt, {}), + $FJ(oWin, { + Return_Block: function () { + SelectModal(0), HiddenOptions(); + SetBlock($("dSurface"), $("iSurfaceBackground")); + ShowRiddleGame(); + }, + }) + ); + }, + NGrass: function () { + // 黑夜草地 NGrass + oS.Init($FJ(oSys, { MapKind: "0" }), $FJ(oPlt, {}), $FJ(oWin, {})); + }, + NPool: function () { + // 黑夜泳池 NPool + oS.Init( + $FJ(oSys, { + MapKind: "1", + // PName: [oPeashooter, oSunFlower, oWallNut, oPotatoMine, oSnowPea, oChomper, oRepeater, oPuffShroom, oFumeShroom, oScaredyShroom, oLilyPad, oSquash, oThreepeater, oTangleKlep, oSpikeweed, oTorchwood, oTallNut, oSeaShroom, oCactus, oSplitPea, oStarfruit, oGarlic], + PName: [ + oPeashooter, + oSunFlower, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oRepeater, + oPuffShroom, + oFumeShroom, + oHypnoShroom, + oScaredyShroom, + oLilyPad, + oSquash, + oThreepeater, + oTangleKlep, + oSpikeweed, + oTorchwood, + oTallNut, + oSeaShroom, + oCactus, + oSplitPea, + oStarfruit, + oPumpkinHead, + oFlowerPot, + oGarlic, + oGatlingPea, + oGloomShroom, + oSpikerock, + ], + Coord: 2, + LF: [0, 1, 1, 2, 2, 1, 1], // 泳池样式 + PicArr: [ + "images/interface/background4.jpg", + "images/interface/trophy.png", + ], + backgroundImage: "images/interface/background4.jpg", + LevelName: "I, Zombie Level Editor - Night Pool", + BrainsNum: 6, + ArP: { ArC: [1, 4], ArR: [1, 6] }, + }), + $FJ(oPlt, {}), + $FJ(oWin, {}) + ); + }, + default: function () { + // 未知模式 + oS.Init({ LvlClearFunc: oSys.LvlClearFunc }, {}, {}); + SelectModal(0); + }, + })(); +})(); diff --git a/game/level/izombiemenu.js b/game/level/izombiemenu.js index 98a65a13..36b63bd2 100644 --- a/game/level/izombiemenu.js +++ b/game/level/izombiemenu.js @@ -3,174 +3,174 @@ var customtitle = "I, Zombie Level Selector"; var customcolumns = 4; var customsun = 150; oS.Init({ - PicArr: (function () { - a = "images/interface/"; - return [ - ShadowPNG, - a + "BackButton.png", - a + "izombie1.png", - a + "izombie2.png", - a + "izombie3.png", - a + "izombie4.png", - a + "izombie5.png", - a + "izombie6.png", - a + "izombie7.png", - a + "izombie8.png", - a + "izombie9.png", - a + "izombie10.png", - ]; - })(), - LevelName: "I, Zombie Menu", - LevelEName: 150, - ShowScroll: 1, - LoadMusic: "Cerebrawl", - StartGameMusic: "Cerebrawl", - AudioArr: ["Cerebrawl", "pvzs"], - backgroundImage: "images/interface/IZombie_Background.png", - LoadAccess: function (a) { - NewImg( - "imgSF", - "images/interface/BackButton.png", - "left:785px;top:530px", - EDAll, - { - onclick: function () { - SelectModal(0); - SetBlock($("dSurface"), $("iSurfaceBackground")); - }, - } - ); - NewImg( - "imgSF", - "images/interface/izombie1.png", - "left:50px;top:130px", - EDAll, - { - onclick: function () { - SelectModal("" + "izombie1" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/izombie2.png", - "left:200px;top:130px", - EDAll, - { - onclick: function () { - SelectModal("" + "izombie2" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/izombie3.png", - "left:350px;top:130px", - EDAll, - { - onclick: function () { - SelectModal("" + "izombie3" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/izombie4.png", - "left:500px;top:130px", - EDAll, - { - onclick: function () { - SelectModal("" + "izombie4" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/izombie5.png", - "left:650;top:130", - EDAll, - { - onclick: function () { - SelectModal("" + "izombie5" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/izombie6.png", - "left:50;top:270", - EDAll, - { - onclick: function () { - SelectModal("" + "izombie6" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/izombie7.png", - "left:200px;top:270px", - EDAll, - { - onclick: function () { - SelectModal("" + "izombie7" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/izombie8.png", - "left:350px;top:270px", - EDAll, - { - onclick: function () { - SelectModal("" + "izombie8" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/izombie9.png", - "left:500px;top:270px", - EDAll, - { - onclick: function () { - SelectModal("" + "izombie9" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/izombie10.png", - "left:650px;top:270px", - EDAll, - { - onclick: function () { - SelectModal("" + "izombie10" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/izombiemake.png", - "left:50;top:410", - EDAll, - { - onclick: function () { - SelectModal("" + "izombieleveleditor" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/izombieload.png", - "left:200px;top:410px", - EDAll, - { - onclick: function () { - SelectModal("" + "izombiecustommenu" + ""); - }, - } - ); - }, + PicArr: (function () { + a = "images/interface/"; + return [ + ShadowPNG, + a + "BackButton.png", + a + "izombie1.png", + a + "izombie2.png", + a + "izombie3.png", + a + "izombie4.png", + a + "izombie5.png", + a + "izombie6.png", + a + "izombie7.png", + a + "izombie8.png", + a + "izombie9.png", + a + "izombie10.png", + ]; + })(), + LevelName: "I, Zombie Menu", + LevelEName: 150, + ShowScroll: 1, + LoadMusic: "Cerebrawl", + StartGameMusic: "Cerebrawl", + AudioArr: ["Cerebrawl", "pvzs"], + backgroundImage: "images/interface/IZombie_Background.png", + LoadAccess: function (a) { + NewImg( + "imgSF", + "images/interface/BackButton.png", + "left:785px;top:530px", + EDAll, + { + onclick: function () { + SelectModal(0); + SetBlock($("dSurface"), $("iSurfaceBackground")); + }, + } + ); + NewImg( + "imgSF", + "images/interface/izombie1.png", + "left:50px;top:130px", + EDAll, + { + onclick: function () { + SelectModal("" + "izombie1" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/izombie2.png", + "left:200px;top:130px", + EDAll, + { + onclick: function () { + SelectModal("" + "izombie2" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/izombie3.png", + "left:350px;top:130px", + EDAll, + { + onclick: function () { + SelectModal("" + "izombie3" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/izombie4.png", + "left:500px;top:130px", + EDAll, + { + onclick: function () { + SelectModal("" + "izombie4" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/izombie5.png", + "left:650;top:130", + EDAll, + { + onclick: function () { + SelectModal("" + "izombie5" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/izombie6.png", + "left:50;top:270", + EDAll, + { + onclick: function () { + SelectModal("" + "izombie6" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/izombie7.png", + "left:200px;top:270px", + EDAll, + { + onclick: function () { + SelectModal("" + "izombie7" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/izombie8.png", + "left:350px;top:270px", + EDAll, + { + onclick: function () { + SelectModal("" + "izombie8" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/izombie9.png", + "left:500px;top:270px", + EDAll, + { + onclick: function () { + SelectModal("" + "izombie9" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/izombie10.png", + "left:650px;top:270px", + EDAll, + { + onclick: function () { + SelectModal("" + "izombie10" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/izombiemake.png", + "left:50;top:410", + EDAll, + { + onclick: function () { + SelectModal("" + "izombieleveleditor" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/izombieload.png", + "left:200px;top:410px", + EDAll, + { + onclick: function () { + SelectModal("" + "izombiecustommenu" + ""); + }, + } + ); + }, }); diff --git a/game/level/kaotianchifan.js b/game/level/kaotianchifan.js index 9f716274..2da93175 100644 --- a/game/level/kaotianchifan.js +++ b/game/level/kaotianchifan.js @@ -1,130 +1,130 @@ oS.Init( - { - PName: [ - oPeashooter, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oJalapeno, - oSpikeweed, - oRepeater, - oSquash, - oTorchwood, - oLilyPad, - oTangleKlep, - oTallNut, - oTenManNut, - oSnowRepeater, - oCattail, - oLotusRoot, - oIceFumeShroom, - oLaserBean, - oBigChomper, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oDuckyTubeZombie1, - oScreenDoorZombie, - oNewspaperZombie, - oDolphinRiderZombie, - oPoleVaultingZombie, - oSnorkelZombie, - ], - PicArr: (function () { - return [ - "images/interface/background3.png", - "images/interface/trophy.png", - ]; - })(), - Coord: 2, - SunNum: 2500, - LF: [0, 1, 1, 2, 2, 1, 1], - backgroundImage: "images/interface/background3.png", - CanSelectCard: 1, - LevelName: "靠天吃饭", - LvlEName: "yy", - LargeWaveFlag: { - 10: $("imgFlag4"), - 20: $("imgFlag3"), - 30: $("imgFlag2"), - 40: $("imgFlag1"), - }, - UserDefinedFlagFunc: function (a) { - oP.FlagNum == oP.FlagZombies && - oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie2]); - }, - StartGameMusic: "GrazeTheRoof2", - StartGame: function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - ar: [], - f: function () { - oSym.TimeStep = 4; - }, - }); - BeginCool(); - AutoProduceSun(25); - oSym.addTask( - 1500, - function () { - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }, - [] - ); - }); - }, - }, - { - AZ: [ - [oZombie, 2, 1], - [oZombie2, 1, 1], - [oZombie3, 1, 1], - [oNewspaperZombie, 1, 5], - [oPoleVaultingZombie, 1, 10], - [oDuckyTubeZombie1, 1, 20], - [oScreenDoorZombie, 1, 12], - [oDolphinRiderZombie, 1, 20], - [oSnorkelZombie, 1, 25], - ], - FlagNum: 40, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25, 48, 60], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowLargeWave, 0], - 39: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(0); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oJalapeno, + oSpikeweed, + oRepeater, + oSquash, + oTorchwood, + oLilyPad, + oTangleKlep, + oTallNut, + oTenManNut, + oSnowRepeater, + oCattail, + oLotusRoot, + oIceFumeShroom, + oLaserBean, + oBigChomper, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oDuckyTubeZombie1, + oScreenDoorZombie, + oNewspaperZombie, + oDolphinRiderZombie, + oPoleVaultingZombie, + oSnorkelZombie, + ], + PicArr: (function () { + return [ + "images/interface/background3.png", + "images/interface/trophy.png", + ]; + })(), + Coord: 2, + SunNum: 2500, + LF: [0, 1, 1, 2, 2, 1, 1], + backgroundImage: "images/interface/background3.png", + CanSelectCard: 1, + LevelName: "靠天吃饭", + LvlEName: "yy", + LargeWaveFlag: { + 10: $("imgFlag4"), + 20: $("imgFlag3"), + 30: $("imgFlag2"), + 40: $("imgFlag1"), + }, + UserDefinedFlagFunc: function (a) { + oP.FlagNum == oP.FlagZombies && + oP.SetTimeoutWaterZombie(6, 9, 3, [oDuckyTubeZombie2]); + }, + StartGameMusic: "GrazeTheRoof2", + StartGame: function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + ar: [], + f: function () { + oSym.TimeStep = 4; + }, + }); + BeginCool(); + AutoProduceSun(25); + oSym.addTask( + 1500, + function () { + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }, + [] + ); + }); + }, + }, + { + AZ: [ + [oZombie, 2, 1], + [oZombie2, 1, 1], + [oZombie3, 1, 1], + [oNewspaperZombie, 1, 5], + [oPoleVaultingZombie, 1, 10], + [oDuckyTubeZombie1, 1, 20], + [oScreenDoorZombie, 1, 12], + [oDolphinRiderZombie, 1, 20], + [oSnorkelZombie, 1, 25], + ], + FlagNum: 40, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25, 48, 60], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowLargeWave, 0], + 39: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(0); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/unsodded.js b/game/level/unsodded.js index a33324d8..c4621511 100644 --- a/game/level/unsodded.js +++ b/game/level/unsodded.js @@ -1,99 +1,99 @@ oS.Init( - { - PName: [ - oPeashooter, - oSunFlower, - oCherryBomb, - oWallNut, - oPotatoMine, - oSnowPea, - oChomper, - oSplitPea, - oJalapeno, - oSpikeweed, - oRepeater, - oTallNut, - oPumpkinHead, - oSquash, - oFlowerPot, - oTorchwood, - oThreepeater, - oGatlingPea, - oTwinSunflower, - oSpikerock, - oFumeShroom, - oCoffeeBean, - oGloomShroom, - oSunShroom, - oPuffShroom, - oScaredyShroom, - oStarfruit, - oGarlic, - oTenManNut, - oSnowRepeater, - oIceFumeShroom, - oLaserBean, - oFlamesMushroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oConeheadZombie, - oPoleVaultingZombie, - oBucketheadZombie, - ], - PicArr: ["images/interface/background1unsodded2.jpg"], - backgroundImage: "images/interface/background1unsodded2.jpg", - CanSelectCard: 1, - SunNum: 150, - LF: [0, 0, 1, 1, 1, 0], - ZF: [0, 1, 1, 1, 1, 1], - LevelName: "Unsodded", - LvlEName: "Unsodded", - LargeWaveFlag: { - 10: $("imgFlag3"), - 20: $("imgFlag2"), - 30: $("imgFlag1"), - }, - }, - { - AZ: [ - [oZombie, 2, 1], - [oZombie2, 2, 1], - [oZombie3, 2, 1], - [oConeheadZombie, 2, 1], - [oPoleVaultingZombie, 1, 1], - [oBucketheadZombie, 1, 1], - ], - FlagNum: 30, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], - a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], - }, - FlagToMonitor: { - 9: [ShowLargeWave, 0], - 19: [ShowLargeWave, 0], - 29: [ShowFinalWave, 0], - }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(0); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:185px;left:676px", - EDAll - ); - }, - } + { + PName: [ + oPeashooter, + oSunFlower, + oCherryBomb, + oWallNut, + oPotatoMine, + oSnowPea, + oChomper, + oSplitPea, + oJalapeno, + oSpikeweed, + oRepeater, + oTallNut, + oPumpkinHead, + oSquash, + oFlowerPot, + oTorchwood, + oThreepeater, + oGatlingPea, + oTwinSunflower, + oSpikerock, + oFumeShroom, + oCoffeeBean, + oGloomShroom, + oSunShroom, + oPuffShroom, + oScaredyShroom, + oStarfruit, + oGarlic, + oTenManNut, + oSnowRepeater, + oIceFumeShroom, + oLaserBean, + oFlamesMushroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oConeheadZombie, + oPoleVaultingZombie, + oBucketheadZombie, + ], + PicArr: ["images/interface/background1unsodded2.jpg"], + backgroundImage: "images/interface/background1unsodded2.jpg", + CanSelectCard: 1, + SunNum: 150, + LF: [0, 0, 1, 1, 1, 0], + ZF: [0, 1, 1, 1, 1, 1], + LevelName: "Unsodded", + LvlEName: "Unsodded", + LargeWaveFlag: { + 10: $("imgFlag3"), + 20: $("imgFlag2"), + 30: $("imgFlag1"), + }, + }, + { + AZ: [ + [oZombie, 2, 1], + [oZombie2, 2, 1], + [oZombie3, 2, 1], + [oConeheadZombie, 2, 1], + [oPoleVaultingZombie, 1, 1], + [oBucketheadZombie, 1, 1], + ], + FlagNum: 30, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 20, 23, 25, 29], + a2: [1, 2, 3, 10, 4, 5, 6, 15, 7, 8, 9, 25], + }, + FlagToMonitor: { + 9: [ShowLargeWave, 0], + 19: [ShowLargeWave, 0], + 29: [ShowFinalWave, 0], + }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(0); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:185px;left:676px", + EDAll + ); + }, + } ); diff --git a/game/level/vasebreaker1.js b/game/level/vasebreaker1.js index 2605a09d..1c19f635 100644 --- a/game/level/vasebreaker1.js +++ b/game/level/vasebreaker1.js @@ -1,101 +1,101 @@ // VaseKiller1 oS.Init( - { - PName: [oCherryBomb, oSeedPeashooter, oSeedSnowPea, oSeedSquash], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oBucketheadZombie, - oJackinTheBoxZombie, - ], - PicArr: [ - "images/interface/background2.jpg", - "images/interface/trophy.png", - "images/interface/PointerDown.gif", - "images/interface/Stripe.png", - ], - backgroundImage: "images/interface/background2.jpg", - DKind: 0, - ShowScroll: false, - ProduceSun: false, - LevelName: "Vasebreaker", - LvlEName: "vasebreaker1", - CanSelectCard: 0, - StartGameMusic: "Cerebrawl", - SunNum: 0, - RiddleAutoGrow: function () { - var P = oS.VaseArP, - L = P.Left, - R = P.Right, - GNum = P.GreenNum, - VaseList = [], - GroundList = []; + { + PName: [oCherryBomb, oSeedPeashooter, oSeedSnowPea, oSeedSquash], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oBucketheadZombie, + oJackinTheBoxZombie, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/PointerDown.gif", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + DKind: 0, + ShowScroll: false, + ProduceSun: false, + LevelName: "Vasebreaker", + LvlEName: "vasebreaker1", + CanSelectCard: 0, + StartGameMusic: "Cerebrawl", + SunNum: 0, + RiddleAutoGrow: function () { + var P = oS.VaseArP, + L = P.Left, + R = P.Right, + GNum = P.GreenNum, + VaseList = [], + GroundList = []; - // 生成罐子列表 - for (var O in P.ZombieP) - VaseList.push({ - Type: "Zombie", - Value: oS.ZName[P.ZombieP[O]], - }); - for (var O in P.PlantP) - VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); - for (var O in P.SunP) - VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); + // 生成罐子列表 + for (var O in P.ZombieP) + VaseList.push({ + Type: "Zombie", + Value: oS.ZName[P.ZombieP[O]], + }); + for (var O in P.PlantP) + VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); + for (var O in P.SunP) + VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); - // 生成格子列表 - for (; L <= R; ++L) - for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); + // 生成格子列表 + for (; L <= R; ++L) + for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); - // 打乱两者 - VaseList.sort(function () { - return Math.random() - 0.5; - }); - GroundList.sort(function () { - return Math.random() - 0.5; - }); + // 打乱两者 + VaseList.sort(function () { + return Math.random() - 0.5; + }); + GroundList.sort(function () { + return Math.random() - 0.5; + }); - // 生成罐子 - while (VaseList.length && GroundList.length) { - var Top = VaseList[VaseList.length - 1], - Pos = GroundList[GroundList.length - 1]; + // 生成罐子 + while (VaseList.length && GroundList.length) { + var Top = VaseList[VaseList.length - 1], + Pos = GroundList[GroundList.length - 1]; - oFlowerVase.prototype.SpecialBirth( - Pos[0], - Pos[1], - Top.Type == "Plants" ? GNum-- > 0 : 0, - Top - ); // 生成罐子 + oFlowerVase.prototype.SpecialBirth( + Pos[0], + Pos[1], + Top.Type == "Plants" ? GNum-- > 0 : 0, + Top + ); // 生成罐子 - --VaseList.length, --GroundList.length; - } - }, - StartGame: function () { - oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - for (var i in ArCard) DoCoolTimer(i, 0); - var f = function () { - // 检测这一部分是否结束 - if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); - else oSym.addTask(100, f, []); - }; + --VaseList.length, --GroundList.length; + } + }, + StartGame: function () { + oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + for (var i in ArCard) DoCoolTimer(i, 0); + var f = function () { + // 检测这一部分是否结束 + if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); + else oSym.addTask(100, f, []); + }; - oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 - }, - VaseArP: { - GreenNum: 2, - Left: 5, - Right: 9, - ZombieP: [0, 0, 1, 1, 2, 2, 3, 3, 3, 4], - PlantP: [1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3], - SunP: [], - }, - }, - 0, - { - AutoSelectCard: function () { - // 只选择樱桃炸弹 - SelectCard(oCherryBomb.prototype.EName); - }, - } + oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 + }, + VaseArP: { + GreenNum: 2, + Left: 5, + Right: 9, + ZombieP: [0, 0, 1, 1, 2, 2, 3, 3, 3, 4], + PlantP: [1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3], + SunP: [], + }, + }, + 0, + { + AutoSelectCard: function () { + // 只选择樱桃炸弹 + SelectCard(oCherryBomb.prototype.EName); + }, + } ); diff --git a/game/level/vasebreaker2.js b/game/level/vasebreaker2.js index 8539ff92..3fe65f60 100644 --- a/game/level/vasebreaker2.js +++ b/game/level/vasebreaker2.js @@ -1,107 +1,107 @@ // VaseKiller2 oS.Init( - { - PName: [ - oCherryBomb, - oSeedRepeater2, - oSeedSnowPea, - oSeedWallNut, - oSeedPotatoMine, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oBucketheadZombie, - oJackinTheBoxZombie, - ], - PicArr: [ - "images/interface/background2.jpg", - "images/interface/trophy.png", - "images/interface/PointerDown.gif", - "images/interface/Stripe.png", - ], - backgroundImage: "images/interface/background2.jpg", - DKind: 0, - ShowScroll: false, - ProduceSun: false, - LevelName: "To the Left", - LvlEName: "vasebreaker2", - CanSelectCard: 0, - StartGameMusic: "Cerebrawl", - SunNum: 0, - RiddleAutoGrow: function () { - var P = oS.VaseArP, - L = P.Left, - R = P.Right, - GNum = P.GreenNum, - VaseList = [], - GroundList = []; + { + PName: [ + oCherryBomb, + oSeedRepeater2, + oSeedSnowPea, + oSeedWallNut, + oSeedPotatoMine, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oBucketheadZombie, + oJackinTheBoxZombie, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/PointerDown.gif", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + DKind: 0, + ShowScroll: false, + ProduceSun: false, + LevelName: "To the Left", + LvlEName: "vasebreaker2", + CanSelectCard: 0, + StartGameMusic: "Cerebrawl", + SunNum: 0, + RiddleAutoGrow: function () { + var P = oS.VaseArP, + L = P.Left, + R = P.Right, + GNum = P.GreenNum, + VaseList = [], + GroundList = []; - // 生成罐子列表 - for (var O in P.ZombieP) - VaseList.push({ - Type: "Zombie", - Value: oS.ZName[P.ZombieP[O]], - }); - for (var O in P.PlantP) - VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); - for (var O in P.SunP) - VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); + // 生成罐子列表 + for (var O in P.ZombieP) + VaseList.push({ + Type: "Zombie", + Value: oS.ZName[P.ZombieP[O]], + }); + for (var O in P.PlantP) + VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); + for (var O in P.SunP) + VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); - // 生成格子列表 - for (; L <= R; ++L) - for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); + // 生成格子列表 + for (; L <= R; ++L) + for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); - // 打乱两者 - VaseList.sort(function () { - return Math.random() - 0.5; - }); - GroundList.sort(function () { - return Math.random() - 0.5; - }); + // 打乱两者 + VaseList.sort(function () { + return Math.random() - 0.5; + }); + GroundList.sort(function () { + return Math.random() - 0.5; + }); - // 生成罐子 - while (VaseList.length && GroundList.length) { - var Top = VaseList[VaseList.length - 1], - Pos = GroundList[GroundList.length - 1]; + // 生成罐子 + while (VaseList.length && GroundList.length) { + var Top = VaseList[VaseList.length - 1], + Pos = GroundList[GroundList.length - 1]; - oFlowerVase.prototype.SpecialBirth( - Pos[0], - Pos[1], - Top.Type == "Plants" ? GNum-- > 0 : 0, - Top - ); // 生成罐子 + oFlowerVase.prototype.SpecialBirth( + Pos[0], + Pos[1], + Top.Type == "Plants" ? GNum-- > 0 : 0, + Top + ); // 生成罐子 - --VaseList.length, --GroundList.length; - } - }, - StartGame: function () { - oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - for (var i in ArCard) DoCoolTimer(i, 0); - var f = function () { - // 检测这一部分是否结束 - if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); - else oSym.addTask(100, f, []); - }; + --VaseList.length, --GroundList.length; + } + }, + StartGame: function () { + oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + for (var i in ArCard) DoCoolTimer(i, 0); + var f = function () { + // 检测这一部分是否结束 + if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); + else oSym.addTask(100, f, []); + }; - oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 - }, - VaseArP: { - GreenNum: 2, - Left: 4, - Right: 8, - ZombieP: [0, 0, 1, 1, 2, 2, 3, 3, 3, 4], - PlantP: [1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4], - SunP: [], - }, - }, - 0, - { - AutoSelectCard: function () { - // 只选择樱桃炸弹 - SelectCard(oCherryBomb.prototype.EName); - }, - } + oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 + }, + VaseArP: { + GreenNum: 2, + Left: 4, + Right: 8, + ZombieP: [0, 0, 1, 1, 2, 2, 3, 3, 3, 4], + PlantP: [1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4], + SunP: [], + }, + }, + 0, + { + AutoSelectCard: function () { + // 只选择樱桃炸弹 + SelectCard(oCherryBomb.prototype.EName); + }, + } ); diff --git a/game/level/vasebreaker3.js b/game/level/vasebreaker3.js index 8303f818..5d21919b 100644 --- a/game/level/vasebreaker3.js +++ b/game/level/vasebreaker3.js @@ -1,111 +1,111 @@ // VaseKiller3 oS.Init( - { - PName: [ - oCherryBomb, - oSeedRepeater2, - oSeedSnowPea, - oSeedWallNut, - oSeedSquash, - oSeedHypnoShroom, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oBucketheadZombie, - oDancingZombie, - oJackinTheBoxZombie, - oBackupDancer, - ], - PicArr: [ - "images/interface/background2.jpg", - "images/interface/trophy.png", - "images/interface/PointerDown.gif", - "images/interface/Stripe.png", - ], - backgroundImage: "images/interface/background2.jpg", - DKind: 0, - ShowScroll: false, - ProduceSun: false, - LevelName: "Third Vase", - LvlEName: "vasebreaker3", - CanSelectCard: 0, - StartGameMusic: "Cerebrawl", - SunNum: 0, - RiddleAutoGrow: function () { - var P = oS.VaseArP, - L = P.Left, - R = P.Right, - GNum = P.GreenNum, - VaseList = [], - GroundList = []; + { + PName: [ + oCherryBomb, + oSeedRepeater2, + oSeedSnowPea, + oSeedWallNut, + oSeedSquash, + oSeedHypnoShroom, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oBucketheadZombie, + oDancingZombie, + oJackinTheBoxZombie, + oBackupDancer, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/PointerDown.gif", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + DKind: 0, + ShowScroll: false, + ProduceSun: false, + LevelName: "Third Vase", + LvlEName: "vasebreaker3", + CanSelectCard: 0, + StartGameMusic: "Cerebrawl", + SunNum: 0, + RiddleAutoGrow: function () { + var P = oS.VaseArP, + L = P.Left, + R = P.Right, + GNum = P.GreenNum, + VaseList = [], + GroundList = []; - // 生成罐子列表 - for (var O in P.ZombieP) - VaseList.push({ - Type: "Zombie", - Value: oS.ZName[P.ZombieP[O]], - }); - for (var O in P.PlantP) - VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); - for (var O in P.SunP) - VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); + // 生成罐子列表 + for (var O in P.ZombieP) + VaseList.push({ + Type: "Zombie", + Value: oS.ZName[P.ZombieP[O]], + }); + for (var O in P.PlantP) + VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); + for (var O in P.SunP) + VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); - // 生成格子列表 - for (; L <= R; ++L) - for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); + // 生成格子列表 + for (; L <= R; ++L) + for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); - // 打乱两者 - VaseList.sort(function () { - return Math.random() - 0.5; - }); - GroundList.sort(function () { - return Math.random() - 0.5; - }); + // 打乱两者 + VaseList.sort(function () { + return Math.random() - 0.5; + }); + GroundList.sort(function () { + return Math.random() - 0.5; + }); - // 生成罐子 - while (VaseList.length && GroundList.length) { - var Top = VaseList[VaseList.length - 1], - Pos = GroundList[GroundList.length - 1]; + // 生成罐子 + while (VaseList.length && GroundList.length) { + var Top = VaseList[VaseList.length - 1], + Pos = GroundList[GroundList.length - 1]; - oFlowerVase.prototype.SpecialBirth( - Pos[0], - Pos[1], - Top.Type == "Plants" ? GNum-- > 0 : 0, - Top - ); // 生成罐子 + oFlowerVase.prototype.SpecialBirth( + Pos[0], + Pos[1], + Top.Type == "Plants" ? GNum-- > 0 : 0, + Top + ); // 生成罐子 - --VaseList.length, --GroundList.length; - } - }, - StartGame: function () { - oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - for (var i in ArCard) DoCoolTimer(i, 0); - var f = function () { - // 检测这一部分是否结束 - if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); - else oSym.addTask(100, f, []); - }; + --VaseList.length, --GroundList.length; + } + }, + StartGame: function () { + oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + for (var i in ArCard) DoCoolTimer(i, 0); + var f = function () { + // 检测这一部分是否结束 + if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); + else oSym.addTask(100, f, []); + }; - oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 - }, + oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 + }, - VaseArP: { - GreenNum: 2, - Left: 4, - Right: 9, - ZombieP: [0, 0, 0, 1, 1, 1, 2, 2, 3, 3, 4, 5], - PlantP: [1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 5], - SunP: [], - }, - }, - 0, - { - AutoSelectCard: function () { - // 只选择樱桃炸弹 - SelectCard(oCherryBomb.prototype.EName); - }, - } + VaseArP: { + GreenNum: 2, + Left: 4, + Right: 9, + ZombieP: [0, 0, 0, 1, 1, 1, 2, 2, 3, 3, 4, 5], + PlantP: [1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 5], + SunP: [], + }, + }, + 0, + { + AutoSelectCard: function () { + // 只选择樱桃炸弹 + SelectCard(oCherryBomb.prototype.EName); + }, + } ); diff --git a/game/level/vasebreaker4.js b/game/level/vasebreaker4.js index 96759266..27214cbe 100644 --- a/game/level/vasebreaker4.js +++ b/game/level/vasebreaker4.js @@ -1,102 +1,102 @@ // VaseKiller4 oS.Init( - { - PName: [oCherryBomb, oSeedRepeater2, oSeedPuffShroom, oSeedHypnoShroom], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oFootballZombie, - oJackinTheBoxZombie, - ], - PicArr: [ - "images/interface/background2.jpg", - "images/interface/trophy.png", - "images/interface/PointerDown.gif", - "images/interface/Stripe.png", - ], - backgroundImage: "images/interface/background2.jpg", - DKind: 0, - ShowScroll: false, - ProduceSun: false, - LevelName: "Chain Reaction", - LvlEName: "vasebreaker4", - CanSelectCard: 0, - StartGameMusic: "Cerebrawl", - SunNum: 0, - RiddleAutoGrow: function () { - var P = oS.VaseArP, - L = P.Left, - R = P.Right, - GNum = P.GreenNum, - VaseList = [], - GroundList = []; + { + PName: [oCherryBomb, oSeedRepeater2, oSeedPuffShroom, oSeedHypnoShroom], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oFootballZombie, + oJackinTheBoxZombie, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/PointerDown.gif", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + DKind: 0, + ShowScroll: false, + ProduceSun: false, + LevelName: "Chain Reaction", + LvlEName: "vasebreaker4", + CanSelectCard: 0, + StartGameMusic: "Cerebrawl", + SunNum: 0, + RiddleAutoGrow: function () { + var P = oS.VaseArP, + L = P.Left, + R = P.Right, + GNum = P.GreenNum, + VaseList = [], + GroundList = []; - // 生成罐子列表 - for (var O in P.ZombieP) - VaseList.push({ - Type: "Zombie", - Value: oS.ZName[P.ZombieP[O]], - }); - for (var O in P.PlantP) - VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); - for (var O in P.SunP) - VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); + // 生成罐子列表 + for (var O in P.ZombieP) + VaseList.push({ + Type: "Zombie", + Value: oS.ZName[P.ZombieP[O]], + }); + for (var O in P.PlantP) + VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); + for (var O in P.SunP) + VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); - // 生成格子列表 - for (; L <= R; ++L) - for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); + // 生成格子列表 + for (; L <= R; ++L) + for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); - // 打乱两者 - VaseList.sort(function () { - return Math.random() - 0.5; - }); - GroundList.sort(function () { - return Math.random() - 0.5; - }); + // 打乱两者 + VaseList.sort(function () { + return Math.random() - 0.5; + }); + GroundList.sort(function () { + return Math.random() - 0.5; + }); - // 生成罐子 - while (VaseList.length && GroundList.length) { - var Top = VaseList[VaseList.length - 1], - Pos = GroundList[GroundList.length - 1]; + // 生成罐子 + while (VaseList.length && GroundList.length) { + var Top = VaseList[VaseList.length - 1], + Pos = GroundList[GroundList.length - 1]; - oFlowerVase.prototype.SpecialBirth( - Pos[0], - Pos[1], - Top.Type == "Plants" ? GNum-- > 0 : 0, - Top - ); // 生成罐子 + oFlowerVase.prototype.SpecialBirth( + Pos[0], + Pos[1], + Top.Type == "Plants" ? GNum-- > 0 : 0, + Top + ); // 生成罐子 - --VaseList.length, --GroundList.length; - } - }, - StartGame: function () { - oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - for (var i in ArCard) DoCoolTimer(i, 0); - var f = function () { - // 检测这一部分是否结束 - if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); - else oSym.addTask(100, f, []); - }; + --VaseList.length, --GroundList.length; + } + }, + StartGame: function () { + oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + for (var i in ArCard) DoCoolTimer(i, 0); + var f = function () { + // 检测这一部分是否结束 + if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); + else oSym.addTask(100, f, []); + }; - oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 - }, + oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 + }, - VaseArP: { - GreenNum: 2, - Left: 3, - Right: 9, - ZombieP: [0, 0, 0, 1, 1, 2, 2, 3, 4, 4, 4, 4, 4, 4, 4, 4], - PlantP: [1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3], - SunP: [], - }, - }, - 0, - { - AutoSelectCard: function () { - // 只选择樱桃炸弹 - SelectCard(oCherryBomb.prototype.EName); - }, - } + VaseArP: { + GreenNum: 2, + Left: 3, + Right: 9, + ZombieP: [0, 0, 0, 1, 1, 2, 2, 3, 4, 4, 4, 4, 4, 4, 4, 4], + PlantP: [1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3], + SunP: [], + }, + }, + 0, + { + AutoSelectCard: function () { + // 只选择樱桃炸弹 + SelectCard(oCherryBomb.prototype.EName); + }, + } ); diff --git a/game/level/vasebreaker5.js b/game/level/vasebreaker5.js index 51daab15..a0371b61 100644 --- a/game/level/vasebreaker5.js +++ b/game/level/vasebreaker5.js @@ -1,113 +1,113 @@ // VaseKiller5 oS.Init( - { - PName: [ - oCherryBomb, - oSeedRepeater2, - oSeedHypnoShroom, - oSeedSnowPea, - oSeedPumpkinHead, - oSeedThreepeater, - oSeedSquash, - ], - ZName: [ - oZombie, - oZombie2, - oBucketheadZombie, - oFootballZombie, - oJackinTheBoxZombie, - ], - PicArr: [ - "images/interface/background2.jpg", - "images/interface/trophy.png", - "images/interface/PointerDown.gif", - "images/interface/Stripe.png", - ], - backgroundImage: "images/interface/background2.jpg", - DKind: 0, - ShowScroll: false, - ProduceSun: false, - LevelName: "M is for Metal", - LvlEName: "vasebreaker5", - CanSelectCard: 0, - StartGameMusic: "Cerebrawl", - SunNum: 0, - RiddleAutoGrow: function () { - var P = oS.VaseArP, - L = P.Left, - R = P.Right, - GNum = P.GreenNum, - VaseList = [], - GroundList = []; + { + PName: [ + oCherryBomb, + oSeedRepeater2, + oSeedHypnoShroom, + oSeedSnowPea, + oSeedPumpkinHead, + oSeedThreepeater, + oSeedSquash, + ], + ZName: [ + oZombie, + oZombie2, + oBucketheadZombie, + oFootballZombie, + oJackinTheBoxZombie, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/PointerDown.gif", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + DKind: 0, + ShowScroll: false, + ProduceSun: false, + LevelName: "M is for Metal", + LvlEName: "vasebreaker5", + CanSelectCard: 0, + StartGameMusic: "Cerebrawl", + SunNum: 0, + RiddleAutoGrow: function () { + var P = oS.VaseArP, + L = P.Left, + R = P.Right, + GNum = P.GreenNum, + VaseList = [], + GroundList = []; - // 生成罐子列表 - for (var O in P.ZombieP) - VaseList.push({ - Type: "Zombie", - Value: oS.ZName[P.ZombieP[O]], - }); - for (var O in P.PlantP) - VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); - for (var O in P.SunP) - VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); + // 生成罐子列表 + for (var O in P.ZombieP) + VaseList.push({ + Type: "Zombie", + Value: oS.ZName[P.ZombieP[O]], + }); + for (var O in P.PlantP) + VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); + for (var O in P.SunP) + VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); - // 生成格子列表 - for (; L <= R; ++L) - for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); + // 生成格子列表 + for (; L <= R; ++L) + for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); - // 打乱两者 - VaseList.sort(function () { - return Math.random() - 0.5; - }); - GroundList.sort(function () { - return Math.random() - 0.5; - }); + // 打乱两者 + VaseList.sort(function () { + return Math.random() - 0.5; + }); + GroundList.sort(function () { + return Math.random() - 0.5; + }); - // 生成罐子 - while (VaseList.length && GroundList.length) { - var Top = VaseList[VaseList.length - 1], - Pos = GroundList[GroundList.length - 1]; + // 生成罐子 + while (VaseList.length && GroundList.length) { + var Top = VaseList[VaseList.length - 1], + Pos = GroundList[GroundList.length - 1]; - oFlowerVase.prototype.SpecialBirth( - Pos[0], - Pos[1], - Top.Type == "Plants" ? GNum-- > 0 : 0, - Top - ); // 生成罐子 + oFlowerVase.prototype.SpecialBirth( + Pos[0], + Pos[1], + Top.Type == "Plants" ? GNum-- > 0 : 0, + Top + ); // 生成罐子 - --VaseList.length, --GroundList.length; - } - }, - StartGame: function () { - oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - for (var i in ArCard) DoCoolTimer(i, 0); - var f = function () { - // 检测这一部分是否结束 - if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); - else oSym.addTask(100, f, []); - }; + --VaseList.length, --GroundList.length; + } + }, + StartGame: function () { + oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + for (var i in ArCard) DoCoolTimer(i, 0); + var f = function () { + // 检测这一部分是否结束 + if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); + else oSym.addTask(100, f, []); + }; - oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 - }, + oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 + }, - VaseArP: { - GreenNum: 2, - Left: 3, - Right: 9, - ZombieP: [0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4], + VaseArP: { + GreenNum: 2, + Left: 3, + Right: 9, + ZombieP: [0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4], - PlantP: [ - 1, 1, 1, 1, 1, 1, 2, 2, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 6, - ], - SunP: [], - }, - }, - 0, - { - AutoSelectCard: function () { - // 只选择樱桃炸弹 - SelectCard(oCherryBomb.prototype.EName); - }, - } + PlantP: [ + 1, 1, 1, 1, 1, 1, 2, 2, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 6, + ], + SunP: [], + }, + }, + 0, + { + AutoSelectCard: function () { + // 只选择樱桃炸弹 + SelectCard(oCherryBomb.prototype.EName); + }, + } ); diff --git a/game/level/vasebreaker6.js b/game/level/vasebreaker6.js index 851e7891..7a1c3b3b 100644 --- a/game/level/vasebreaker6.js +++ b/game/level/vasebreaker6.js @@ -1,112 +1,112 @@ // VaseKiller6 oS.Init( - { - PName: [ - oCherryBomb, - oSeedRepeater2, - oSeedTallNut, - oSeedTorchwood, - oSeedSquash, - oSeedThreepeater, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oPoleVaultingZombie, - oFootballZombie, - oJackinTheBoxZombie, - ], - PicArr: [ - "images/interface/background2.jpg", - "images/interface/trophy.png", - "images/interface/PointerDown.gif", - "images/interface/Stripe.png", - ], - backgroundImage: "images/interface/background2.jpg", - DKind: 0, - ShowScroll: false, - ProduceSun: false, - LevelName: "Scary Potter", - LvlEName: "vasebreaker6", - CanSelectCard: 0, - StartGameMusic: "Cerebrawl", - SunNum: 0, - RiddleAutoGrow: function () { - var P = oS.VaseArP, - L = P.Left, - R = P.Right, - GNum = P.GreenNum, - VaseList = [], - GroundList = []; + { + PName: [ + oCherryBomb, + oSeedRepeater2, + oSeedTallNut, + oSeedTorchwood, + oSeedSquash, + oSeedThreepeater, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oPoleVaultingZombie, + oFootballZombie, + oJackinTheBoxZombie, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/PointerDown.gif", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + DKind: 0, + ShowScroll: false, + ProduceSun: false, + LevelName: "Scary Potter", + LvlEName: "vasebreaker6", + CanSelectCard: 0, + StartGameMusic: "Cerebrawl", + SunNum: 0, + RiddleAutoGrow: function () { + var P = oS.VaseArP, + L = P.Left, + R = P.Right, + GNum = P.GreenNum, + VaseList = [], + GroundList = []; - // 生成罐子列表 - for (var O in P.ZombieP) - VaseList.push({ - Type: "Zombie", - Value: oS.ZName[P.ZombieP[O]], - }); - for (var O in P.PlantP) - VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); - for (var O in P.SunP) - VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); + // 生成罐子列表 + for (var O in P.ZombieP) + VaseList.push({ + Type: "Zombie", + Value: oS.ZName[P.ZombieP[O]], + }); + for (var O in P.PlantP) + VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); + for (var O in P.SunP) + VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); - // 生成格子列表 - for (; L <= R; ++L) - for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); + // 生成格子列表 + for (; L <= R; ++L) + for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); - // 打乱两者 - VaseList.sort(function () { - return Math.random() - 0.5; - }); - GroundList.sort(function () { - return Math.random() - 0.5; - }); + // 打乱两者 + VaseList.sort(function () { + return Math.random() - 0.5; + }); + GroundList.sort(function () { + return Math.random() - 0.5; + }); - // 生成罐子 - while (VaseList.length && GroundList.length) { - var Top = VaseList[VaseList.length - 1], - Pos = GroundList[GroundList.length - 1]; + // 生成罐子 + while (VaseList.length && GroundList.length) { + var Top = VaseList[VaseList.length - 1], + Pos = GroundList[GroundList.length - 1]; - oFlowerVase.prototype.SpecialBirth( - Pos[0], - Pos[1], - Top.Type == "Plants" ? GNum-- > 0 : 0, - Top - ); // 生成罐子 + oFlowerVase.prototype.SpecialBirth( + Pos[0], + Pos[1], + Top.Type == "Plants" ? GNum-- > 0 : 0, + Top + ); // 生成罐子 - --VaseList.length, --GroundList.length; - } - }, - StartGame: function () { - oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - for (var i in ArCard) DoCoolTimer(i, 0); - var f = function () { - // 检测这一部分是否结束 - if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); - else oSym.addTask(100, f, []); - }; + --VaseList.length, --GroundList.length; + } + }, + StartGame: function () { + oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + for (var i in ArCard) DoCoolTimer(i, 0); + var f = function () { + // 检测这一部分是否结束 + if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); + else oSym.addTask(100, f, []); + }; - oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 - }, + oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 + }, - VaseArP: { - GreenNum: 2, - Left: 3, - Right: 9, - ZombieP: [0, 0, 0, 1, 1, 2, 2, 3, 3, 3, 3, 3, 4, 4, 5], - PlantP: [ - 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 5, 5, - ], - SunP: [], - }, - }, - 0, - { - AutoSelectCard: function () { - // 只选择樱桃炸弹 - SelectCard(oCherryBomb.prototype.EName); - }, - } + VaseArP: { + GreenNum: 2, + Left: 3, + Right: 9, + ZombieP: [0, 0, 0, 1, 1, 2, 2, 3, 3, 3, 3, 3, 4, 4, 5], + PlantP: [ + 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 5, 5, + ], + SunP: [], + }, + }, + 0, + { + AutoSelectCard: function () { + // 只选择樱桃炸弹 + SelectCard(oCherryBomb.prototype.EName); + }, + } ); diff --git a/game/level/vasebreaker7.js b/game/level/vasebreaker7.js index 5fdeba32..0493f65d 100644 --- a/game/level/vasebreaker7.js +++ b/game/level/vasebreaker7.js @@ -1,96 +1,96 @@ // VaseKiller7 oS.Init( - { - PName: [oCherryBomb, oSeedSpikeweed, oSeedWallNut, oSeedSquash], - ZName: [oZombie, oZombie2, oZombie3, oBucketheadZombie], - PicArr: [ - "images/interface/background2.jpg", - "images/interface/trophy.png", - "images/interface/PointerDown.gif", - "images/interface/Stripe.png", - ], - backgroundImage: "images/interface/background2.jpg", - DKind: 0, - ShowScroll: false, - ProduceSun: false, - LevelName: "Hokey Pokey", - LvlEName: "vasebreaker7", - CanSelectCard: 0, - StartGameMusic: "Cerebrawl", - SunNum: 0, - RiddleAutoGrow: function () { - var P = oS.VaseArP, - L = P.Left, - R = P.Right, - GNum = P.GreenNum, - VaseList = [], - GroundList = []; + { + PName: [oCherryBomb, oSeedSpikeweed, oSeedWallNut, oSeedSquash], + ZName: [oZombie, oZombie2, oZombie3, oBucketheadZombie], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/PointerDown.gif", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + DKind: 0, + ShowScroll: false, + ProduceSun: false, + LevelName: "Hokey Pokey", + LvlEName: "vasebreaker7", + CanSelectCard: 0, + StartGameMusic: "Cerebrawl", + SunNum: 0, + RiddleAutoGrow: function () { + var P = oS.VaseArP, + L = P.Left, + R = P.Right, + GNum = P.GreenNum, + VaseList = [], + GroundList = []; - // 生成罐子列表 - for (var O in P.ZombieP) - VaseList.push({ - Type: "Zombie", - Value: oS.ZName[P.ZombieP[O]], - }); - for (var O in P.PlantP) - VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); - for (var O in P.SunP) - VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); + // 生成罐子列表 + for (var O in P.ZombieP) + VaseList.push({ + Type: "Zombie", + Value: oS.ZName[P.ZombieP[O]], + }); + for (var O in P.PlantP) + VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); + for (var O in P.SunP) + VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); - // 生成格子列表 - for (; L <= R; ++L) - for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); + // 生成格子列表 + for (; L <= R; ++L) + for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); - // 打乱两者 - VaseList.sort(function () { - return Math.random() - 0.5; - }); - GroundList.sort(function () { - return Math.random() - 0.5; - }); + // 打乱两者 + VaseList.sort(function () { + return Math.random() - 0.5; + }); + GroundList.sort(function () { + return Math.random() - 0.5; + }); - // 生成罐子 - while (VaseList.length && GroundList.length) { - var Top = VaseList[VaseList.length - 1], - Pos = GroundList[GroundList.length - 1]; + // 生成罐子 + while (VaseList.length && GroundList.length) { + var Top = VaseList[VaseList.length - 1], + Pos = GroundList[GroundList.length - 1]; - oFlowerVase.prototype.SpecialBirth( - Pos[0], - Pos[1], - Top.Type == "Plants" ? GNum-- > 0 : 0, - Top - ); // 生成罐子 + oFlowerVase.prototype.SpecialBirth( + Pos[0], + Pos[1], + Top.Type == "Plants" ? GNum-- > 0 : 0, + Top + ); // 生成罐子 - --VaseList.length, --GroundList.length; - } - }, - StartGame: function () { - oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - for (var i in ArCard) DoCoolTimer(i, 0); - var f = function () { - // 检测这一部分是否结束 - if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); - else oSym.addTask(100, f, []); - }; + --VaseList.length, --GroundList.length; + } + }, + StartGame: function () { + oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + for (var i in ArCard) DoCoolTimer(i, 0); + var f = function () { + // 检测这一部分是否结束 + if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); + else oSym.addTask(100, f, []); + }; - oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 - }, + oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 + }, - VaseArP: { - GreenNum: 2, - Left: 4, - Right: 9, - ZombieP: [0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 3], - PlantP: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3], - SunP: [], - }, - }, - 0, - { - AutoSelectCard: function () { - // 只选择樱桃炸弹 - SelectCard(oCherryBomb.prototype.EName); - }, - } + VaseArP: { + GreenNum: 2, + Left: 4, + Right: 9, + ZombieP: [0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 3], + PlantP: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3], + SunP: [], + }, + }, + 0, + { + AutoSelectCard: function () { + // 只选择樱桃炸弹 + SelectCard(oCherryBomb.prototype.EName); + }, + } ); diff --git a/game/level/vasebreaker8.js b/game/level/vasebreaker8.js index c81d2df7..4eb8b987 100644 --- a/game/level/vasebreaker8.js +++ b/game/level/vasebreaker8.js @@ -1,108 +1,108 @@ // VaseKiller4 oS.Init( - { - PName: [ - oCherryBomb, - oSeedRepeater2, - oSeedPuffShroom, - oSeedTallNut, - oSeedSquash, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oPoleVaultingZombie, - oJackinTheBoxZombie, - ], - PicArr: [ - "images/interface/background2.jpg", - "images/interface/trophy.png", - "images/interface/PointerDown.gif", - "images/interface/Stripe.png", - ], - backgroundImage: "images/interface/background2.jpg", - DKind: 0, - ShowScroll: false, - ProduceSun: false, - LevelName: "Another Chain Reaction", - LvlEName: "vasebreaker8", - CanSelectCard: 0, - StartGameMusic: "Cerebrawl", - SunNum: 0, - RiddleAutoGrow: function () { - var P = oS.VaseArP, - L = P.Left, - R = P.Right, - GNum = P.GreenNum, - VaseList = [], - GroundList = []; + { + PName: [ + oCherryBomb, + oSeedRepeater2, + oSeedPuffShroom, + oSeedTallNut, + oSeedSquash, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oPoleVaultingZombie, + oJackinTheBoxZombie, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/PointerDown.gif", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + DKind: 0, + ShowScroll: false, + ProduceSun: false, + LevelName: "Another Chain Reaction", + LvlEName: "vasebreaker8", + CanSelectCard: 0, + StartGameMusic: "Cerebrawl", + SunNum: 0, + RiddleAutoGrow: function () { + var P = oS.VaseArP, + L = P.Left, + R = P.Right, + GNum = P.GreenNum, + VaseList = [], + GroundList = []; - // 生成罐子列表 - for (var O in P.ZombieP) - VaseList.push({ - Type: "Zombie", - Value: oS.ZName[P.ZombieP[O]], - }); - for (var O in P.PlantP) - VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); - for (var O in P.SunP) - VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); + // 生成罐子列表 + for (var O in P.ZombieP) + VaseList.push({ + Type: "Zombie", + Value: oS.ZName[P.ZombieP[O]], + }); + for (var O in P.PlantP) + VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); + for (var O in P.SunP) + VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); - // 生成格子列表 - for (; L <= R; ++L) - for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); + // 生成格子列表 + for (; L <= R; ++L) + for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); - // 打乱两者 - VaseList.sort(function () { - return Math.random() - 0.5; - }); - GroundList.sort(function () { - return Math.random() - 0.5; - }); + // 打乱两者 + VaseList.sort(function () { + return Math.random() - 0.5; + }); + GroundList.sort(function () { + return Math.random() - 0.5; + }); - // 生成罐子 - while (VaseList.length && GroundList.length) { - var Top = VaseList[VaseList.length - 1], - Pos = GroundList[GroundList.length - 1]; + // 生成罐子 + while (VaseList.length && GroundList.length) { + var Top = VaseList[VaseList.length - 1], + Pos = GroundList[GroundList.length - 1]; - oFlowerVase.prototype.SpecialBirth( - Pos[0], - Pos[1], - Top.Type == "Plants" ? GNum-- > 0 : 0, - Top - ); // 生成罐子 + oFlowerVase.prototype.SpecialBirth( + Pos[0], + Pos[1], + Top.Type == "Plants" ? GNum-- > 0 : 0, + Top + ); // 生成罐子 - --VaseList.length, --GroundList.length; - } - }, - StartGame: function () { - oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - for (var i in ArCard) DoCoolTimer(i, 0); - var f = function () { - // 检测这一部分是否结束 - if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); - else oSym.addTask(100, f, []); - }; + --VaseList.length, --GroundList.length; + } + }, + StartGame: function () { + oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + for (var i in ArCard) DoCoolTimer(i, 0); + var f = function () { + // 检测这一部分是否结束 + if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); + else oSym.addTask(100, f, []); + }; - oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 - }, + oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 + }, - VaseArP: { - GreenNum: 2, - Left: 3, - Right: 9, - ZombieP: [0, 0, 1, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4], - PlantP: [1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3], - SunP: [], - }, - }, - 0, - { - AutoSelectCard: function () { - // 只选择樱桃炸弹 - SelectCard(oCherryBomb.prototype.EName); - }, - } + VaseArP: { + GreenNum: 2, + Left: 3, + Right: 9, + ZombieP: [0, 0, 1, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4], + PlantP: [1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3], + SunP: [], + }, + }, + 0, + { + AutoSelectCard: function () { + // 只选择樱桃炸弹 + SelectCard(oCherryBomb.prototype.EName); + }, + } ); diff --git a/game/level/vasebreaker9.js b/game/level/vasebreaker9.js index df647905..58edb0e5 100644 --- a/game/level/vasebreaker9.js +++ b/game/level/vasebreaker9.js @@ -1,115 +1,115 @@ // VaseKiller4 oS.Init( - { - PName: [ - oCherryBomb, - oSeedRepeater2, - oSeedWallNut, - oSeedPotatoMine, - oSeedSnowPea, - oSeedPeashooter, - oSeedSquash, - oSeedThreepeater, - oSeedPlantern, - ], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oJackinTheBoxZombie, - oBucketheadZombie, - oCXZombie, - ], - PicArr: [ - "images/interface/background2.jpg", - "images/interface/trophy.png", - "images/interface/PointerDown.gif", - "images/interface/Stripe.png", - ], - backgroundImage: "images/interface/background2.jpg", - DKind: 0, - ShowScroll: false, - ProduceSun: false, - LevelName: "Ace of Vase", - LvlEName: "vasebreaker9", - CanSelectCard: 0, - StartGameMusic: "Cerebrawl", - SunNum: 0, - RiddleAutoGrow: function () { - var P = oS.VaseArP, - L = P.Left, - R = P.Right, - GNum = P.GreenNum, - VaseList = [], - GroundList = []; + { + PName: [ + oCherryBomb, + oSeedRepeater2, + oSeedWallNut, + oSeedPotatoMine, + oSeedSnowPea, + oSeedPeashooter, + oSeedSquash, + oSeedThreepeater, + oSeedPlantern, + ], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oJackinTheBoxZombie, + oBucketheadZombie, + oCXZombie, + ], + PicArr: [ + "images/interface/background2.jpg", + "images/interface/trophy.png", + "images/interface/PointerDown.gif", + "images/interface/Stripe.png", + ], + backgroundImage: "images/interface/background2.jpg", + DKind: 0, + ShowScroll: false, + ProduceSun: false, + LevelName: "Ace of Vase", + LvlEName: "vasebreaker9", + CanSelectCard: 0, + StartGameMusic: "Cerebrawl", + SunNum: 0, + RiddleAutoGrow: function () { + var P = oS.VaseArP, + L = P.Left, + R = P.Right, + GNum = P.GreenNum, + VaseList = [], + GroundList = []; - // 生成罐子列表 - for (var O in P.ZombieP) - VaseList.push({ - Type: "Zombie", - Value: oS.ZName[P.ZombieP[O]], - }); - for (var O in P.PlantP) - VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); - for (var O in P.SunP) - VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); + // 生成罐子列表 + for (var O in P.ZombieP) + VaseList.push({ + Type: "Zombie", + Value: oS.ZName[P.ZombieP[O]], + }); + for (var O in P.PlantP) + VaseList.push({ Type: "Plants", Value: oS.PName[P.PlantP[O]] }); + for (var O in P.SunP) + VaseList.push({ Type: "SunNum", Value: P.SunP[O] }); - // 生成格子列表 - for (; L <= R; ++L) - for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); + // 生成格子列表 + for (; L <= R; ++L) + for (var Q = 1; Q <= oS.R; ++Q) GroundList.push([Q, L]); - // 打乱两者 - VaseList.sort(function () { - return Math.random() - 0.5; - }); - GroundList.sort(function () { - return Math.random() - 0.5; - }); + // 打乱两者 + VaseList.sort(function () { + return Math.random() - 0.5; + }); + GroundList.sort(function () { + return Math.random() - 0.5; + }); - // 生成罐子 - while (VaseList.length && GroundList.length) { - var Top = VaseList[VaseList.length - 1], - Pos = GroundList[GroundList.length - 1]; + // 生成罐子 + while (VaseList.length && GroundList.length) { + var Top = VaseList[VaseList.length - 1], + Pos = GroundList[GroundList.length - 1]; - oFlowerVase.prototype.SpecialBirth( - Pos[0], - Pos[1], - Top.Type == "Plants" ? GNum-- > 0 : 0, - Top - ); // 生成罐子 + oFlowerVase.prototype.SpecialBirth( + Pos[0], + Pos[1], + Top.Type == "Plants" ? GNum-- > 0 : 0, + Top + ); // 生成罐子 - --VaseList.length, --GroundList.length; - } - }, - StartGame: function () { - oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - for (var i in ArCard) DoCoolTimer(i, 0); - var f = function () { - // 检测这一部分是否结束 - if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); - else oSym.addTask(100, f, []); - }; + --VaseList.length, --GroundList.length; + } + }, + StartGame: function () { + oP.Monitor(), SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + StopMusic(), PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + for (var i in ArCard) DoCoolTimer(i, 0); + var f = function () { + // 检测这一部分是否结束 + if (oFlowerVase.prototype.GetLevelStatus()) oP.FlagToEnd(); + else oSym.addTask(100, f, []); + }; - oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 - }, + oS.RiddleAutoGrow(), f(); // f 的调用一定要在生成罐子后面 + }, - VaseArP: { - GreenNum: 2, - Left: 3, - Right: 9, - ZombieP: [0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 4, 4, 4, 4, 5], - PlantP: [ - 1, 1, 1, 1, 1, 1, 2, 3, 4, 4, 5, 5, 6, 6, 6, 6, 6, 7, 7, 8, - ], - SunP: [], - }, - }, - 0, - { - AutoSelectCard: function () { - // 只选择樱桃炸弹 - SelectCard(oCherryBomb.prototype.EName); - }, - } + VaseArP: { + GreenNum: 2, + Left: 3, + Right: 9, + ZombieP: [0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 4, 4, 4, 4, 5], + PlantP: [ + 1, 1, 1, 1, 1, 1, 2, 3, 4, 4, 5, 5, 6, 6, 6, 6, 6, 7, 7, 8, + ], + SunP: [], + }, + }, + 0, + { + AutoSelectCard: function () { + // 只选择樱桃炸弹 + SelectCard(oCherryBomb.prototype.EName); + }, + } ); diff --git a/game/level/vasebreakermenu.js b/game/level/vasebreakermenu.js index ebc6592d..143f508d 100644 --- a/game/level/vasebreakermenu.js +++ b/game/level/vasebreakermenu.js @@ -3,143 +3,143 @@ var customtitle = "I, Zombie Level Editor"; var customcolumns = 4; var customsun = 150; oS.Init({ - PicArr: (function () { - a = "images/interface/"; - return [ - ShadowPNG, - a + "BackButton.png", - a + "vasebreaker1.png", - a + "vasebreaker2.png", - a + "vasebreaker3.png", - a + "vasebreaker4.png", - a + "vasebreaker5.png", - a + "vasebreaker6.png", - a + "vasebreaker7.png", - a + "vasebreaker8.png", - a + "vasebreaker9.png", - a + "vasebreaker10.png", - ]; - })(), - LevelName: "I, Zombie Menu", - LevelEName: 150, - ShowScroll: 1, - LoadMusic: "Cerebrawl", - StartGameMusic: "Cerebrawl", - AudioArr: ["Cerebrawl", "pvzs"], - backgroundImage: "images/interface/Vasebreaker_Background.png", - LoadAccess: function (a) { - NewImg( - "imgSF", - "images/interface/BackButton.png", - "left:785px;top:530px", - EDAll, - { - onclick: function () { - SelectModal(0); - SetBlock($("dSurface"), $("iSurfaceBackground")); - }, - } - ); - NewImg( - "imgSF", - "images/interface/vasebreaker1.png", - "left:50px;top:130px", - EDAll, - { - onclick: function () { - SelectModal("" + "vasebreaker1" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/vasebreaker2.png", - "left:200px;top:130px", - EDAll, - { - onclick: function () { - SelectModal("" + "vasebreaker2" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/vasebreaker3.png", - "left:350px;top:130px", - EDAll, - { - onclick: function () { - SelectModal("" + "vasebreaker3" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/vasebreaker4.png", - "left:500px;top:130px", - EDAll, - { - onclick: function () { - SelectModal("" + "vasebreaker4" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/vasebreaker5.png", - "left:650;top:130", - EDAll, - { - onclick: function () { - SelectModal("" + "vasebreaker5" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/vasebreaker6.png", - "left:50;top:270", - EDAll, - { - onclick: function () { - SelectModal("" + "vasebreaker6" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/vasebreaker7.png", - "left:200px;top:270px", - EDAll, - { - onclick: function () { - SelectModal("" + "vasebreaker7" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/vasebreaker8.png", - "left:350px;top:270px", - EDAll, - { - onclick: function () { - SelectModal("" + "vasebreaker8" + ""); - }, - } - ); - NewImg( - "imgSF", - "images/interface/vasebreaker9.png", - "left:500px;top:270px", - EDAll, - { - onclick: function () { - SelectModal("" + "vasebreaker9" + ""); - }, - } - ); - /* + PicArr: (function () { + a = "images/interface/"; + return [ + ShadowPNG, + a + "BackButton.png", + a + "vasebreaker1.png", + a + "vasebreaker2.png", + a + "vasebreaker3.png", + a + "vasebreaker4.png", + a + "vasebreaker5.png", + a + "vasebreaker6.png", + a + "vasebreaker7.png", + a + "vasebreaker8.png", + a + "vasebreaker9.png", + a + "vasebreaker10.png", + ]; + })(), + LevelName: "I, Zombie Menu", + LevelEName: 150, + ShowScroll: 1, + LoadMusic: "Cerebrawl", + StartGameMusic: "Cerebrawl", + AudioArr: ["Cerebrawl", "pvzs"], + backgroundImage: "images/interface/Vasebreaker_Background.png", + LoadAccess: function (a) { + NewImg( + "imgSF", + "images/interface/BackButton.png", + "left:785px;top:530px", + EDAll, + { + onclick: function () { + SelectModal(0); + SetBlock($("dSurface"), $("iSurfaceBackground")); + }, + } + ); + NewImg( + "imgSF", + "images/interface/vasebreaker1.png", + "left:50px;top:130px", + EDAll, + { + onclick: function () { + SelectModal("" + "vasebreaker1" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/vasebreaker2.png", + "left:200px;top:130px", + EDAll, + { + onclick: function () { + SelectModal("" + "vasebreaker2" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/vasebreaker3.png", + "left:350px;top:130px", + EDAll, + { + onclick: function () { + SelectModal("" + "vasebreaker3" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/vasebreaker4.png", + "left:500px;top:130px", + EDAll, + { + onclick: function () { + SelectModal("" + "vasebreaker4" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/vasebreaker5.png", + "left:650;top:130", + EDAll, + { + onclick: function () { + SelectModal("" + "vasebreaker5" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/vasebreaker6.png", + "left:50;top:270", + EDAll, + { + onclick: function () { + SelectModal("" + "vasebreaker6" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/vasebreaker7.png", + "left:200px;top:270px", + EDAll, + { + onclick: function () { + SelectModal("" + "vasebreaker7" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/vasebreaker8.png", + "left:350px;top:270px", + EDAll, + { + onclick: function () { + SelectModal("" + "vasebreaker8" + ""); + }, + } + ); + NewImg( + "imgSF", + "images/interface/vasebreaker9.png", + "left:500px;top:270px", + EDAll, + { + onclick: function () { + SelectModal("" + "vasebreaker9" + ""); + }, + } + ); + /* NewImg( "imgSF", "images/interface/vasebreaker10.png", @@ -152,5 +152,5 @@ oS.Init({ } ); */ - }, + }, }); diff --git a/game/level/yicixingxiaofei.js b/game/level/yicixingxiaofei.js index 6a6f8099..237f3c9c 100644 --- a/game/level/yicixingxiaofei.js +++ b/game/level/yicixingxiaofei.js @@ -1,211 +1,211 @@ oS.Init( - { - PName: [oCherryBomb, oJalapeno], - ZName: [ - oZombie, - oZombie2, - oZombie3, - oPoleVaultingZombie, - oFootballZombie, - oImp, - ], - PicArr: [ - "images/interface/background1.jpg", - "images/interface/trophy.png", - ], - backgroundImage: "images/interface/background1.jpg", - CanSelectCard: 0, - LevelName: "Blast Blitz", - LvlEName: "DisposableProducts", - LargeWaveFlag: { 20: $("imgFlag1") }, - StaticCard: 0, - StartGameMusic: "GrazeTheRoof2", - StartGame: function () { - StopMusic(); - PlayMusic((oS.LoadMusic = oS.StartGameMusic)); - SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); - SetHidden($("dSunNum")); - oS.InitLawnMower(); - PrepareGrowPlants(function () { - oP.Monitor({ - f: function () { - (function () { - var a = ArCard.length; - if (a < 10) { - var c = oS.PName, - b = Math.floor(Math.random() * c.length), - e = c[b], - d = e.prototype, - f = "dCard" + Math.random(); - ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; - NewImg( - f, - d.PicArr[d.CardGif], - "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", - $("dCardList"), - { - onmouseover: function (g) { - ViewPlantTitle(GetChoseCard(f), g); - }, - onmouseout: function () { - SetHidden($("dTitle")); - }, - onclick: function (g) { - ChosePlant(g, oS.ChoseCard, f); - }, - } - ); - } - oSym.addTask(600, arguments.callee, []); - })(); - (function () { - var b = ArCard.length, - a, - c; - while (b--) { - (c = (a = ArCard[b]).PixelTop) > 60 * b && - ($(a.DID).style.top = - (a.PixelTop = c - 1) + "px"); - } - oSym.addTask(5, arguments.callee, []); - })(); - }, - ar: [], - }); - oP.AddZombiesFlag(); - SetVisible($("dFlagMeterContent")); - }); - }, - }, - { - AZ: [ - [oZombie, 3, 10], - [oZombie2, 2, 10], - [oZombie3, 1, 1], - [oFootballZombie, 1, 5], - [oPoleVaultingZombie, 1, 2], - [oImp, 1, 3], - ], - FlagNum: 20, - FlagToSumNum: { - a1: [3, 5, 9, 10, 13, 15, 19, 30], - a2: [1, 7, 12, 20, 13, 16, 21, 30], - }, - FlagToMonitor: { 19: [ShowFinalWave, 0] }, - FlagToEnd: function () { - NewImg( - "imgSF", - "images/interface/trophy.png", - "left:260px;top:233px", - EDAll, - { - onclick: function () { - SelectModal(0); - }, - } - ); - NewImg( - "PointerUD", - "images/interface/PointerDown.gif", - "top:198px;left:269px", - EDAll - ); - }, - }, - { - GetChoseCard: function (b) { - if (oS.Chose) { - return; - } - var a = ArCard.length; - while (a--) { - ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); - } - return oS.ChoseCard; - }, - ChosePlant: function (a, b) { - PlayAudio("seedlift"); - a = window.event || a; - var f = ArCard[oS.ChoseCard], - e = - a.clientX - EDAlloffsetLeft + EBody.scrollLeft || - EElement.scrollLeft, - d = a.clientY + EBody.scrollTop || EElement.scrollTop, - c = f.PName.prototype; - oS.Chose = 1; - EditImg( - NewImg( - "MovePlant", - c.PicArr[c.StaticGif], - "left:" + - e - - 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + - "px;top:" + - d + - 20 - - c.height + - "px;z-index:254", - EDAll - ).cloneNode(false), - "MovePlantAlpha", - "", - { - visibility: "hidden", - filter: "alpha(opacity=40)", - opacity: 0.4, - zIndex: 30, - }, - EDAll - ); - SetAlpha($(f.DID), 50, 0.5); - SetHidden($("dTitle")); - GroundOnmousemove = GroundOnmousemove1; - }, - CancelPlant: function () { - ClearChild($("MovePlant"), $("MovePlantAlpha")); - oS.Chose = 0; - SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); - oS.ChoseCard = ""; - GroundOnmousemove = function () {}; - }, - GrowPlant: function (l, c, b, f, a) { - var j = oS.ChoseCard, - g = ArCard[j], - i = g.PName, - k = i.prototype, - d = g.DID, - e, - h = oGd.$LF[f]; - k.CanGrow(l, f, a) && - (function () { - PlayAudio( - h != 2 - ? "plant" + Math.floor(1 + Math.random() * 2) - : "plant_water" - ); - new i().Birth(c, b, f, a, l); - oSym.addTask(20, SetNone, [ - SetStyle($("imgGrowSoil"), { - left: c - 30 + "px", - top: b - 40 + "px", - zIndex: 3 * f, - visibility: "visible", - }), - ]); - ClearChild($("MovePlant"), $("MovePlantAlpha")); - $("dCardList").removeChild((e = $(d))); - e = null; - ArCard.splice(j, 1); - oS.ChoseCard = ""; - oS.Chose = 0; - GroundOnmousemove = function () {}; - })(); - }, - ViewPlantTitle: function (a) { - var c = $("dTitle"), - b = ArCard[a].PName.prototype; - c.innerHTML = b.CName + "
" + b.Tooltip; - SetStyle(c, { top: 60 * a + "px", left: "100px" }); - }, - } + { + PName: [oCherryBomb, oJalapeno], + ZName: [ + oZombie, + oZombie2, + oZombie3, + oPoleVaultingZombie, + oFootballZombie, + oImp, + ], + PicArr: [ + "images/interface/background1.jpg", + "images/interface/trophy.png", + ], + backgroundImage: "images/interface/background1.jpg", + CanSelectCard: 0, + LevelName: "Blast Blitz", + LvlEName: "DisposableProducts", + LargeWaveFlag: { 20: $("imgFlag1") }, + StaticCard: 0, + StartGameMusic: "GrazeTheRoof2", + StartGame: function () { + StopMusic(); + PlayMusic((oS.LoadMusic = oS.StartGameMusic)); + SetVisible($("tdShovel"), $("dFlagMeter"), $("dTop")); + SetHidden($("dSunNum")); + oS.InitLawnMower(); + PrepareGrowPlants(function () { + oP.Monitor({ + f: function () { + (function () { + var a = ArCard.length; + if (a < 10) { + var c = oS.PName, + b = Math.floor(Math.random() * c.length), + e = c[b], + d = e.prototype, + f = "dCard" + Math.random(); + ArCard[a] = { DID: f, PName: e, PixelTop: 600 }; + NewImg( + f, + d.PicArr[d.CardGif], + "top:600px;width:100px;height:120px;cursor:pointer;clip:rect(auto,auto,60px,auto)", + $("dCardList"), + { + onmouseover: function (g) { + ViewPlantTitle(GetChoseCard(f), g); + }, + onmouseout: function () { + SetHidden($("dTitle")); + }, + onclick: function (g) { + ChosePlant(g, oS.ChoseCard, f); + }, + } + ); + } + oSym.addTask(600, arguments.callee, []); + })(); + (function () { + var b = ArCard.length, + a, + c; + while (b--) { + (c = (a = ArCard[b]).PixelTop) > 60 * b && + ($(a.DID).style.top = + (a.PixelTop = c - 1) + "px"); + } + oSym.addTask(5, arguments.callee, []); + })(); + }, + ar: [], + }); + oP.AddZombiesFlag(); + SetVisible($("dFlagMeterContent")); + }); + }, + }, + { + AZ: [ + [oZombie, 3, 10], + [oZombie2, 2, 10], + [oZombie3, 1, 1], + [oFootballZombie, 1, 5], + [oPoleVaultingZombie, 1, 2], + [oImp, 1, 3], + ], + FlagNum: 20, + FlagToSumNum: { + a1: [3, 5, 9, 10, 13, 15, 19, 30], + a2: [1, 7, 12, 20, 13, 16, 21, 30], + }, + FlagToMonitor: { 19: [ShowFinalWave, 0] }, + FlagToEnd: function () { + NewImg( + "imgSF", + "images/interface/trophy.png", + "left:260px;top:233px", + EDAll, + { + onclick: function () { + SelectModal(0); + }, + } + ); + NewImg( + "PointerUD", + "images/interface/PointerDown.gif", + "top:198px;left:269px", + EDAll + ); + }, + }, + { + GetChoseCard: function (b) { + if (oS.Chose) { + return; + } + var a = ArCard.length; + while (a--) { + ArCard[a].DID == b && ((oS.ChoseCard = a), (a = 0)); + } + return oS.ChoseCard; + }, + ChosePlant: function (a, b) { + PlayAudio("seedlift"); + a = window.event || a; + var f = ArCard[oS.ChoseCard], + e = + a.clientX - EDAlloffsetLeft + EBody.scrollLeft || + EElement.scrollLeft, + d = a.clientY + EBody.scrollTop || EElement.scrollTop, + c = f.PName.prototype; + oS.Chose = 1; + EditImg( + NewImg( + "MovePlant", + c.PicArr[c.StaticGif], + "left:" + + e - + 0.5 * (c.beAttackedPointL + c.beAttackedPointR) + + "px;top:" + + d + + 20 - + c.height + + "px;z-index:254", + EDAll + ).cloneNode(false), + "MovePlantAlpha", + "", + { + visibility: "hidden", + filter: "alpha(opacity=40)", + opacity: 0.4, + zIndex: 30, + }, + EDAll + ); + SetAlpha($(f.DID), 50, 0.5); + SetHidden($("dTitle")); + GroundOnmousemove = GroundOnmousemove1; + }, + CancelPlant: function () { + ClearChild($("MovePlant"), $("MovePlantAlpha")); + oS.Chose = 0; + SetAlpha($(ArCard[oS.ChoseCard].DID), 100, 1); + oS.ChoseCard = ""; + GroundOnmousemove = function () {}; + }, + GrowPlant: function (l, c, b, f, a) { + var j = oS.ChoseCard, + g = ArCard[j], + i = g.PName, + k = i.prototype, + d = g.DID, + e, + h = oGd.$LF[f]; + k.CanGrow(l, f, a) && + (function () { + PlayAudio( + h != 2 + ? "plant" + Math.floor(1 + Math.random() * 2) + : "plant_water" + ); + new i().Birth(c, b, f, a, l); + oSym.addTask(20, SetNone, [ + SetStyle($("imgGrowSoil"), { + left: c - 30 + "px", + top: b - 40 + "px", + zIndex: 3 * f, + visibility: "visible", + }), + ]); + ClearChild($("MovePlant"), $("MovePlantAlpha")); + $("dCardList").removeChild((e = $(d))); + e = null; + ArCard.splice(j, 1); + oS.ChoseCard = ""; + oS.Chose = 0; + GroundOnmousemove = function () {}; + })(); + }, + ViewPlantTitle: function (a) { + var c = $("dTitle"), + b = ArCard[a].PName.prototype; + c.innerHTML = b.CName + "
" + b.Tooltip; + SetStyle(c, { top: 60 * a + "px", left: "100px" }); + }, + } ); diff --git a/game/oneko.js b/game/oneko.js index 916ee672..ee6db212 100644 --- a/game/oneko.js +++ b/game/oneko.js @@ -1,234 +1,234 @@ // oneko.js: https://github.com/adryd325/oneko.js (function oneko() { - const isReducedMotion = - window.matchMedia(`(prefers-reduced-motion: reduce)`) === true || - window.matchMedia(`(prefers-reduced-motion: reduce)`).matches === true; - - if (isReducedMotion) return; - - const nekoEl = document.createElement("div"); - - let nekoPosX = 32; - let nekoPosY = 32; - - let mousePosX = 0; - let mousePosY = 0; - - let frameCount = 0; - let idleTime = 0; - let idleAnimation = null; - let idleAnimationFrame = 0; - - const nekoSpeed = 10; - const spriteSets = { - idle: [[-3, -3]], - alert: [[-7, -3]], - scratchSelf: [ - [-5, 0], - [-6, 0], - [-7, 0], - ], - scratchWallN: [ - [0, 0], - [0, -1], - ], - scratchWallS: [ - [-7, -1], - [-6, -2], - ], - scratchWallE: [ - [-2, -2], - [-2, -3], - ], - scratchWallW: [ - [-4, 0], - [-4, -1], - ], - tired: [[-3, -2]], - sleeping: [ - [-2, 0], - [-2, -1], - ], - N: [ - [-1, -2], - [-1, -3], - ], - NE: [ - [0, -2], - [0, -3], - ], - E: [ - [-3, 0], - [-3, -1], - ], - SE: [ - [-5, -1], - [-5, -2], - ], - S: [ - [-6, -3], - [-7, -2], - ], - SW: [ - [-5, -3], - [-6, -1], - ], - W: [ - [-4, -2], - [-4, -3], - ], - NW: [ - [-1, 0], - [-1, -1], - ], - }; - - function init() { - nekoEl.id = "oneko"; - nekoEl.classList.add("hidden"); - nekoEl.ariaHidden = true; - nekoEl.style.width = "32px"; - nekoEl.style.height = "32px"; - nekoEl.style.position = "fixed"; - nekoEl.style.pointerEvents = "auto"; - nekoEl.style.imageRendering = "pixelated"; - nekoEl.style.left = `${nekoPosX - 16}px`; - nekoEl.style.top = `${nekoPosY - 16}px`; - nekoEl.style.zIndex = "9999"; - - let nekoFile = "./images/interface/oneko.gif"; - const curScript = document.currentScript; - if (curScript && curScript.dataset.cat) { - nekoFile = curScript.dataset.cat; - } - nekoEl.style.backgroundImage = `url(${nekoFile})`; - - document.body.appendChild(nekoEl); - - document.addEventListener("mousemove", function (event) { - mousePosX = event.clientX; - mousePosY = event.clientY; - }); - - window.requestAnimationFrame(onAnimationFrame); - } - - let lastFrameTimestamp; - - function onAnimationFrame(timestamp) { - // Stops execution if the neko element is removed from DOM - if (!nekoEl.isConnected) { - return; - } - if (!lastFrameTimestamp) { - lastFrameTimestamp = timestamp; - } - if (timestamp - lastFrameTimestamp > 100) { - lastFrameTimestamp = timestamp; - frame(); - } - window.requestAnimationFrame(onAnimationFrame); - } - - function setSprite(name, frame) { - const sprite = spriteSets[name][frame % spriteSets[name].length]; - nekoEl.style.backgroundPosition = `${sprite[0] * 32}px ${ - sprite[1] * 32 - }px`; - } - - function resetIdleAnimation() { - idleAnimation = null; - idleAnimationFrame = 0; - } - - function idle() { - idleTime += 1; - - // every ~ 20 seconds - if ( - idleTime > 10 && - Math.floor(Math.random() * 200) == 0 && - idleAnimation == null - ) { - let avalibleIdleAnimations = ["sleeping", "scratchSelf"]; - if (nekoPosX < 32) { - avalibleIdleAnimations.push("scratchWallW"); - } - if (nekoPosY < 32) { - avalibleIdleAnimations.push("scratchWallN"); - } - if (nekoPosX > window.innerWidth - 32) { - avalibleIdleAnimations.push("scratchWallE"); - } - if (nekoPosY > window.innerHeight - 32) { - avalibleIdleAnimations.push("scratchWallS"); - } - idleAnimation = - avalibleIdleAnimations[ - Math.floor(Math.random() * avalibleIdleAnimations.length) - ]; - } - - switch (idleAnimation) { - case "sleeping": - if (idleAnimationFrame < 8) { - setSprite("tired", 0); - break; - } - setSprite("sleeping", Math.floor(idleAnimationFrame / 4)); - if (idleAnimationFrame > 192) { - resetIdleAnimation(); - } - break; - case "scratchWallN": - case "scratchWallS": - case "scratchWallE": - case "scratchWallW": - case "scratchSelf": - setSprite(idleAnimation, idleAnimationFrame); - if (idleAnimationFrame > 9) { - resetIdleAnimation(); - } - break; - default: - setSprite("idle", 0); - return; - } - idleAnimationFrame += 1; - } - - function explodeHearts() { - const parent = nekoEl.parentElement; - const rect = nekoEl.getBoundingClientRect(); - const scrollLeft = - window.scrollX || document.documentElement.scrollLeft; - const scrollTop = window.scrollY || document.documentElement.scrollTop; - const centerX = rect.left + rect.width / 2 + scrollLeft; - const centerY = rect.top + rect.height / 2 + scrollTop; - - for (let i = 0; i < 10; i++) { - const heart = document.createElement("div"); - heart.className = "heart"; - heart.textContent = ":3"; - const offsetX = (Math.random() - 0.5) * 50; - const offsetY = (Math.random() - 0.5) * 50; - heart.style.left = `${centerX + offsetX - 16}px`; - heart.style.top = `${centerY + offsetY - 16}px`; - heart.style.transform = `translate(-50%, -50%) rotate(${ - Math.random() * 360 - }deg) scale(0.75)`; - parent.appendChild(heart); - - setTimeout(() => { - parent.removeChild(heart); - }, 1000); - } - } - - const style = document.createElement("style"); - style.innerHTML = ` + const isReducedMotion = + window.matchMedia(`(prefers-reduced-motion: reduce)`) === true || + window.matchMedia(`(prefers-reduced-motion: reduce)`).matches === true; + + if (isReducedMotion) return; + + const nekoEl = document.createElement("div"); + + let nekoPosX = 32; + let nekoPosY = 32; + + let mousePosX = 0; + let mousePosY = 0; + + let frameCount = 0; + let idleTime = 0; + let idleAnimation = null; + let idleAnimationFrame = 0; + + const nekoSpeed = 10; + const spriteSets = { + idle: [[-3, -3]], + alert: [[-7, -3]], + scratchSelf: [ + [-5, 0], + [-6, 0], + [-7, 0], + ], + scratchWallN: [ + [0, 0], + [0, -1], + ], + scratchWallS: [ + [-7, -1], + [-6, -2], + ], + scratchWallE: [ + [-2, -2], + [-2, -3], + ], + scratchWallW: [ + [-4, 0], + [-4, -1], + ], + tired: [[-3, -2]], + sleeping: [ + [-2, 0], + [-2, -1], + ], + N: [ + [-1, -2], + [-1, -3], + ], + NE: [ + [0, -2], + [0, -3], + ], + E: [ + [-3, 0], + [-3, -1], + ], + SE: [ + [-5, -1], + [-5, -2], + ], + S: [ + [-6, -3], + [-7, -2], + ], + SW: [ + [-5, -3], + [-6, -1], + ], + W: [ + [-4, -2], + [-4, -3], + ], + NW: [ + [-1, 0], + [-1, -1], + ], + }; + + function init() { + nekoEl.id = "oneko"; + nekoEl.classList.add("hidden"); + nekoEl.ariaHidden = true; + nekoEl.style.width = "32px"; + nekoEl.style.height = "32px"; + nekoEl.style.position = "fixed"; + nekoEl.style.pointerEvents = "auto"; + nekoEl.style.imageRendering = "pixelated"; + nekoEl.style.left = `${nekoPosX - 16}px`; + nekoEl.style.top = `${nekoPosY - 16}px`; + nekoEl.style.zIndex = "9999"; + + let nekoFile = "./images/interface/oneko.gif"; + const curScript = document.currentScript; + if (curScript && curScript.dataset.cat) { + nekoFile = curScript.dataset.cat; + } + nekoEl.style.backgroundImage = `url(${nekoFile})`; + + document.body.appendChild(nekoEl); + + document.addEventListener("mousemove", function (event) { + mousePosX = event.clientX; + mousePosY = event.clientY; + }); + + window.requestAnimationFrame(onAnimationFrame); + } + + let lastFrameTimestamp; + + function onAnimationFrame(timestamp) { + // Stops execution if the neko element is removed from DOM + if (!nekoEl.isConnected) { + return; + } + if (!lastFrameTimestamp) { + lastFrameTimestamp = timestamp; + } + if (timestamp - lastFrameTimestamp > 100) { + lastFrameTimestamp = timestamp; + frame(); + } + window.requestAnimationFrame(onAnimationFrame); + } + + function setSprite(name, frame) { + const sprite = spriteSets[name][frame % spriteSets[name].length]; + nekoEl.style.backgroundPosition = `${sprite[0] * 32}px ${ + sprite[1] * 32 + }px`; + } + + function resetIdleAnimation() { + idleAnimation = null; + idleAnimationFrame = 0; + } + + function idle() { + idleTime += 1; + + // every ~ 20 seconds + if ( + idleTime > 10 && + Math.floor(Math.random() * 200) == 0 && + idleAnimation == null + ) { + let avalibleIdleAnimations = ["sleeping", "scratchSelf"]; + if (nekoPosX < 32) { + avalibleIdleAnimations.push("scratchWallW"); + } + if (nekoPosY < 32) { + avalibleIdleAnimations.push("scratchWallN"); + } + if (nekoPosX > window.innerWidth - 32) { + avalibleIdleAnimations.push("scratchWallE"); + } + if (nekoPosY > window.innerHeight - 32) { + avalibleIdleAnimations.push("scratchWallS"); + } + idleAnimation = + avalibleIdleAnimations[ + Math.floor(Math.random() * avalibleIdleAnimations.length) + ]; + } + + switch (idleAnimation) { + case "sleeping": + if (idleAnimationFrame < 8) { + setSprite("tired", 0); + break; + } + setSprite("sleeping", Math.floor(idleAnimationFrame / 4)); + if (idleAnimationFrame > 192) { + resetIdleAnimation(); + } + break; + case "scratchWallN": + case "scratchWallS": + case "scratchWallE": + case "scratchWallW": + case "scratchSelf": + setSprite(idleAnimation, idleAnimationFrame); + if (idleAnimationFrame > 9) { + resetIdleAnimation(); + } + break; + default: + setSprite("idle", 0); + return; + } + idleAnimationFrame += 1; + } + + function explodeHearts() { + const parent = nekoEl.parentElement; + const rect = nekoEl.getBoundingClientRect(); + const scrollLeft = + window.scrollX || document.documentElement.scrollLeft; + const scrollTop = window.scrollY || document.documentElement.scrollTop; + const centerX = rect.left + rect.width / 2 + scrollLeft; + const centerY = rect.top + rect.height / 2 + scrollTop; + + for (let i = 0; i < 10; i++) { + const heart = document.createElement("div"); + heart.className = "heart"; + heart.textContent = ":3"; + const offsetX = (Math.random() - 0.5) * 50; + const offsetY = (Math.random() - 0.5) * 50; + heart.style.left = `${centerX + offsetX - 16}px`; + heart.style.top = `${centerY + offsetY - 16}px`; + heart.style.transform = `translate(-50%, -50%) rotate(${ + Math.random() * 360 + }deg) scale(0.75)`; + parent.appendChild(heart); + + setTimeout(() => { + parent.removeChild(heart); + }, 1000); + } + } + + const style = document.createElement("style"); + style.innerHTML = ` @keyframes heartBurst { 0% { transform: scale(0); opacity: 1; } 100% { transform: scale(0.75); opacity: 0; } @@ -242,47 +242,47 @@ } `; - document.head.appendChild(style); - nekoEl.addEventListener("click", explodeHearts); - - function frame() { - frameCount += 1; - const diffX = nekoPosX - mousePosX; - const diffY = nekoPosY - mousePosY; - const distance = Math.sqrt(diffX ** 2 + diffY ** 2); - - if (distance < nekoSpeed || distance < 48) { - idle(); - return; - } - - idleAnimation = null; - idleAnimationFrame = 0; - - if (idleTime > 1) { - setSprite("alert", 0); - // count down after being alerted before moving - idleTime = Math.min(idleTime, 7); - idleTime -= 1; - return; - } - - let direction; - direction = diffY / distance > 0.5 ? "N" : ""; - direction += diffY / distance < -0.5 ? "S" : ""; - direction += diffX / distance > 0.5 ? "W" : ""; - direction += diffX / distance < -0.5 ? "E" : ""; - setSprite(direction, frameCount); - - nekoPosX -= (diffX / distance) * nekoSpeed; - nekoPosY -= (diffY / distance) * nekoSpeed; - - nekoPosX = Math.min(Math.max(16, nekoPosX), window.innerWidth - 16); - nekoPosY = Math.min(Math.max(16, nekoPosY), window.innerHeight - 16); - - nekoEl.style.left = `${nekoPosX - 16}px`; - nekoEl.style.top = `${nekoPosY - 16}px`; - } - - init(); + document.head.appendChild(style); + nekoEl.addEventListener("click", explodeHearts); + + function frame() { + frameCount += 1; + const diffX = nekoPosX - mousePosX; + const diffY = nekoPosY - mousePosY; + const distance = Math.sqrt(diffX ** 2 + diffY ** 2); + + if (distance < nekoSpeed || distance < 48) { + idle(); + return; + } + + idleAnimation = null; + idleAnimationFrame = 0; + + if (idleTime > 1) { + setSprite("alert", 0); + // count down after being alerted before moving + idleTime = Math.min(idleTime, 7); + idleTime -= 1; + return; + } + + let direction; + direction = diffY / distance > 0.5 ? "N" : ""; + direction += diffY / distance < -0.5 ? "S" : ""; + direction += diffX / distance > 0.5 ? "W" : ""; + direction += diffX / distance < -0.5 ? "E" : ""; + setSprite(direction, frameCount); + + nekoPosX -= (diffX / distance) * nekoSpeed; + nekoPosY -= (diffY / distance) * nekoSpeed; + + nekoPosX = Math.min(Math.max(16, nekoPosX), window.innerWidth - 16); + nekoPosY = Math.min(Math.max(16, nekoPosY), window.innerHeight - 16); + + nekoEl.style.left = `${nekoPosX - 16}px`; + nekoEl.style.top = `${nekoPosY - 16}px`; + } + + init(); })(); diff --git a/index.html b/index.html index ba7b507e..e883c280 100644 --- a/index.html +++ b/index.html @@ -1,42 +1,42 @@ - - - - Plants vs. Zombies MODDED Official - - - - - - - - - - - - - - + + + + Plants vs. Zombies MODDED Official + + + + + + + + + + + + + + diff --git a/manifest.json b/manifest.json index 4b63c6eb..08d4d64a 100644 --- a/manifest.json +++ b/manifest.json @@ -1,29 +1,27 @@ { - "manifest_version": 3, - "name": "__MSG_AppName__", - "version": "2.3.12", - "version_name": "2.3.12", - "action": { - "default_icon": { - "16": "img/16x16.png", - "48": "img/48x48.png", - "256": "img/256x256.png" - }, - "default_title": "Click to open the popup", - "default_popup": "game/iframe.html" - }, - "offline_enabled": true, - "default_locale": "en", - "description": "__MSG_AppDesc__", - "icons": { - "16": "img/16x16.png", - "48": "img/48x48.png", - "256": "img/256x256.png" - }, - "content_security_policy": { - "sandbox": "sandbox allow-scripts allow-pointer-lock; script-src 'self' 'unsafe-eval' blob: 'unsafe-inline'; object-src 'self' 'unsafe-eval' blob: 'unsafe-inline';child-src 'self' 'unsafe-eval' blob: 'unsafe-inline' ; worker-src 'self' 'unsafe-eval' blob: 'unsafe-inline'; script-src-elem 'self' 'unsafe-eval' blob: 'unsafe-inline'" - }, - "sandbox": { - "pages": ["game/iframe.html"] - } + "manifest_version": 3, + "name": "Plant vs. Zombies MODDED Official", + "version": "4.0.0", + "action": { + "default_icon": { + "16": "img/16x16.png", + "48": "img/48x48.png", + "256": "img/256x256.png" + }, + "default_title": "Click to open the popup", + "default_popup": "game/iframe.html" + }, + "offline_enabled": true, + "description": "Play Plant vs. Zombies MODDED Official as a Chrome extension - Also can Play without Internet, try it now!", + "icons": { + "16": "img/16x16.png", + "48": "img/48x48.png", + "256": "img/256x256.png" + }, + "content_security_policy": { + "sandbox": "sandbox allow-scripts allow-pointer-lock; script-src 'self' 'unsafe-eval' blob: 'unsafe-inline'; object-src 'self' 'unsafe-eval' blob: 'unsafe-inline';child-src 'self' 'unsafe-eval' blob: 'unsafe-inline' ; worker-src 'self' 'unsafe-eval' blob: 'unsafe-inline'; script-src-elem 'self' 'unsafe-eval' blob: 'unsafe-inline'" + }, + "sandbox": { + "pages": ["game/iframe.html"] + } }