Files
GT7-Scripts/bnowakow/old versions/3 GT7-AHK/GT7-AHKv1.00.01/Races/PanAm.bak.best.ahk
Bartek Dobrowolski-Nowakowski 5d0472feec renames
2022-04-20 15:26:28 +02:00

113 lines
2.8 KiB
AutoHotkey

GoTo EndRace_PANAM_Def
Race_PANAM()
{
; Turn Containers are in the CheckTurn.ahk
turn1 := new TurnContainer(629, 109, 630, 95)
turn2 := new TurnContainer(539, 44, 511, 52)
turn3 := new TurnContainer(490, 89, 502, 111)
lap_marker := new TurnContainer(560, 112)
; Press X to start the race
Tooltip
gosub, PressX
; Hold Acceleration and manage turning
Nitrous_On()
Accel_On(100)
Sleep, 8200
;SetTimer, CheckTyresOverheating, 1000
CheckForOilChange := Mod(30 - A_Index, 30)
SetFormat, IntegerFast, d
CheckForMaintenance := Mod(180 - A_Index, 180)
SetFormat, IntegerFast, d
;ToolTip, Oil: %CheckForOilChange% race(s) remaining`nEngine: %CheckForMaintenance% race(s) remaining, 250, 45, Screen
ToolTipper("Oil: " CheckForOilChange " race(s) remaining`nEngine: " CheckForMaintenance " race(s) remaining", 250, 45)
race_complete := false
;SetTimer, RaceComplete, 213000
; Retry race if time is taking more than 5.5 mins
; (assume something went wrong with race)
;SetTimer, RetryRace, 330000
;Lap 1
Sleep(1000)
Turn_Right(2800, 75) /* before turn 1, to avoid queue of cars */
Loop, 6 {
; Turn 1
Tooltip
CheckTurn(turn1.startX, turn1.startY)
Tooltip, Turn 1 start found, 100, 100, screen
controller.Axes.LX.SetState(15)
CheckTurn(turn1.endX, turn1.endY)
Tooltip, Turn 1 end found, 100, 100, screen
Nitrous_On()
controller.Axes.LX.SetState(80)
sleep(1500)
controller.Axes.LX.SetState(65)
; Turn 2
CheckTurn(turn2.startX, turn2.startY)
Tooltip, Turn 2 start found, 100, 100, screen
controller.Axes.LX.SetState(20)
CheckTurn(turn2.endX, turn2.endY)
Tooltip, Turn 2 end found, 100, 100, screen
controller.Axes.LX.SetState(75)
sleep(2000)
controller.Axes.LX.SetState(65)
; Turn 3
CheckTurn(turn3.startX, turn3.startY)
Nitrous_Off()
Tooltip, Turn 3 start found, 100, 100, screen
controller.Axes.LX.SetState(0)
CheckTurn(turn3.endX, turn3.endY, 2)
Nitrous_On()
Tooltip, Turn 3 end found, 100, 100, screen
controller.Axes.LX.SetState(75)
sleep(2000)
controller.Axes.LX.SetState(65)
CheckTurn(lap_marker.startX, lap_marker.startY)
Tooltip, Lap Complete, 100, 100, screen
}
loop {
;ToolTip, Racing, 100, 100, Screen
break_point := false
c1 := BitGrab(pix1x, pix1y, box_size)
for i, c in c1
{
d1 := Distance(c, color_check1)
if (d1 < tolerance ){
break_point := true
break
}
}
if (break_point)
break
controller.Dpad.SetState("Right")
Sleep, 50
controller.Dpad.SetState("None")
Sleep, 100
}
ToolTipper("Found color 1")
;SetTimer, RetryRace, off
gosub, PauseLoop
Sleep, 500
return
}
Race_PANAM_Complete()
{
race_complete := true
return
}
EndRace_PANAM_Def: