Giganticswitch‑casew/ stringsInefficientvectormathEnormousif-chainDataclumpsVirtualmethods thatshould havebeeninterfacesrealName,realName2,fakeActivetk2dStart(),Start2(),Start3(),StartReal(),StartReal2()isAgent, isItem,isFire, isBullet,isObjectRealfieldsX and Yinstead ofVector2Banana andVoucherworkaroundis still there24directionsarestringsLoop-switchsequenceRandom-Selectionis stillridiculousStatuseffects arestill traitsVehicle is asubclass of Agent——— OR ———Agents AREvehiclesUndisclosedexceptionsCustomlocalizationproblemsImproper listpopulationw/ excessivecopyingRelationshipsstill use bothstrings andenumssprite,spriteH,spriteWB,spriteWBHBinaryserializationUnrelatedcodeDozens ofincrediblyspecificfieldsSwitchstatementon directionstringExpensivestringconcatenationin a loopOptimization-blocking for-loop over acollectionstored in a fieldA methodwith 10+parametersLockeddoors arestill one-directionalGiganticswitch‑casew/ stringsInefficientvectormathEnormousif-chainDataclumpsVirtualmethods thatshould havebeeninterfacesrealName,realName2,fakeActivetk2dStart(),Start2(),Start3(),StartReal(),StartReal2()isAgent, isItem,isFire, isBullet,isObjectRealfieldsX and Yinstead ofVector2Banana andVoucherworkaroundis still there24directionsarestringsLoop-switchsequenceRandom-Selectionis stillridiculousStatuseffects arestill traitsVehicle is asubclass of Agent——— OR ———Agents AREvehiclesUndisclosedexceptionsCustomlocalizationproblemsImproper listpopulationw/ excessivecopyingRelationshipsstill use bothstrings andenumssprite,spriteH,spriteWB,spriteWBHBinaryserializationUnrelatedcodeDozens ofincrediblyspecificfieldsSwitchstatementon directionstringExpensivestringconcatenationin a loopOptimization-blocking for-loop over acollectionstored in a fieldA methodwith 10+parametersLockeddoors arestill one-directional

SoR2's code (Evil side) - Call List

(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.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
  1. Gigantic switch‑case w/ strings
  2. Inefficient vector math
  3. Enormous if-chain
  4. Data clumps
  5. Virtual methods that should have been interfaces
  6. realName, realName2, fakeActive
  7. tk2d
  8. Start(), Start2(), Start3(), StartReal(), StartReal2()
  9. isAgent, isItem, isFire, isBullet, isObjectReal fields
  10. X and Y instead of Vector2
  11. Banana and Voucher workaround is still there
  12. 24 directions are strings
  13. Loop-switch sequence
  14. Random-Selection is still ridiculous
  15. Status effects are still traits
  16. Vehicle is a subclass of Agent ——— OR ——— Agents ARE vehicles
  17. Undisclosed exceptions
  18. Custom localization problems
  19. Improper list population w/ excessive copying
  20. Relationships still use both strings and enums
  21. sprite, spriteH, spriteWB, spriteWBH
  22. Binary serialization
  23. Unrelated code
  24. Dozens of incredibly specific fields
  25. Switch statement on direction string
  26. Expensive string concatenation in a loop
  27. Optimization-blocking for-loop over a collection stored in a field
  28. A method with 10+ parameters
  29. Locked doors are still one-directional