public void UpgradeAdsKiller()//switch off ads watching { NotePad.DoLog("Пропускаю рекламу на прокачку"); Rat.Clk(PointsAndRectangles.upgradeCancelation); //отменить просмотр Thread.Sleep(3000); UniversalErrorDefense(); }
public void ActivateClubBooster() { Rat.Clk(PointsAndRectangles.clubBoosterActivation); Thread.Sleep(2000); Rat.Clk(PointsAndRectangles.clubBoosterAcceptance); Thread.Sleep(3000); }
private void UseFilter(Point cls) { FastCheck fc = new FastCheck(); do { Rat.Clk(PointsAndRectangles.filter); Thread.Sleep(1000); } while (!fc.FilterIsOpenned());//100% FilterOpenner Thread.Sleep(200); Rat.Clk(PointsAndRectangles.clear); Thread.Sleep(1000); Rat.DragnDropSlow(PointsAndRectangles.xy1, PointsAndRectangles.xy2, 8); Rat.Clk(PointsAndRectangles.rarity); Thread.Sleep(1000); Rat.Clk(cls);//выбрать класс Thread.Sleep(500); Condition.ChooseTyres(); Thread.Sleep(1000); do { Rat.Clk(PointsAndRectangles.accept); Thread.Sleep(500); } while (fc.FilterIsOpenned());//100% FilterCloser Thread.Sleep(2000); }
public void ChooseNormalEvent() { SpecialEvents se = new SpecialEvents(); NotePad.DoLog("Проверяю событие"); bool eventIsOK = false; while (!eventIsOK) { for (int i = 1; i < 5; i++) { do { se.MissClick(); se.ToClubs(); } while (!fc.ClubMap()); Thread.Sleep(500); NotePad.DoLog("Проверяю условие " + i); eventIsOK = Selection(i); if (!eventIsOK) { Rat.Clk(PointsAndRectangles.toeventlist);//Back Thread.Sleep(3000); } else { break; } } } }
public void EndRace() { FastCheck fc = new FastCheck(); int flag1 = 0; int flag2 = 0; int flag3 = 0; bool nextstep = false; do { if (flag1 > 3 || flag2 > 3 || flag3 > 3) { NotePad.DoErrorLog("образовалась петля"); RestartBot(); } if (fc.RaceEnd()) { Rat.Clk(PointsAndRectangles.endOfTheFirstRace); //кнопка "пропустить" flag1++; } if (fc.AcceptThrow()) { Rat.Clk(PointsAndRectangles.acceptanceToThrowRaces);//подтвержение "пропуска" flag2++; } if (fc.WonSet()) { Rat.Clk(PointsAndRectangles.endOfRaceSet);//звезды flag3++; } if (fc.LostSet()) { Rat.Clk(PointsAndRectangles.endOfRaceSet);//звезды flag3++; } if (fc.DrawSet()) { Rat.Clk(PointsAndRectangles.endOfRaceSet);//звезды flag3++; } Thread.Sleep(1500); if (fc.Bounty()) { nextstep = true; } if (fc.ClubMap()) { nextstep = true; } if (fc.Ending()) { nextstep = true; } if (fc.Upgrade()) { nextstep = true; } } while (!nextstep); }
private void Randomizer() { FastCheck fc = new FastCheck(); Point[] a = new Point[] { PointsAndRectangles.r1, PointsAndRectangles.r2, PointsAndRectangles.r3, PointsAndRectangles.r4, PointsAndRectangles.r5, PointsAndRectangles.r6, PointsAndRectangles.r7, PointsAndRectangles.r8, PointsAndRectangles.r9, PointsAndRectangles.r10 }; Random rand = new Random(); while (!fc.ItsGarage()) { Thread.Sleep(2000); } if ((Condition.ConditionNumber1 == "экстремальная" && Condition.eventrq < 320) ||//условие определееной редкости (Condition.ConditionNumber1 == "редкостная" && Condition.eventrq < 195) || (Condition.ConditionNumber1 == "необычная" && Condition.eventrq < 145) || (Condition.ConditionNumber1 == "суперская" && Condition.eventrq < 245) || Condition.eventrq < 95) { NotePad.DoLog("сортирую по рк"); Thread.Sleep(200); do { Rat.Clk(PointsAndRectangles.sorting); //сортировка Thread.Sleep(1000); } while (!fc.TypeIsOpenned()); //100% SorterOpenner Thread.Sleep(200); Rat.Clk(PointsAndRectangles.clearall); //сброс Thread.Sleep(1000); Rat.Clk(PointsAndRectangles.sorting); //сортировка Thread.Sleep(1000); Rat.Clk(PointsAndRectangles.r2); //сортировка по рк } else { Thread.Sleep(200); do { Rat.Clk(PointsAndRectangles.sorting); //сортировка Thread.Sleep(1000); } while (!fc.TypeIsOpenned()); //100% SorterOpenner Thread.Sleep(200); int r = rand.Next(10); if (rand.Next(2) == 1) { Rat.Clk(a[r]);//выбрать условие Thread.Sleep(200); } Rat.Clk(a[r]);//выбрать условие } Thread.Sleep(500); do { Rat.Clk(PointsAndRectangles.closesorting); //закрыть сортировку Thread.Sleep(500); } while (fc.TypeIsOpenned()); //100% SorterCloser Thread.Sleep(4000); }
public void RestartBot() { Rat.Clk(PointsAndRectangles.noxClosing); //close Nox Thread.Sleep(1000); Rat.Clk(PointsAndRectangles.noxClosingAcceptance); //accept Nox close Thread.Sleep(1000); Process.Start(@"C:\Bot\BotRestarter\BotRestarter\bin\Debug\BotRestarter.exe"); Process.GetCurrentProcess().Kill(); }
public bool Selection(int eventN) { SpecialEvents se = new SpecialEvents(); Point[] events = { PointsAndRectangles.eventN1, PointsAndRectangles.eventN2, PointsAndRectangles.eventN3, PointsAndRectangles.eventN4 }; bool eventIsOK = false; bool flag; do { flag = true; NotePad.DoLog("Кликаю событие " + eventN); Rat.Clk(events[eventN - 1]); Thread.Sleep(4000); if (fc.EventPage()) { NotePad.DoLog("Вылетел из клубов"); Rat.Clk(PointsAndRectangles.clktoClubs);//Clubs flag = false; Thread.Sleep(15000); } se.UniversalErrorDefense(); Thread.Sleep(2000); } while (flag == false);//клик эвента и обработка ошибок MasterOfPictures.MakePicture(PointsAndRectangles.Condition1Bounds, @"Condition1\test"); MasterOfPictures.MakePicture(PointsAndRectangles.Condition2Bounds, @"Condition2\test"); string cond1 = ConvertPictureToCond(DefineFirstEvevntConditionByPicture(), 1); string cond2 = ConvertPictureToCond(DefineSecondEvevntConditionByPicture(), 2); if (cond1 != "unknown" && cond2 != "unknown")//Исключаю неизвестный { eventIsOK = true; Condition.MakeCondition(cond1, cond2); if (GotRQ() && Condition.minrq != 0) { NotePad.DoLog("Минимальное рк для события " + Condition.minrq); NotePad.DoLog("Требуемое рк для события " + Condition.eventrq); if (Condition.minrq > Condition.eventrq || Condition.minrq > accountLVL) { NotePad.DoLog("Минимальное рк для события больше требуемого"); eventIsOK = false; } } } if (!eventIsOK && eventN == 4) { Rat.Clk(PointsAndRectangles.clkoutofClubs); } return(eventIsOK); }
public void MissClick() { FastCheck fc = new FastCheck(); if (fc.MissClick()) { NotePad.DoLog("Промах"); Rat.Clk(PointsAndRectangles.missClickCancelation); NotePad.DoLog("Исправился"); Thread.Sleep(1000); } }
public bool Bounty() { bool x = MainFrame(PointsAndRectangles.clubBounty, "ClubBounty"); if (x) { if (NoActiveBooster()) { se.ActivateClubBooster(); } Thread.Sleep(200); Rat.Clk(PointsAndRectangles.acceptbounty); x = true; } return(x); }//принимает награду
public bool UnavailableEvent() { FastCheck fc = new FastCheck(); bool x = true; if (fc.WrongParty()) { NotePad.DoLog("Косячная рука"); RestartBot(); } if (fc.EventEnds()) { NotePad.DoLog("эвент окончен"); Rat.Clk(PointsAndRectangles.eventEndsAcceptance);//Accept Message Thread.Sleep(3000); x = false; } if (fc.EventIsNotAvailable()) { NotePad.DoLog("эвент не доступен"); Rat.Clk(PointsAndRectangles.eventIsNotAvailableAcceptance);//Accept Message Thread.Sleep(3000); if (fc.ItsGarage()) { RestartBot(); } x = false; } if (fc.EventisFull()) { NotePad.DoLog("эвент заполнен"); Rat.Clk(PointsAndRectangles.eventIsFullAcceptance);//Accept Message if (fc.ItsGarage()) { Rat.Clk(PointsAndRectangles.buttonBack); //back Thread.Sleep(2000); Rat.Clk(PointsAndRectangles.buttonBack); //back to club map } Thread.Sleep(3000); x = false; } return(x); }
public void InClubs() { while (true) { se.ToClubs(); TimingUnit tu = new TimingUnit(); tu.CheckTime(); Thread.Sleep(2000); int i = 0; if (fc.ActiveEvent()) { NotePad.DoLog("вхожу в активный эвент"); i = 1; Rat.Clk(PointsAndRectangles.clubEventEnter);//ClubEventEnter string[] conds = NotePad.ReadConditions(); Condition.eventrq = NotePad.ReadRQ(); Condition.MakeCondition(conds[0], conds[1]); while (i < 100) { i++; if (!PlayClubs(i)) { break; } } } else { NotePad.DoLog("Подбираю эвент с одним условием"); ce.ChooseNormalEvent(); NotePad.DoLog("Вхожу в эвент " + Condition.eventrq + " рк"); Rat.Clk(PointsAndRectangles.clubEventEnter);//ClubEventEnter while (i < 100) { i++; if (!PlayClubs(i)) { break; } } } } }
static void ChooseTyresMechanic() { Rat.Clk(PointsAndRectangles.tiresMenu); for (int i = 0; i < tires.Length; i++) { if (tires[i]) { switch (i) { case 0: Rat.Clk(PointsAndRectangles.slik); Thread.Sleep(200); break; case 1: Rat.Clk(PointsAndRectangles.dynamic); Thread.Sleep(200); break; case 2: Rat.Clk(PointsAndRectangles.standart); Thread.Sleep(200); break; case 3: Rat.Clk(PointsAndRectangles.allseason); Thread.Sleep(200); break; case 4: Rat.Clk(PointsAndRectangles.offroad); Thread.Sleep(200); break; default: break; } } } }
public void AcceptDailyBounty() { FastCheck fc = new FastCheck(); bool bountyisavailable = false; int clkcounter = 0; NotePad.DoLog("принимаю ежедневку"); do { if (clkcounter > 25) { RestartBot(); } if (fc.DailyBounty()) { Rat.Clk(PointsAndRectangles.dailyBountyStart); bountyisavailable = true; Thread.Sleep(15000); } else if (fc.DailyBountyEnd()) { Rat.Clk(PointsAndRectangles.confirmdailyBountyEnd); bountyisavailable = false; Thread.Sleep(15000); } else if (bountyisavailable) { Rat.Clk(PointsAndRectangles.dailyBountyThrow); clkcounter++; } Thread.Sleep(15000); } while (bountyisavailable); NotePad.DoLog("принял ежедневку"); RestartBot(); }
private bool PlayClubs(int i) { SpecialEvents se = new SpecialEvents(); Waiting wait = new Waiting(); FastCheck fc = new FastCheck(); PlayClubsPositions pcp = new PlayClubsPositions(); bool eventisactive = pcp.PathToGarage(); if (eventisactive) { pcp.PrepareToRace(i);//набор/проверка руки wait.ReadytoRace(); bool foundplace = false; do { se.CarRepair(); se.UniversalErrorDefense(); se.UnavailableEvent(); //se.CardBug(); if (fc.ReadyToRace()) { Rat.Clk(PointsAndRectangles.startTheRace); Thread.Sleep(2000); } if (fc.EnemyIsReady()) { eventisactive = true; foundplace = true; Thread.Sleep(1000); } if (fc.Bounty()) { NotePad.DoLog("эвент закончен"); eventisactive = false; foundplace = true; Thread.Sleep(1000); } if (fc.ClubMap()) { NotePad.DoLog("эвент закончен"); eventisactive = false; foundplace = true; Thread.Sleep(1000); } } while (!foundplace);//ожидание противника if (eventisactive) { pcp.TimeToRace(); //расстановка se.EndRace(); //завершение заезда foundplace = false; do { se.UniversalErrorDefense(); if (fc.Upgrade()) { NotePad.DoLog("реклама на апгрейд"); se.UpgradeAdsKiller(); Thread.Sleep(1000); } if (fc.Ending()) { Rat.Clk(PointsAndRectangles.passTheTableAfterRace);//Table Thread.Sleep(1000); } if (fc.Bounty()) { eventisactive = false; foundplace = true; Thread.Sleep(1000); } if (fc.ControlScreen()) { foundplace = true; Thread.Sleep(1000); } if (fc.BugControlScreen()) { Thread.Sleep(500); NotePad.DoLog("Bug with Control Screen"); Rat.Clk(PointsAndRectangles.backToClubMap);//Back Thread.Sleep(1000); } if (fc.ClubMap()) { eventisactive = false; foundplace = true; Thread.Sleep(1000); } } while (foundplace == false);//переход на экран контроля } } return(eventisactive); }
public void MakingHand() { FastCheck fc = new FastCheck(); int[] classcars = ConditionHandling(); NotePad.DoLog("Собираю " + classcars[0] + "F, " + classcars[1] + "E, " + classcars[2] + "D, " + classcars[3] + "C, " + classcars[4] + "B, " + classcars[5] + "A, " + classcars[6] + "S"); Thread.Sleep(1000); int emptycars; //недобор int conditionAvailableCars; int usedhandslots = 0; if (Condition.ConditionNumber1 != "empty" && Condition.ConditionNumber1 != "обычная х3" && !fc.ConditionActivated()) { if (Condition.ConditionNumber2 == "empty") { Rat.Clk(PointsAndRectangles.commonCondition); } else { Rat.Clk(PointsAndRectangles.commonCondition); Thread.Sleep(1000); Rat.Clk(PointsAndRectangles.cond1); Thread.Sleep(200); Rat.Clk(PointsAndRectangles.cond2); Thread.Sleep(200); Rat.Clk(PointsAndRectangles.commonConditionCross); } } //включить фильтр условия события. Point[] cls = { PointsAndRectangles.f, PointsAndRectangles.e, PointsAndRectangles.d, PointsAndRectangles.c, PointsAndRectangles.b, PointsAndRectangles.a, PointsAndRectangles.s }; for (int i = 6; i > -1; i--) { if (classcars[i] > 0) { Randomizer(); UseFilter(cls[i]); conditionAvailableCars = Condition.AvailableCars(i); if (i == 0)//для серых нет возврата недобора { DragnDpopHand(classcars[i], usedhandslots, conditionAvailableCars); } else { emptycars = 0; emptycars += DragnDpopHand(classcars[i], usedhandslots, conditionAvailableCars); usedhandslots += classcars[i] - emptycars; classcars[i - 1] += emptycars; } } }//механизм расстановки if (VerifyHand()) { int[] carsid = RememberHand(); NotePad.Saves(carsid); } //сохранение руки }
public bool PathToGarage() { FastCheck fc = new FastCheck(); bool positionflag = false; bool continuegame = false; do { if (fc.Bounty()) { NotePad.DoLog("получил награду"); positionflag = true; } if (fc.SeasonIsEnded()) { Thread.Sleep(500); Rat.Clk(PointsAndRectangles.acceptSeasonEnd); NotePad.DoLog("сезон окончен"); } if (fc.SeasonEndsBounty()) { Thread.Sleep(500); Rat.Clk(PointsAndRectangles.bountyForSeason); NotePad.DoLog("получил награду за сезон"); } if (fc.ClubMap()) { Thread.Sleep(2000); if (fc.ClubMap()) { NotePad.DoLog("выкинуло на карту"); positionflag = true; } } if (fc.EventEnds()) { NotePad.DoLog("эвент окончен"); Rat.Clk(PointsAndRectangles.eventIsEnd);//Accept Message Thread.Sleep(3000); positionflag = true; } if (fc.CarMenu()) { Thread.Sleep(500); NotePad.DoLog("Закрываю меню автомобиля"); Rat.Clk(PointsAndRectangles.closeCarCard); Thread.Sleep(1000); } if (fc.ControlScreen()) { Thread.Sleep(500); NotePad.DoLog("Перехожу в гараж"); Rat.Clk(PointsAndRectangles.controlScreenToGarage);//Play Thread.Sleep(1000); } /* * if (fc.BugControlScreen()) * { * Thread.Sleep(500); * NotePad.DoLog("Bug with Control Screen"); * Rat.Clk(PointsAndRectangles.bugwithControlScreen);//Back * Thread.Sleep(1000); * }*/ if (fc.ItsGarage()) { positionflag = true; NotePad.DoLog("Нахожусь в гараже"); continuegame = true; } } while (!positionflag); return(continuegame); }
public void ToClubs() { bool needToDragMap = false; FastCheck fc = new FastCheck(); bool flag = false; do { if (fc.NoxRestartMessage()) { Rat.Clk(PointsAndRectangles.noxRestartMessageAcceptance); Thread.Sleep(1000); Rat.Clk(PointsAndRectangles.edgeOfTheScreen); Thread.Sleep(120000); Process.Start(@"C:\Program Files (x86)\Nox\bin\Nox.exe", "-clone:Nox_1"); }//nox restart message if (fc.StartIcon())//Icon { Rat.Clk(PointsAndRectangles.clkTheIcon); } //if (fc.BrokenInterface()) Rat.Clk(PointsAndRectangles.brokenInterfaceAcceptance);//close notify if (fc.LostConnection()) { Rat.Clk(PointsAndRectangles.reconnectionAfterLostConnection); //reconnect } //if (fc.Google()) Rat.Clk(PointsAndRectangles.googleNotificationAcceptance);//google notify if (fc.FBcontinue()) { Rat.Clk(PointsAndRectangles.fbFucksBrain); //fb f***s brain } if (fc.StartButton()) { Rat.Clk(PointsAndRectangles.buttonStart);//Start game Thread.Sleep(5000); } if (fc.HeadPage()) { Rat.Clk(PointsAndRectangles.toEvents);//Events Thread.Sleep(2000); } if (fc.DailyBounty()) { AcceptDailyBounty(); } fc.Bounty(); if (fc.SeasonEndsBounty()) { Thread.Sleep(500); Rat.Clk(PointsAndRectangles.seasonEndAcceptance); NotePad.DoLog("получил награду за сезон"); } CheckConnection(); UniversalErrorDefense(); if (fc.EventPage()) { if (fc.InCommonEvent()) { Thread.Sleep(500); Rat.Clk(PointsAndRectangles.buttonBack);//back } else { Thread.Sleep(500); Rat.Clk(PointsAndRectangles.toClubs);//Clubs needToDragMap = true; } } if (fc.ClubMap()) { flag = true; } Thread.Sleep(1500); } while (!flag); if (needToDragMap) { DragMap(); } }
public void TimeToRace() { FastCheck fc = new FastCheck(); SpecialEvents se = new SpecialEvents(); TrackInfo ti = new TrackInfo(); GrandArrangement ga = new GrandArrangement(); int[] a1 = ti.Tracks(); //Track info int[] b1 = ti.Grounds(); //Ground info int[] c1 = ti.Weathers(); //Weather info bool raceIsEnd = false; bool raceIsStart = false; int waiter = 0; do { if (waiter == 180) { se.RestartBot(); } se.UniversalErrorDefense(); if (fc.ClubMap()) { NotePad.DoLog("вылетел из заезда"); raceIsEnd = true; } if (fc.Bounty()) { NotePad.DoLog("вылетел из заезда"); raceIsEnd = true; } if (fc.EnemyIsReady()) { Thread.Sleep(1000); Rat.Clk(PointsAndRectangles.ChooseAnEnemy);//ChooseanEnemy NotePad.DoLog("противник выбран"); } if (fc.ArrangementWindow()) { NotePad.DoLog("загрузился экран расстановки"); Thread.Sleep(1000); ga.Arrangement(a1, b1, c1); NotePad.DoLog("расстановка выполнена"); } if (fc.RaceOn() && !raceIsStart) { raceIsStart = true; NotePad.DoLog("заезд начался"); Thread.Sleep(2000); Rat.Clk(PointsAndRectangles.forceTheRace); //ускорить заезд, клик в пусой области } if (!fc.RaceOn() && raceIsStart) { NotePad.DoLog("заезд окончен"); raceIsEnd = true; } Thread.Sleep(1000); waiter++; } while (!raceIsEnd); }