All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.com.bselzer.gw2.v2.model.map.Map.kt Maven / Gradle / Ivy

The newest version!
package com.bselzer.gw2.v2.model.map

import com.bselzer.gw2.v2.model.character.CharacterLevel
import com.bselzer.gw2.v2.model.continent.ContinentId
import com.bselzer.gw2.v2.model.continent.floor.FloorId
import com.bselzer.gw2.v2.model.continent.region.RegionId
import com.bselzer.gw2.v2.model.enumeration.wrapper.MapType
import com.bselzer.gw2.v2.model.tile.position.BottomLeftTextureBound
import com.bselzer.gw2.v2.model.tile.position.TopLeftTextureBound
import com.bselzer.ktx.value.identifier.Identifiable
import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable

@Serializable
data class Map(
    @SerialName("id")
    override val id: MapId = MapId(),

    @SerialName("name")
    val name: String = "",

    /**
     * The minimum recommended level of this map.
     */
    @SerialName("min_level")
    val minLevel: CharacterLevel = CharacterLevel(),

    /**
     * The maximum recommended level of this map.
     */
    @SerialName("max_level")
    val maxLevel: CharacterLevel = CharacterLevel(),

    /**
     * The id of the default floor.
     * @see the wiki
     */
    @SerialName("default_floor")
    val defaultFloorId: FloorId = FloorId(),

    /**
     * The map dimensions.
     *
     * The first sublist contains the bottom-left coordinates.
     *
     * The second sublist contains the top-right coordinates.
     */
    @SerialName("map_rect")
    val mapRectangle: BottomLeftTextureBound = BottomLeftTextureBound(),

    /**
     * The continent dimensions.
     *
     * The first sublist contains the top-left coordinates.
     *
     * The second sublist contains are the bottom-right coordinates.
     */
    @SerialName("continent_rect")
    val continentRectangle: TopLeftTextureBound = TopLeftTextureBound(),

    @SerialName("type")
    val type: MapType = MapType(),

    /**
     * The ids of the floors.
     * @see the wiki
     */
    @SerialName("floors")
    val floorIds: List = emptyList(),

    /**
     * The id of the region.
     * @see the wiki
     */
    @SerialName("region_id")
    val regionId: RegionId = RegionId(),

    /**
     * The name of the region.
     * @see the wiki
     */
    @SerialName("region_name")
    val regionName: String = "",

    /**
     * The id of the continent.
     * @see the wiki
     */
    @SerialName("continent_id")
    val continentId: ContinentId = ContinentId(),

    /**
     * The name of the continent.
     * @see the wiki
     */
    @SerialName("continent_name")
    val continentName: String = ""
) : Identifiable




© 2015 - 2024 Weber Informatics LLC | Privacy Policy