isAgent, isItem, isFire, isBullet, isObjectReal fields Undisclosed exceptions Relationships still use both strings and enums Binary serialization Unrelated code Custom localization problems Enormous if-chain Loop- switch sequence Switch statement on direction string Dozens of incredibly specific fields Optimization- blocking for- loop over a collection stored in a field Gigantic switch‑case w/ strings Status effects are still traits Vehicle is a subclass of Agent ——— OR ——— Agents ARE vehicles tk2d Expensive string concatenation in a loop A method with 10+ parameters X and Y instead of Vector2 Random- Selection is still ridiculous Virtual methods that should have been interfaces Locked doors are still one- directional Improper list population w/ excessive copying Banana and Voucher workaround is still there sprite, spriteH, spriteWB, spriteWBH realName, realName2, fakeActive Inefficient vector math 24 directions are strings Start(), Start2(), Start3(), StartReal(), StartReal2() Data clumps isAgent, isItem, isFire, isBullet, isObjectReal fields Undisclosed exceptions Relationships still use both strings and enums Binary serialization Unrelated code Custom localization problems Enormous if-chain Loop- switch sequence Switch statement on direction string Dozens of incredibly specific fields Optimization- blocking for- loop over a collection stored in a field Gigantic switch‑case w/ strings Status effects are still traits Vehicle is a subclass of Agent ——— OR ——— Agents ARE vehicles tk2d Expensive string concatenation in a loop A method with 10+ parameters X and Y instead of Vector2 Random- Selection is still ridiculous Virtual methods that should have been interfaces Locked doors are still one- directional Improper list population w/ excessive copying Banana and Voucher workaround is still there sprite, spriteH, spriteWB, spriteWBH realName, realName2, fakeActive Inefficient vector math 24 directions are strings Start(), Start2(), Start3(), StartReal(), StartReal2() Data clumps
(Print) Use this randomly generated list as your call list when playing the game. There is no need to say the BINGO column name. Place some kind of mark (like an X, a checkmark, a dot, tally mark, etc) on each cell as you announce it, to keep track. You can also cut out each item, place them in a bag and pull words from the bag.
isAgent, isItem, isFire, isBullet, isObjectReal fields
Undisclosed exceptions
Relationships still use both strings and enums
Binary serialization
Unrelated code
Custom localization problems
Enormous if-chain
Loop-switch sequence
Switch statement on direction string
Dozens of incredibly specific fields
Optimization-blocking for-loop over a collection stored in a field
Gigantic switch‑case w/ strings
Status effects are still traits
Vehicle is a subclass of Agent ——— OR ——— Agents ARE vehicles
tk2d
Expensive string concatenation in a loop
A method with 10+ parameters
X and Y instead of Vector2
Random-Selection is still ridiculous
Virtual methods that should have been interfaces
Locked doors are still one-directional
Improper list population w/ excessive copying
Banana and Voucher workaround is still there
sprite, spriteH, spriteWB, spriteWBH
realName, realName2, fakeActive
Inefficient vector math
24 directions are strings
Start(), Start2(), Start3(), StartReal(), StartReal2()
Data clumps