Skip to content

Commit 4588023

Browse files
committed
remove javascript from revive hero
1 parent e87df4b commit 4588023

File tree

1 file changed

+18
-3
lines changed

1 file changed

+18
-3
lines changed

TbsCore/Tasks/LowLevel/ReviveHero.cs

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,31 +2,46 @@
22
using System.Threading.Tasks;
33
using TbsCore.Models.AccModels;
44
using TbsCore.Helpers;
5+
using OpenQA.Selenium;
56

67
namespace TbsCore.Tasks.LowLevel
78
{
89
public class ReviveHero : BotTask
910
{
1011
public override async Task<TaskRes> Execute(Account acc)
1112
{
13+
StopFlag = false;
14+
acc.Logger.Information("Navigate to revive page", this);
1215
await NavigationHelper.ToHero(acc, NavigationHelper.HeroTab.Attributes);
16+
if (StopFlag) return TaskRes.Executed;
1317

18+
acc.Logger.Information("Find revive button to click", this);
1419
//heroRegeneration
1520
var reviveButton = acc.Wb.Html.GetElementbyId("heroRegeneration");
1621
if (reviveButton == null)
1722
{
18-
acc.Logger.Warning("No revive button found!");
23+
acc.Logger.Information("No revive button found!");
1924
return TaskRes.Executed;
2025
}
26+
2127
if (reviveButton.HasClass("green"))
2228
{
23-
acc.Wb.ExecuteScript("document.getElementById('heroRegeneration').click()"); //revive hero
29+
var element = acc.Wb.Driver.FindElement(By.XPath(reviveButton.XPath));
30+
31+
if (element == null)
32+
{
33+
acc.Logger.Information("Cannot click revive button!");
34+
return TaskRes.Executed;
35+
}
36+
37+
element.Click();
2438
return TaskRes.Executed;
2539
}
2640
else
2741
{
2842
//no resources?
29-
this.NextExecute = DateTime.Now.AddMinutes(10);
43+
acc.Logger.Information("Don't have enough resource. Retry after 10 minutes!");
44+
NextExecute = DateTime.Now.AddMinutes(10);
3045
return TaskRes.Executed;
3146
}
3247
}

0 commit comments

Comments
 (0)