A KorGE Game Library example game (CounterStrike) has the following construct:
sealed class SideEffect{ class Hit() : SideEffect() class TerroristShot(val terrorist: Terrorist) : SideEffect() class KillTerrorist(val terrorist: Terrorist) : SideEffect() class ShowTerrorist(val terrorist: Terrorist) : SideEffect() class HideTerrorist(val terrorist: Terrorist) : SideEffect() class CounterTerroristWin : SideEffect() class TerroristsWin : SideEffect() } and I am struggling to understand what the resulting (overall) Object actually is. Does resulting Object actually take up the space of SEVEN SideEffect classes, or ONE? (Or is this a trick question if the classes would all be identical except the name)?
innerkeyword on the classes defined inside the outer class, and that makes each instance of those inner classes dependent on a specific instance of the outer class.)