99 exit; |
99 exit; |
100 end; |
100 end; |
101 |
101 |
102 if isOnWidget(fireButton, finger^) then |
102 if isOnWidget(fireButton, finger^) then |
103 begin |
103 begin |
104 spaceKey:= true; |
104 ParseTeamCommand('+attack'); |
105 moveCursor:= false; |
105 moveCursor:= false; |
106 finger^.pressedWidget:= @fireButton; |
106 finger^.pressedWidget:= @fireButton; |
107 exit; |
107 exit; |
108 end; |
108 end; |
109 if isOnWidget(arrowLeft, finger^) then |
109 if isOnWidget(arrowLeft, finger^) then |
110 begin |
110 begin |
111 leftKey:= true; |
111 ParseTeamCommand('+left'); |
112 moveCursor:= false; |
112 moveCursor:= false; |
113 finger^.pressedWidget:= @arrowLeft; |
113 finger^.pressedWidget:= @arrowLeft; |
114 exit; |
114 exit; |
115 end; |
115 end; |
116 if isOnWidget(arrowRight, finger^) then |
116 if isOnWidget(arrowRight, finger^) then |
117 begin |
117 begin |
118 rightKey:= true; |
118 ParseTeamCommand('+right'); |
119 moveCursor:= false; |
119 moveCursor:= false; |
120 finger^.pressedWidget:= @arrowRight; |
120 finger^.pressedWidget:= @arrowRight; |
121 exit; |
121 exit; |
122 end; |
122 end; |
123 if isOnWidget(arrowUp, finger^) then |
123 if isOnWidget(arrowUp, finger^) then |
124 begin |
124 begin |
125 upKey:= true; |
125 ParseTeamCommand('+up'); |
|
126 aimingUp:= true; |
126 moveCursor:= false; |
127 moveCursor:= false; |
127 finger^.pressedWidget:= @arrowUp; |
128 finger^.pressedWidget:= @arrowUp; |
128 exit; |
129 exit; |
129 end; |
130 end; |
130 if isOnWidget(arrowDown, finger^) then |
131 if isOnWidget(arrowDown, finger^) then |
131 begin |
132 begin |
132 downKey:= true; |
133 ParseTeamCommand('+down'); |
|
134 aimingDown:= true; |
133 moveCursor:= false; |
135 moveCursor:= false; |
134 finger^.pressedWidget:= @arrowDown; |
136 finger^.pressedWidget:= @arrowDown; |
135 exit; |
137 exit; |
136 end; |
138 end; |
137 |
139 |
259 |
261 |
260 procedure onTouchLongClick(finger: TTouch_Data); |
262 procedure onTouchLongClick(finger: TTouch_Data); |
261 begin |
263 begin |
262 {$IFDEF USE_TOUCH_INTERFACE} |
264 {$IFDEF USE_TOUCH_INTERFACE} |
263 if isOnWidget(jumpWidget, finger) then |
265 if isOnWidget(jumpWidget, finger) then |
264 begin |
266 ParseTeamCommand('ljump'); |
265 ParseCommand('ljump', (CurrentTeam <> nil) and not(CurrentTeam^.ExtDriven) and (CurrentHedgehog^.BotLevel=0)); |
|
266 if (CurrentTeam <> nil) and (not CurrentTeam^.ExtDriven) and (ReadyTimeLeft > 1) then |
|
267 ParseCommand('gencmd R', true); |
|
268 exit; |
|
269 end; |
|
270 {$ENDIF} |
267 {$ENDIF} |
271 end; |
268 end; |
272 |
269 |
273 procedure onTouchClick(finger: TTouch_Data); |
270 procedure onTouchClick(finger: TTouch_Data); |
274 begin |
271 begin |
395 if CurrentHedgehog^.Gear <> nil then |
390 if CurrentHedgehog^.Gear <> nil then |
396 begin |
391 begin |
397 deltaAngle:= CurrentHedgehog^.Gear^.Angle - targetAngle; |
392 deltaAngle:= CurrentHedgehog^.Gear^.Angle - targetAngle; |
398 if (deltaAngle > -5) and (deltaAngle < 5) then |
393 if (deltaAngle > -5) and (deltaAngle < 5) then |
399 begin |
394 begin |
400 upKey:= false; |
395 if(aimingUp)then |
401 aimingUp:= false; |
396 begin |
402 downKey:= false; |
397 aimingUp:= false; |
403 aimingDown:= false; |
398 ParseTeamCommand('-up'); |
|
399 end; |
|
400 if(aimingDown)then |
|
401 begin |
|
402 aimingDown:= false; |
|
403 ParseTeamCommand('-down'); |
|
404 end |
404 end |
405 end |
405 else |
406 else |
406 begin |
407 begin |
407 if (deltaAngle < 0) then |
408 if (deltaAngle < 0) then |
408 begin |
409 begin |
409 if aimingUp then |
410 if aimingUp then |
410 begin |
411 begin |
411 upKey:= false; |
|
412 aimingUp:= false; |
412 aimingUp:= false; |
|
413 ParseTeamCommand('-up'); |
413 end; |
414 end; |
414 downKey:= true; |
415 if(aimingDown)then |
415 aimingDown:= true; |
416 begin |
|
417 aimingDown:= true; |
|
418 ParseTeamCommand('-down'); |
|
419 end |
416 end |
420 end |
417 else |
421 else |
418 begin |
422 begin |
419 if aimingDown then |
423 if aimingDown then |
420 begin |
424 begin |
421 downKey:= false; |
425 ParseTeamCommand('-down'); |
422 aimingDown:= false; |
426 aimingDown:= false; |
423 end; |
427 end; |
424 upKey:= true; |
428 if aimingUp then |
425 aimingUp:= true; |
429 begin |
|
430 aimingUp:= true; |
|
431 ParseTeamCommand('+up'); |
|
432 end; |
426 end; |
433 end; |
427 end; |
434 end; |
428 end |
435 end |
429 else |
436 else |
430 begin |
437 begin |
431 if aimingUp then |
438 if aimingUp then |
432 begin |
439 begin |
433 upKey:= false; |
440 ParseTeamCommand('-up'); |
434 aimingUp:= false; |
441 aimingUp:= false; |
435 end; |
442 end; |
436 if aimingDown then |
443 if aimingDown then |
437 begin |
444 begin |
438 upKey:= false; |
445 ParseTeamCommand('-down'); |
439 aimingDown:= false; |
446 aimingDown:= false; |
440 end; |
447 end; |
441 end; |
448 end; |
442 end; |
449 end; |
443 |
450 |