Commit Graph

530 Commits (a90c7d3c5d776b3abb3484100441c0bb983abf4d)

Author SHA1 Message Date
sigonasr2 a90c7d3c5d Fix Firebolt and Lightning bolt crashing the game. Implemented cat animation override for Nine Lives enchant. Implemented Nine Lives Enchant. Release Build 11130. 3 months ago
sigonasr2 a9078622f2 Fix bug with multi-hit bullets not allowing their collision checks to be disabled mid-sequence. Add capability for derived bullet types to re-activate themselves. Bouncing Orb Enchant implemented. 181/181 unit tests passing. Release Build 11106. 3 months ago
sigonasr2 976cc7a0b7 Fix bug with multi-hit bullets not allowing their collision checks to be disabled mid-sequence. Add capability for derived bullet types to re-activate themselves. 181/181 unit tests passing. Release Build 11106. 3 months ago
sigonasr2 beb8e38b36 Fix bug with reapplying Advance Shield not properly re-enabling the shield drop timer causing the shield to last permanently on the player character. Add test case to cover this edge case. Release Build 11094. 3 months ago
sigonasr2 182e492991 Added Training Dummies to camp. Release Build 11085. 3 months ago
sigonasr2 719ed53923 Change MapType to use an enum instead. Add a HUD message overlay system. Disable ability for players to swap equipment during a stage. Update all maps to use MapType enums. Release Build 11084. 3 months ago
sigonasr2 9da3e946e3 Implement Slam Shock enchant. Add stun effect to monsters. Release Build 11079. 3 months ago
sigonasr2 ad02c7b59f Fix Health and Mana display meters. Add shield damage number type. Fix shield display timer expiring the shield value. Fix unit tests relying on bad static ability state. Fix default attack range from being divided by 100. Force ChangePlayerClass to be called even if class is already set to same class due to additional side effects. Release Build 11074. 3 months ago
sigonasr2 d224740fd4 Implemented Shield mechanic into the game. Fix Special Mark Enchant test and Wizard's Soul Enchant test. Release Build 11062. 3 months ago
sigonasr2 9005771f77 Fix up Opportunity Shot test to check with actual accessory equipped. Move camera initialization to a function. Camera starts at actual target location immediately (instead of lazy follow). Fix bug with lazy follow camera becoming ridiculous at low frame rates (>0.25s updates). MonsterData now provides a default collisionRadius in the constructor. 159/159 Tests Passing. Release Build 11039. 3 months ago
sigonasr2 45e6027c9e Move the player outline repeating timer into a new OnLevelStart() callback for the player. Fixes a bug where the player outline will no longer update after the initial stage. Added more player timer helper functions for better control. Release Build 11031. 3 months ago
sigonasr2 6002f69dfa Long-Lasting Mark Enchant Implemented. 153/153 Tests Passing. Release Build 11020. 4 months ago
sigonasr2 58298839bf Implemented Enfeebled Target enchant. Tests are corrected to use the new DamageNumber methods. Release Build 11017. 4 months ago
sigonasr2 6d7240c765 Change starting location of DOT damage numbers. Fix velocity getting multiplied dramatically when damage numbers stack up and change size. Make gcc happy with unsigned long long cast syntax. Remove pthread flag from CMakeLists. Release Build 11014. 4 months ago
sigonasr2 7ae7d3dcb3 Fix DOT buffs not counting down if their timers are intentionally reset. Tick timers are now independent of their duration timers. Make ONE_OFF effect more clear with extra comments. Fix Damage reduction test, which is supposed to report a 75% max damage reduction, even if a piece of equipment has 100% damage reduction. Separated the main buff type and the restoration type variables for DOT buffs so we can still identify them if we need to. Added three new constructors. Added helper AddBuff functions to Monster and Player accordingly with the new changes. Fix SpawnMonster not returning the correct reference to an object (was returning the reference to the termporary storage container). Refactored Buff Blend colors with some lambda functions. Implemented Burning Arrow enchant. Release Build 11008. 4 months ago
sigonasr2 9df7016f2d Implemented Evasive Movement enchant. Added a player outline decal on a repeating timer. Release Build 10989. 4 months ago
sigonasr2 012f5de2a1 Implement Bloodlust enchant. Fix crash that occurs if the player class is not Warrior or Thief. Release Build 10981. 4 months ago
sigonasr2 c017c353db Normalized player's auto attack variable to now represent its range in units. Privatized it and added a GetAttackRange() function to use instead. Implemented Adrenaline Stim enchant. Release Build 10977. 4 months ago
sigonasr2 e8ffeef5c9 Add timer reset function for the player. Fix black box player afterimage being visible. Release Build 10971. 4 months ago
sigonasr2 d28b308ecb Fix Reaper of Souls enchant test. Release Build 10969. 4 months ago
sigonasr2 2e95355fb9 Added a timer class. Added timers and helper functions to the Player class. Implemented Deadly Mirage enchant. Release Build 10966. 4 months ago
sigonasr2 ab98adf094 Triple Toss enchant implemented. Fix obscure edge-case bug where the camera position, mouse position, and player positions are all equal causing a mouse aiming location length of (0,0) resulting in infinity size velocities. Release Build 10952. 4 months ago
sigonasr2 2d3dbfac3c Tumble enchant implemented. Release Build 10947. 4 months ago
sigonasr2 9ba98a032e Backstabber enchant implemented. Fix audio transition fades suddenly not working. Release Build 10944. 4 months ago
sigonasr2 a6b4caad02 Correct a bug in olcPGEX_MiniAudio: GetCursorMilliseconds() was not returning properly. Added loop repeating start point capabilities to the audio engine and bgm config file. Release Build 10936. 4 months ago
sigonasr2 2667cc526e Add [[unlikely]] to DEBUG_ACCESS_OPTIONS to help the compiler. Add a distance check so monsters extremely far away on the map no longer run their AI routines. Add keyboard stage plate connections for the in between zones on the world map in case the player ends up there and uses the keyboard controls. Release Build 10918. 4 months ago
sigonasr2 bc31ba5862 Implement the DEBUG_ACCESS_OPTIONS when attempting to read from config (for debugging purposes). Release Build 10915. 4 months ago
sigonasr2 68744adf54 Add stage plates for Chapter 3 and setup 3-1 in levels. Release Build 10911. 4 months ago
sigonasr2 7bf1c90e77 Enable threads support on emscripten build. 4 months ago
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 214759c606 Map UVs to original cooldown circle indicator instead. Create a DrawPieArc function to render pies with a UV mapped texture from the center outwards. Remove donut circle indicator generating code. Reduce max vertex count of engine back from 256 -> 128 to maintain low memory footprint. Release Build 10846. 4 months ago
sigonasr2 97a9025830 Donut circle cooldown indicator test code. 4 months ago
sigonasr2 7fa02b0f7a Implement Mega Charged Shot. Release Build 10827. 4 months ago
sigonasr2 10b849e906 Implement Charge Beam. Make beam sprite effect distance twice as large so segments have smaller gaps. Release Build 10824. 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 78956e986c Added helper functions for auto attack timer. Added unit test for auto attack timer functions. Implemented Quickdraw enchant. 132/132 tests passing. Release Build 10800. 4 months ago
sigonasr2 859ff52ac2 Last Reserve enchant implemented. Release Build 10798. 4 months ago
sigonasr2 333acfe149 Money displays in inventory windows use smaller shadow text outlines. Release Build 10793. 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 00e22877c4 Integrate display color provided in Item Enchant configuration to show up for enchanted items displayed in menus and their descriptions. Release Build 10737. 4 months ago
sigonasr2 0e3d57be24 Move ItemEnchant's attributes into separate private variable allowing us to add a Setter and Getter for the attributes to call UpdateDescription function whenever an attribute is modified. Fix rounding display bug (use round instead of ceil) when comparing improvements/downgrade attributes in the character equip menu. (This handles values like 15.000001 and 14.99999 from screwing up the differential displays). Release Build 10729. 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 5dc46664eb Add public Getters for loadout item functions. Implement Wizard's Soul Enchant. Release Build 10708. 4 months ago
sigonasr2 4ca3cf4426 Fixed dumb forced const_cast on GetPos() for player (converted to const ref return type). Added test for Reaper of Souls to validate collection of souls and healing/cooldown effects work. Release Build 10703. 4 months ago
sigonasr2 300e9834c7 Add UpperZone and LowerZone TMXParser's Map Constructor. This way we don't have to specify the zones ourselves creating invalid maps during testing. Added Reaper of Souls enchant unit test. Add unit tests for equipping two rings of the same enchant. Unique and class enchants behavior modified to not double up. 128/128 unit tests passing. Release Build 10694. 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