OSDN Git Service

ww
[proj16/16.git] / src / inputest.c
1 /* Project 16 Source Code~\r
2  * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123\r
3  *\r
4  * This file is part of Project 16.\r
5  *\r
6  * Project 16 is free software; you can redistribute it and/or modify\r
7  * it under the terms of the GNU General Public License as published by\r
8  * the Free Software Foundation; either version 3 of the License, or\r
9  * (at your option) any later version.\r
10  *\r
11  * Project 16 is distributed in the hope that it will be useful,\r
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
14  * GNU General Public License for more details.\r
15  *\r
16  * You should have received a copy of the GNU General Public License\r
17  * along with this program.  If not, see <http://www.gnu.org/licenses/>, or\r
18  * write to the Free Software Foundation, Inc., 51 Franklin Street,\r
19  * Fifth Floor, Boston, MA 02110-1301 USA.\r
20  *\r
21  */\r
22 /*\r
23         input test\r
24 */\r
25 #include "src/lib/16_in.h"\r
26 \r
27 void\r
28 main(int argc, char *argv[])\r
29 {\r
30         global_game_variables_t gvar;\r
31         player_t player[MaxPlayers];\r
32         //extern struct inconfig inpu;\r
33         testkeyin=0;\r
34         testcontrolnoisy=0;\r
35         testctrltype=1;\r
36         IN_Startup();\r
37         IN_Default(0,&player,ctrl_Joystick1);\r
38         //while(!IN_KeyDown(sc_Escape))\r
39         player[0].q=1;\r
40         player[0].d=2;\r
41         player[0].persist_aniframe=0;\r
42         player[0].speed=4;\r
43         start_timer(&gvar);\r
44         while(!IN_KeyDown(sc_Escape))\r
45         {\r
46                 shinkutxt(&gvar);\r
47                 IN_ReadControl(0,&player);\r
48                 #define INC_PER_FRAME if(player[0].q&1) player[0].persist_aniframe++; if(player[0].persist_aniframe>4) player[0].persist_aniframe = 1;\r
49                 switch(player[0].d)\r
50                 {\r
51                 //right movement\r
52                 case 3:\r
53                         if(player[0].q<=(TILEWH/(player[0].speed)))\r
54                         {\r
55                                 INC_PER_FRAME;\r
56                                 player[0].q++;\r
57                         } else { player[0].q = 1; player[0].d = 2; }\r
58                 break;\r
59 \r
60                 //left movement\r
61                 case 1:\r
62                         if(player[0].q<=(TILEWH/(player[0].speed)))\r
63                         {\r
64                                 INC_PER_FRAME;\r
65                                 player[0].q++;\r
66                         } else { player[0].q = 1; player[0].d = 2; }\r
67                 break;\r
68 \r
69                 //down movement\r
70                 case 4:\r
71                         if(player[0].q<=(TILEWH/(player[0].speed)))\r
72                         {\r
73                                 INC_PER_FRAME;\r
74                                 player[0].q++;\r
75                         } else { player[0].q = 1; player[0].d = 2; }\r
76                 break;\r
77 \r
78                 //up movement\r
79                 case 0:\r
80                         if(player[0].q<=(TILEWH/(player[0].speed)))\r
81                         {\r
82                                 INC_PER_FRAME;\r
83                                 player[0].q++;\r
84                         } else { player[0].q = 1; player[0].d = 2; }\r
85                 break;\r
86         }\r
87                 //printf("%u\n", IN_KeyDown(sc_Escape));\r
88                 //if(\r
89                 IN_qb(sc_9);//>0) printf("IN_qb(sc_9)=%u\n", IN_qb(sc_9));\r
90                 if(IN_KeyDown(88))      //speed\r
91                 {\r
92                         switch(gvar.kurokku.fpscap)\r
93                         {\r
94                                 case 0:\r
95                                         gvar.kurokku.fpscap=1;\r
96                                 break;\r
97                                 case 1:\r
98                                         gvar.kurokku.fpscap=0;\r
99                                 break;\r
100                         }\r
101                         //IN_Ack();\r
102                 }\r
103         }\r
104         IN_Shutdown();\r
105         //printf("%u\n", in.Keyboard[sc_Escape]);\r
106         printf("inputest.exe ");\r
107         printf("version %s\n", VERSION);\r
108         printf("testkeyin=%u\n", testkeyin);\r
109         printf("testcontrolnoisy=%u\n", testcontrolnoisy);\r
110         printf("testctrltype=%u\n", testctrltype);\r
111 }\r