@@ -2,15 +2,25 @@ package world.gregs.voidps.engine.data.definition
22
33import com.github.michaelbull.logging.InlineLogger
44import world.gregs.voidps.cache.Cache
5+ import world.gregs.voidps.cache.FileCache
56import world.gregs.voidps.cache.Index
67import world.gregs.voidps.cache.definition.decoder.MapTileDecoder
8+ import world.gregs.voidps.cache.definition.decoder.ObjectDecoder
79import world.gregs.voidps.engine.client.ui.chat.plural
10+ import world.gregs.voidps.engine.client.update.batch.ZoneBatchUpdates
11+ import world.gregs.voidps.engine.data.Settings
812import world.gregs.voidps.engine.entity.obj.GameObjects
913import world.gregs.voidps.engine.map.collision.CollisionDecoder
14+ import world.gregs.voidps.engine.map.collision.Collisions
15+ import world.gregs.voidps.engine.map.collision.GameObjectCollisionAdd
16+ import world.gregs.voidps.engine.map.collision.GameObjectCollisionRemove
1017import world.gregs.voidps.engine.map.obj.MapObjectsDecoder
1118import world.gregs.voidps.engine.map.obj.MapObjectsRotatedDecoder
1219import world.gregs.voidps.type.Region
1320import world.gregs.voidps.type.Zone
21+ import world.gregs.yaml.Yaml
22+ import java.io.File
23+ import kotlin.time.measureTimedValue
1424
1525/* *
1626 * Loads map collision and objects fast and direct
@@ -80,4 +90,18 @@ class MapDefinitions(
8090 return settings
8191 }
8292
93+ companion object {
94+ @JvmStatic
95+ fun main (args : Array <String >) {
96+ val properties = Settings .load(File (" ./game/src/main/resources/game.properties" ).inputStream())
97+ // properties["storage.cache.path"] = "./data/cache-old/"
98+ val (cache, duration) = measureTimedValue { FileCache .load(properties) }
99+ println (" Loaded cache in ${duration.inWholeMilliseconds} ms" )
100+ val definitions = ObjectDefinitions (ObjectDecoder (member = true , lowDetail = false ).load(cache)).load(Yaml (), " ./data/definitions/objects.yml" )
101+ val collisions = Collisions ()
102+ val add = GameObjectCollisionAdd (collisions)
103+ val remove = GameObjectCollisionRemove (collisions)
104+ val defs = MapDefinitions (CollisionDecoder (collisions), definitions, GameObjects (add, remove, ZoneBatchUpdates (), definitions, storeUnused = true ), cache).loadCache()
105+ }
106+ }
83107}
0 commit comments