【PE】希望之路 腳本
2022-12-14 12:34 作者:--Reisen-- | 我要投稿

可以自由使用,但請(qǐng)注明來(lái)源,遵守 License。
AvZ 版本:AvZ2 2.0.0
#include "avz.h"
#include "AvZDSL/AvZDSL.h"
#include "legacy/avz_more.h"
#include "DanceCheat/DanceCheat.h"
#include "fodder/fodder.h"
using namespace std;
APvzBase* pb;
AMainObject* mo;
class : AStateHook {
? ?void _BeforeScript() override {
? ? ? ?pb = AGetPvzBase();
? ? ? ?mo = AGetMainObject();
? ?}
} _mo_initializer;
#define CardR(...) AMkRelOp(ACard(__VA_ARGS__))
ARelOp IceDayR() {
? ?ARelTime t = rand() % 2 ? 298 : 299;
? ?return -t[
? ? ? ?AMkRelOp(aIceFiller.Coffee()),
? ? ? ?AMkRelOp(AIce3(int(t)))
? ?];
}
ARelOp UseIceR(int row, int col) {
? ?return -100_cs[
? ? ? ?AMkRelOp(ACard(AICE_SHROOM, row, col))
? ?];
}
ARelOp UseImitatorIceR(int row, int col) {
? ?ARelTime t = rand() % 2 ? 419 : 420; // 模仿者生效時(shí)間可能取 319 或 320
? ?return -t[
? ? ? ?CardR(AICE_SHROOM, row, col),
? ? ? ?AMkRelOp(AIce3(int(t)))
? ?];
}
ARelOp IceNightR(int row, int col) {
? ?return -420_cs[AMkRelOp(
? ? ? ?int idx = AGetSeedIndex(AICE_SHROOM, true);
? ? ? ?if(idx != -1 && AGetMainObject()->SeedArray()[idx].IsUsable()) // 復(fù)制冰可用
? ? ? ? ? ?ANow + 420_cs[UseImitatorIceR(row, col)];
? ? ? ?else
? ? ? ? ? ?ANow + 420_cs[UseIceR(row, col)];
? ?)];
}
ARelOp FireR(int row, float col, bool wait_until_recover = false) {
? ?std::vector<APosition> pos;
? ?while(row) {
? ? ? ?pos.push_back({row % 10, col});
? ? ? ?row /= 10;
? ?}
? ?std::reverse(pos.begin(), pos.end());
? ?if(wait_until_recover)
? ? ? ?return -373_cs[AMkRelOp(aCobManager.RecoverFire(pos))];
? ?else
? ? ? ?return -373_cs[AMkRelOp(aCobManager.Fire(pos))];
}
class AMaidCheatsR {
public:
? ?static ARelOp CallPartner() {
? ? ? ?return AMkRelOp(AMaidCheats::CallPartner());
? ?}
? ?static ARelOp Dancing() {
? ? ? ?return AMkRelOp(AMaidCheats::Dancing());
? ?}
? ?static ARelOp Move() {
? ? ? ?return AMkRelOp(AMaidCheats::Move());
? ?}
? ?static ARelOp Stop() {
? ? ? ?return AMkRelOp(AMaidCheats::Stop());
? ?}
};
ALogger<APvzGui> l;
template <typename... Ts>
ARelOp InfoR(Ts... args) {
? ?return AMkRelOp(l.Info(args...));
}
/*
ch6/I6-3889cs 非定態(tài)
正常:IHP-ccPPDH|PSH/Bcc 1149|(288/265)
PSD/B延遲:PSD/B-PAA'a|IPH-ccPPDH 990|1149
熱過(guò)渡:IPP|PI/PIHHA(A'a) 735|(318/225)
連攔:IPP-ccPD/PHA
1, 3, 7, 9, 11, 13, 16, 18: PSD/B
2, 4, 6, 8, 12, 19: IPP-PPDD
5: PSD/B 延遲
14: 熱過(guò)渡刷新
17: 連攔延遲
*/
FodderR f({APUFF_SHROOM, ASUN_SHROOM, ASCAREDY_SHROOM, AFLOWER_POT});
void AScript() {
? ?ASetReloadMode(AReloadMode::MAIN_UI);
? ?AConnect(AKey('Q'), []{ throw AException(""); });
? ?ASetGameSpeed(1);
? ?ASetZombies({AZOMBIE, APOLE_VAULTING_ZOMBIE, AFOOTBALL_ZOMBIE, ADANCING_ZOMBIE, AZOMBONI, ADOLPHIN_RIDER_ZOMBIE, ADIGGER_ZOMBIE, APOGO_ZOMBIE, ABUNGEE_ZOMBIE, ALADDER_ZOMBIE, ACATAPULT_ZOMBIE, AGARGANTUAR, AGIGA_GARGANTUAR});
? ?ASelectCards({AICE_SHROOM, AM_ICE_SHROOM, ACOFFEE_BEAN, ACHERRY_BOMB, AJALAPENO, ASQUASH, APUFF_SHROOM, ASUN_SHROOM, ASCAREDY_SHROOM, AFLOWER_POT});
? ?aIceFiller.Start({{3, 6}, {3, 7}, {3, 8}});
? ?cresc::AverageSpawn({AGARGANTUAR, AGIGA_GARGANTUAR});
? ?DanceCheat(DanceCheatMode::FAST);
? ?AWave(1, 3, 7, 9, 11, 13, 16, 18)[
? ? ? ?225_cs[FireR(1, 9) + 63_cs[FireR(2, 9)]],
? ? ? ?398_cs[FireR(1, 8.6625)],
? ? ? ?265_cs[FireR(5, 8.2625)],
? ? ? ?445_cs[f({5, 6}, 134)]
? ?].AssumeWaveLength(601);
? ?AWave(2, 4, 8, 12, 19)[
? ? ? ?100_cs[IceDayR()],
? ? ? ?173_cs[FireR(1, 9)],
? ? ? ?535_cs[FireR(5, 7.375)],
? ? ? ?776_cs[f({5, 6}, 1)],
? ? ? ?949_cs[
? ? ? ? ? ?FireR(25, 9),
? ? ? ? ? ?212_cs[FireR(1, 8)],
? ? ? ? ? ?232_cs[FireR(5, 8.4125)]
? ? ? ?]
? ?].AssumeWaveLength(1149);
? ?10_wave[
? ? ? ?-300_cs[AMaidCheatsR::Stop()],
? ? ? ?207_cs[f({1, 2}, 100)],
? ? ? ?401_cs[FireR(2, 9), 106_cs[IceDayR()]],
? ? ? ?225_cs[FireR(6, 9) + 63_cs[FireR(5, 9)]],
? ? ? ?398_cs[FireR(5, 8.6625)]
? ?].AssumeWaveLength(601);
? ?5_wave[
? ? ? ?225_cs[FireR(1, 9) + 63_cs[FireR(2, 9)]],
? ? ? ?398_cs[FireR(1, 8.6625)],
? ? ? ?265_cs[FireR(5, 8.2625)],
? ? ? ?789_cs[CardR({{ACHERRY_BOMB, 5, 9}, {AJALAPENO, 6, 9}})],
? ? ? ?790_cs[FireR(5, 9)],
? ? ? ?890_cs[CardR(ASQUASH, 5, 9)]
? ?].SetWaveLength(990);
? ?6_wave[
? ? ? ?100_cs[IceDayR()],
? ? ? ?173_cs[FireR(5, 9)],
? ? ? ?535_cs[FireR(1, 7.6875)],
? ? ? ?776_cs[f({5, 6}, 1)],
? ? ? ?949_cs[
? ? ? ? ? ?FireR(25, 9),
? ? ? ? ? ?212_cs[FireR(1, 8)],
? ? ? ? ? ?232_cs[FireR(5, 8.4125)]
? ? ? ?]
? ?].AssumeWaveLength(1149);
? ?14_wave[
? ? ? ?100_cs[IceDayR()],
? ? ? ?173_cs[FireR(1, 9)],
? ? ? ?535_cs[FireR(5, 7.375)],
? ? ? ?727_cs[f({1, 2})]
? ?].SetWaveLength(735);
? ?15_wave[
? ? ? ?225_cs[FireR(5, 9)],
? ? ? ?318_cs[FireR(2, 9), IceDayR()],
? ? ? ?401_cs[
? ? ? ? ? ?FireR(56, 9),
? ? ? ? ? ?-100_cs[CardR(AJALAPENO, 5, 9)],
? ? ? ? ? ?-182_cs[CardR(ASQUASH, 6, 9)]
? ? ? ?]
? ?].AssumeWaveLength(601);
? ?17_wave[
? ? ? ?100_cs[IceDayR()],
? ? ? ?173_cs[FireR(1, 9)],
? ? ? ?535_cs[FireR(5, 7.375)],
? ? ? ?776_cs[f({5, 6}, 1)],
? ? ? ?949_cs[
? ? ? ? ? ?FireR(25, 9),
? ? ? ? ? ?212_cs[FireR(1, 8)],
? ? ? ? ? ?232_cs[
? ? ? ? ? ? ? ?FireR(5, 8.4125),
? ? ? ? ? ? ? ?225_cs - 100_cs[CardR(ACHERRY_BOMB, 5, 9)]
? ? ? ? ? ?]
? ? ? ?]
? ?].SetWaveLength(1381);
? ?9_wave + 601_cs[
? ? ? ?100_cs[IceDayR()],
? ? ? ?173_cs[FireR(3, 9)],
? ? ? ?535_cs[FireR(5, 7.375)],
? ? ? ?949_cs + 232_cs[
? ? ? ? ? ?FireR(5566, 9),
? ? ? ? ? ?AMaidCheatsR::Dancing()
? ? ? ?],
? ? ? ?4300_cs - 601_cs[FireR(1, 9)]
? ?];
? ?19_wave + 1149_cs[
? ? ? ?288_cs[FireR(13, 9) + 212_cs[FireR(1, 8.6625)]],
? ? ? ?255_cs[FireR(5, 8.6625)],
? ? ? ?601_cs + 173_cs[
? ? ? ? ? ?FireR(5, 9),
? ? ? ? ? ?AMaidCheatsR::Dancing()
? ? ? ?],
? ? ? ?4300_cs - 1149_cs[FireR(1, 9)]
? ?];
? ?20_wave[
? ? ? ?-300_cs[AMaidCheatsR::Stop()],
? ? ? ?245_cs[FireR(4, 7.5)],
? ? ? ?341_cs[FireR(25, 9)],
? ? ? ?341_cs + 105_cs[FireR(25, 9)],
? ? ? ?341_cs + 105_cs + 110_cs[FireR(1356, 8.6625)],
? ? ? ?5500_cs[FireR(1, 9)]
? ?];
? ?for(int t = 1500; t < 4300; t += 212)
? ? ? ?9_wave + ARelTime(t)[f({1})];
? ?for(int t = 2000; t < 4300; t += 212)
? ? ? ?19_wave + ARelTime(t)[f({1})];
? ?for(int t = 1000; t < 5500; t += 212)
? ? ? ?20_wave + ARelTime(t)[f({1})];
}
標(biāo)簽: