summaryrefslogtreecommitdiff
path: root/scripts/slipro_gus.lua
blob: a83c6eb094fc4d9727b700ff44467ead1c821769 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
-- Custom SLIMax Manager Scripts v3
-- Copyright ©2012-2013 by Zappadoc - All Rights Reserved.
-- last change by Zappadoc - 2013-02

-- add you global custom functions and globals variables here 
-- patch the std SLIMax Events with your global custom scripts if needed
-- see the scripting section of the forum for more info...

-- IMPORTANT:
-- this script will not be deleted by uninstalling the software

-- ================================
-- CONSTANTS


-- ================================
-- additional lua extension module dll


-- ================================
-- additional scripts file ( use 'require' statement )

-- ================================
-- custom globals

-- ================================
-- custom functions

-- ================================
-- custom events

function global_custom_controlsEvent(devType, ctrlType, ctrlPos, value, funcIndex)
	-- type your custom controls script here (manage buttons, switches and encoders)
	return 2
end

function global_custom_deviceReport(devType)
	-- type your script here (just before sending report to the device )
	return 2
end

function global_custom_enterSessionEvent(devType)
    -- type your custom script on session start, here
    print ()
    print (              "vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv")
    print (string.format("simu   : %s",GetContextInfo("simulation")))
    print (string.format("car    : %s",GetContextInfo("carname")))
    print (string.format("track  : %s",GetContextInfo("trackname")))
    --print (string.format("session: %s",GetContextInfo("session")))
    print ()
    if GetContextInfo("ospcustom") then print ("has ospcustom") end

    print (string.format("shiftlightsmethod: %s",GetContextInfo("shiftlightsmethod")))
    print (string.format("ospmethod        : %s",GetContextInfo("ospmethod")))
    print (string.format("speedlimitemethod: %s",GetContextInfo("speedlimitermethod")))
    return 2
end

function global_custom_exitSessionEvent(devType)
    -- type your custom script on session ending, here
    if GetContextInfo("ospcustom") then print ("has ospcustom") end
    print ()
    print (string.format("shiftlightsmethod: %s",GetContextInfo("shiftlightsmethod")))
    print (string.format("ospmethod        : %s",GetContextInfo("ospmethod")))
    print (string.format("speedlimitemethod: %s",GetContextInfo("speedlimitermethod")))
    print (              "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^")
    print ()

    --my_setups=io.open("gus_cars.cfg", "a")
    --my_setups:write(GetContextInfo("carname"), " shiftligts ", GetContextInfo("shiftlightsmethod"), "\n")
    --my_setups:write(GetContextInfo("carname"), " speedlimiter ", GetContextInfo("speedlimitermethod"), "\n")
    --my_setups:close()

    return 2
end


-- ================================
-- SLI-PRO, SLI-M, BU0710 SUPPORT

function global_custom_ospMethodEvent(idx)
	-- type your custom Optimal Shift Points (OSP) method here
	return 2
end

function global_custom_shiftLightsMethodEvent(idx)
	-- type your custom shiftlights method here	
	return 2
end

function global_custom_shiftLightsBU0710Event(idx)
	-- type your custom shiftlights method for BU0710 device only here
	return 2
end

function global_custom_leftDigitsEvent(swPosition)
	-- type your custom script related to left SLI-PRO digits panel here
	return 2
end

function global_custom_rightDigitsEvent(swPosition)
	-- type your custom script related to right SLI-PRO digits panel here
	return 2
end

function global_custom_spdLmtMethodEvent(idx)
	-- type your custom speedlimiter method here
	return 2
end

function global_custom_gearEvent(gear)
    -- manage gear when ´E´
    if gear == 69 then
	local ignition = 1
	if GetContextInfo("simulation") == "rFactor2.exe" then
	    ignition = GetCarInfo("ignition")
	end
        local g = GetCarInfo("gear")

	--print ( string.format("gear %d/ignition %d" , g, ignition))

	toggleAllLed(0)
	if ignition == 2 then
	    SetLeftDigits(" ---- ")
	    SetRightDigits(" ---- ")
	else
	    SetLeftDigits("       ")
	    SetRightDigits("       ")
	end

	if ignition == 0 then
	    SetGearDigit(" ")
	elseif ignition == 1 then
	    SetGearDigit(GetCurrentGear())
	end

	SLISendReport(1)
        return 1
    end

    return 2
end

function global_custom_ledEvent(idx, ledFunction, state)
	-- type your custom script on session ending, here
	return 2
end

-- ================================
-- LOGITECH G27 SUPPORT

function global_custom_shiftLightsG27LedsMethodEvent(idx)
	-- type your custom shiftlights method for G27 device only here
	return 2
end

function global_custom_ospG27MethodEvent(idx)
	-- type your custom Optimal Shift Points (OSP) method here
	return 2
end

function global_custom_spdLmtG27MethodEvent(idx)
	-- type your custom speedlimiter method here
	return 2
end

-- ================================
-- FANATEC WHEELS SUPPORT

function global_custom_shiftLightsFanatecMethodEvent(idx)
	-- type your custom shiftlights method for Fanatec device only here
	return 2
end

function global_custom_fanatecDigitsEvent(swPosition)
	-- type your custom script related to Fanatec digits panel here
	return 2
end

function global_custom_ospFanatecMethodEvent(idx)
	-- type your custom Optimal Shift Points (OSP) method here
	return 2
end

function global_custom_spdLmtFanatecMethodEvent(idx)
	-- type your custom Optimal Shift Points (OSP) method here
	return 2
end

function global_custom_gearFanatecEvent(gear)
	-- type your custom gear event script here
	return 2
end

-- ================================
-- local custom events PLACEHOLDERS
-- DO NOT CHANGE THE SCRIPT BELOW
-- ================================
function custom_controlsEvent(deviceIdx, ctrlType, ctrlPos, value, funcIndex) return 2 end
function custom_deviceReport(devType) return 2 end
function custom_ospMethodEvent(idx) return 2 end
function custom_ospG27MethodEvent(idx) return 2 end
function custom_ospFanatecMethodEvent(idx) return 2 end
function custom_shiftLightsMethodEvent(idx) return 2 end
function custom_shiftLightsBU0710Event(idx) return 2 end
function custom_shiftLightsG27LedsMethodEvent(idx) return 2 end
function custom_shiftLightsFanatecMethodEvent(idx) return 2 end
function custom_leftDigitsEvent(swPosition) return 2 end
function custom_rightDigitsEvent(swPosition) return 2 end
function custom_fanatecDigitsEvent(swPosition) return 2 end
function custom_spdLmtMethodEvent(idx) return 2 end
function custom_spdLmtG27MethodEvent(idx) return 2 end
function custom_spdLmtFanatecMethodEvent(idx) return 2 end
function custom_gearEvent(gear) return 2 end
function custom_gearFanatecEvent(gear) return 2 end
function custom_enterSessionEvent(devType) return 2 end
function custom_exitSessionEvent(devType) return 2 end
function custom_ledEvent(idx, ledFunction, state) return 2 end