A rogue has stolen a wizard’s Deck of Cards. The rogue must survive the wizard’s wrath, with the wizard chasing the rogue across his mighty castle. The rogue can use the stolen deck to facilitate or hamper their escape!
Engine: Unity
Team Size: 7 people
Project Length: 3 days
Role: Programmer
Focus: Card system setup
The base class of each card holds the basic functionality and default data. This script was handled by another programmer and me, where my teammate set up an enumerator scriptable object to set the card's type and I set up the default methods. Each card type overrides the virtual methods with its specific effects. This method of setup created too many bugs to pick apart to deal with in the game jam's timespan, so ultimately, this was scrapped and redone.
The initial base card class was not working out with our other implemented systems, so this new class now uses assignable Unity Actions to call its effects rather than iterating through an enumerator. An additional effect of the class rework is it is more condensed and readable than its previous version.
Whenever a card spawns, it spawns as a random type of card. When the player collides with the card's trigger, the card checks the card manager's singleton instance if there's room for it. If there is enough space in the player's inventory, the card is added into the player's card list.