Sfoglia il codice sorgente

d04 Исправление багов

SVI 2 anni fa
parent
commit
e82011a389
1 ha cambiato i file con 24 aggiunte e 17 eliminazioni
  1. 24 17
      server/serv_bots/warbot/angar/convoy/convoy.go

+ 24 - 17
server/serv_bots/warbot/angar/convoy/convoy.go

@@ -74,6 +74,9 @@ func (сам *Конвой) пуск() {
 		case <-сам.бот.Кнт().Done():
 			return
 		default:
+			сам.проверитьМиссия6фрагов()
+			сам.проверитьМиссияРазведкаКонвой()
+			сам.проверитьМиссияМастерРазведки()
 			сам.атаковать()
 			time.Sleep(time.Minute * 20)
 		}
@@ -90,8 +93,8 @@ func (сам *Конвой) атаковать() {
 			return
 		}
 		сам.атакаНачать() // в этом месте только атаковать
-		сам.проверитьМиссияКонвой()
-		сам.проверитьМиссияМастерДозора()
+		сам.проверитьМиссияРазведкаКонвой()
+		сам.проверитьМиссияМастерРазведки()
 		сам.проверитьМиссия6фрагов()
 		сам.Обновить()
 	}
@@ -203,7 +206,6 @@ func (сам *Конвой) найтиВбой() string {
 	}
 	for _, strLink := range lstConvoy {
 		если1 := strings.Contains(strLink, `<span>Начать разведку</span>`)
-		если2 := strings.Contains(strLink, `<span>В БОЙ!</span>`)
 		if если1 {
 			strOut = strLink
 			lstLink := strings.Split(strOut, `<div class="bot"><a class="simple-but border" w:id="findEnemy" href="`)
@@ -213,6 +215,7 @@ func (сам *Конвой) найтиВбой() string {
 			isFind = true
 			break
 		}
+		если2 := strings.Contains(strLink, `<span>В БОЙ!</span>`)
 		if если2 {
 			strOut = strLink
 			lstLink := strings.Split(strOut, `<div class="bot"><a class="simple-but border" w:id="startMasking" href="`)
@@ -225,6 +228,16 @@ func (сам *Конвой) найтиВбой() string {
 			isFind = true
 			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>")
+		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
 			lstLink := strings.Split(strOut, `<a href="`)
@@ -327,12 +340,11 @@ func (sf *Конвой) атакаИскать() (isNext bool) {
 }
 
 // Забирает награду в конвое "Активируй боевую силу"
-func (sf *Конвой) проверитьМиссияКонвой() {
+func (sf *Конвой) проверитьМиссияРазведкаКонвой() {
 	var (
 		strOut    string
 		isFind    bool
 		lstConvoy = sf.СписПолучить()
-		ind       int
 	)
 	if len(lstConvoy) == 0 {
 		if err := sf.net.UpdateLst(); err != nil {
@@ -341,11 +353,10 @@ func (sf *Конвой) проверитьМиссияКонвой() {
 		}
 		lstConvoy = sf.СписПолучить()
 	}
-	for ind, strOut = range lstConvoy {
-		if strings.Contains(strOut, `Активируй усиление &quot;Боевая сила&quot;<br/>`) {
+	// <a class="simple-but border" href="convoy?8-1.ILinkListener-missions-cc-0-c-awardLink"><span><span>Получить награду</span></span></a>
+	for _, strOut = range lstConvoy {
+		if strings.Contains(strOut, `<span>Получить награду</span>`) {
 			isFind = true
-			ind += 23
-			strOut = lstConvoy[ind]
 			break
 		}
 	}
@@ -353,14 +364,10 @@ func (sf *Конвой) проверитьМиссияКонвой() {
 		return
 	}
 	// <a class="simple-but border" href="convoy?70-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>`)
+	_ссылка := 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/" + lstLink[0]
+	strLink := "https://wartank.ru/" + _ссылка
 	lstConvoy, err := sf.net.Get(strLink)
 	if err != nil {
 		// log._rintf("ERRO Convoy.checkWarForce(): при выполнени команды GET, err=\n\t%v\n", err)
@@ -374,7 +381,7 @@ func (sf *Конвой) проверитьМиссияКонвой() {
 }
 
 // Забирает награду в конвое "Мастер дозора"
-func (sf *Конвой) проверитьМиссияМастерДозора() {
+func (sf *Конвой) проверитьМиссияМастерРазведки() {
 	var (
 		strOut    string
 		isFind    bool