Commit Graph

501 Commits

Author SHA1 Message Date
Steve 28d3c70183 Checkpoint bug fix. 2018-02-19 19:14:32 +00:00
Steve dbcd2debc3 Put atlas entries into buckets. 2018-02-19 19:14:03 +00:00
Steve 72efd1048b Trophy updates. 2018-02-19 19:13:29 +00:00
Steve 44e34ab7de Show stats during level. 2018-02-19 19:12:55 +00:00
Steve 1eb9530fb5 Stats display update. 2018-02-19 08:32:15 +00:00
Steve 098f3df811 Implemented stats display. 2018-02-19 08:28:42 +00:00
Steve cdea5b42fb Draw hud widgets. 2018-02-18 22:22:05 +00:00
Steve 03c02c01f9 12-hit grenade combo trophy. Save screenshot when trophy earned. 2018-02-18 17:58:46 +00:00
Steve bea993ece0 Ensure we draw entities when in observing mode. 2018-02-18 17:01:38 +00:00
Steve 17cb8bdc84 Draw clouds on hub map. 2018-02-18 14:22:45 +00:00
Steve 299b15dac5 Misc. 2018-02-18 11:53:10 +00:00
Steve 9f8ef4ad42 Set world status upon init. 2018-02-18 11:53:01 +00:00
Steve daeaa28e88 Flash oxygen when low. 2018-02-18 11:52:40 +00:00
Steve 7affe23a99 Inc stat when Eyedroid explosions kills another enemy. 2018-02-18 11:52:30 +00:00
Steve b8971a91f4 MIssion unlocking updates. 2018-02-18 11:25:14 +00:00
Steve 25cf4f2814 Removed resumingMission field. 2018-02-18 11:25:00 +00:00
Steve 46d6ce1cd6 Start mission from hub. 2018-02-18 09:29:37 +00:00
Steve 2cd629cf86 Added post mission code. 2018-02-18 09:29:26 +00:00
Steve 1ac2960932 Add keys to mission when starting. 2018-02-18 09:28:25 +00:00
Steve bd6b6d752a Show start and cancel widgets on mission info. 2018-02-18 07:59:14 +00:00
Steve 17ee7642e9 Return pointer to sprite rect. 2018-02-17 16:53:30 +00:00
Steve 357fbdc8a4 Destroy stuff at end of mission. 2018-02-17 16:53:18 +00:00
Steve 94db89cc08 Added cursor to Hub. 2018-02-17 16:52:51 +00:00
Steve 5ca947cab0 Draw mission info and keys. 2018-02-17 07:56:29 +00:00
Steve 353b0180a6 Start of main hub. 2018-02-16 22:50:55 +00:00
Steve 427848db9a Target marker fixes. 2018-02-16 08:41:02 +00:00
Steve 6f69f9a56a Always add to quadtree if not dead or teleporting. 2018-02-16 08:08:52 +00:00
Steve 0a2cd17622 Make doors static by default. 2018-02-16 08:08:33 +00:00
Steve 344460fdf5 Allow widget select using player controls. 2018-02-16 08:08:19 +00:00
Steve 8ab5ebe819 Permit access to stats and trophy info from in-game. 2018-02-16 07:26:04 +00:00
Steve bfef8560cc Only count bullet hit that strike enemies, bosses, or destructables. 2018-02-16 07:21:59 +00:00
Steve e5976f04dd More misc. updates. 2018-02-15 22:56:34 +00:00
Steve 0d87786af4 More widget work. 2018-02-15 22:56:22 +00:00
Steve 1df85d0937 Misc. tweaks. 2018-02-15 21:40:21 +00:00
Steve 5ecdab744d Save Bob at most recently checkpoint position. 2018-02-15 21:39:46 +00:00
Steve 203183edc1 Widget and trophy updates. 2018-02-15 21:38:26 +00:00
Steve a47e932024 Load / save game. 2018-02-15 21:37:43 +00:00
Steve 48abf156d8 Start of drawing widgets. 2018-02-15 18:04:37 +00:00
Steve 9e8b0ab2f9 Sprite atlas update. 2018-02-15 07:59:59 +00:00
Steve 165cafaf04 Allow items to be picked up sooner after they are dropped. 2018-02-15 07:50:05 +00:00
Steve 15857a8dfd Name aqua blob, to prevent save crash. 2018-02-15 07:49:46 +00:00
Steve 79958fa79a Fixed cannon dying. 2018-02-15 07:49:28 +00:00
Steve aa02babf98 Init functions. 2018-02-15 07:49:20 +00:00
Steve b3ed2b1762 Add item pad. 2018-02-15 07:48:51 +00:00
Steve 3e23d83f3a Load width and height for widgets. 2018-02-14 22:32:03 +00:00
Steve 6e93955589 Process and show trophies. 2018-02-14 22:31:42 +00:00
Steve 4258575a26 Added Exit, Destructable, and Cannon. 2018-02-14 22:31:21 +00:00
Steve 6c2d39e1d1 Widget and trophy updates. 2018-02-14 19:12:29 +00:00
Steve c87b9a6986 Start of widget loading. 2018-02-14 08:32:09 +00:00
Steve 343c534159 Use sound volumes and fullscreen settings. 2018-02-14 07:41:07 +00:00
Steve d71bee6b11 Use single variable to track mission type. 2018-02-14 07:26:51 +00:00
Steve 718b658a1a Init lookups earlier, to allow for config to be loaded. 2018-02-14 07:14:11 +00:00
Steve dacb561e62 Hide inventory if selected. Clamp objective values to max. 2018-02-14 07:13:28 +00:00
Steve 69145189c9 Fixed key carrying message bug. 2018-02-14 07:12:47 +00:00
Steve ea323685c9 Stats updates. Start of trophy code. 2018-02-13 21:36:42 +00:00
Steve 81910dadf4 v0.3 screenshots. 2018-02-13 08:24:31 +00:00
Steve f4190a5ccd Show and hide radar arrows. Integrate radar access into game. 2018-02-13 08:23:31 +00:00
Steve 035a8ae679 Tidied headers. 2018-02-12 22:40:46 +00:00
Steve 5f150901e1 Radar map updates. 2018-02-12 22:40:15 +00:00
Steve c47a15b88a Check for existence of active when loading. 2018-02-12 19:15:20 +00:00
Steve ca5ce089d2 Expand size of objectives box. 2018-02-12 19:15:03 +00:00
Steve ef9d6db851 Quadtree fixes. 2018-02-12 18:27:12 +00:00
Steve 7f257f2740 Set config defaults in init.c 2018-02-12 18:26:47 +00:00
Steve ff74e19f12 Use createEvilBlob and createEyeDroid functions. 2018-02-12 18:26:18 +00:00
Steve dff8dee815 Clip visible entities. 2018-02-12 08:32:21 +00:00
Steve 26858489b9 Start of radar map. 2018-02-12 08:09:03 +00:00
Steve 57c7ad3bd1 Prompt Teeka to exit immediately. 2018-02-11 14:10:27 +00:00
Steve 4f0a056a9a Play sound when Teeka fires. 2018-02-11 14:10:15 +00:00
Steve e9a6a42b4c Show as green if >= target value. Can happen with dynamic objective targets. 2018-02-11 12:45:02 +00:00
Steve 58c398475c Allow world to be set as static, for testing. 2018-02-11 12:37:37 +00:00
Steve 7c2120d0d2 Reverting teleporter update: breaks later levels. 2018-02-11 12:36:42 +00:00
Steve a67740f6ce Make teleporter a little less eager. 2018-02-11 11:26:32 +00:00
Steve 57aaafa789 Use e here, instead of self, for more clarity. 2018-02-11 11:09:16 +00:00
Steve d75d3ec9cd Quadtree error fix. 2018-02-11 11:08:32 +00:00
Steve 43ef8079fc Save Bob's x,y as ints. 2018-02-11 11:08:21 +00:00
Steve 9fdcf042ca Set type of trap when saving. 2018-02-11 11:08:05 +00:00
Steve 284436f8c9 Remove dead entities as soon as possible, to prevent dangling pointers. 2018-02-11 07:59:11 +00:00
Steve 34b97bcc27 Game saving updates. 2018-02-10 19:03:55 +00:00
Steve 55dabbb018 Start of world saving. 2018-02-10 18:35:56 +00:00
Steve 1b7f2255b1 Don't load custom sprites. 2018-02-10 17:25:43 +00:00
Steve db64944700 Typo fix. 2018-02-10 17:25:11 +00:00
Steve 0aa204ea71 At least 1 enemy type. 2018-02-10 07:57:31 +00:00
Steve bab333d492 Added Teeka, LaserBlob, LaserDroid, PlasmaBlob, PlasmaDroid, SpreadGunBlob, and SpreadGunDroid. 2018-02-10 07:56:28 +00:00
Steve 0197bcd5fa Added MachineGunDroid. 2018-02-09 22:41:37 +00:00
Steve 32109cbc15 Prevent entity from leaving the map bounds. 2018-02-09 22:34:30 +00:00
Steve 972c3c4aa9 Set sprite frame to 0 when dead. 2018-02-09 22:34:01 +00:00
Steve 31d55d6954 Trace line to/from centre of objects. 2018-02-09 22:33:38 +00:00
Steve a6a3cbd6a6 Warn when health is low. 2018-02-09 22:32:57 +00:00
Steve 712a2c47b9 Fix for grenade blob / droid attacks. 2018-02-09 21:54:12 +00:00
Steve 88a8d34425 Misc updates. 2018-02-09 19:20:37 +00:00
Steve 442f561f00 Added Shotgun Blob / Droid, and laser traps. 2018-02-09 19:10:19 +00:00
Steve acb00a7d95 Grenade droid init fixes. 2018-02-09 08:38:02 +00:00
Steve 76dda670bf Added Blue, Red, and Yellow keycards. Added CardReader. 2018-02-09 08:37:51 +00:00
Steve d8c9337a2e Expand quadtree range for platform contact. 2018-02-09 08:21:08 +00:00
Steve 4cd3322799 Default control updates. 2018-02-09 08:10:36 +00:00
Steve d09ceefbb9 Update quadtree for pushed entities. Handle riders. 2018-02-09 07:42:36 +00:00
Steve 9f100106eb Don't add enemies if noEnemies flag set. 2018-02-09 07:42:10 +00:00
Steve 0e71bcc88f Use quadtree for collisions. 2018-02-09 07:21:37 +00:00
Steve 11960757cc Reappear after 1 or 2 seconds. 2018-02-09 07:20:12 +00:00
Steve f3bf29b333 Only add key once. 2018-02-08 22:26:00 +00:00
Steve 50a1c78c10 Don't show counts on mini inventory (not enough screen real esate). 2018-02-08 22:25:48 +00:00
Steve 1ed138b766 Use power instead of value for batteries. 2018-02-08 22:25:23 +00:00
Steve 70d1101ded Assign self when spawning enemies. 2018-02-08 22:25:10 +00:00
Steve 46d9983142 Increase available number of sounds channels. 2018-02-08 22:24:53 +00:00
Steve 28023ba18b Correcly apply damage to Bob. 2018-02-08 22:24:19 +00:00
Steve 78ac0154bb Tidied headers. 2018-02-08 21:54:47 +00:00
Steve 8da314ea63 Fixes for joypad buttons. 2018-02-08 21:54:30 +00:00
Steve 453d2ae3dc Load / save config. 2018-02-08 21:54:11 +00:00
Steve 07dd76c5d1 Handle found keys. 2018-02-08 21:53:52 +00:00
Steve ccf228f875 Control and input updates. 2018-02-08 21:53:32 +00:00
Steve b00b9dcdb4 Added Grenade Blob and Grenade Droid. 2018-02-08 21:53:02 +00:00
Steve 0335b7e837 Use uint32 for file lengths. 2018-02-08 21:30:02 +00:00
Steve 14b503eff2 Added Machine Gun Blob. Load Cells and Hearts. 2018-02-08 08:35:09 +00:00
Steve 9bda46bb9b Show required objectives in red. 2018-02-08 08:21:37 +00:00
Steve dc5aead758 Load compressed map data. 2018-02-08 08:07:04 +00:00
Steve 14f4ef57ad Load and play music during mission. 2018-02-08 07:34:35 +00:00
Steve bf0f64caf8 Show objectives intro screen when starting a level. 2018-02-08 07:26:42 +00:00
Steve e9c1560bde Show objective and inventory screen. 2018-02-07 22:49:42 +00:00
Steve b862123c95 Focus camera on doors, etc., that are opened when offscreen. 2018-02-07 19:21:13 +00:00
Steve 3afbfabeb5 Joypad controls (hardcoded, for now). 2018-02-07 19:20:36 +00:00
Steve c287a1333e Control updates. 2018-02-07 18:27:42 +00:00
Steve 0618c05b52 Store all items as items, rather than separating out keys. 2018-02-07 07:51:47 +00:00
Steve b27b3dd2f8 Draw inventory items on HUD. 2018-02-07 07:51:25 +00:00
Steve a8ce1daf4e Added blitScaled. Removed unused functions. 2018-02-06 22:28:19 +00:00
Steve eb3a39084a Added unit reappear code. 2018-02-06 22:27:53 +00:00
Steve fed96ef890 Misc. fixes. 2018-02-06 22:27:28 +00:00
Steve 220e3b99e9 Item handling updates. Keys should stack. 2018-02-06 22:27:02 +00:00
Steve b92c9dea9c Start of joypad handling. 2018-02-06 22:26:05 +00:00
Steve 4e981ecf78 Show health, power, and oxygen on HUD. Inventory on right-hand side. 2018-02-06 19:07:43 +00:00
Steve 2543d469ac Show info point messages. 2018-02-06 08:16:30 +00:00
Steve fb5723d96e Don't uppercase messages. 2018-02-06 07:45:28 +00:00
Steve d5d70a017f Effect bug fixes. 2018-02-06 07:45:18 +00:00
Steve 156a5dac8f isOnScreen -> isVisible. 2018-02-06 07:32:08 +00:00
Steve e70966e35d Power up fixes. 2018-02-06 07:29:39 +00:00
Steve 89b4b05a11 Added controls.c. 2018-02-05 22:08:35 +00:00
Steve cc280f326f Code tidying. 2018-02-05 22:08:14 +00:00
Steve 0e57f9ce79 Explosion effects. 2018-02-05 22:07:04 +00:00
Steve 683746b239 Decoration updates. 2018-02-05 22:06:53 +00:00
Steve 8c9ee4f553 Move controls into doPlayer() 2018-02-05 22:06:29 +00:00
Steve 9c6ada01dc Sort entities in draw order. 2018-02-05 22:06:00 +00:00
Steve 43ec9435f2 Init effects. 2018-02-05 08:39:02 +00:00
Steve 9128fd84e9 Test world type before loading entities. 2018-02-05 08:38:39 +00:00
Steve c22c09e78f Restored enemy behaviour. 2018-02-05 08:38:21 +00:00
Steve 20404fd6eb Init debris and flesh chunks. 2018-02-05 08:37:54 +00:00
Steve d10356c42c Added swapSelf() to handle current entity handling. 2018-02-05 08:37:07 +00:00
Steve c3ca4a39e2 Checks for training, boss, and outpost missions. 2018-02-04 16:18:17 +00:00
Steve 800f26055f Added particle effects. 2018-02-04 16:14:14 +00:00
Steve 113cc59ea6 Show health, power, and oxygen on HUD. 2018-02-04 15:37:19 +00:00
Steve a84f261154 Only set entity size once. Test entity is dead before testing alive (race condition when adding to quadtree). 2018-02-04 12:01:55 +00:00
Steve 7e88125864 Default function for changeEnvironment. 2018-02-04 11:24:19 +00:00
Steve c4346550cf Only add to quadtree if alive. 2018-02-04 11:00:42 +00:00
Steve 78422382e2 Added default die() function. 2018-02-04 11:00:32 +00:00
Steve 1fbf7971b8 Moved bullets into entities/bullets. 2018-02-04 11:00:14 +00:00
Steve 7577482cc4 Iniital spriteFrame must be -1. 2018-02-04 09:56:53 +00:00
Steve ac48179541 Use targetValue for objectives. 2018-02-04 09:56:37 +00:00
Steve 9841418d20 Weapon fixes. 2018-02-04 09:50:07 +00:00
Steve 827a825c2d Jetpack / aqualung fix. 2018-02-04 08:20:49 +00:00
Steve 5bfea20534 Pick up and store items. 2018-02-04 08:11:42 +00:00
Steve 5588abc063 Show hud messages. 2018-02-04 07:50:54 +00:00
Steve d3db893190 Moved nothing() to MIA. 2018-02-03 18:32:12 +00:00
Steve 3d2000e818 Always set entity size. 2018-02-03 18:31:55 +00:00
Steve 19f7afcf0e PushBlock activation fix. 2018-02-03 18:19:26 +00:00
Steve fc519c54b0 Pushing code fix. 2018-02-03 18:17:45 +00:00
Steve 72de423bba Preserve original string when activitating entites. 2018-02-03 16:31:12 +00:00
Steve 52b4336c00 Misc. debugging bits. 2018-02-03 16:22:04 +00:00
Steve 187b887698 Free data. 2018-02-03 16:21:53 +00:00
Steve b878a61854 Allocate MIA and target char space. 2018-02-03 16:21:37 +00:00
Steve d51e96c74a Fixed teleporter. 2018-02-03 16:13:37 +00:00
Steve e97d38e278 Activate entities correctly. 2018-02-03 15:53:21 +00:00
Steve b8aa460221 Basic movement. Various bug fixes. 2018-02-03 13:07:56 +00:00
Steve cd80ebacea Show target markers. 2018-02-03 11:47:50 +00:00
Steve c77cea92a6 Collision bug fixes. 2018-02-03 11:32:03 +00:00
Steve 0a131e25c0 Implemented more entity handling code. 2018-02-03 10:01:14 +00:00
Steve b3c8ca90d5 Start of entity management. 2018-02-03 08:44:02 +00:00
Steve 383c8c19a3 Various bug fixes. 2018-02-02 23:01:51 +00:00
Steve 3c7b3b5170 Added world code. 2018-02-02 19:10:12 +00:00
Steve bac35a3bab Line box intersection code. 2018-02-02 18:14:50 +00:00
Steve 0817b2e600 Fonts and debug information. 2018-02-02 08:26:58 +00:00
Steve 0872a3b82b Animation and drawing updates. 2018-02-02 08:00:27 +00:00
Steve aba616b085 Bob init fixes. 2018-02-01 22:29:51 +00:00
Steve 2eab687dec Tidied headers. 2018-02-01 21:52:23 +00:00
Steve 0df09f914a Particles processing, Bob, and entity actions. 2018-02-01 21:51:43 +00:00
Steve 75b18c03f1 Added entity init() functions. 2018-02-01 07:50:37 +00:00
Steve 3fa7c7a525 Animate entities. 2018-01-31 22:54:14 +00:00
Steve d11443158d Use getCurrentSprite for entity sprites. 2018-01-31 22:28:00 +00:00
Steve cab6d3b205 Render entities. 2018-01-31 21:50:49 +00:00
Steve 0d534d6ef8 Correctly limit camera. 2018-01-31 08:37:01 +00:00
Steve 81000d7948 Specify unit type name. 2018-01-31 08:08:50 +00:00
Steve eeeee41ef1 Start of map rendering. 2018-01-31 08:08:41 +00:00
Steve 0705225253 Load and save for some entities. 2018-01-30 22:47:40 +00:00
Steve 514a2df3be Tidied headers. 2018-01-30 08:29:32 +00:00
Steve 917753aefe Loading some entities. 2018-01-30 08:29:09 +00:00
Steve 21e50e51e7 Use sprite pointers, rather than ints. 2018-01-29 23:00:14 +00:00
Steve d999c14776 Start of entity loading. 2018-01-29 22:12:18 +00:00
Steve 7f237e3c8f Start of world loading. 2018-01-29 08:34:39 +00:00
Steve 73c0ef66b2 Load sprites. 2018-01-28 17:23:49 +00:00
Steve 8bd0244a33 Added i18n stuff. 2018-01-28 16:33:37 +00:00
Steve 6b9b3badc8 Load hub missions. 2018-01-28 16:14:17 +00:00
Steve fc542ecd82 Load meta information. 2018-01-28 15:48:20 +00:00
Steve 118b570484 Load map data. 2018-01-28 14:03:13 +00:00
Steve 372f19df03 Tidy headers. 2018-01-28 12:31:12 +00:00
Steve 3551865f96 Init sounds. 2018-01-28 12:31:06 +00:00
Steve 28e7cbabd9 Atlas loading and testing. 2018-01-28 12:01:39 +00:00
Steve 0bbff1cb85 Moved entites directory out of world. 2018-01-28 09:40:43 +00:00
Steve 7d6ca19c77 Set entity types. 2018-01-28 09:34:14 +00:00
Steve 53c8c4984e Using anonymous structures to shrink size of Entity object. 2018-01-28 08:30:53 +00:00
Steve b56cb72aec Teleporter, Laser traps. 2018-01-27 11:55:15 +00:00
Steve 5323d1b2b2 Pushblock. 2018-01-27 11:26:14 +00:00
Steve e608cdf23e Pressure plate. 2018-01-27 11:22:29 +00:00
Steve 0bc6599a95 Power point and power pool. 2018-01-27 11:15:23 +00:00
Steve 1337fb2602 Added lift. 2018-01-27 10:58:47 +00:00
Steve ff60ddf6de Item pad. 2018-01-27 10:47:53 +00:00
Steve 8e923164ca Horizontal door. 2018-01-27 10:37:14 +00:00
Steve 23ed116a9e Added exit. 2018-01-27 10:32:17 +00:00
Steve 4a77cf6e4d Added doors. 2018-01-27 10:21:45 +00:00
Steve 0118582a1c Card Reader. 2018-01-27 08:53:08 +00:00
Steve 5bcebe8b03 Added Info Point. 2018-01-27 08:37:22 +00:00
Steve e4f9c33c74 Added destructable. 2018-01-27 08:28:50 +00:00
Steve 45244303f8 Added new bullet struct. 2018-01-27 08:13:50 +00:00
Steve 1b426ec9d3 Decoration. 2018-01-27 08:08:17 +00:00
Steve 8e7f53ea54 Cannon. 2018-01-27 08:03:26 +00:00
Steve e7d4c02834 Remaining items. 2018-01-26 22:29:08 +00:00
Steve 8e2ed9bace Cell, Cherry. Code clean up. 2018-01-26 19:24:03 +00:00
Steve 75f6220aeb Start of items. 2018-01-26 19:14:18 +00:00
Steve 14fee71a27 Tank commander. 2018-01-26 18:27:15 +00:00
Steve 229452e2ea Eye Droid Commander. 2018-01-26 08:51:07 +00:00
Steve 9e9de85e7e Added Blob Bosses code; Blaze and Frost. 2018-01-26 07:56:12 +00:00
Steve 7a2529d250 Teeka. 2018-01-25 08:11:45 +00:00
Steve ea65dd3256 MIA. 2018-01-25 07:41:10 +00:00
Steve 2959f9515d Unit. 2018-01-24 22:15:24 +00:00
Steve a29e81d131 Updated entities. 2018-01-24 19:04:36 +00:00
Steve 699c66485c Moved widgets into System. 2018-01-24 08:43:19 +00:00
Steve 7146f71ae9 Atlas. 2018-01-24 08:43:08 +00:00
Steve e59085b133 Widgets. 2018-01-24 08:14:11 +00:00
Steve 26730dcdc3 Sprites. 2018-01-24 07:44:45 +00:00
Steve 0efcdb8d5b Hub. 2018-01-24 07:16:52 +00:00
Steve d35ff2c728 Sound. 2018-01-23 08:04:25 +00:00
Steve d8577fb6a5 Particles. 2018-01-23 07:42:13 +00:00
Steve bcb2bf1391 Weapons. 2018-01-22 21:47:04 +00:00
Steve bfb4fd83bb Marker. 2018-01-22 18:15:33 +00:00
Steve 1439995f79 Updated items. 2018-01-22 08:41:15 +00:00
Steve fd57743511 Start of items. 2018-01-22 08:27:08 +00:00
Steve 5b37609404 Explosions. 2018-01-22 07:44:15 +00:00
Steve 821fa54110 Effects. 2018-01-22 07:23:23 +00:00
Steve f3bf387d98 Start of combat-related code. 2018-01-21 16:50:14 +00:00
Steve 94d0c934ae Objectives. 2018-01-21 12:57:01 +00:00
Steve 7380514a7e Triggers. 2018-01-21 12:19:07 +00:00
Steve 4fd1abd52d Quadtree. 2018-01-21 11:31:53 +00:00
Steve abfd6df63b Hud. 2018-01-21 11:26:02 +00:00
Steve 7f22f5e950 Camera and map code. 2018-01-21 11:12:49 +00:00
Steve 1c429f33d3 Start of v0.1 2018-01-21 09:31:38 +00:00