add infos in Modes and Secrets tabs
[neverball] / ball / st_shared.c
1 /*
2  * Copyright (C) 2003 Robert Kooima - 2006 Jean Privat
3  * Part of the Neverball Project http://icculus.org/neverball/
4  *
5  * NEVERBALL is  free software; you can redistribute  it and/or modify
6  * it under the  terms of the GNU General  Public License as published
7  * by the Free  Software Foundation; either version 2  of the License,
8  * or (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful, but
11  * WITHOUT  ANY  WARRANTY;  without   even  the  implied  warranty  of
12  * MERCHANTABILITY or  FITNESS FOR A PARTICULAR PURPOSE.   See the GNU
13  * General Public License for more details.
14  */
15
16 #include "gui.h"
17 #include "config.h"
18 #include "audio.h"
19 #include "game.h"
20 #include "state.h"
21
22 #include "st_shared.h"
23
24 void shared_leave(int id)
25 {
26     gui_delete(id);
27 }
28
29 void shared_paint(int id, float st)
30 {
31     game_draw(0, st);
32     gui_paint(id);
33 }
34
35 void shared_timer(int id, float dt)
36 {
37     gui_timer(id, dt);
38     audio_timer(dt);
39 }
40
41 int shared_point_basic(int id, int x, int y)
42 /* Pulse, activate and return the active id (if changed)*/
43 {
44     int jd = gui_point(id, x, y);
45     if (jd)
46         gui_pulse(jd, 1.2f);
47     return jd;
48 }
49
50 void shared_point(int id, int x, int y, int dx, int dy)
51 {
52     shared_point_basic(id, x, y);
53 }
54
55 int shared_stick_basic(int id, int a, int v)
56 /* Pulse, activate and return the active id (if changed)*/
57 {
58     int jd = 0;
59     if (config_tst_d(CONFIG_JOYSTICK_AXIS_X, a))
60         jd = gui_stick(id, v, 0);
61     else if (config_tst_d(CONFIG_JOYSTICK_AXIS_Y, a))
62         jd = gui_stick(id, 0, v);
63     if (jd)
64         gui_pulse(jd, 1.2f);
65     return jd;
66 }
67
68 void shared_stick(int id, int a, int v)
69 {
70     shared_stick_basic(id, a, v);
71 }
72
73 int shared_click(int b, int d)
74 {
75     if (b < 0 && d == 1)
76         return st_buttn(config_get_d(CONFIG_JOYSTICK_BUTTON_A), 1);
77     else
78         return 1;
79 }
80