mirror of
https://github.com/2006-Scape/apollo.git
synced 2026-07-03 00:38:21 +00:00
8fe09880b7
Behaviour moved into the api plugin.
20 lines
633 B
Kotlin
20 lines
633 B
Kotlin
|
|
import org.apollo.game.model.entity.Npc
|
|
import org.apollo.game.plugin.api.Definitions
|
|
import org.apollo.game.plugin.entity.spawn.Spawns
|
|
|
|
start { world ->
|
|
Spawns.list.forEach { spawn ->
|
|
val definition = spawn.id?.let(Definitions::npc) ?: Definitions.npc(spawn.name)
|
|
?: throw IllegalArgumentException("Invalid NPC name or ID ${spawn.name}, ${spawn.id}")
|
|
|
|
val npc = Npc(world, definition.id, spawn.position)
|
|
npc.turnTo(spawn.position.step(1, spawn.facing))
|
|
|
|
spawn.spawnAnimation?.let(npc::playAnimation)
|
|
spawn.spawnGraphic?.let(npc::playGraphic)
|
|
|
|
world.register(npc)
|
|
}
|
|
}
|