/* menu toggle */
toggle_help();
}
- if (button_left_thumb) {
+ if (button_right_thumb) {
/* reset observer */
reset_observer_ovr();
osd_info("", "reset observer");
set_joystick(-1, -1, 0, 0, -1);
/* thrust */
/* button to toggle between stop and escape */
- if (button_left_trigger && !button_left_trigger_last) {
+ if (button_left_thumb && !button_left_thumb_last) {
/* 'escape' pressed */
- if (thrust_last == 0)
+ if (thrust_last != -99)
thrust = -99;
else
thrust = 0;
}
+ /* button to stop */
+ if (button_left_trigger && !button_left_trigger_last) {
+ /* 'stop' pressed */
+ thrust = 0;
+ }
/* get stick to increment or decrement thrust */
if (stick_left_y > STICK_THRUST_THRESHOLD)
increment = (stick_left_y - STICK_THRUST_THRESHOLD) / (1.0 - STICK_THRUST_THRESHOLD);
if (increment) {
diff = current_time - last_time;
inc_count += increment * diff;
+ /* if we are in 'escape' mode, we stop thrust first */
+ if (thrust == -99)
+ thrust = 0;
if (inc_count > 150.0 && thrust >= -10 && thrust < 10) {
thrust++;
inc_count = 0.0;
last_time = current_time;
/* send thrust change as keycodes */
if (thrust_last != thrust) {
+ /* if we were in escape mode, we stop us first and then apply the new code */
+ if (thrust_last == -99) {
+ set_amiga_key(KEYCODE_SPACE, 1);
+ set_amiga_key(KEYCODE_SPACE, 0);
+ }
+
if (thrust >= 10) {
set_amiga_key(KEYCODE_0, 1);
set_amiga_key(KEYCODE_0, 0);
" Press `X' button to board, `Y' button to leave.\n"
" Move thumb stick on left controller to drive/fly forward or backward.\n"
" Pull `Trigger' on left controller stop craft.\n"
- " Pull `Trigger' on left controller for escape sequence, after stop.\n"
+ " Press thumb stick on left controller for escape sequence and stop it.\n"
" Pull `Trigger' on right controller to fire.\n"
"\n"
"For all other game function, use the virtual or real keyboard!\n"