039d1df
Branches > main > 039d1df > files
It's too late lol
Commit: 039d1dfa253fc0486bfa6e83dc8295e8d26c6845
Parent: 98c8c18
9 changed files:
src/main/kotlin/net/bowmap/server/Main.kt src/main/kotlin/net/bowmap/server/Update.kt view file
@@ -1,9 +1,9 @@ package net.bowmap.server import net.bowmap.stormbow.*-import kotlinx.collections.immutable.* import net.bowmap.handlers.* +// TODO call setup() from an onEnable fact fun update(fact: Fact): Effects = when(fact) { is PlayerSentChatMessage -> sendUpdatedChatMessage(fact) is PlayerBrokeBlock -> handleBlockBreak(fact)src/main/kotlin/net/bowmap/server/Setup.kt view file
@@ -5,7 +5,7 @@ /// Sets up the world state fun setup() {- // TODO can make these into effects+ // TODO can make these into effects from a fact handler Bukkit.getWorlds().forEach { world -> world.setGameRule(GameRules.ADVANCE_TIME, false) world.setTime(18000L)src/main/kotlin/net/bowmap/server/entity/GameEntity.kt view file
@@ -1,6 +0,0 @@--// An immutable reference to a mutable entity-// Can only call impure functions on this entity to get things from it-// And execute effects on it to do things to it--// Players also go under this categorysrc/main/kotlin/net/bowmap/server/fact/Fact.kt src/main/kotlin/net/bowmap/stormbow/Fact.kt view file
@@ -1,11 +1,12 @@-package net.bowmap.stormbow+package net.bowmap.server.fact -import org.bukkit.entity.*-import org.bukkit.damage.DamageSource-import org.bukkit.block.Block-import org.bukkit.inventory.ItemStack+// import org.bukkit.entity.*+// import org.bukkit.damage.DamageSource+// import org.bukkit.block.Block+// import org.bukkit.inventory.ItemStack import net.kyori.adventure.audience.Audience import net.kyori.adventure.text.Component+import net.bowmap.server.entity.Player sealed interface Fact @@ -20,4 +21,4 @@ data class PlayerStartedFishing(val player: Player, val hook: FishHook) : Fact data class PlayerCaughtFish(val player: Player, val hook: FishHook) : Fact // Bowmap items do not have durability, so they can't be used here-data class ItemLostDurability(val player: Player, val itemStack: ItemStack) : Fact+data class ItemLostDurability(val player: Player) : Factsrc/main/kotlin/net/bowmap/stormbow/Listeners.kt view file
@@ -9,10 +9,11 @@ import net.kyori.adventure.text.Component import net.kyori.adventure.audience.Audience -import org.bukkit.event.player.PlayerFishEvent.State-+import net.bowmap.server.fact.* import net.bowmap.server.update +import org.bukkit.event.player.PlayerFishEvent.State+ import org.bukkit.event.player.PlayerItemDamageEvent import kotlinx.collections.immutable.* src/main/kotlin/net/bowmap/stormbow/Plugin.kt src/main/kotlin/net/bowmap/Main.kt view file
@@ -1,20 +1,18 @@-package net.bowmap++package net.bowmap.stormbow import org.bukkit.plugin.java.JavaPlugin import net.kyori.adventure.text.Component import net.bowmap.server.setup-import net.bowmap.stormbow.Listeners-import net.bowmap.handlers.*-import net.bowmap.stormbow.setupStormbow -class Main : JavaPlugin() {+class Plugin : JavaPlugin() {+ // Handle a "plugin started" fact override fun onEnable() { try { setup() server.sendMessage(Component.text("Loading Bowmap..."))-- setupStormbow(this)+ server.pluginManager.registerEvents(Listeners(), this); } catch (t: Exception) { logger.severe("Startup Failed!") server.shutdown()src/main/kotlin/net/bowmap/stormbow/Setup.kt view file
@@ -1,7 +0,0 @@-package net.bowmap.stormbow--import org.bukkit.plugin.java.JavaPlugin--fun setupStormbow(plugin: JavaPlugin) {- plugin.server.pluginManager.registerEvents(Listeners(), plugin);-}src/main/kotlin/net/bowmap/stormbow/game/GameEntity.kt view file
@@ -0,0 +1,21 @@+package net.bowmap.stormbow.game++import java.util.UUID+import org.bukkit.Player++// An immutable reference to a mutable entity+// Can only call impure functions on this entity to get things from it+// And execute effects on it to do things to it++// Players also go under this category++/// An immutable game entity+interface Entity {+ val uuid: UUID+}++/// An immutable player+data class Player(override val uuid: UUID) : Entity++fun fromBukkitPlayer(p: org.bukkit.Player): Player =+ Player(uuid = p.uniqueId)src/main/resources/plugin.yml view file
@@ -1,5 +1,5 @@ name: Bowmap version: 2.0.1-main: net.bowmap.Main+main: net.bowmap.stormbow.Plugin author: Grahp api-version: "1.21.11"