Sou novo em Kotlin e decidi programar um jogo de texto simples. Quando tento acessar a taxa de spawn de um inimigo (não importa a bruxa), sempre recebo um erro:
Kotlin: Unresolved reference. None of the following candidates is applicable because of receiver type mismatch:
public operator fun MatchGroupCollection.get(name: String): MatchGroup? defined in kotlin.text
e .get
fica vermelho no meu IDE.
Aqui está meu dragão inimigo:
"dragon" to mapOf(
"spawnRate" to mapOf("hill" to 1.01),
"drops" to mapOf(
"dragon scale" to mapOf("quantity" to listOf(1,10)),
"dragon egg" to 0.01,
"dragon head" to 1.01,
),
"exp" to listOf(1, 4),
"dmg" to listOf(35,75),
),
Estou tentando acessar o spawnRate assim:
val dragonSpawnRate = mobs["dragon"]?.get("spawnRate")?.get("hill")
println("Dragon Spawn Rate: $dragonSpawnRate")
Tentei mais ideias, mas todas acabaram com o mesmo erro.
val dragon = mobs["dragon"]?.get("spawnRate")
val dragonSpawnRate = dragon?.get("hill")
//-----------------------------------------------
val dragon = mobs["dragon"]?.get("spawnRate")
val dragonSpawnRate = dragon["hill"]
Também tentei algumas soluções para esta questão: https://stackoverflow.com/questions/61660123/define-class-parameter-with-get-at-kotlin
mas nenhum deles ajudou. Também tentei perguntar ao chat gpt, mas também não funcionou.