|
|
@@ -19,11 +19,11 @@ type ТопливоБой struct {
|
|
|
ангар types.ИАнгар
|
|
|
}
|
|
|
|
|
|
-// НовТопливоБой -- возвращает новый *AngarAttackNet
|
|
|
+// НовТопливоБой -- возвращает новый *ТопливоБойNet
|
|
|
func НовТопливоБой(angar types.ИАнгар) (*ТопливоБой, error) {
|
|
|
sectionNet, err := sectionnet.NewSectionNet(angar, "http://wartank.ru/battle")
|
|
|
if err != nil {
|
|
|
- return nil, fmt.Errorf("NewAngarAttack(): in create SectionNet, err=\n\t%w", err)
|
|
|
+ return nil, fmt.Errorf("NewТопливоБой(): in create SectionNet, err=\n\t%w", err)
|
|
|
}
|
|
|
sf := &ТопливоБой{
|
|
|
SectionNet: sectionNet,
|
|
|
@@ -47,16 +47,16 @@ func (sf *ТопливоБой) пуск() {
|
|
|
log.Printf("Fuel.Run: val=%v\n", топливо)
|
|
|
списСтрБой, err := sf.начатьБой()
|
|
|
if err != nil {
|
|
|
- // log._rintf("ERRO AngarAttack.findFuel(): in get page battle, err=\n\t%v\n", err)
|
|
|
+ // log._rintf("ERRO ТопливоБой.findFuel(): in get page battle, err=\n\t%v\n", err)
|
|
|
continue
|
|
|
}
|
|
|
списВыстрел1, err := sf.выбратьБойСлабый(списСтрБой)
|
|
|
if err != nil {
|
|
|
- // log._rintf("ERRO AngarAttack.findFuel(): in get page shooting, err=\n\t%v\n", err)
|
|
|
+ // log._rintf("ERRO ТопливоБой.findFuel(): in get page shooting, err=\n\t%v\n", err)
|
|
|
continue
|
|
|
}
|
|
|
if err := sf.сделатьВыстрелы(списВыстрел1); err != nil {
|
|
|
- log.Printf("ERRO AngarAttack.findFuel(): in make shooting, err=\n\t%v\n", err)
|
|
|
+ log.Printf("ERRO ТопливоБой.findFuel(): in make shooting, err=\n\t%v\n", err)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -65,7 +65,7 @@ func (sf *ТопливоБой) пуск() {
|
|
|
// Идёт в атаку, если топлива больше cons.ТопливоМин
|
|
|
func (sf *ТопливоБой) начатьБой() (спискСтрБой []string, err error) {
|
|
|
// Получить ссылку на атаку
|
|
|
- // _mt.Println("\t AngarAttack.makeAtack()")
|
|
|
+ // _mt.Println("\t ТопливоБой.начатьБой()")
|
|
|
lstAngar := sf.ангар.СписПолучить()
|
|
|
var стрАнализ string
|
|
|
for _, стрАтак := range lstAngar {
|
|
|
@@ -76,12 +76,15 @@ func (sf *ТопливоБой) начатьБой() (спискСтрБой []s
|
|
|
}
|
|
|
// Вырезать ссылку на атаку
|
|
|
lstAngar = strings.Split(стрАнализ, `<a class="simple-but border mb1" href="`)
|
|
|
+ if len(lstAngar) == 0 { // Не та страница
|
|
|
+ return nil, fmt.Errorf("ТопливоБой.начатьБой(): список строк для атаки пустой")
|
|
|
+ }
|
|
|
бойСсылка := lstAngar[1]
|
|
|
lstAngar = strings.Split(бойСсылка, `"><span><span>В бой!</span></span></a>`)
|
|
|
бойСсылка = "http://wartank.ru/" + lstAngar[0]
|
|
|
спискСтрБой, err = sf.Get(бойСсылка)
|
|
|
if err != nil {
|
|
|
- return nil, fmt.Errorf("AngarAttack.makeAtack(): in make GET-request to battle, err=\n\t%w", err)
|
|
|
+ return nil, fmt.Errorf("ТопливоБой.начатьБой(): in make GET-request to battle, err=\n\t%w", err)
|
|
|
}
|
|
|
return спискСтрБой, nil
|
|
|
}
|
|
|
@@ -138,7 +141,7 @@ func (sf *ТопливоБой) выбратьБойСлабый(списСтр
|
|
|
}
|
|
|
списСтрВыстрел1, err = sf.Get(ссылкаБой)
|
|
|
if err != nil {
|
|
|
- return nil, fmt.Errorf("AngarAttack.makeSelectBattle(): in GET-response select battle tank, err=\n\t%w", err)
|
|
|
+ return nil, fmt.Errorf("ТопливоБой.makeSelectBattle(): in GET-response select battle tank, err=\n\t%w", err)
|
|
|
}
|
|
|
return списСтрВыстрел1, nil
|
|
|
}
|
|
|
@@ -212,7 +215,7 @@ func (sf *ТопливоБой) сделатьВыстрелы(lstShoot2 []strin
|
|
|
}
|
|
|
списВыстрел3, err = sf.Get(linkShoot2)
|
|
|
if err != nil {
|
|
|
- return fmt.Errorf("AngarAttack.makeShooting(): in Get-response shoot2, err=\n\t%w", err)
|
|
|
+ return fmt.Errorf("ТопливоБой.makeShooting(): in Get-response shoot2, err=\n\t%w", err)
|
|
|
}
|
|
|
fuel := sf.ангар.Топливо().Получ()
|
|
|
fuel -= 30
|
|
|
@@ -285,7 +288,7 @@ func (sf *ТопливоБой) сделатьВыстрелы(lstShoot2 []strin
|
|
|
}
|
|
|
|
|
|
if _, err = sf.Get(linkShoot3); err != nil {
|
|
|
- return fmt.Errorf("AngarAttack.makeShooting(): in Get-response shoot3, err=\n\t%w", err)
|
|
|
+ return fmt.Errorf("ТопливоБой.makeShooting(): in Get-response shoot3, err=\n\t%w", err)
|
|
|
}
|
|
|
fuel := sf.ангар.Топливо().Получ()
|
|
|
fuel -= 30
|