DEADSOFTWARE

Update version script
[cavedroid.git] / core / src / main / kotlin / ru / deadsoftware / cavedroid / game / save / GameSaveData.kt
1 package ru.deadsoftware.cavedroid.game.save
3 import ru.deadsoftware.cavedroid.game.mobs.MobsController
4 import ru.deadsoftware.cavedroid.game.model.block.Block
5 import ru.deadsoftware.cavedroid.game.objects.container.ContainerController
6 import ru.deadsoftware.cavedroid.game.objects.drop.DropController
8 class GameSaveData(
9 private var mobsController: MobsController?,
10 private var dropController: DropController?,
11 private var containerController: ContainerController?,
12 private var foreMap: Array<Array<Block>>?,
13 private var backMap: Array<Array<Block>>?
14 ) {
16 fun retrieveMobsController(): MobsController {
17 val value = requireNotNull(mobsController)
18 mobsController = null
19 return value
20 }
22 fun retrieveDropController(): DropController {
23 val value = requireNotNull(dropController)
24 dropController = null
25 return value
26 }
28 fun retrieveContainerController(): ContainerController {
29 val value = requireNotNull(containerController)
30 containerController = null
31 return value
32 }
34 fun retrieveForeMap(): Array<Array<Block>> {
35 val value = requireNotNull(foreMap)
36 foreMap = null
37 return value
38 }
40 fun retrieveBackMap(): Array<Array<Block>> {
41 val value = requireNotNull(backMap)
42 backMap = null
43 return value
44 }
46 fun isEmpty(): Boolean {
47 return mobsController == null &&
48 dropController == null &&
49 containerController == null &&
50 foreMap == null &&
51 backMap == null
52 }
55 }