First commit
This commit is contained in:
122
src/main/kotlin/club/mcscrims/speedhg/config/KitConfig.kt
Normal file
122
src/main/kotlin/club/mcscrims/speedhg/config/KitConfig.kt
Normal file
@@ -0,0 +1,122 @@
|
||||
package club.mcscrims.speedhg.config
|
||||
|
||||
import club.mcscrims.core.config.annotations.ConfigClass
|
||||
import club.mcscrims.core.config.annotations.ConfigField
|
||||
|
||||
@ConfigClass(
|
||||
name = "kits",
|
||||
description = "Kit configuration",
|
||||
version = "1.0"
|
||||
)
|
||||
data class KitConfig(
|
||||
|
||||
@ConfigField(name = "anchor", description = "Anchor configurations")
|
||||
val anchor: Map<String, Double> = getAnchorConfigurations(),
|
||||
|
||||
@ConfigField(name = "armorer", description = "Armorer configurations")
|
||||
val armorer: Map<String, Double> = getArmorerConfigurations(),
|
||||
|
||||
@ConfigField(name = "blackpanther", description = "BlackPanther configurations")
|
||||
val blackPanther: Map<String, Double> = getBlackPantherConfigurations(),
|
||||
|
||||
@ConfigField(name = "gladiator", description = "Gladiator configurations")
|
||||
val gladiator: Map<String, Double> = getGladiatorConfigurations(),
|
||||
|
||||
@ConfigField(name = "goblin", description = "Goblin configurations")
|
||||
val goblin: Map<String, Double> = getGoblinConfigurations(),
|
||||
|
||||
@ConfigField(name = "icemage", description = "IceMage configurations")
|
||||
val iceMage: Map<String, Double> = getIceMageConfigurations(),
|
||||
|
||||
@ConfigField(name = "poseidon", description = "Poseidon configurations")
|
||||
val poseidon: Map<String, Double> = getPoseidonConfigurations(),
|
||||
|
||||
@ConfigField(name = "rattlesnake", description = "Rattlesnake configurations")
|
||||
val rattlesnake: Map<String, Double> = getRattlesnakeConfigurations(),
|
||||
|
||||
@ConfigField(name = "tesla", description = "Tesla configurations")
|
||||
val tesla: Map<String, Double> = getTeslaConfigurations(),
|
||||
|
||||
@ConfigField(name = "voodoo", description = "Voodoo configurations")
|
||||
val voodoo: Map<String, Double> = getVoodooConfigurations(),
|
||||
|
||||
@ConfigField(name = "perks", description = "Perk configuration")
|
||||
val perks: Map<String, Pair<String, Double>> = getPerkConfiguration()
|
||||
) {
|
||||
|
||||
fun getAllKitConfigurations(): Map<String, Double>
|
||||
{
|
||||
return anchor + armorer + blackPanther + gladiator + goblin + iceMage + poseidon +
|
||||
rattlesnake + tesla + voodoo
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private fun getAnchorConfigurations() = mapOf(
|
||||
"offensive extra damage" to 1.0
|
||||
)
|
||||
|
||||
private fun getArmorerConfigurations() = mapOf(
|
||||
"kills until new armor" to 2.0
|
||||
)
|
||||
|
||||
private fun getBlackPantherConfigurations() = mapOf(
|
||||
"enderpearl hit damage" to 3.0,
|
||||
"extra damage on top" to 0.5,
|
||||
"default hit radius" to 3.0,
|
||||
"explosion multiplier" to 3.0
|
||||
)
|
||||
|
||||
private fun getGladiatorConfigurations() = mapOf(
|
||||
"cage radius" to 23.0,
|
||||
"cage height" to 10.0,
|
||||
"wither effect after x seconds" to 180.0
|
||||
)
|
||||
|
||||
private fun getGoblinConfigurations() = mapOf(
|
||||
"bunker radius" to 10.0,
|
||||
"bunker time until disappear" to 15.0,
|
||||
"knockback and pullin radius" to 7.0,
|
||||
"kit steal time" to 60.0,
|
||||
"soup steal chance" to 20.0
|
||||
)
|
||||
|
||||
private fun getIceMageConfigurations() = mapOf(
|
||||
"chance for slowness" to 2.0
|
||||
)
|
||||
|
||||
private fun getPoseidonConfigurations() = mapOf(
|
||||
"default hit radius" to 3.0,
|
||||
"lightning hit damage" to 4.0
|
||||
)
|
||||
|
||||
private fun getRattlesnakeConfigurations() = mapOf(
|
||||
"maximum jump distance" to 10.0,
|
||||
"speed duration" to 10.0,
|
||||
"poison duration" to 8.0,
|
||||
"maximum negative effect duration" to 16.0,
|
||||
"default jump radius" to 10.0
|
||||
)
|
||||
|
||||
private fun getTeslaConfigurations() = mapOf(
|
||||
"disable push at height" to 50.0,
|
||||
"default thunder radius" to 5.0,
|
||||
"push strength" to 1.0,
|
||||
"fire tick duration" to 5.0,
|
||||
"time until thunder disables" to 7.0,
|
||||
"thunder damage" to 1.5
|
||||
)
|
||||
|
||||
private fun getVoodooConfigurations() = mapOf(
|
||||
"default curse radius" to 3.0,
|
||||
"maximum effect duration" to 15.0,
|
||||
"clicked players minimum health" to 10.0,
|
||||
"voodoo hold duration" to 5.0,
|
||||
"chance for wither effect" to 5.0
|
||||
)
|
||||
|
||||
private fun getPerkConfiguration() = mapOf(
|
||||
"knockback" to Pair( "knockback strength", 1.5 ),
|
||||
"pullin" to Pair( "pullin strength", 0.5 ),
|
||||
"radiusincrease" to Pair( "new radius", 5.0 )
|
||||
)
|
||||
Reference in New Issue
Block a user