mirror of
https://github.com/bnowakow/GT7-Scripts.git
synced 2025-12-18 01:57:08 +00:00
297 lines
7.7 KiB
AutoHotkey
297 lines
7.7 KiB
AutoHotkey
;----------------------------------------------------------------------
|
|
; // START TOKYO RACE SCRIPT
|
|
;----------------------------------------------------------------------
|
|
|
|
GoTo EndRace_Tokyo_Def
|
|
Race_Tokyo()
|
|
{
|
|
; VARIABLES
|
|
lapcounter := 0
|
|
|
|
;----------------------------------------------------------------------
|
|
;---------------------------- // LAP 01 -------------------------------
|
|
;----------------------------------------------------------------------
|
|
|
|
;----------------------------------------------------------------------
|
|
; /1/ CHANGE FUEL MAP TO (LEAN 5) BEFORE RACE STARTS
|
|
;----------------------------------------------------------------------
|
|
|
|
Sleep(1000)
|
|
ToolTip, /1/ Changing to Lean (5) //, 22, 70, Screen
|
|
loop 4 {
|
|
Press_Up(delay:=200)
|
|
sleep, 200
|
|
}
|
|
Sleep(6000)
|
|
|
|
|
|
;----------------------------------------------------------------------
|
|
; /2/ ACTIVATE ACCELERATION (100%) AND SHIFT TO 7TH GEAR
|
|
;----------------------------------------------------------------------
|
|
|
|
ToolTip, /2/ Acceleration ON & Shifting to 7th gear //, 22, 70, Screen
|
|
Accel_On(100)
|
|
;Nitrous_On()
|
|
loop 3 {
|
|
Press_X(delay:=200)
|
|
sleep, 200
|
|
}
|
|
|
|
|
|
;----------------------------------------------------------------------
|
|
; /3/ TRIGGER FORCED 5 SECOND PENALTY
|
|
;----------------------------------------------------------------------
|
|
|
|
ToolTip, /3/ Triggering 5 sec. penalty //, 22, 70, Screen
|
|
Sleep(1000)
|
|
Turn_Left(1000,10)
|
|
|
|
;----------------------------------------------------------------------
|
|
; /4/ CHECK IF WE GOT THE 5 SEC PENALTY
|
|
;----------------------------------------------------------------------
|
|
|
|
/*
|
|
loop {
|
|
gosub, CheckPenalty
|
|
|
|
if( Penalty_triggered = true)
|
|
break
|
|
Sleep(100)
|
|
}
|
|
ToolTip, /4/ PENALTY RECEIVED //, 22, 70, Screen
|
|
Sleep(5000)
|
|
*/
|
|
|
|
;----------------------------------------------------------------------
|
|
; /5/ WAIT, THEN STEERING TO THE LEFT SIDE TO:
|
|
; /5/ OVERTAKE CARS LEFT, GRIND WALL, TAKE T1 FROM LEFT
|
|
;----------------------------------------------------------------------
|
|
|
|
|
|
|
|
;----------------------------------------------------------------------
|
|
;---------------------------- // LAP 02-12 ----------------------------
|
|
;----------------------------------------------------------------------
|
|
|
|
;----------------------------------------------------------------------
|
|
; /6/ START THE BIG LOOP
|
|
;----------------------------------------------------------------------
|
|
Turn_Left(12000,36)
|
|
|
|
loop
|
|
{
|
|
|
|
;----------------------------------------------------------------------
|
|
; /7/ TRIGGER FORCED 5 SECOND PENALTY
|
|
;----------------------------------------------------------------------
|
|
|
|
if (lapcounter > 0)
|
|
{
|
|
ToolTip, /7.1/ Triggering 5 sec. penalty after tunnel //, 22, 70, Screen
|
|
ToolTip, /7.2/ HALF Acceleration for 3 sec //, 22, 70, Screen
|
|
}
|
|
|
|
ToolTip, 5.1 // Hugging left wall from straight to chicane //, 22, 70, Screen
|
|
Turn_Left(26000,36)
|
|
|
|
ToolTip, 5.2 // Hugging right wall from chicane to hairpin //, 22, 70, Screen
|
|
Turn_Right(33000,72)
|
|
|
|
/*
|
|
;----------------------------------------------------------------------
|
|
; /9/ START THE CHICANE SEARCH LOOP
|
|
;----------------------------------------------------------------------
|
|
ToolTip, /9/ Turn right through chicane //, 22, 70, Screen
|
|
Turn_Right(15000,75)
|
|
ToolTip, /9/ Looking for Chicane //, 22, 70, Screen
|
|
loop {
|
|
gosub, CheckChicane
|
|
|
|
if( Chicane_complete = true)
|
|
break
|
|
Sleep(100)
|
|
}
|
|
|
|
;----------------------------------------------------------------------
|
|
; /10/ IF CHICANE FOUND:
|
|
; /10/ WAIT, THEN:
|
|
; /10/ ACCELERATION & NITRO OFF, TURN RIGHT, ACCELERATION & NITRO ON, WAIT
|
|
;----------------------------------------------------------------------
|
|
|
|
Sleep(1550)
|
|
ToolTip, /10/ Acceleration & Nitro OFF //, 22, 70, Screen
|
|
Nitrous_Off()
|
|
Accel_Off()
|
|
ToolTip, /10/ Turning left //, 22, 70, Screen
|
|
Turn_Left(1500,15)
|
|
ToolTip, /10/ Acceleration & Nitro ON //, 22, 70, Screen
|
|
Accel_On(100)
|
|
Nitrous_On()
|
|
gosub, ResetChicane
|
|
|
|
*/
|
|
|
|
;----------------------------------------------------------------------
|
|
; /11/ START THE HAIRPIN SEARCH LOOP
|
|
;----------------------------------------------------------------------
|
|
|
|
ToolTip, /11/ Looking for hairpin, 22, 70, Screen
|
|
|
|
color_player := 0xDE6E70
|
|
hairpin_complete := false
|
|
hairpinX := 506
|
|
hairpinY := 72
|
|
hairpinCount := 0
|
|
hairpinTolerance := 10
|
|
|
|
loop
|
|
{
|
|
|
|
tc := BitGrab(hairpinX, hairpinY,2)
|
|
|
|
for i, c in tc
|
|
{
|
|
td := Distance(c, color_player)
|
|
if (td < 9 ){
|
|
hairpin_complete := true
|
|
hairpinCount += 1
|
|
ToolTip, /11/ Hairpin Found, 22, 70, Screen
|
|
break
|
|
}
|
|
}
|
|
;Turn_Left(300, 30)
|
|
if( hairpinCount = 1 )
|
|
break
|
|
Sleep(100)
|
|
}
|
|
|
|
;----------------------------------------------------------------------
|
|
; /12/ IF HAIRPIN (1) FOUND:
|
|
; /12/ WAIT, THEN:
|
|
; /12/ HUG THE LEFT WALL TO GET 90° BUMPS
|
|
;----------------------------------------------------------------------
|
|
|
|
;ToolTip, /12/ Turning left for corner bumps //, 22, 70, Screen
|
|
;Turn_Left(20000, 25)
|
|
|
|
|
|
ToolTip, /12/ Hairpin - turn right 5700 70 //, 100, 100, Screen
|
|
|
|
Turn_Right(5700,70)
|
|
Accel_On(75)
|
|
ToolTip, /12/ Hairpin - turn right 12000 60 //, 100, 100, Screen
|
|
Turn_Right(5000,70 + lapcounter)
|
|
Sleep(1000)
|
|
Turn_Right(5000,65)
|
|
Accel_On(100)
|
|
ToolTip, /12/ Sleep //, 100, 100, Screen
|
|
Sleep(3000)
|
|
controller.Axes.LX.SetState(65)
|
|
|
|
|
|
|
|
loop
|
|
{
|
|
|
|
tc := BitGrab(hairpinX, hairpinY,2)
|
|
|
|
for i, c in tc
|
|
{
|
|
td := Distance(c, color_player)
|
|
if (td < 20 ){
|
|
hairpin_complete := true
|
|
hairpinCount += 1
|
|
ToolTip, /11/ Hairpin Found, 100, 100, Screen
|
|
break
|
|
}
|
|
}
|
|
;Turn_Left(300, 30)
|
|
if( hairpinCount = 2 )
|
|
break
|
|
Sleep(100)
|
|
}
|
|
ToolTip, LX 65, 22, 70, Screen
|
|
|
|
if (lapcounter = 4){
|
|
controller.Axes.LX.SetState(35)
|
|
}
|
|
else {
|
|
controller.Axes.LX.SetState(65)
|
|
}
|
|
|
|
|
|
Sleep(4650)
|
|
|
|
hairpinCount := 0
|
|
;----------------------------------------------------------------------
|
|
; /13/ HUG THE RIGHT WALL TO AVOID THE PIT ENTRANCE
|
|
;----------------------------------------------------------------------
|
|
|
|
ToolTip, Left 300 - Right 300, 100, 100, Screen
|
|
|
|
|
|
;Turn_Right(300,65)
|
|
|
|
;----------------------------------------------------------------------
|
|
; /7/ TRIGGER FORCED 5 SECOND PENALTY
|
|
;----------------------------------------------------------------------
|
|
|
|
if (lapcounter = 4){
|
|
;----------------------------------------------------------------------
|
|
; /20/ MAKE PIT STOP CHANGE TIRES
|
|
;----------------------------------------------------------------------
|
|
ToolTip, Heading to pit, 100, 100, Screen
|
|
;Turn_Right(800, 60)
|
|
controller.Axes.LX.SetState(0)
|
|
Accel_On()
|
|
Brake_off()
|
|
Sleep, 17000
|
|
Turn_Left(5000, 20)
|
|
ToolTip, Changing tires, 100, 100, Screen
|
|
Press_Up()
|
|
loop, 5{
|
|
Press_Left()
|
|
}
|
|
Press_X()
|
|
Press_Down()
|
|
Press_X()
|
|
controller.Axes.LX.SetState(50)
|
|
Sleep, 12000
|
|
ToolTip, Leaving Pit, 100, 100, Screen
|
|
loop 4 {
|
|
Press_X(delay:=200)
|
|
sleep, 200
|
|
}
|
|
}
|
|
else {
|
|
Accel_Off()
|
|
Brake_on(100)
|
|
Turn_Left(950, 40)
|
|
Sleep(3000)
|
|
|
|
controller.Axes.LX.SetState(70)
|
|
Brake_off()
|
|
Nitrous_On()
|
|
Accel_On(100)
|
|
Sleep(3000)
|
|
Turn_Right(2000, 90)
|
|
Turn_Right(11000, 65)
|
|
Sleep(3000)
|
|
|
|
Nitrous_Off()
|
|
}
|
|
;----------------------------------------------------------------------
|
|
; /55/ CLOSE LOOP LAP 1-12
|
|
;----------------------------------------------------------------------
|
|
|
|
lapcounter++
|
|
ToolTip, /55/ LAP %lapcounter%, 100, 100, Screen
|
|
}
|
|
|
|
;----------------------------------------------------------------------
|
|
; /99/ CLOSE RACE SCRIPT
|
|
;----------------------------------------------------------------------
|
|
|
|
}
|
|
EndRace_Tokyo_Def:
|