Commit Graph

334 Commits (107045ab4ecae45fbcdc12eee3cba9c18325b542)

Author SHA1 Message Date
sigonasr2 e43798fa9a Add cooldown charge system. Abilities can now only be used when they are holding charges. One charge gets restored for each full cooldown duration. The cooldown timer stops going down when maximum charges are reached. Fix item tests to use cooldown charges. Add in item checks for CDR test (Items should not be affected by CDR). Add GetPlayerAbilities function to collect and manipulate all player abilities at the same time (cleaner code structure + easier test functionality). Add helper functions util::vformat and util::wformat and to_wstring to make code using the std:: versions much more concise. Add unit test for cooldown charges system. Add helper functions to reset abilities to their original stats before enchant modifications tweak them. Added a helper function to retrieve which ability an enchant affects. Adapt ability HUD with new charge count features. Add Mountain theme to Chapter 2 maps. Multi-Multishot Enchant implemented. Release Build 10901. 4 months ago
sigonasr2 7fa02b0f7a Implement Mega Charged Shot. Release Build 10827. 4 months ago
sigonasr2 3d1d14ea2d Implemented Poisonous Arrow enchant. Include unit tests. Release Build 10813. 4 months ago
sigonasr2 150a72db73 Implemented Poisonous Arrow enchant. Release Build 10810. 4 months ago
sigonasr2 8ac625660d Implemented Stealthy Retreat enchant. Release Build 10803. 4 months ago
sigonasr2 d49e7ff6bb Change shadow text rendering system to use a pre-generated shadow font sprite to improve text rendering speeds dramatically. Fix bug from commit cfd73ab036 where custom font colored shadow text kept creating new versionf of itself causing memory leaks. Release Build 10791. 4 months ago
sigonasr2 d28f27f59d Added newline character parsing to olcDataFile config parser. Fix bug with enchants not being able to choose the actual highest value roll on stat enchants. Added stat descriptions to Magical Protection and Aura of the Beast. Release Build 10720. 4 months ago
sigonasr2 9a65b731e9 Implement Reaper of Souls Enchant. Fix text rendering bug with really small pixel values getting clamped by integer scaling causing the cached text to be cut off. Release Build 10683. 4 months ago
sigonasr2 cfd73ab036 Implemented Death Defiance enchant. Correct shadow render strings being square (not using proper Y sizes to create cached text). Move game configuration initialization out to global scope to allow config variables to be used when initializing the AiL class. Release Build 10670. 4 months ago
sigonasr2 62086cbd92 Implemented Emergency Recovery unique enchant. Added unit test. 126/126 unit tests passing. Release Build 10653. 4 months ago
sigonasr2 23673ec2af Added unit tests for new strip leading color and final render color engine rendering functions. Fixed rendering bug with text elements of different HTML color codes but with same content not having rendering with the correct color code. Fix potential memory leak errors occurring with rendering Font versions of shadow strings that would have different pulsating colors w/same text content. Added an admin console and added the ability to give the player items and accessories with enchants. Also added a help command. Change version number to appear red while in admin mode (as a visual). Unlock all button tied to admin mode. Release Build 10604. 4 months ago
sigonasr2 68e7446053 Add Enchant API and EnchantItem() function that applies a random Enchant onto an item. Added HasEnchant() check to see if an equip has an enchant for future integration of enchants in the game. Fix money listeners structure not being reset between unit tests. Add unit tests to ensure items receive correct valid enchants and we can properly detect the player has enchants. Release Build 10527. 4 months ago
sigonasr2 1319a91d11 Switch to built-in uppercase hexadecimal format display when encoding URIs sending save files (emscripten version). Implement variable find and replace features when loading in Item Enchants. Grammar changes to item enchants config file. Convert numerical values to variable config values in item enchants config file. Release Build 10511. 4 months ago
sigonasr2 23fc505b12 Fix typos and minor descriptions in item enchants file. Enchantment data structures and configuration reading implemented. Release Build 10498. 4 months ago
sigonasr2 ee4d250370 Add helper function for removing an item from the player's inventory via item name. Add accessory refining check and refine functions. Release Build 10487. 4 months ago
sigonasr2 97040ef051 Add automated script to apply all assets to the unit testing framework each run. Add new runtime warning for RowInventoryScrollableWindowComponent items that have item boxes larger than the actual component. Move testingMode flag for AiL class to be set before game configurations are read. Add branch for reading specific unit test game configuration files. Include unit test-specific images and configs committed to repository. Add Disassemble function to inventory class. Add Disassemble item test. Fix issues with extra stray shared pointers lingering everywhere when adding/removing items and grabbing their references. Make Stage Loot/Monster Loot have brand new shared pointers to items (copy instead of strong reference) so weak pointer references to existing items actually expire and behave as expected. Move Monster Loot and Stage Loot clear calls to the switch to Overworld Map trigger. Release Build 10476. 4 months ago
sigonasr2 9f4c7c7b0f Added operator< for Pixel class to allow sets of pixels to be used. Add fragment item default description. Generate fragment images that randomly sample from the source ring's colors. Add base fragment item icon. Release Build 10443. 4 months ago
sigonasr2 57c5a2f579 Move Chapter 2 story to the correct story configuration file. Fix bug where closing a dialog didn't set the state to the previous state the game was in, but instead assumed it was Game Run. Which meant the player could attempt to leave the camp and be presented with the level complete window for no reason. Release Build 10415. 4 months ago
sigonasr2 1747b1e5ef Adjusted audio events for earlier camp unlocks. Removed bass line for earlier versions of the camp song, reintroduce after chapter 2 is completed. Added placeholder Artificer sprite. Added Artificer dialog. Updated world map with a chapter 2 base location for convenience. Connect new connection points between map locations correctly. Adjust connection point unlock conditions and layer unlock conditions to their new chapter 2 levels. Release Build 10399. 5 months ago
sigonasr2 c36f783fc9 Tidied up monster drawing functions with portable lambdas to get rid of some copy-pasted code, making draw manipulation simpler. Implement Curse of Death ability. Release Build 10391. 5 months ago
sigonasr2 19f3483b44 Add sound effects for Witch auto attack, Curse of Pain, Throw Poison, and Curse of Death abilities. Release Build 10390. 5 months ago
sigonasr2 864b491c46 Adjust all spaces to tabs for consistent whitespace formatting on source files. Implement Throw Poison Ability. Added general Color Mod Buff so coloring targets a certain color based on applied buff is simpler. Release Build 10389. 5 months ago
sigonasr2 a35ea5b772 Add cat mew sound effect for Witch Leap ability. Refactor Buffs to include a player/monster callback function when a buff expires. This is used specifically for the curse debuff. Clean up buff update code to use lambdas instead of macros. Release Build 10359. 5 months ago
sigonasr2 21579b7bdf Add cat transform sprite. Added Witch Transform ability parameters. Implemented Transform ability. Fix Trapper Mark unit test since lock on target delays were added. Release Build 10354. 5 months ago
sigonasr2 98208fb3e0 Refactored monster list to use shared pointers instead of unique pointers. Converted all raw monster pointers that needed to store monster data to use weak pointers instead in case a monster gets despawned while owning object is still alive. Implemented Witch's auto attack, added turn_towards_direction function for homing ability. Fixed player reflections being drawn without additive blending. Added 30s cooldown to Trapper's Explosive trap ability. Release Build 10345. 5 months ago
sigonasr2 4a7ad23196 Make knockups pause monster strategies. Fix Effect drawing code being invisible if their fadein timer was zero. Add explosion sound effect to Trapper's Explosive Trap ability. Add knockup and 100% temporary slowdown to Trapper's Bear Trap ability. Release Build 10324. 5 months ago
sigonasr2 9eaaf979f3 Fix display bug with Effects that used the original constructor. Refactor on 23 Jul was a big oversight leading to effects not displaying at all (scale set to 0). Release Build 10308. 5 months ago
sigonasr2 fad8f83554 Add in missing Beep sound effect for explosive traps. 5 months ago
sigonasr2 f5ecc20339 Prepare Witch class animations and spritesheet. 5 months ago
sigonasr2 3850cbaef9 Implemented Trapper's Explosive Trap ability. Release Build 10304. 5 months ago
sigonasr2 8903410848 Add sound effect for Mark Target ability. Release Build 10303. 5 months ago
sigonasr2 2420d02f24 Make player dot damage numbers fall instead of rise as well. Remove unused originalRiseSpd damage number member. Refactor buff repeat action system to instead use internal hard-coded restoration functions. Include the target of buffs inside the buff classes themselves so they know what to interact with. Updated Player and Monster AddBuff functions to represent new buff constructor requirements. Implemented Bear Trap ability. Refactored Monster Hit callback for bullets to send the amount of stacks a monster had before getting hit which is used as getting hurt removed a mark stack. Release Build 10300. 5 months ago
sigonasr2 b3c5894be7 Switch controller auto-targeting to use logic from Hurt function. This means the auto targeting tries to ensure it hits some target, but prefers a currently vulnerable target over an invulnerable / unhittable one. Cleanup the code to use std::optional. Add in a helper function to get nearest monster. Apply Mark to nearest selected target when Trapper Mark Target ability is used. Release Build 10275. 5 months ago
sigonasr2 60b45cf6b1 Add visual indicator/graphics for Trapper Mark on targets. Added TriggerMark and ApplyMark helper functions. Release Build 10264. 5 months ago
sigonasr2 f16d10a095 Add 0.1s delay on Hidden Dagger's throw for Thief. Allows the player to potentially jump through a target and being able to hit them with it. Fix Stone Elementals facing the incorrect direction while casting stone pillars. Move 2-8 end ring to more sensible area (in front of Chapter 2 boss arena). Reduce Chapter 2 Boss' and Stone Elemental's collision radius to better match the sprite. Add iframe time when hit by a breaking stone pillar's bullet ring to prevent getting obliterated by standing in the center of the bullet ring. Release Build 10261. 5 months ago
sigonasr2 3830ba8840 Adjust collision radius default based on monster's sheet frame size. Use defined collision radius of a monster instead of 12*SizeMult as that is the actual radius for HurtMonsterType() damage calls (fixes large stone hitting pillars a little too wide in the chapter 2 boss fight). Refactored Bullet check systems to include damage flags: DOT, PLAYER_ABILITY, and NONE. Player abilities flags assigned to all auto attack and abilities that players can launch, in preparation for marked target proccing. Mark Target buff detection added, Mark buff added. Reorganized bullet hierarchy, turning the default bullet into an interface and making the normal Bullet class a base child class all Bullets derive from. Added HurtDamageInfo structure, which is passed onto bullets to modify flags before being applied to the Hurt function when bullets hit targets. Changed all storage containers holding Bullet classes to now hold IBullet classes. Release Build 10248. 5 months ago
sigonasr2 6172ea3178 Fix layers in front of the bridge layer to check for their collision tiles first prior to using the bridge's collision tiles. Release Build 10205. 5 months ago
sigonasr2 83afbb2720 Fix Stone Heart's item description, comma was treated as separate value. Make item descriptions be read in as full strings instead of as the first index in a OLC Datafile. Minor grammar edits to item descriptions. Add missing Upper Zone to II-V. Release Build 10191. 5 months ago
sigonasr2 7ae4fbea3a Goblin Bow users stop aiming 1/3rd of a second before firing, to allow the player to dodge and not cause them to suddenly turn. Added configurable parameter for Goblin Bow lock-in time. Release Build 10188. 5 months ago
sigonasr2 2907fc9865 Add Trapper class new animation sheet. Change XP data size from holding 32 bit integers to 64 bit integers due to higher level EXP numbers overflowing the XP counter. Release Build 10172. 5 months ago
sigonasr2 a763469fa5 Add in adrenaline rush buff. Make attack speed bonuses be applied via modifiers. Release Build 10153. 5 months ago
sigonasr2 0b4b1d6566 Fix Wizards and Rangers being able to override iframe timer when using Teleport and Retreat respectively. Remove last released key state. Seemed redundant when animation facing direction exists. Make player animation changes be reflected in the facing direction variable. Add pathfinding to Thief's Deadly Dash attack so it can't go through barriers. Added new class counterpoints as equippable classes for the prior weapons. Release Build 10146. 5 months ago
sigonasr2 bc27f18178 Add a distinct sound effect when Hidden Dagger hits a target. Deadly Dash's sound effect updated with a harder hitting sound. Add iframes at the end of Deadly Dash's attack. Footstep playing code now moved into its own function. Appropriate footstep sound plays while Roll is performed. Release Build 10116. 5 months ago
NicoNicoNii 873e25f927 Add deadly dash attack sound effects and basic behavior 5 months ago
sigonasr2 c62f24cdcd Add in Deadly Dash state. Change zoom out effect to zoom in when loading into a map. Dramatically decrease effect, too much motion sickness. Add deadly dash animation state. Release Build 10109. 5 months ago
sigonasr2 1f1d714dd1 Added shine effect to engine for upcoming Deadly Dash effect. Release Build 10097. 5 months ago
sigonasr2 0927e57438 Add Thief Roll Ability. Release Build 10093. 5 months ago
sigonasr2 ee50d810bd Add new ability icons for new classes. Release Build 10068. 5 months ago
sigonasr2 453be13395 Implement Thief Hidden Dagger attack. Add in missing icons for Elixir of the Wind and Recovery Potions. Release Build 10061. 5 months ago
sigonasr2 10f5521ec2 Adjust sword slash effect to accept config values. Add DrawPartialSquishedRotatedDecal to PGE. Performs rotation transform before scale transformation. Add thief animations to animation databases. Setup thief's auto attack ability. Release Build 10053. 5 months ago