Skip to content

Commit 95ecf96

Browse files
authored
Release 1.306.0
Merge pull request #113 from Erol444/develop
2 parents 128626f + a076549 commit 95ecf96

File tree

193 files changed

+5338
-5076
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

193 files changed

+5338
-5076
lines changed

TbsCore/Core/PostLoadHelper.cs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,10 @@
55
using TbsCore.Models.AccModels;
66
using TbsCore.Models.JsObjects;
77
using TbsCore.Models.VillageModels;
8-
using TbsCore.Helpers;
98
using TbsCore.Parsers;
10-
using TbsCore.Tasks.LowLevel;
9+
using TbsCore.Tasks.Others;
10+
using TbsCore.Tasks.Sim;
11+
using TbsCore.Tasks.Update;
1112
using static TbsCore.Tasks.BotTask;
1213

1314
namespace TbsCore.Helpers
@@ -91,7 +92,8 @@ public static List<Action> GetPostLoadTasks(Account acc)
9192
acc.Wb.Html.GetElementbyId("mentorTaskList") == null &&
9293
acc.Quests.ClaimBeginnerQuests)
9394
{
94-
acc.Tasks.Add(new ClaimBeginnerTask2021() { ExecuteAt = DateTime.Now}, true);
95+
acc.Tasks.Add(new ClaimBeginnerTask2021() { Vill = vill, ExecuteAt = DateTime.Now}, true);
96+
9597
return;
9698
}
9799

@@ -219,6 +221,7 @@ public static List<Action> GetPostLoadTasks(Account acc)
219221
// 19: Hero:
220222
() =>
221223
{
224+
if ( !acc.Hero.Settings.AutoRefreshInfo) return;
222225
bool heroReady = (acc.Hero.HeroInfo.Health > acc.Hero.Settings.MinHealth &&
223226
acc.Hero.Settings.AutoSendToAdventure &&
224227
acc.Hero.Status == Hero.StatusEnum.Home &&

TbsCore/Core/TaskExecutor.cs

Lines changed: 30 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,9 @@
77
using TbsCore.Models.VillageModels;
88
using TbsCore.Parsers;
99
using TbsCore.Tasks;
10-
using TbsCore.Tasks.LowLevel;
10+
using TbsCore.Tasks.Browser;
11+
using TbsCore.Tasks.Others;
12+
using TbsCore.Tasks.Update;
1113
using static TbsCore.Tasks.BotTask;
1214

1315
namespace TbsCore.Helpers
@@ -26,7 +28,7 @@ public static async Task<bool> PageLoaded(Account acc)
2628
var counter = 3;
2729
while (!acc.Wb.CheckChromeOpen())
2830
{
29-
acc.Logger.Warning("Chrome browser missing");
31+
acc.Logger.Warning("Chrome browser missing");
3032
if (counter == 0)
3133
{
3234
acc.Logger.Warning("Chrome still missing after 3 times restart. Pause bot (suggest logout bot before use bot on this account)");
@@ -41,6 +43,7 @@ public static async Task<bool> PageLoaded(Account acc)
4143
await Task.Delay(5000);
4244
}
4345
}
46+
4447
if (IsCaptcha(acc) || IsWWMsg(acc) || IsBanMsg(acc) || IsMaintanance(acc)) //Check if a captcha/ban/end of server/maintanance
4548
{
4649
acc.Logger.Warning("Captcha/WW/Ban/Maintanance found! Stopping bot for this account!");
@@ -58,7 +61,6 @@ public static async Task<bool> PageLoaded(Account acc)
5861
acc.Tasks.Add(new EditPreferences()
5962
{
6063
ExecuteAt = DateTime.Now.AddHours(-1),
61-
TroopsPerPage = 99,
6264
ContextualHelp = true
6365
}, true);
6466
}
@@ -312,15 +314,33 @@ private static bool CheckCookiesNew(Account acc) =>
312314
//will be called before executing PreTaskRefresh
313315
internal static bool IsLoginScreen(Account acc)
314316
{
315-
var outerLoginBox = acc.Wb.Html.DocumentNode
316-
.Descendants("form")
317-
.FirstOrDefault(x => x.GetAttributeValue("name", "") == "login");
318-
319-
if (outerLoginBox != null)
317+
switch (acc.AccInfo.ServerVersion)
320318
{
321-
if (!IsCaptcha(acc)) return true;
319+
case Classificator.ServerVersionEnum.TTwars:
320+
{
321+
var outerLoginBox = acc.Wb.Html.DocumentNode
322+
.Descendants("form")
323+
.FirstOrDefault(x => x.GetAttributeValue("name", "") == "login");
324+
325+
if (outerLoginBox != null)
326+
{
327+
if (!IsCaptcha(acc)) return true;
328+
}
329+
return false;
330+
}
331+
case Classificator.ServerVersionEnum.T4_5:
332+
{
333+
var tableLogin = acc.Wb.Html.GetElementbyId("loginForm");
334+
335+
if (tableLogin != null)
336+
{
337+
if (!IsCaptcha(acc)) return true;
338+
}
339+
return false;
340+
}
341+
default:
342+
return false;
322343
}
323-
return false;
324344
}
325345

326346
private static bool IsSysMsg(Account acc)

TbsCore/Core/TaskTimer.cs

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
using System.Threading.Tasks;
44
using System.Timers;
55
using TbsCore.Helpers;
6-
using TbsCore.Tasks;
7-
using TbsCore.Tasks.LowLevel;
6+
using TbsCore.Tasks.Browser;
7+
using TbsCore.Tasks.Others;
88
using static TbsCore.Tasks.BotTask;
99

1010
namespace TbsCore.Models.AccModels
@@ -100,17 +100,6 @@ private async void NewTick()
100100
}
101101

102102
task.Stage = TaskStage.Executing;
103-
104-
//If correct village is selected, otherwise change village
105-
if (task.Vill != null && task.GetType() != typeof(UpgradeBuilding))
106-
{
107-
var active = _acc.Villages.FirstOrDefault(x => x.Active);
108-
if (active != null && active != task.Vill)
109-
{
110-
await VillageHelper.SwitchVillage(_acc, task.Vill.Id);
111-
}
112-
}
113-
114103
await TaskExecutor.Execute(_acc, task);
115104

116105
IsTaskExcuting = false;

TbsCore/Core/WebBrowserInfo.cs

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,13 @@
11
using OpenQA.Selenium;
22
using OpenQA.Selenium.Chrome;
3-
using RestSharp;
3+
using OpenQA.Selenium.Chrome.ChromeDriverExtensions;
44
using System;
5-
using System.Collections.Generic;
5+
using System.Collections.ObjectModel;
66
using System.IO;
77
using System.Threading.Tasks;
8+
using TbsCore.Database;
89
using TbsCore.Helpers;
9-
using TbsCore.Models;
10-
using TbsCore.Tasks.LowLevel;
1110
using TbsCore.Helpers.ChromeExtension;
12-
using static TbsCore.Tasks.BotTask;
13-
using OpenQA.Selenium.Chrome.ChromeDriverExtensions;
14-
using System.Collections.ObjectModel;
15-
using TbsCore.Database;
1611

1712
namespace TbsCore.Models.AccModels
1813
{

TbsCore/Database/DbRepository.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
using System.Linq;
55
using TbsCore.Models.AccModels;
66
using TbsCore.Models.Database;
7-
using TbsCore.Helpers;
87

98
namespace TbsCore.Database
109
{

TbsCore/Database/TbsContext.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
using Microsoft.EntityFrameworkCore;
22
using System.IO;
3-
using TbsCore.Models.Database;
43
using TbsCore.Helpers;
4+
using TbsCore.Models.Database;
55

66
namespace TbsCore.Database
77
{

TbsCore/Extensions/AccountExtension.cs

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,4 @@
1-
using System;
2-
using System.Collections.Generic;
3-
using System.Text;
4-
using System.Threading.Tasks;
5-
using TbsCore.Models.AccModels;
1+
using TbsCore.Models.AccModels;
62

73
namespace TbsCore.Extensions
84
{

TbsCore/Extensions/RallyPointNavigationHelper.cs

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,4 @@
1-
using System.Threading.Tasks;
2-
using TbsCore.Helpers;
3-
using TbsCore.Models.AccModels;
4-
using TbsCore.Models.VillageModels;
5-
using static TbsCore.Helpers.Classificator;
6-
using System;
7-
8-
namespace TbsCore.Extensions
1+
namespace TbsCore.Extensions
92
{
103
/// <summary>
114
/// WIP!

TbsCore/Helpers/AccountHelper.cs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,16 @@
33
using System.Threading.Tasks;
44
using TbsCore.Models.AccModels;
55
using TbsCore.Models.VillageModels;
6-
using TbsCore.Tasks.LowLevel;
7-
using TbsCore.Tasks.SecondLevel;
6+
using TbsCore.Tasks.Browser;
7+
using TbsCore.Tasks.Farming;
8+
using TbsCore.Tasks.Sim;
9+
using TbsCore.Tasks.Update;
810

911
namespace TbsCore.Helpers
1012
{
1113
public static class AccountHelper
1214
{
13-
private static Random rnd = new Random();
15+
private static readonly Random rnd = new Random();
1416

1517
public static Village GetMainVillage(Account acc)
1618
{
@@ -56,7 +58,7 @@ public static Village GetQuestsClaimVillage(Account acc)
5658
/// <returns>Random delay in milliseconds</returns>
5759
public static int Delay(Account acc) => rnd.Next(acc.Settings.DelayClickingMin, acc.Settings.DelayClickingMax);
5860

59-
public static Task DelayWait(Account acc) => Task.Delay(Delay(acc));
61+
public static Task DelayWait(Account acc, int multiple = 1) => Task.Delay(Delay(acc) * multiple);
6062

6163
public static void StartAccountTasks(Account acc)
6264
{

TbsCore/Helpers/AttackHelper.cs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
1-
using System;
2-
using System.Collections.Generic;
3-
using System.Text;
4-
using TbsCore.Parsers;
1+
using TbsCore.Parsers;
52

63
namespace TbsCore.Helpers
74
{

0 commit comments

Comments
 (0)