kotcity4 / kotcity.data

Package kotcity.data

Types

AssetManager

class AssetManager

BMPDecoder

class BMPDecoder

A decoder for Windows bitmap (.BMP) files.

BMPImporter

class BMPImporter

BlockCoordinate

data class BlockCoordinate

The main coordinate system used in this game. Everything is on an X-Y grid and we use this all over the place.

Building

abstract class Building : HasConcreteInventory, HasConcreteContacts

The basic unit of simulation in this game. Represents a building and all its attributes. We currently count Road as building as well as PowerLine.

CityFileAdapter

object CityFileAdapter : Debuggable

CityMap

data class CityMap

A map representing the city. The map hangs on to Buildings and Locations. The map is set up as a grid of BlockCoordinate and various layers hanging onto various values (desirability, crime, etc).

CityTradeEntity

data class CityTradeEntity : TradeEntity

Civic

class Civic : LoadableBuilding

Commercial

class Commercial : LoadableBuilding

Contract

data class Contract : Debuggable

ContractChecker

object ContractChecker : Debuggable

Corners

data class Corners

Just a utility class for hanging onto a rectangle of BlockCoordinates

DesirabilityLayer

data class DesirabilityLayer : QuantizedMap<Double>

Represents a grid of "desirability values" that we store in the CityMap

FireStation

class FireStation : Building

HasConcreteContacts

interface HasConcreteContacts : HasContracts

HasConcreteInventory

interface HasConcreteInventory : HasInventory

This is used for something in the CityMap that has REAL trackable inventory. The reason we have "HasConcreteInventory" and not is because the outside NationalTradeEntity does not REALLY have anything. It just pretends to.

HasContracts

interface HasContracts

HasInventory

interface HasInventory

Represents something in (or external) to the city that can have Tradeables in its possession.

Industrial

class Industrial : LoadableBuilding

Inventory

class Inventory

LoadableBuilding

open class LoadableBuilding : Building

Location

data class Location

Represents a pair of a building and its location in the city.

MapGenerator

class MapGenerator

MapMode

enum class MapMode

MapTile

data class MapTile

NationalTradeEntity

data class NationalTradeEntity : HasContracts, HasInventory

OutsideTradeEntity

data class OutsideTradeEntity : TradeEntity, HasContracts, HasInventory

PoliceStation

class PoliceStation : Building

PowerLine

class PowerLine : Building

PowerPlant

class PowerPlant : Building

Prices

object Prices

QuantizedMap

open class QuantizedMap<T>

RailDepot

class RailDepot : Building

Railroad

class Railroad : Building

Residential

class Residential : LoadableBuilding

Road

class Road : Building

Slug

object Slug

TileType

enum class TileType

Represents if we have ground or water

TradeEntity

interface TradeEntity

Tradeable

enum class Tradeable

TradeableCounter

class TradeableCounter

TrainStation

class TrainStation : Building

Tunable

object Tunable

Zone

enum class Zone

Type of zone, R/C/I

Zot

class Zot

ZotType

enum class ZotType

Properties

DEFAULT_MONEY

const val DEFAULT_MONEY: Int

POWER_PLANT_TYPES

val POWER_PLANT_TYPES: List<String>

Functions

uuid

fun uuid(): String