Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Func atkAlgorithmBarch() ;Attack Algorithm for Barch
- While 1
- Local $Barb = -1, $Arch = -1, $CC = -1
- Global $King = -1, $Queen = -1
- For $i = 0 To 6
- If $atkTroops[$i][0] = "Barbarian" Then
- $Barb = $i
- ElseIf $atkTroops[$i][0] = "Archer" Then
- $Arch = $i
- ElseIf $atkTroops[$i][0] = "Clan Castle" Then
- $CC = $i
- ElseIf $atkTroops[$i][0] = "King" Then
- $King = $i
- ElseIf $atkTroops[$i][0] = "Queen" Then
- $Queen = $i
- EndIf
- Next
- If _Sleep(500) Then ExitLoop
- Switch $deploySettings
- Case 0 ;Two sides ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- SetLog("~Attacking in two sides...")
- If _Sleep(1000) Then ExitLoop
- If Not $Barb = -1 Then Local $numBarbPerSpot = Ceiling((($atkTroops[$Barb][1] / 2) / 5) / 2)
- If Not $Arch = -1 Then Local $numArchPerSpot = Ceiling((($atkTroops[$Arch][1] / 2) / 5) / 2)
- If Not $Barb = -1 Then
- SetLog("Dropping first wave of Barbarians")
- For $i = 0 To 4 ;Drop first round of Barbarians
- Click(68 + (72 * $Barb), 595) ;Select Troop
- If _Sleep(100) Then ExitLoop (2)
- Click($TopLeft[$i][0], $TopLeft[$i][1], $numBarbPerSpot, 1)
- Click($BottomRight[$i][0], $BottomRight[$i][1], $numBarbPerSpot, 1)
- Next
- EndIf
- If _Sleep(1000) Then ExitLoop
- If Not $Arch = -1 Then
- SetLog("Dropping first wave of Archers")
- For $i = 0 To 4 ;Drop first round of Archers
- Click(68 + (72 * $Arch), 595) ;Select Troop
- If _Sleep(100) Then ExitLoop (2)
- Click($TopLeft[$i][0], $TopLeft[$i][1], $numArchPerSpot, 1)
- Click($BottomRight[$i][0], $BottomRight[$i][1], $numArchPerSpot, 1)
- Next
- EndIf
- If _Sleep(2000) Then ExitLoop ;-------------------------------------------
- If Not $Barb = -1 Then
- SetLog("Dropping second wave of Barbarians")
- For $i = 0 To 4 ;Drop second round of Barbarians
- Click(68 + (72 * $Barb), 595) ;Select Troop
- If _Sleep(100) Then ExitLoop (2)
- Click($TopLeft[$i][0], $TopLeft[$i][1], $numBarbPerSpot, 1)
- Click($BottomRight[$i][0], $BottomRight[$i][1], $numBarbPerSpot, 1)
- Next
- EndIf
- If _Sleep(1000) Then ExitLoop
- If Not $Arch = -1 Then
- SetLog("Dropping second wave of Archers")
- For $i = 0 To 4 ;Drop second round of Archers
- Click(68 + (72 * $Arch), 595) ;Select Troop
- If _Sleep(100) Then ExitLoop (2)
- Click($TopLeft[$i][0], $TopLeft[$i][1], $numArchPerSpot, 1)
- Click($BottomRight[$i][0], $BottomRight[$i][1], $numArchPerSpot, 1)
- Next
- EndIf
- dropHeroes($TopLeft[3][0], $TopLeft[3][1], $King, $Queen)
- If _Sleep(1000) Then ExitLoop
- If $CC <> -1 Then dropCC($TopLeft[3][0], $TopLeft[3][1], $CC)
- Case 1 ;Three sides ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- SetLog("~Attacking in three sides...")
- If _Sleep(1000) Then ExitLoop
- If Not $Barb = -1 Then Local $numBarbPerSpot = Ceiling((($atkTroops[$Barb][1] / 3) / 5) / 2)
- If Not $Arch = -1 Then Local $numArchPerSpot = Ceiling((($atkTroops[$Arch][1] / 3) / 5) / 2)
- If Not $Barb = -1 Then
- SetLog("Dropping first wave of Barbarians")
- For $i = 0 To 4 ;Drop first round of Barbarians
- Click(68 + (72 * $Barb), 595) ;Select Troop
- If _Sleep(100) Then ExitLoop (2)
- Click($TopLeft[$i][0], $TopLeft[$i][1], $numBarbPerSpot, 1)
- Click($TopRight[$i][0], $TopRight[$i][1], $numBarbPerSpot, 1)
- Click($BottomRight[$i][0], $BottomRight[$i][1], $numBarbPerSpot, 1)
- Next
- EndIf
- If _Sleep(1000) Then ExitLoop
- If Not $Arch = -1 Then
- SetLog("Dropping first wave of Archers")
- For $i = 0 To 4 ;Drop first round of Archers
- Click(68 + (72 * $Arch), 595) ;Select Troop
- If _Sleep(100) Then ExitLoop (2)
- Click($TopLeft[$i][0], $TopLeft[$i][1], $numArchPerSpot, 1)
- Click($TopRight[$i][0], $TopRight[$i][1], $numArchPerSpot, 1)
- Click($BottomRight[$i][0], $BottomRight[$i][1], $numArchPerSpot, 1)
- Next
- EndIf
- If _Sleep(2000) Then ExitLoop ;-------------------------------------------
- If Not $Barb = -1 Then
- SetLog("Dropping second wave of Barbarians")
- For $i = 0 To 4 ;Drop second round of Barbarians
- Click(68 + (72 * $Barb), 595) ;Select Troop
- If _Sleep(100) Then ExitLoop (2)
- Click($TopLeft[$i][0], $TopLeft[$i][1], $numBarbPerSpot, 1)
- Click($TopRight[$i][0], $TopRight[$i][1], $numBarbPerSpot, 1)
- Click($BottomRight[$i][0], $BottomRight[$i][1], $numBarbPerSpot, 1)
- Next
- EndIf
- If _Sleep(1000) Then ExitLoop
- If Not $Arch = -1 Then
- SetLog("Dropping second wave of Archers")
- For $i = 0 To 4 ;Drop second round of Archers
- Click(68 + (72 * $Arch), 595) ;Select Troop
- If _Sleep(100) Then ExitLoop (2)
- Click($TopLeft[$i][0], $TopLeft[$i][1], $numArchPerSpot, 1)
- Click($TopRight[$i][0], $TopRight[$i][1], $numArchPerSpot, 1)
- Click($BottomRight[$i][0], $BottomRight[$i][1], $numArchPerSpot, 1)
- Next
- EndIf
- dropHeroes($TopRight[3][0], $TopRight[3][1], $King, $Queen)
- If _Sleep(1000) Then ExitLoop
- If $CC <> -1 Then dropCC($TopRight[3][0], $TopRight[3][1], $CC)
- Case 2 ;Four sides ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- SetLog("~Attacking in all sides...")
- If _Sleep(1000) Then ExitLoop
- If Not $Barb = -1 Then Local $numBarbPerSpot = Ceiling((($atkTroops[$Barb][1] / 4) / 5) / 2)
- If Not $Arch = -1 Then Local $numArchPerSpot = Ceiling((($atkTroops[$Arch][1] / 4) / 5) / 2)
- If Not $Barb = -1 Then
- SetLog("Dropping first wave of Barbarians")
- For $i = 0 To 4 ;Drop first round of Barbarians
- Click(68 + (72 * $Barb), 595) ;Select Troop
- If _Sleep(100) Then ExitLoop (2)
- Click($TopLeft[$i][0], $TopLeft[$i][1], $numBarbPerSpot, 1)
- Click($TopRight[$i][0], $TopRight[$i][1], $numBarbPerSpot, 1)
- Click($BottomLeft[$i][0], $BottomLeft[$i][1], $numBarbPerSpot, 1)
- Click($BottomRight[$i][0], $BottomRight[$i][1], $numBarbPerSpot, 1)
- Next
- EndIf
- If _Sleep(1000) Then ExitLoop
- If Not $Arch = -1 Then
- SetLog("Dropping first wave of Archers")
- For $i = 0 To 4 ;Drop first round of Archers
- Click(68 + (72 * $Arch), 595) ;Select Troop
- If _Sleep(100) Then ExitLoop (2)
- Click($TopLeft[$i][0], $TopLeft[$i][1], $numArchPerSpot, 1)
- Click($TopRight[$i][0], $TopRight[$i][1], $numArchPerSpot, 1)
- Click($BottomLeft[$i][0], $BottomLeft[$i][1], $numArchPerSpot, 1)
- Click($BottomRight[$i][0], $BottomRight[$i][1], $numArchPerSpot, 1)
- Next
- EndIf
- If _Sleep(2000) Then ExitLoop ;-------------------------------------------
- If Not $Barb = -1 Then
- SetLog("Dropping second wave of Barbarians")
- For $i = 0 To 4 ;Drop second round of Barbarians
- Click(68 + (72 * $Barb), 595) ;Select Troop
- If _Sleep(100) Then ExitLoop (2)
- Click($TopLeft[$i][0], $TopLeft[$i][1], $numBarbPerSpot, 1)
- Click($TopRight[$i][0], $TopRight[$i][1], $numBarbPerSpot, 1)
- Click($BottomLeft[$i][0], $BottomLeft[$i][1], $numBarbPerSpot, 1)
- Click($BottomRight[$i][0], $BottomRight[$i][1], $numBarbPerSpot, 1)
- Next
- EndIf
- If _Sleep(1000) Then ExitLoop
- If Not $Arch = -1 Then
- SetLog("Dropping second wave of Archers")
- For $i = 0 To 4 ;Drop second round of Archers
- Click(68 + (72 * $Arch), 595) ;Select Troop
- If _Sleep(100) Then ExitLoop (2)
- Click($TopLeft[$i][0], $TopLeft[$i][1], $numArchPerSpot, 1)
- Click($TopRight[$i][0], $TopRight[$i][1], $numArchPerSpot, 1)
- Click($BottomLeft[$i][0], $BottomLeft[$i][1], $numArchPerSpot, 1)
- Click($BottomRight[$i][0], $BottomRight[$i][1], $numArchPerSpot, 1)
- Next
- EndIf
- dropHeroes($BottomLeft[3][0], $BottomLeft[3][1], $King, $Queen)
- If _Sleep(1000) Then ExitLoop
- If $CC <> -1 Then dropCC($BottomLeft[3][0], $BottomLeft[3][1], $CC)
- EndSwitch
- If _Sleep(100) Then ExitLoop
- SetLog("Dropping left over troops")
- If Not $Barb = -1 Then $atkTroops[$Barb][1] = Number(getNormal(40 + (72 * $Barb), 565))
- If Not $Arch = -1 Then $atkTroops[$Arch][1] = Number(getNormal(40 + (72 * $Arch), 565))
- If Not $Barb = -1 Then
- While $atkTroops[$Barb][1] <> 0
- Click(68 + (72 * $Barb), 595)
- Click($TopLeft[3][0], $TopLeft[3][1], $atkTroops[$Barb][1], 1)
- $atkTroops[$Barb][1] = Number(getNormal(40 + (72 * $Barb), 565))
- WEnd
- EndIf
- If _Sleep(1000) Then ExitLoop
- If Not $Arch = -1 Then
- While $atkTroops[$Arch][1] <> 0
- Click(68 + (72 * $Arch), 595)
- Click($TopLeft[3][0], $TopLeft[3][1], $atkTroops[$Arch][1], 1)
- $atkTroops[$Arch][1] = Number(getNormal(40 + (72 * $Arch), 565))
- WEnd
- EndIf
- If _Sleep(100) Then ExitLoop
- ;Activate KQ's power
- If $checkKPower <> -1 Or $checkQPower <> -1 Then
- SetLog("Waiting " & $delayActivateKQ / 1000 & " seconds before activating King/Queen")
- _Sleep($delayActivateKQ)
- If $checkKPower <> -1 Then
- SetLog("Activate King's power")
- Click(68 + (72 * $checkKPower), 595)
- EndIf
- If $checkQPower <> -1 Then
- SetLog("Activate Queen's power")
- Click(68 + (72 * $checkQPower), 595)
- EndIf
- EndIf
- SetLog("~Finished Attacking, waiting to finish")
- ExitLoop
- WEnd
- EndFunc ;==>atkAlgorithmBarch
Advertisement
Add Comment
Please, Sign In to add comment