|
|
@@ -58,7 +58,7 @@ func (sf *Конвой) Пуск() error {
|
|
|
// UpdateLst -- принудительно обновляет состояние конвоя
|
|
|
func (sf *Конвой) UpdateLst() {
|
|
|
if err := sf.net.UpdateLst(); err != nil {
|
|
|
- log.Printf("Convoy.UpdateLst(): err=\n\t%v\n", err)
|
|
|
+ log.Printf("Конвой.UpdateLst(): err=\n\t%v\n", err)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -193,21 +193,17 @@ func (сам *Конвой) найтиВбой() string {
|
|
|
lstConvoy = сам.СписПолучить()
|
|
|
isFind bool
|
|
|
)
|
|
|
+ lstConvoy, err := сам.net.Клиент().Get("https://wartank.ru/convoy")
|
|
|
+ if err != nil {
|
|
|
+ log.Printf("Конвой.атакаНачать(): при обновлении lstConvoy, ош=\n\t%v\n", err)
|
|
|
+ return ""
|
|
|
+ }
|
|
|
if сам.бот.Имя() == "prospero tank" {
|
|
|
log.Printf("")
|
|
|
}
|
|
|
- for len(lstConvoy) == 0 {
|
|
|
- ош := сам.net.UpdateLst()
|
|
|
- if ош != nil {
|
|
|
- log.Printf("Конвой.атакаНачать(): при обновлении lstConvoy, ош=\n\t%v\n", ош)
|
|
|
- return ""
|
|
|
- }
|
|
|
- lstConvoy = сам.СписПолучить()
|
|
|
- }
|
|
|
- for _, strLink := range lstConvoy {
|
|
|
- если1 := strings.Contains(strLink, `<span>Начать разведку</span>`)
|
|
|
+ for _, strOut = range lstConvoy {
|
|
|
+ если1 := strings.Contains(strOut, `<span>Начать разведку</span>`)
|
|
|
if если1 {
|
|
|
- strOut = strLink
|
|
|
lstLink := strings.Split(strOut, `<div class="bot"><a class="simple-but border" w:id="findEnemy" href="`)
|
|
|
strOut = lstLink[1]
|
|
|
lstLink = strings.Split(strOut, `"><span><span>Начать разведку</span></span></a></div>`)
|
|
|
@@ -215,9 +211,8 @@ func (сам *Конвой) найтиВбой() string {
|
|
|
isFind = true
|
|
|
break
|
|
|
}
|
|
|
- если2 := strings.Contains(strLink, `<span>В БОЙ!</span>`)
|
|
|
+ если2 := strings.Contains(strOut, `<span>В БОЙ!</span>`)
|
|
|
if если2 {
|
|
|
- strOut = strLink
|
|
|
lstLink := strings.Split(strOut, `<div class="bot"><a class="simple-but border" w:id="startMasking" href="`)
|
|
|
if len(lstLink) == 1 {
|
|
|
lstLink = strings.Split(strOut, `<div class="bot"><a class="simple-but border red" w:id="startFight" href="`)
|
|
|
@@ -229,17 +224,15 @@ func (сам *Конвой) найтиВбой() string {
|
|
|
break
|
|
|
}
|
|
|
// <div class="bot"><a class="simple-but border" w:id="findEnemy" href="convoy?15-1.ILinkListener-root-findEnemy"><span><span>Начать разведку</span></span></a></div>
|
|
|
- если3 := strings.Contains(strLink, "<span>Начать разведку</span>")
|
|
|
+ если3 := strings.Contains(strOut, "<span>Начать разведку</span>")
|
|
|
if если3 {
|
|
|
- strOut = strLink
|
|
|
_ссылка := strings.TrimPrefix(strOut, `<<div class="bot"><a class="simple-but border" w:id="findEnemy" href="`)
|
|
|
_ссылка = strings.TrimSuffix(_ссылка, `"><span><span>Начать разведку</span></span></a></div>`)
|
|
|
strOut = "https://wartank.ru/" + _ссылка
|
|
|
isFind = true
|
|
|
break
|
|
|
}
|
|
|
- if strings.Contains(strLink, `>ОБЫЧНЫЕ<`) {
|
|
|
- strOut = strLink
|
|
|
+ if strings.Contains(strOut, `>ОБЫЧНЫЕ<`) {
|
|
|
lstLink := strings.Split(strOut, `<a href="`)
|
|
|
strOut = lstLink[1]
|
|
|
lstLink = strings.Split(strOut, `" class="simple-but gray"><span><span>ОБЫЧНЫЕ</span></span></a>`)
|
|
|
@@ -332,7 +325,7 @@ func (sf *Конвой) атакаИскать() (isNext bool) {
|
|
|
return false
|
|
|
}
|
|
|
if err = sf.СтрОбновить(lstConvoy); err != nil {
|
|
|
- logrus.WithError(err).Error("Convoy.attack(): при обновлении lstConvoy")
|
|
|
+ logrus.WithError(err).Error("Конвой.attack(): при обновлении lstConvoy")
|
|
|
return false
|
|
|
}
|
|
|
}
|
|
|
@@ -342,20 +335,17 @@ func (sf *Конвой) атакаИскать() (isNext bool) {
|
|
|
// Забирает награду в конвое "Активируй боевую силу"
|
|
|
func (sf *Конвой) проверитьМиссияРазведкаКонвой() {
|
|
|
var (
|
|
|
- strOut string
|
|
|
- isFind bool
|
|
|
- lstConvoy = sf.СписПолучить()
|
|
|
+ strOut string
|
|
|
+ isFind bool
|
|
|
)
|
|
|
- if len(lstConvoy) == 0 {
|
|
|
- if err := sf.net.UpdateLst(); err != nil {
|
|
|
- // log._rintf("Convoy.check6frage(): при обновлении пустого lstConvoy, err=\n\t%v\n", err)
|
|
|
- return
|
|
|
- }
|
|
|
- lstConvoy = sf.СписПолучить()
|
|
|
+ if err := sf.net.UpdateLst(); err != nil {
|
|
|
+ // log._rintf("Конвой.проверитьМиссияРазведкаКонвой(): при обновлении пустого lstConvoy, err=\n\t%v\n", err)
|
|
|
+ return
|
|
|
}
|
|
|
- // <a class="simple-but border" href="convoy?8-1.ILinkListener-missions-cc-0-c-awardLink"><span><span>Получить награду</span></span></a>
|
|
|
+ lstConvoy := sf.СписПолучить()
|
|
|
+ // <a class="simple-but border" href="convoy?21-1.ILinkListener-missions-cc-0-c-awardLink"><span><span>Получить награду</span></span></a>
|
|
|
for _, strOut = range lstConvoy {
|
|
|
- if strings.Contains(strOut, `<span>Получить награду</span>`) {
|
|
|
+ if strings.Contains(strOut, `.ILinkListener-missions-cc-0-c-awardLink`) {
|
|
|
isFind = true
|
|
|
break
|
|
|
}
|
|
|
@@ -363,21 +353,21 @@ func (sf *Конвой) проверитьМиссияРазведкаКонво
|
|
|
if !isFind {
|
|
|
return
|
|
|
}
|
|
|
- // <a class="simple-but border" href="convoy?70-1.ILinkListener-missions-cc-0-c-awardLink"><span><span>Получить награду</span></span></a>
|
|
|
+ // <a class="simple-but border" href="convoy?21-1.ILinkListener-missions-cc-0-c-awardLink"><span><span>Получить награду</span></span></a>
|
|
|
_ссылка := strings.TrimPrefix(strOut, `<a class="simple-but border" href="`)
|
|
|
_ссылка = strings.TrimSuffix(_ссылка, `"><span><span>Получить награду</span></span></a>`)
|
|
|
- // https://wartank.ru/convoy?80-1.ILinkListener-missions-cc-0-c-awardLink
|
|
|
- strLink := "https://wartank.ru/" + _ссылка
|
|
|
- lstConvoy, err := sf.net.Get(strLink)
|
|
|
+ // https://wartank.ru/convoy?23-1.ILinkListener-missions-cc-0-c-awardLink
|
|
|
+ ссылка := "https://wartank.ru/" + _ссылка
|
|
|
+ lstConvoy, err := sf.net.Клиент().Get(ссылка)
|
|
|
if err != nil {
|
|
|
- // log._rintf("ERRO Convoy.checkWarForce(): при выполнени команды GET, err=\n\t%v\n", err)
|
|
|
+ log.Printf("Конвой.проверитьМиссияРазведкаКонвой(): при выполнени команды GET, err=\n\t%v\n", err)
|
|
|
return
|
|
|
}
|
|
|
if err := sf.СтрОбновить(lstConvoy); err != nil {
|
|
|
- // log._rintf("ERRO Convoy.checkWarForce(): пр обновлении lstConvoy, err=\n\t%v\n", err)
|
|
|
+ log.Printf("Конвой.проверитьМиссияРазведкаКонвой(): пр обновлении lstConvoy, err=\n\t%v\n", err)
|
|
|
return
|
|
|
}
|
|
|
- // log._rintf("INFO Convoy.checkWarForce(): награда получена\n")
|
|
|
+ log.Printf("Конвой.проверитьМиссияРазведкаКонвой(): награда получена\n")
|
|
|
}
|
|
|
|
|
|
// Забирает награду в конвое "Мастер дозора"
|
|
|
@@ -390,7 +380,7 @@ func (sf *Конвой) проверитьМиссияМастерРазведк
|
|
|
)
|
|
|
if len(lstConvoy) == 0 {
|
|
|
if err := sf.net.UpdateLst(); err != nil {
|
|
|
- // log._rintf("Convoy.check6frage(): при обновлении пустого lstConvoy, err=\n\t%v\n", err)
|
|
|
+ // log._rintf("Конвой.проверитьМиссияМастерРазведки(): при обновлении пустого lstConvoy, err=\n\t%v\n", err)
|
|
|
return
|
|
|
}
|
|
|
lstConvoy = sf.СписПолучить()
|
|
|
@@ -417,59 +407,50 @@ func (sf *Конвой) проверитьМиссияМастерРазведк
|
|
|
strLink = "https://wartank.ru/" + lstLink[0]
|
|
|
lstConvoy, err := sf.net.Get(strLink)
|
|
|
if err != nil {
|
|
|
- // log._rintf("ERRO Convoy.checkMaster(): при выполнени команды GET, err=\n\t%v\n", err)
|
|
|
+ // log._rintf("ERRO Конвой.checkMaster(): при выполнени команды GET, err=\n\t%v\n", err)
|
|
|
return
|
|
|
}
|
|
|
if err := sf.СтрОбновить(lstConvoy); err != nil {
|
|
|
- // log._rintf("ERRO Convoy.checkMaster(): пр обновлении lstConvoy, err=\n\t%v\n", err)
|
|
|
+ // log._rintf("ERRO Конвой.checkMaster(): пр обновлении lstConvoy, err=\n\t%v\n", err)
|
|
|
return
|
|
|
}
|
|
|
- // log._rintf("INFO Convoy.checkMaster(): награда получена\n")
|
|
|
+ // log._rintf("INFO Конвой.checkMaster(): награда получена\n")
|
|
|
}
|
|
|
|
|
|
// Забирает награду в конвое "Уничтожь 6 врагов в конвое"
|
|
|
func (sf *Конвой) проверитьМиссия6фрагов() {
|
|
|
var (
|
|
|
- strOut string
|
|
|
- isFind bool
|
|
|
- lstConvoy = sf.СписПолучить()
|
|
|
- ind int
|
|
|
+ strOut string
|
|
|
+ isFind bool
|
|
|
)
|
|
|
- if len(lstConvoy) == 0 {
|
|
|
- if err := sf.net.UpdateLst(); err != nil {
|
|
|
- // log._rintf("Convoy.check6frage(): при обновлении пустого lstConvoy, err=\n\t%v\n", err)
|
|
|
- return
|
|
|
- }
|
|
|
- lstConvoy = sf.СписПолучить()
|
|
|
+ if err := sf.net.UpdateLst(); err != nil {
|
|
|
+ // log._rintf("Конвой.check6frage(): при обновлении пустого lstConvoy, err=\n\t%v\n", err)
|
|
|
+ return
|
|
|
}
|
|
|
- for ind, strOut = range lstConvoy {
|
|
|
- if strings.Contains(strOut, `Уничтожь 6 врагов в конвое<br/>`) {
|
|
|
+ lstConvoy := sf.СписПолучить()
|
|
|
+ // <a class="simple-but border" href="convoy?8-1.ILinkListener-missions-cc-1-c-awardLink"><span><span>Получить награду</span></span></a>
|
|
|
+ for _, strOut = range lstConvoy {
|
|
|
+ if strings.Contains(strOut, `.ILinkListener-missions-cc-1-c-awardLink`) {
|
|
|
isFind = true
|
|
|
- ind += 23
|
|
|
- strOut = lstConvoy[ind]
|
|
|
break
|
|
|
}
|
|
|
}
|
|
|
if !isFind {
|
|
|
return
|
|
|
}
|
|
|
- // <a class="simple-but border" href="convoy?61-1.ILinkListener-missions-cc-0-c-awardLink"><span><span>Получить награду</span></span></a>
|
|
|
- if !strings.Contains(strOut, `ILinkListener-missions-cc-0-c-awardLink`) {
|
|
|
- return
|
|
|
- }
|
|
|
- lstLink := strings.Split(strOut, `<a class="simple-but border" href="`)
|
|
|
- strLink := lstLink[1]
|
|
|
- lstLink = strings.Split(strLink, `"><span><span>Получить награду</span></span></a>`)
|
|
|
- // https://wartank.ru/convoy?61-1.ILinkListener-missions-cc-0-c-awardLink
|
|
|
- strLink = "https://wartank.ru/" + lstLink[0]
|
|
|
- lstConvoy, err := sf.net.Get(strLink)
|
|
|
- if err != nil {
|
|
|
- // log._rintf("ERRO Convoy.check6frage(): при выполнени команды GET, err=\n\t%v\n", err)
|
|
|
+ // <a class="simple-but border" href="convoy?8-1.ILinkListener-missions-cc-1-c-awardLink"><span><span>Получить награду</span></span></a>
|
|
|
+ _ссылка := strings.TrimPrefix(strOut, `<a class="simple-but border" href="`)
|
|
|
+ _ссылка = strings.TrimSuffix(_ссылка, `"><span><span>Получить награду</span></span></a>`)
|
|
|
+ // https://wartank.ru/convoy?15-1.ILinkListener-missions-cc-1-c-awardLink
|
|
|
+ ссылка := "https://wartank.ru/" + _ссылка
|
|
|
+ lstConvoy, ош := sf.net.Клиент().Get(ссылка)
|
|
|
+ if ош != nil {
|
|
|
+ log.Printf("Конвой.проверитьМиссия6фрагов(): при выполнени команды GET, err=\n\t%v\n", ош)
|
|
|
return
|
|
|
}
|
|
|
if err := sf.СтрОбновить(lstConvoy); err != nil {
|
|
|
- // log._rintf("ERRO Convoy.check6frage(): пр обновлении lstConvoy, err=\n\t%v\n", err)
|
|
|
+ log.Printf("Конвой.проверитьМиссия6фрагов(): при обновлении lstConvoy, ош=\n\t%v\n", err)
|
|
|
return
|
|
|
}
|
|
|
- // log._rintf("INFO Convoy.check6frage(): награда получена\n")
|
|
|
+ log.Printf("Конвой.проверитьМиссия6фрагов(): награда получена\n")
|
|
|
}
|