still wip modularisation, game somehow boots

This commit is contained in:
minjaesong
2018-06-21 17:33:22 +09:00
parent 6bbfd5d167
commit 8daf0a2c38
266 changed files with 2409 additions and 1122 deletions

View File

@@ -3,12 +3,13 @@ package net.torvald.terrarum.modulebasegame.items
import net.torvald.point.Point2d
import net.torvald.terrarum.Terrarum
import net.torvald.terrarum.blockproperties.Block
import net.torvald.terrarum.gameactors.AVKey
import net.torvald.terrarum.gameactors.ActorWithPhysics
import net.torvald.terrarum.modulebasegame.gameactors.AVKey
import net.torvald.terrarum.modulebasegame.gameactors.ActorWithPhysics
import net.torvald.terrarum.itemproperties.Calculate
import net.torvald.terrarum.itemproperties.GameItem
import net.torvald.terrarum.itemproperties.ItemID
import net.torvald.terrarum.itemproperties.Material
import net.torvald.terrarum.modulebasegame.Ingame
/**
* Created by minjaesong on 2017-07-17.
@@ -37,7 +38,7 @@ class PickaxeGeneric(override val originalID: ItemID) : GameItem() {
val mouseTileY = Terrarum.mouseTileY
val mousePoint = Point2d(mouseTileX.toDouble(), mouseTileY.toDouble())
val actorvalue = Terrarum.ingame!!.player.actorValue
val actorvalue = (Terrarum.ingame!! as Ingame).player.actorValue
using = true
@@ -49,15 +50,15 @@ class PickaxeGeneric(override val originalID: ItemID) : GameItem() {
})
// return false if here's no tile
if (Block.AIR == Terrarum.ingame!!.world.getTileFromTerrain(mouseTileX, mouseTileY))
if (Block.AIR == (Terrarum.ingame!! as Ingame).world.getTileFromTerrain(mouseTileX, mouseTileY))
return false
// filter passed, do the job
val swingDmgToFrameDmg = delta.toDouble() / actorvalue.getAsDouble(AVKey.ACTION_INTERVAL)!!
Terrarum.ingame!!.world.inflictTerrainDamage(
(Terrarum.ingame!! as Ingame).world.inflictTerrainDamage(
mouseTileX, mouseTileY,
Calculate.pickaxePower(Terrarum.ingame!!.player, material) * swingDmgToFrameDmg
Calculate.pickaxePower((Terrarum.ingame!! as Ingame).player, material) * swingDmgToFrameDmg
)
return true
@@ -66,7 +67,7 @@ class PickaxeGeneric(override val originalID: ItemID) : GameItem() {
override fun endPrimaryUse(delta: Float): Boolean {
using = false
// reset action timer to zero
Terrarum.ingame!!.player.actorValue.set(AVKey.__ACTION_TIMER, 0.0)
(Terrarum.ingame!! as Ingame).player.actorValue.set(AVKey.__ACTION_TIMER, 0.0)
return true
}
}