| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | player: limit data sizes for resources and population | Xavier Del Campo Romero | 2022-06-26 | 3 | -3/+6 |
| | | | | | | - All platforms should allow for the same resources. - Population is not expected to exceed UCHAR_MAX on any platform. | ||||
| * | camera: implement fixed cursor movement | Xavier Del Campo Romero | 2022-06-24 | 3 | -3/+77 |
| | | | | | | | | | | | | On platforms with PERIPHERAL_TYPE_PAD, navigating through menus and options can be cumbersome if moving the cursor freely around the screen. Therefore, this commit instead defines a list of (X, Y) coordinates that the cursor can jump to. The implementation also attempts to guess which direction the cursor should jump to for the previous/next point, and hence determine which button should be pressed by the user. | ||||
| * | camera.c: refactor cursor_init | Xavier Del Campo Romero | 2022-06-24 | 1 | -4/+15 |
| | | | | | So that uninitialized members are set to 0. | ||||
| * | peripheral: provide common actions | Xavier Del Campo Romero | 2022-06-24 | 6 | -38/+38 |
| | | | | | | | Whereas some actions are context-specific (e.g.: selecting a player), some are context-independent and can be executed for all screens (e.g.: exiting the game). | ||||
| * | camera: remove dependency against terrain | Xavier Del Campo Romero | 2022-06-12 | 6 | -9/+20 |
| | | | | | | This will allow using camera for purposes other than showing the game map. | ||||
| * | Split peripheral-related logic into its own component | Xavier Del Campo Romero | 2022-06-12 | 12 | -78/+164 |
| | | | | | | | | | | | | This has several advantages: - `camera` no longer needs to define public functions for each peripheral type. - Peripheral-related is now no longer tighly coupled to human_player, so peripheral logic can be reused elsewhere e.g.: on menus. - Makes camera_update_touch consistent compared to equivalent functions, since now `pan` has now been moved to `camera` (as it should be). | ||||
| * | sdl-1.2/sound.c: use SDL_WasInit | Xavier Del Campo Romero | 2022-06-11 | 1 | -4/+2 |
| | | |||||
| * | sdl-1.2: return to original dimensions on fullscreen exit | Xavier Del Campo Romero | 2022-06-11 | 1 | -3/+8 |
| | | |||||
| * | Implement button component | Xavier Del Campo Romero | 2022-06-11 | 5 | -1/+169 |
| | | |||||
| * | pad/CMakeLists.txt: add missing call to target_link_libraries() | Xavier Del Campo Romero | 2022-06-08 | 1 | -0/+1 |
| | | |||||
| * | Make gfx_draw return int | Xavier Del Campo Romero | 2022-05-24 | 4 | -4/+11 |
| | | |||||
| * | Use realloc(3) directly | Xavier Del Campo Romero | 2022-05-24 | 1 | -7/+1 |
| | | | | | It is simply not true realloc(3) cannot be used with NULL pointers. | ||||
| * | font.c: avoid several va_list in favor of large buffer | Xavier Del Campo Romero | 2022-05-24 | 1 | -32/+6 |
| | | |||||
| * | Allow systems without sound support | Xavier Del Campo Romero | 2022-05-24 | 4 | -11/+32 |
| | | |||||
| * | Remove unused minor stuff | Xavier Del Campo Romero | 2022-03-31 | 2 | -2/+1 |
| | | |||||
| * | resource.c: decouple collbox from sprite dimensions | Xavier Del Campo Romero | 2022-03-31 | 1 | -6/+26 |
| | | |||||
| * | Fix exit condition | Xavier Del Campo Romero | 2022-03-31 | 1 | -1/+1 |
| | | |||||
| * | Implement touch controls | Xavier Del Campo Romero | 2022-03-31 | 9 | -18/+177 |
| | | |||||
| * | Implement sub-tile collboxes | Xavier Del Campo Romero | 2022-03-30 | 9 | -7/+104 |
| | | | | | These will be later used by the pathfinding algorithm. | ||||
| * | Rename MAP_{X|Y} to MAP_{W|H} | Xavier Del Campo Romero | 2022-03-30 | 3 | -8/+8 |
| | | |||||
| * | camera: implement mouse support | Xavier Del Campo Romero | 2022-03-30 | 1 | -2/+27 |
| | | |||||
| * | Move CURSOR_{WIDTH|HEIGHT} to library scope | Xavier Del Campo Romero | 2022-03-30 | 2 | -13/+13 |
| | | |||||
| * | sdl-1.2/mouse.c: fix right click events | Xavier Del Campo Romero | 2022-03-30 | 1 | -1/+8 |
| | | |||||
| * | sdl-1.2: implement rect_init and semitrans_rect_init | Xavier Del Campo Romero | 2022-03-30 | 1 | -2/+7 |
| | | |||||
| * | sdl-1.2: implement env.c | Xavier Del Campo Romero | 2022-03-30 | 1 | -7/+82 |
| | | |||||
| * | gfx: separate port-specific interfaces | Xavier Del Campo Romero | 2022-03-30 | 16 | -32/+105 |
| | | |||||
| * | game.c: remove #if 0 | Xavier Del Campo Romero | 2022-03-30 | 1 | -2/+2 |
| | | |||||
| * | Add support for keyboard and mouse | Xavier Del Campo Romero | 2022-03-30 | 26 | -237/+836 |
| | | |||||
| * | Add metadata header to media files | Xavier Del Campo Romero | 2022-03-30 | 8 | -5/+172 |
| | | | | | | | | | | | The following properties are supported: - Sound: "loop". Must be either 0 or 1 - Images: "transparent". Must be either 0 or 1 These headers are only used for non-PS1 builds, since .TIM and .VAG files do already implement such information. | ||||
| * | container.c: distinguish ferror/feof from other errors | Xavier Del Campo Romero | 2022-03-30 | 1 | -2/+8 |
| | | |||||
| * | terrain.c: use long for map coordinates | Xavier Del Campo Romero | 2022-03-30 | 1 | -1/+1 |
| | | |||||
| * | sdl-1.2: hide system cursor | Xavier Del Campo Romero | 2022-03-30 | 1 | -0/+1 |
| | | |||||
| * | Replace x_get functions with macros | Xavier Del Campo Romero | 2022-03-30 | 17 | -179/+85 |
| | | | | | | | The PS1 port relies on a heap for primitives since the GPU renders the scene asynchronously. However, SDL-based platforms render primitives synchronously, so structures can be allocated on the stack instead. | ||||
| * | Refresh camera and terrain rendering on screen resize | Xavier Del Campo Romero | 2022-03-30 | 5 | -5/+32 |
| | | |||||
| * | Add project source code | Xavier Del Campo Romero | 2022-03-30 | 92 | -0/+5863 |
