From 33db76e3c8edf0ccee112777101f4c8d4a1e6a30 Mon Sep 17 00:00:00 2001 From: minjaesong Date: Tue, 12 Feb 2019 01:20:12 +0900 Subject: [PATCH] block placing is now primary-use (left click/main trigger/screen tap) --- src/net/torvald/terrarum/itemproperties/GameItem.kt | 11 +++++++++-- src/net/torvald/terrarum/itemproperties/ItemCodex.kt | 4 ++-- src/net/torvald/terrarum/modulebasegame/EntryPoint.kt | 11 ++++------- .../terrarum/modulebasegame/gameactors/HumanoidNPC.kt | 3 +-- 4 files changed, 16 insertions(+), 13 deletions(-) diff --git a/src/net/torvald/terrarum/itemproperties/GameItem.kt b/src/net/torvald/terrarum/itemproperties/GameItem.kt index 0f21d57a8..9c3a2ae01 100644 --- a/src/net/torvald/terrarum/itemproperties/GameItem.kt +++ b/src/net/torvald/terrarum/itemproperties/GameItem.kt @@ -133,9 +133,14 @@ abstract class GameItem : Comparable, Cloneable { open fun effectWhenPickedUp(delta: Float) { } /** - * Apply effects (continuously or not) while primary button (usually left mouse button) is down. + * Apply effects (continuously or not) while primary button is down. * The item will NOT be consumed, so you will want to consume it yourself by inventory.consumeItem(item) * + * Primary button refers to all of these: + * - Left mouse button (configurable) + * - Screen tap + * - XBox controller RT (fixed; LT is for jumping) + * * @return true when used successfully, false otherwise * * note: DO NOT super() this! @@ -146,9 +151,11 @@ abstract class GameItem : Comparable, Cloneable { open fun startPrimaryUse(delta: Float): Boolean = false /** - * Apply effects (continuously or not) while secondary button (usually right mouse button) is down + * Apply effects (continuously or not) while secondary button is down * The item will NOT be consumed, so you will want to consume it yourself by inventory.consumeItem(item) * + * NOTE: please refrain from using this; secondary button is currently undefined in the gamepad and touch input. + * * @return true when used successfully, false otherwise * * note: DO NOT super() this! diff --git a/src/net/torvald/terrarum/itemproperties/ItemCodex.kt b/src/net/torvald/terrarum/itemproperties/ItemCodex.kt index ccc015ad5..c95d31e1a 100644 --- a/src/net/torvald/terrarum/itemproperties/ItemCodex.kt +++ b/src/net/torvald/terrarum/itemproperties/ItemCodex.kt @@ -190,7 +190,7 @@ object ItemCodex { override val equipPosition: Int = EquipPosition.HAND_GRIP - override fun startSecondaryUse(delta: Float): Boolean { + override fun startPrimaryUse(delta: Float): Boolean { val ingame = Terrarum.ingame!! as Ingame // must be in here ingame.world.setFluid(Terrarum.mouseTileX, Terrarum.mouseTileY, Fluid.WATER, 4f) return true @@ -217,7 +217,7 @@ object ItemCodex { override val equipPosition: Int = EquipPosition.HAND_GRIP - override fun startSecondaryUse(delta: Float): Boolean { + override fun startPrimaryUse(delta: Float): Boolean { val ingame = Terrarum.ingame!! as Ingame // must be in here ingame.world.setFluid(Terrarum.mouseTileX, Terrarum.mouseTileY, Fluid.LAVA, 4f) return true diff --git a/src/net/torvald/terrarum/modulebasegame/EntryPoint.kt b/src/net/torvald/terrarum/modulebasegame/EntryPoint.kt index 0dc4c22ff..241f423e0 100644 --- a/src/net/torvald/terrarum/modulebasegame/EntryPoint.kt +++ b/src/net/torvald/terrarum/modulebasegame/EntryPoint.kt @@ -2,17 +2,19 @@ package net.torvald.terrarum.modulebasegame import net.torvald.terrarum.AppLoader.IS_DEVELOPMENT_BUILD import net.torvald.terrarum.AppLoader.printdbg -import net.torvald.terrarum.Point2d import net.torvald.terrarum.ModMgr import net.torvald.terrarum.ModuleEntryPoint +import net.torvald.terrarum.Point2d import net.torvald.terrarum.Terrarum import net.torvald.terrarum.blockproperties.BlockCodex +import net.torvald.terrarum.gameactors.ActorWBMovable import net.torvald.terrarum.itemproperties.GameItem import net.torvald.terrarum.itemproperties.ItemCodex import net.torvald.terrarum.itemproperties.Material -import net.torvald.terrarum.gameactors.ActorWBMovable /** + * The entry point for the module "Basegame" + * * Created by minjaesong on 2018-06-21. */ class EntryPoint : ModuleEntryPoint() { @@ -52,11 +54,6 @@ class EntryPoint : ModuleEntryPoint() { } override fun startPrimaryUse(delta: Float): Boolean { - return false - // TODO base punch attack - } - - override fun startSecondaryUse(delta: Float): Boolean { val ingame = Terrarum.ingame!! as Ingame val mousePoint = Point2d(Terrarum.mouseTileX.toDouble(), Terrarum.mouseTileY.toDouble()) diff --git a/src/net/torvald/terrarum/modulebasegame/gameactors/HumanoidNPC.kt b/src/net/torvald/terrarum/modulebasegame/gameactors/HumanoidNPC.kt index 6b0675dea..dc5628b6b 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameactors/HumanoidNPC.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameactors/HumanoidNPC.kt @@ -4,7 +4,6 @@ import net.torvald.terrarum.Terrarum import net.torvald.terrarum.gameactors.AIControlled import net.torvald.terrarum.gameactors.AVKey import net.torvald.terrarum.gameactors.ai.ActorAI -import net.torvald.terrarum.gameworld.GameWorld import net.torvald.terrarum.itemproperties.GameItem import net.torvald.terrarum.itemproperties.Material import net.torvald.terrarum.modulebasegame.gameworld.time_t @@ -49,7 +48,7 @@ open class HumanoidNPC( override val isDynamic = false override val material = Material(0,0,0,0,0,0,0,0,0,0.0) - override fun startSecondaryUse(delta: Float): Boolean { + override fun startPrimaryUse(delta: Float): Boolean { try { // place the actor to the world this@HumanoidNPC.setPosition(Terrarum.mouseX, Terrarum.mouseY)