40 procedure ControllerClose; |
40 procedure ControllerClose; |
41 procedure ControllerAxisEvent(joy, axis: Byte; value: Integer); |
41 procedure ControllerAxisEvent(joy, axis: Byte; value: Integer); |
42 procedure ControllerHatEvent(joy, hat, value: Byte); |
42 procedure ControllerHatEvent(joy, hat, value: Byte); |
43 procedure ControllerButtonEvent(joy, button: Byte; pressed: Boolean); |
43 procedure ControllerButtonEvent(joy, button: Byte; pressed: Boolean); |
44 |
44 |
45 {$IFDEF IPHONEOS} |
|
46 procedure HW_click; cdecl; export; |
|
47 procedure HW_zoomIn; cdecl; export; |
|
48 procedure HW_zoomOut; cdecl; export; |
|
49 procedure HW_zoomReset; cdecl; export; |
|
50 procedure HW_ammoMenu; cdecl; export; |
|
51 procedure HW_allKeysUp; cdecl; export; |
|
52 procedure HW_walkLeft; cdecl; export; |
|
53 procedure HW_walkRight; cdecl; export; |
|
54 procedure HW_aimUp; cdecl; export; |
|
55 procedure HW_aimDown; cdecl; export; |
|
56 procedure HW_shoot; cdecl; export; |
|
57 procedure HW_whereIsHog; cdecl; export; |
|
58 |
|
59 {$ENDIF} |
|
60 |
|
61 var hideAmmoMenu: boolean; |
45 var hideAmmoMenu: boolean; |
62 wheelUp: boolean = false; |
46 wheelUp: boolean = false; |
63 wheelDown: boolean = false; |
47 wheelDown: boolean = false; |
64 {$IFDEF TOUCHINPUT} |
48 {$IFDEF TOUCHINPUT} |
65 leftClick: boolean = false; |
49 leftClick: boolean = false; |
98 const KeyNumber = 1024; |
82 const KeyNumber = 1024; |
99 |
83 |
100 var tkbd, tkbdn: TKeyboardState; |
84 var tkbd, tkbdn: TKeyboardState; |
101 KeyNames: array [0..cKeyMaxIndex] of string[15]; |
85 KeyNames: array [0..cKeyMaxIndex] of string[15]; |
102 DefaultBinds, CurrentBinds: TBinds; |
86 DefaultBinds, CurrentBinds: TBinds; |
103 |
|
104 {$IFDEF IPHONEOS} |
|
105 // these are called by the touch functions present in SDL_uikitview.m |
|
106 // they emulate user interaction from mouse or keyboard |
|
107 procedure HW_click; cdecl; export; |
|
108 begin |
|
109 WriteLnToConsole('HW - left click'); |
|
110 leftClick:= true; |
|
111 exit |
|
112 end; |
|
113 |
|
114 procedure HW_zoomIn; cdecl; export; |
|
115 begin |
|
116 WriteLnToConsole('HW - zooming in'); |
|
117 wheelUp:= true; |
|
118 exit |
|
119 end; |
|
120 |
|
121 procedure HW_zoomOut; cdecl; export; |
|
122 begin |
|
123 WriteLnToConsole('HW - zooming out'); |
|
124 wheelDown:= true; |
|
125 exit |
|
126 end; |
|
127 |
|
128 procedure HW_zoomReset; cdecl; export; |
|
129 begin |
|
130 WriteLnToConsole('HW - reset zoom'); |
|
131 middleClick:= true; |
|
132 exit |
|
133 end; |
|
134 |
|
135 procedure HW_ammoMenu; cdecl; export; |
|
136 begin |
|
137 WriteLnToConsole('HW - right click'); |
|
138 rightClick:= true; |
|
139 exit |
|
140 end; |
|
141 |
|
142 procedure HW_allKeysUp; cdecl; export; |
|
143 begin |
|
144 WriteLnToConsole('HW - resetting keyboard'); |
|
145 |
|
146 upKey:= false; |
|
147 downKey:= false; |
|
148 leftKey:= false; |
|
149 rightKey:= false; |
|
150 spaceKey:= false; |
|
151 exit |
|
152 end; |
|
153 |
|
154 procedure HW_walkLeft; cdecl; export; |
|
155 begin |
|
156 WriteLnToConsole('HW - walking left'); |
|
157 leftKey:= true; |
|
158 exit |
|
159 end; |
|
160 |
|
161 procedure HW_walkRight; cdecl; export; |
|
162 begin |
|
163 WriteLnToConsole('HW - walking right'); |
|
164 rightKey:= true; |
|
165 exit |
|
166 end; |
|
167 |
|
168 procedure HW_aimUp; cdecl; export; |
|
169 begin |
|
170 WriteLnToConsole('HW - aiming upwards'); |
|
171 upKey:= true; |
|
172 exit |
|
173 end; |
|
174 |
|
175 procedure HW_aimDown; cdecl; export; |
|
176 begin |
|
177 WriteLnToConsole('HW - aiming downwards'); |
|
178 downKey:= true; |
|
179 exit |
|
180 end; |
|
181 |
|
182 procedure HW_shoot; cdecl; export; |
|
183 begin |
|
184 WriteLnToConsole('HW - shooting'); |
|
185 spaceKey:= true; |
|
186 exit |
|
187 end; |
|
188 |
|
189 procedure HW_whereIsHog; cdecl; export; |
|
190 var Xcoord, Ycoord: LongInt; |
|
191 begin |
|
192 //Xcoord:= Gear^.dX + WorldDx; |
|
193 WriteLnToConsole('HW - hog is at x: ' + ' y:'); |
|
194 |
|
195 exit |
|
196 end; |
|
197 {$ENDIF} |
|
198 |
87 |
199 function KeyNameToCode(name: string): word; |
88 function KeyNameToCode(name: string): word; |
200 var code: Word; |
89 var code: Word; |
201 begin |
90 begin |
202 code:= cKeyMaxIndex; |
91 code:= cKeyMaxIndex; |