com.torvald → net.torvald

Former-commit-id: 375604da8a20a6ba7cd0a8d05a44add02b2d04f4
Former-commit-id: 287287c5920b07618174d7a7573f049d350ded66
This commit is contained in:
Song Minjae
2016-04-12 12:29:02 +09:00
parent 2a34efb489
commit ac9f5b5138
148 changed files with 473 additions and 524 deletions

View File

@@ -1,4 +1,4 @@
package com.torvald
package net.torvald
import org.apache.commons.csv.CSVFormat
import org.apache.commons.csv.CSVParser

View File

@@ -1,4 +1,4 @@
package com.torvald
package net.torvald
import com.google.gson.JsonObject
import com.google.gson.JsonParser

View File

@@ -1,4 +1,4 @@
package com.torvald
package net.torvald
import com.google.gson.Gson
import com.google.gson.JsonElement

View File

@@ -1,6 +1,6 @@
package com.torvald
package net.torvald
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.Terrarum
import javax.imageio.ImageIO
import java.awt.*

View File

@@ -1,4 +1,4 @@
package com.torvald.colourutil
package net.torvald.colourutil
import org.newdawn.slick.Color

View File

@@ -1,4 +1,4 @@
package com.torvald.colourutil
package net.torvald.colourutil
import org.newdawn.slick.Color

View File

@@ -1,4 +1,4 @@
package com.torvald.colourutil
package net.torvald.colourutil
/**
* Created by minjaesong on 16-03-10.

View File

@@ -1,4 +1,4 @@
package com.torvald.colourutil
package net.torvald.colourutil
import com.jme3.math.FastMath
import org.newdawn.slick.Color

View File

@@ -1,4 +1,4 @@
package com.torvald.colourutil
package net.torvald.colourutil
import org.newdawn.slick.Color

View File

@@ -1,6 +1,6 @@
package com.torvald.imagefont
package net.torvald.imagefont
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.Terrarum
import org.lwjgl.opengl.GL11
import org.newdawn.slick.*

View File

@@ -1,6 +1,6 @@
package com.torvald.imagefont
package net.torvald.imagefont
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.Terrarum
import org.newdawn.slick.*
/**

View File

@@ -1,4 +1,4 @@
package com.torvald.point
package net.torvald.point
/**
* Created by minjaesong on 16-01-15.

View File

@@ -1,4 +1,4 @@
package com.torvald.random
package net.torvald.random
import java.util.Random

View File

@@ -1,4 +1,4 @@
package com.torvald.random
package net.torvald.random
import java.util.Random

View File

@@ -1,4 +1,4 @@
package com.torvald.random;
package net.torvald.random;
import java.util.Random;
//import java.util.concurrent.locks.*;

View File

@@ -1,4 +1,4 @@
package com.torvald.random;
package net.torvald.random;
import java.io.*;
import java.util.*;

View File

@@ -1,10 +1,10 @@
package com.torvald.serialise
package net.torvald.serialise
import com.torvald.CSVFetcher
import com.torvald.terrarum.itemproperties.ItemPropCodex
import com.torvald.terrarum.itemproperties.MaterialPropCodex
import com.torvald.terrarum.Terrarum
import com.torvald.terrarum.tileproperties.TilePropCodex
import net.torvald.CSVFetcher
import net.torvald.terrarum.itemproperties.ItemPropCodex
import net.torvald.terrarum.itemproperties.MaterialPropCodex
import net.torvald.terrarum.Terrarum
import net.torvald.terrarum.tileproperties.TilePropCodex
import java.io.IOException
import java.nio.file.Files
import java.nio.file.Path

View File

@@ -1,7 +1,7 @@
package com.torvald.serialise
package net.torvald.serialise
import com.torvald.terrarum.gamemap.GameMap
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.gamemap.GameMap
import net.torvald.terrarum.Terrarum
import java.io.IOException
import java.nio.file.Files
import java.nio.file.Path

View File

@@ -1,9 +1,9 @@
package com.torvald.serialise
package net.torvald.serialise
import com.torvald.terrarum.mapgenerator.MapGenerator
import com.torvald.terrarum.mapgenerator.RoguelikeRandomiser
import com.torvald.terrarum.Terrarum
import com.torvald.terrarum.tileproperties.TilePropCodex
import net.torvald.terrarum.mapgenerator.MapGenerator
import net.torvald.terrarum.mapgenerator.RoguelikeRandomiser
import net.torvald.terrarum.Terrarum
import net.torvald.terrarum.tileproperties.TilePropCodex
import org.apache.commons.codec.digest.DigestUtils
import java.io.FileInputStream
import java.io.File

View File

@@ -1,4 +1,4 @@
package com.torvald.simplecipher
package net.torvald.simplecipher
/**
* Created by minjaesong on 16-03-20.

View File

@@ -2,10 +2,10 @@
* This code is based on the original author's code written in Lua.
*/
package com.torvald.spriteanimation
package net.torvald.spriteanimation
import com.torvald.terrarum.Game
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.Game
import net.torvald.terrarum.Terrarum
import com.jme3.math.FastMath
import org.newdawn.slick.Graphics
import org.newdawn.slick.Image

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum
package net.torvald.terrarum
import com.google.gson.JsonObject

View File

@@ -1,24 +1,24 @@
package com.torvald.terrarum
package net.torvald.terrarum
import com.torvald.terrarum.gameactors.*
import com.torvald.terrarum.console.Authenticator
import com.torvald.terrarum.gamecontroller.GameController
import com.torvald.terrarum.gamecontroller.Key
import com.torvald.terrarum.gamecontroller.KeyMap
import com.torvald.terrarum.gamecontroller.KeyToggler
import com.torvald.terrarum.gamemap.GameMap
import com.torvald.terrarum.gamemap.WorldTime
import com.torvald.terrarum.mapdrawer.LightmapRenderer
import com.torvald.terrarum.mapdrawer.MapCamera
import com.torvald.terrarum.mapdrawer.MapDrawer
import com.torvald.terrarum.mapgenerator.MapGenerator
import com.torvald.terrarum.mapgenerator.RoguelikeRandomiser
import com.torvald.terrarum.tileproperties.TilePropCodex
import com.torvald.terrarum.tilestats.TileStats
import com.torvald.terrarum.ui.BasicDebugInfoWindow
import com.torvald.terrarum.ui.ConsoleWindow
import com.torvald.terrarum.ui.Notification
import com.torvald.terrarum.ui.UIHandler
import net.torvald.terrarum.gameactors.*
import net.torvald.terrarum.console.Authenticator
import net.torvald.terrarum.gamecontroller.GameController
import net.torvald.terrarum.gamecontroller.Key
import net.torvald.terrarum.gamecontroller.KeyMap
import net.torvald.terrarum.gamecontroller.KeyToggler
import net.torvald.terrarum.gamemap.GameMap
import net.torvald.terrarum.gamemap.WorldTime
import net.torvald.terrarum.mapdrawer.LightmapRenderer
import net.torvald.terrarum.mapdrawer.MapCamera
import net.torvald.terrarum.mapdrawer.MapDrawer
import net.torvald.terrarum.mapgenerator.MapGenerator
import net.torvald.terrarum.mapgenerator.RoguelikeRandomiser
import net.torvald.terrarum.tileproperties.TilePropCodex
import net.torvald.terrarum.tilestats.TileStats
import net.torvald.terrarum.ui.BasicDebugInfoWindow
import net.torvald.terrarum.ui.ConsoleWindow
import net.torvald.terrarum.ui.Notification
import net.torvald.terrarum.ui.UIHandler
import org.lwjgl.opengl.GL11
import org.newdawn.slick.*
import org.newdawn.slick.fills.GradientFill
@@ -102,7 +102,7 @@ constructor() : BasicGameState() {
// add new player and put it to actorContainer
player = PFSigrid.create()
player = PBSigrid.create()
//player = PFCynthia.create()
//player.setNoClip(true);
addActor(player)

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum
package net.torvald.terrarum
/**
* Created by minjaesong on 16-03-19.

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum
package net.torvald.terrarum
import com.google.gson.JsonPrimitive
import java.util.*

View File

@@ -1,8 +1,8 @@
package com.torvald.terrarum
package net.torvald.terrarum
import com.torvald.imagefont.GameFontWhite
import com.torvald.JsonFetcher
import com.torvald.JsonWriter
import net.torvald.imagefont.GameFontWhite
import net.torvald.JsonFetcher
import net.torvald.JsonWriter
import org.lwjgl.input.Controllers
import org.lwjgl.opengl.GL11
import org.newdawn.slick.AppGameContainer

View File

@@ -1,7 +1,7 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.Terrarum
import com.torvald.terrarum.ui.ConsoleWindow
import net.torvald.terrarum.Terrarum
import net.torvald.terrarum.ui.ConsoleWindow
import org.apache.commons.codec.digest.DigestUtils
/**

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import java.nio.file.FileSystems
import java.nio.file.Files

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import java.io.IOException
import java.nio.file.FileSystems

View File

@@ -1,8 +1,8 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.Game
import com.torvald.terrarum.langpack.Lang
import com.torvald.terrarum.ui.ConsoleWindow
import net.torvald.terrarum.Game
import net.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.ui.ConsoleWindow
import java.util.Formatter

View File

@@ -1,6 +1,6 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.Terrarum
import java.util.HashMap

View File

@@ -1,7 +1,7 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.langpack.Lang
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.Terrarum
import java.util.ArrayList
import java.util.Formatter

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
/**
* Created by minjaesong on 16-01-15.

View File

@@ -1,7 +1,7 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.Terrarum
import com.torvald.terrarum.ui.ConsoleWindow
import net.torvald.terrarum.Terrarum
import net.torvald.terrarum.ui.ConsoleWindow
import java.util.Arrays

View File

@@ -1,7 +1,7 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.JsonWriter
import com.torvald.terrarum.Terrarum
import net.torvald.JsonWriter
import net.torvald.terrarum.Terrarum
import java.io.IOException

View File

@@ -1,9 +1,9 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.colourutil.Col4096
import com.torvald.RasterWriter
import com.torvald.terrarum.Terrarum
import com.torvald.terrarum.tileproperties.TileNameCode
import net.torvald.colourutil.Col4096
import net.torvald.RasterWriter
import net.torvald.terrarum.Terrarum
import net.torvald.terrarum.tileproperties.TileNameCode
import java.io.*
import java.util.HashMap

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
/**
* Created by minjaesong on 16-01-18.

View File

@@ -1,8 +1,8 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.gameactors.ActorValue
import com.torvald.terrarum.Game
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.gameactors.ActorValue
import net.torvald.terrarum.Game
import net.torvald.terrarum.Terrarum
/**
* Created by minjaesong on 16-01-19.

View File

@@ -1,8 +1,8 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.gameactors.faction.Faction
import com.torvald.terrarum.langpack.Lang
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.gameactors.faction.Faction
import net.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.Terrarum
import java.util.HashSet

View File

@@ -1,7 +1,7 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.langpack.Lang
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.Terrarum
/**
* Created by minjaesong on 16-01-22.

View File

@@ -1,6 +1,6 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.Terrarum
/**
* Created by minjaesong on 16-03-20.

View File

@@ -1,6 +1,6 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.Terrarum
import com.google.gson.Gson
import com.google.gson.JsonElement

View File

@@ -1,7 +1,7 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.Terrarum
import com.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.Terrarum
import net.torvald.terrarum.langpack.Lang
/**
* Created by minjaesong on 16-03-22.

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
/**
* Created by minjaesong on 16-01-15.

View File

@@ -1,7 +1,7 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.Game
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.Game
import net.torvald.terrarum.Terrarum
/**
* Created by minjaesong on 16-01-15.

View File

@@ -1,8 +1,8 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.langpack.Lang
import com.torvald.terrarum.Terrarum
import com.torvald.terrarum.ui.Notification
import net.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.Terrarum
import net.torvald.terrarum.ui.Notification
/**
* Created by minjaesong on 16-01-23.

View File

@@ -1,7 +1,7 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.mapdrawer.LightmapRenderer
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.mapdrawer.LightmapRenderer
import net.torvald.terrarum.Terrarum
/**
* Created by minjaesong on 16-02-17.

View File

@@ -1,8 +1,8 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.imagefont.GameFontBase
import com.torvald.terrarum.langpack.Lang
import com.torvald.terrarum.Terrarum
import net.torvald.imagefont.GameFontBase
import net.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.Terrarum
import org.apache.commons.csv.CSVRecord
import org.newdawn.slick.SlickException

View File

@@ -1,7 +1,7 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.gamemap.WorldTime
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.gamemap.WorldTime
import net.torvald.terrarum.Terrarum
/**
* Created by minjaesong on 16-03-20.

View File

@@ -1,6 +1,6 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.Terrarum
/**
* Created by minjaesong on 16-03-20.

View File

@@ -1,10 +1,10 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.gameactors.Actor
import com.torvald.terrarum.gameactors.ActorWithBody
import com.torvald.terrarum.gameactors.PhysTestBall
import com.torvald.terrarum.mapdrawer.MapCamera
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.gameactors.Actor
import net.torvald.terrarum.gameactors.ActorWithBody
import net.torvald.terrarum.gameactors.PhysTestBall
import net.torvald.terrarum.mapdrawer.MapCamera
import net.torvald.terrarum.Terrarum
/**
* Created by minjaesong on 16-03-05.

View File

@@ -1,8 +1,8 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.Game
import com.torvald.terrarum.mapdrawer.MapDrawer
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.Game
import net.torvald.terrarum.mapdrawer.MapDrawer
import net.torvald.terrarum.Terrarum
/**
* Created by minjaesong on 16-01-24.

View File

@@ -1,7 +1,7 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.Game
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.Game
import net.torvald.terrarum.Terrarum
/**
* Created by minjaesong on 16-01-19.

View File

@@ -1,6 +1,6 @@
package com.torvald.terrarum.console
package net.torvald.terrarum.console
import com.torvald.terrarum.Terrarum
import net.torvald.terrarum.Terrarum
/**
* Created by minjaesong on 16-01-25.

View File

@@ -1,6 +1,6 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import com.torvald.terrarum.gameactors.ai.ActorAI
import net.torvald.terrarum.gameactors.ai.ActorAI
/**
* Created by minjaesong on 16-03-14.

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
/**
* Created by minjaesong on 16-04-02.

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import org.newdawn.slick.GameContainer

View File

@@ -1,7 +1,7 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import com.torvald.terrarum.gameitem.InventoryItem
import com.torvald.terrarum.itemproperties.ItemPropCodex
import net.torvald.terrarum.gameitem.InventoryItem
import net.torvald.terrarum.itemproperties.ItemPropCodex
import java.util.*
/**

View File

@@ -1,6 +1,6 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import com.torvald.terrarum.KVHashMap
import net.torvald.terrarum.KVHashMap
/**
* Created by minjaesong on 16-03-19.

View File

@@ -1,13 +1,13 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import com.torvald.random.HQRNG
import com.torvald.terrarum.*
import com.torvald.terrarum.gamemap.GameMap
import com.torvald.terrarum.mapdrawer.MapDrawer
import com.torvald.terrarum.tileproperties.TilePropCodex
import com.torvald.spriteanimation.SpriteAnimation
import net.torvald.random.HQRNG
import net.torvald.terrarum.*
import net.torvald.terrarum.gamemap.GameMap
import net.torvald.terrarum.mapdrawer.MapDrawer
import net.torvald.terrarum.tileproperties.TilePropCodex
import net.torvald.spriteanimation.SpriteAnimation
import com.jme3.math.FastMath
import com.torvald.terrarum.tileproperties.TileNameCode
import net.torvald.terrarum.tileproperties.TileNameCode
import org.newdawn.slick.GameContainer
import org.newdawn.slick.Graphics
@@ -57,8 +57,8 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
/**
* Positions: top-left point
*/
@Volatile var hitbox: Hitbox? = null
@Volatile @Transient var nextHitbox: Hitbox? = null
val hitbox = Hitbox(0f,0f,0f,0f)
@Transient val nextHitbox = Hitbox(0f,0f,0f,0f)
/**
* Physical properties
@@ -127,16 +127,14 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
*/
@Transient val INVINCIBILITY_TIME = 500
/**
* Will ignore fluid resistance if (submerged height / actor height) <= this var
*/
@Transient private val FLUID_RESISTANCE_IGNORE_THRESHOLD_RATIO = 0.2f
@Transient private val FLUID_RESISTANCE_APPLY_FULL_RATIO = 0.5f
@Transient private val map: GameMap
@Transient private val MASS_DEFAULT = 60f
private var posAdjustX = 0
private var posAdjustY = 0
init {
do {
referenceID = HQRNG().nextLong() // set new ID
@@ -172,11 +170,17 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
* @param y
*/
fun setPosition(x: Float, y: Float) {
hitbox = Hitbox(
x - (baseHitboxW / 2 - hitboxTranslateX) * scale, y - (baseHitboxH - hitboxTranslateY) * scale, baseHitboxW * scale, baseHitboxH * scale)
hitbox.set(
x - (baseHitboxW / 2 - hitboxTranslateX) * scale,
y - (baseHitboxH - hitboxTranslateY) * scale,
baseHitboxW * scale,
baseHitboxH * scale)
nextHitbox = Hitbox(
x - (baseHitboxW / 2 - hitboxTranslateX) * scale, y - (baseHitboxH - hitboxTranslateY) * scale, baseHitboxW * scale, baseHitboxH * scale)
nextHitbox.set(
x - (baseHitboxW / 2 - hitboxTranslateX) * scale,
y - (baseHitboxH - hitboxTranslateY) * scale,
baseHitboxW * scale,
baseHitboxH * scale)
}
private fun updatePhysicalInfos() {
@@ -216,24 +220,16 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
// Actors are subject to the gravity and the buoyancy if they are not levitating
if (!isNoSubjectToGrav) {
applyGravitation()
applyBuoyancy()
//applyBuoyancy()
}
// hard limit velocity
if (veloX > VELO_HARD_LIMIT) veloX = VELO_HARD_LIMIT
if (veloY > VELO_HARD_LIMIT) veloY = VELO_HARD_LIMIT
// limit velocity by fluid resistance
//int tilePropResistance = getTileMvmtRstc();
//if (!noSubjectToFluidResistance) {
// veloX *= mvmtRstcToMultiplier(tilePropResistance);
// veloY *= mvmtRstcToMultiplier(tilePropResistance);
//}
// Set 'next' position (hitbox) to fiddle with
updateNextHitboxFromVelo()
// if not horizontally moving then ...
//if (Math.abs(veloX) < 0.5) { // fix for special situations (see fig. 1 at the bottom of the source)
// updateVerticalPos();
@@ -286,10 +282,12 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
if (veloY >= 0) { // check downward
if (isColliding(CONTACT_AREA_BOTTOM)) { // the ground has dug into the body
adjustHitBottom()
veloY = 0f // reset veloY, simulating normal force
elasticReflectY()
grounded = true
}
else if (isColliding(CONTACT_AREA_BOTTOM, 0, 1)) { // the actor is standing ON the ground
veloY = 0f // reset veloY, simulating normal force
elasticReflectY()
grounded = true
}
@@ -301,9 +299,11 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
grounded = false
if (isColliding(CONTACT_AREA_TOP)) { // the ceiling has dug into the body
adjustHitTop()
veloY = 0f // reset veloY, simulating normal force
elasticReflectY()
}
else if (isColliding(CONTACT_AREA_TOP, 0, -1)) { // the actor is touching the ceiling
veloY = 0f // reset veloY, simulating normal force
elasticReflectY() // reflect on ceiling, for reversed gravity
}
else { // the actor is not grounded at all
@@ -313,9 +313,9 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
}
private fun adjustHitBottom() {
val newX = nextHitbox!!.pointedX // look carefully, getPos or getPointed
val newX = nextHitbox.pointedX // look carefully, getPos or getPointed
// int-ify posY of nextHitbox
nextHitbox!!.setPositionYFromPoint(FastMath.floor(nextHitbox!!.pointedY).toFloat())
nextHitbox.setPositionYFromPoint(FastMath.floor(nextHitbox.pointedY).toFloat())
var newYOff = 0 // always positive
@@ -326,14 +326,15 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
colliding = isColliding(CONTACT_AREA_BOTTOM, 0, -newYOff)
} while (colliding)
val newY = nextHitbox!!.pointedY - newYOff
nextHitbox!!.setPositionFromPoint(newX, newY)
posAdjustY = -newYOff
val newY = nextHitbox.pointedY - newYOff
nextHitbox.setPositionFromPoint(newX, newY)
}
private fun adjustHitTop() {
val newX = nextHitbox!!.posX
val newX = nextHitbox.posX
// int-ify posY of nextHitbox
nextHitbox!!.setPositionY(FastMath.ceil(nextHitbox!!.posY).toFloat())
nextHitbox.setPositionY(FastMath.ceil(nextHitbox.posY).toFloat())
var newYOff = 0 // always positive
@@ -344,8 +345,9 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
colliding = isColliding(CONTACT_AREA_TOP, 0, newYOff)
} while (colliding)
val newY = nextHitbox!!.posY + newYOff
nextHitbox!!.setPosition(newX, newY)
posAdjustY = newYOff
val newY = nextHitbox.posY + newYOff
nextHitbox.setPosition(newX, newY)
}
private fun updateHorizontalPos() {
@@ -354,10 +356,12 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
if (isColliding(CONTACT_AREA_RIGHT) && !isColliding(CONTACT_AREA_LEFT)) {
// the actor is embedded to the wall
adjustHitRight()
veloX = 0f // reset veloX, simulating normal force
elasticReflectX()
}
else if (isColliding(CONTACT_AREA_RIGHT, 1, 0) && !isColliding(CONTACT_AREA_LEFT, -1, 0)) {
else if (isColliding(CONTACT_AREA_RIGHT, 2, 0) && !isColliding(CONTACT_AREA_LEFT, 0, 0)) { // offset by +1, to fix directional quarks
// the actor is touching the wall
veloX = 0f // reset veloX, simulating normal force
elasticReflectX()
}
else {
@@ -368,10 +372,12 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
if (isColliding(CONTACT_AREA_LEFT) && !isColliding(CONTACT_AREA_RIGHT)) {
// the actor is embedded to the wall
adjustHitLeft()
veloX = 0f // reset veloX, simulating normal force
elasticReflectX()
}
else if (isColliding(CONTACT_AREA_LEFT, -1, 0) && !isColliding(CONTACT_AREA_RIGHT, 1, 0)) {
// the actor is touching the wall
veloX = 0f // reset veloX, simulating normal force
elasticReflectX()
}
else {
@@ -380,6 +386,7 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
else { // check both sides?
// System.out.println("updatehorizontal - |velo| < 0.5");
//if (isColliding(CONTACT_AREA_LEFT) || isColliding(CONTACT_AREA_RIGHT)) {
// veloX = 0f // reset veloX, simulating normal force
// elasticReflectX()
//}
}
@@ -387,9 +394,9 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
}
private fun adjustHitRight() {
val newY = nextHitbox!!.posY // look carefully, posY or pointedY
val newY = nextHitbox.posY // look carefully, posY or pointedY
// int-ify posY of nextHitbox
nextHitbox!!.setPositionX(FastMath.floor(nextHitbox!!.posX + nextHitbox!!.width) - nextHitbox!!.width)
nextHitbox.setPositionX(FastMath.floor(nextHitbox.posX + nextHitbox.width) - nextHitbox.width)
var newXOff = 0 // always positive
@@ -397,17 +404,17 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
var colliding: Boolean
do {
newXOff += 1
colliding = isColliding(CONTACT_AREA_BOTTOM, -newXOff, 0)
colliding = isColliding(CONTACT_AREA_BOTTOM, -newXOff + 1, 0) // offset by +1, to fix directional quarks
} while (newXOff < TSIZE && colliding)
val newX = nextHitbox!!.posX - newXOff -1 // -1: Q&D way to prevent the actor sticking to the wall and won't detach
nextHitbox!!.setPosition(newX, newY)
val newX = nextHitbox.posX - newXOff // -1: Q&D way to prevent the actor sticking to the wall and won't detach
nextHitbox.setPosition(newX, newY)
}
private fun adjustHitLeft() {
val newY = nextHitbox!!.posY
val newY = nextHitbox.posY
// int-ify posY of nextHitbox
nextHitbox!!.setPositionX(FastMath.ceil(nextHitbox!!.posX).toFloat())
nextHitbox.setPositionX(FastMath.ceil(nextHitbox.posX).toFloat())
var newXOff = 0 // always positive
@@ -418,44 +425,50 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
colliding = isColliding(CONTACT_AREA_TOP, newXOff, 0)
} while (newXOff < TSIZE && colliding)
val newX = nextHitbox!!.posX + newXOff +1 // +1: Q&D way to prevent the actor sticking to the wall and won't detach
nextHitbox!!.setPosition(newX, newY)
posAdjustX = newXOff
val newX = nextHitbox.posX + newXOff // +1: Q&D way to prevent the actor sticking to the wall and won't detach
nextHitbox.setPosition(newX, newY)
}
private fun elasticReflectX() {
if (veloX != 0f) veloX = -veloX * elasticity
if (veloX != 0f && (veloX * elasticity).abs() > 0.5) {
veloX = -veloX * elasticity
}
}
private fun elasticReflectY() {
if (veloY != 0f) veloY = -veloY * elasticity
if (veloY != 0f && (veloY * elasticity).abs() > 0.5) {
veloY = -veloY * elasticity
}
}
private fun isColliding(side: Int, tx: Int = 0, ty: Int = 0): Boolean = getContactingArea(side, tx, ty) > 1
private fun getContactingArea(side: Int, translateX: Int = 0, translateY: Int = 0): Int {
var contactAreaCounter = 0
for (i in 0..Math.round(if (side % 2 == 0) nextHitbox!!.width else nextHitbox!!.height) - 1) {
for (i in 0..(if (side % 2 == 0) nextHitbox.width else nextHitbox.height).roundToInt() - 1) {
// set tile positions
val tileX: Int
val tileY: Int
if (side == CONTACT_AREA_BOTTOM) {
tileX = div16TruncateToMapWidth(Math.round(nextHitbox!!.hitboxStart.x)
tileX = div16TruncateToMapWidth(nextHitbox.hitboxStart.x.roundToInt()
+ i + translateX)
tileY = div16TruncateToMapHeight(Math.round(nextHitbox!!.hitboxEnd.y) + translateY)
tileY = div16TruncateToMapHeight(nextHitbox.hitboxEnd.y.roundToInt() + translateY)
}
else if (side == CONTACT_AREA_TOP) {
tileX = div16TruncateToMapWidth(Math.round(nextHitbox!!.hitboxStart.x)
tileX = div16TruncateToMapWidth(nextHitbox.hitboxStart.x.roundToInt()
+ i + translateX)
tileY = div16TruncateToMapHeight(Math.round(nextHitbox!!.hitboxStart.y) + translateY)
tileY = div16TruncateToMapHeight(nextHitbox.hitboxStart.y.roundToInt() + translateY)
}
else if (side == CONTACT_AREA_RIGHT) {
tileX = div16TruncateToMapWidth(Math.round(nextHitbox!!.hitboxEnd.x) + translateX)
tileY = div16TruncateToMapHeight(Math.round(nextHitbox!!.hitboxStart.y)
tileX = div16TruncateToMapWidth(nextHitbox.hitboxEnd.x.roundToInt() + translateX)
tileY = div16TruncateToMapHeight(nextHitbox.hitboxStart.y.roundToInt()
+ i + translateY)
}
else if (side == CONTACT_AREA_LEFT) {
tileX = div16TruncateToMapWidth(Math.round(nextHitbox!!.hitboxStart.x) + translateX)
tileY = div16TruncateToMapHeight(Math.round(nextHitbox!!.hitboxStart.y)
tileX = div16TruncateToMapWidth(nextHitbox.hitboxStart.x.roundToInt() + translateX)
tileY = div16TruncateToMapHeight(nextHitbox.hitboxStart.y.roundToInt()
+ i + translateY)
}
else {
@@ -473,28 +486,28 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
private fun getContactingAreaFluid(side: Int, translateX: Int = 0, translateY: Int = 0): Int {
var contactAreaCounter = 0
for (i in 0..Math.round(if (side % 2 == 0) nextHitbox!!.width else nextHitbox!!.height) - 1) {
for (i in 0..(if (side % 2 == 0) nextHitbox.width else nextHitbox.height).roundToInt() - 1) {
// set tile positions
val tileX: Int
val tileY: Int
if (side == CONTACT_AREA_BOTTOM) {
tileX = div16TruncateToMapWidth(Math.round(nextHitbox!!.hitboxStart.x)
tileX = div16TruncateToMapWidth(nextHitbox.hitboxStart.x.roundToInt()
+ i + translateX)
tileY = div16TruncateToMapHeight(Math.round(nextHitbox!!.hitboxEnd.y) + translateY)
tileY = div16TruncateToMapHeight(nextHitbox.hitboxEnd.y.roundToInt() + translateY)
}
else if (side == CONTACT_AREA_TOP) {
tileX = div16TruncateToMapWidth(Math.round(nextHitbox!!.hitboxStart.x)
tileX = div16TruncateToMapWidth(nextHitbox.hitboxStart.x.roundToInt()
+ i + translateX)
tileY = div16TruncateToMapHeight(Math.round(nextHitbox!!.hitboxStart.y) + translateY)
tileY = div16TruncateToMapHeight(nextHitbox.hitboxStart.y.roundToInt() + translateY)
}
else if (side == CONTACT_AREA_RIGHT) {
tileX = div16TruncateToMapWidth(Math.round(nextHitbox!!.hitboxEnd.x) + translateX)
tileY = div16TruncateToMapHeight(Math.round(nextHitbox!!.hitboxStart.y)
tileX = div16TruncateToMapWidth(nextHitbox.hitboxEnd.x.roundToInt() + translateX)
tileY = div16TruncateToMapHeight(nextHitbox.hitboxStart.y.roundToInt()
+ i + translateY)
}
else if (side == CONTACT_AREA_LEFT) {
tileX = div16TruncateToMapWidth(Math.round(nextHitbox!!.hitboxStart.x) + translateX)
tileY = div16TruncateToMapHeight(Math.round(nextHitbox!!.hitboxStart.y)
tileX = div16TruncateToMapWidth(nextHitbox.hitboxStart.x.roundToInt() + translateX)
tileY = div16TruncateToMapHeight(nextHitbox.hitboxStart.y.roundToInt()
+ i + translateY)
}
else {
@@ -514,7 +527,7 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
* [N] = [kg * m / s^2]
* F(bo) = density * submerged_volume * gravitational_acceleration [N]
*/
private fun applyBuoyancy() {
/*private fun applyBuoyancy() {
val fluidDensity = tileDensity
val submergedVolume = submergedVolume
@@ -525,16 +538,16 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
* Math.pow(mass.toDouble(), -1.0)
* SI_TO_GAME_ACC.toDouble()).toFloat()
}
}
}*/
private val submergedVolume: Float
get() = submergedHeight * hitbox!!.width * hitbox!!.width
/*private val submergedVolume: Float
get() = submergedHeight * hitbox.width * hitbox.width
private val submergedHeight: Float
get() = Math.max(
getContactingAreaFluid(CONTACT_AREA_LEFT),
getContactingAreaFluid(CONTACT_AREA_RIGHT)
).toFloat()
).toFloat()*/
/**
@@ -546,9 +559,9 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
var friction = 0
//get highest fluid density
val tilePosXStart = Math.round(nextHitbox!!.posX / TSIZE)
val tilePosXEnd = Math.round(nextHitbox!!.hitboxEnd.x / TSIZE)
val tilePosY = Math.round(nextHitbox!!.pointedY / TSIZE)
val tilePosXStart = (nextHitbox.posX / TSIZE).roundToInt()
val tilePosXEnd = (nextHitbox.hitboxEnd.x / TSIZE).roundToInt()
val tilePosY = (nextHitbox.pointedY / TSIZE).roundToInt()
for (x in tilePosXStart..tilePosXEnd) {
val tile = map.getTileFromTerrain(x, tilePosY)
if (TilePropCodex.getProp(tile).isFluid) {
@@ -561,33 +574,6 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
return friction
}
/**
* Get highest movement resistance value from tiles that the body occupies.
* @return
*/
private val tileMvmtRstc: Int
get() {
var resistance = 0
//get highest fluid density
val tilePosXStart = Math.round(nextHitbox!!.posX / TSIZE)
val tilePosYStart = Math.round(nextHitbox!!.posY / TSIZE)
val tilePosXEnd = Math.round(nextHitbox!!.hitboxEnd.x / TSIZE)
val tilePosYEnd = Math.round(nextHitbox!!.hitboxEnd.y / TSIZE)
for (y in tilePosYStart..tilePosYEnd) {
for (x in tilePosXStart..tilePosXEnd) {
val tile = map.getTileFromTerrain(x, y)
if (TilePropCodex.getProp(tile).isFluid) {
val thisFluidDensity = TilePropCodex.getProp(tile).movementResistance
if (thisFluidDensity > resistance) resistance = thisFluidDensity
}
}
}
return resistance
}
/**
* Get highest density (specific gravity) value from tiles that the body occupies.
* @return
@@ -597,10 +583,10 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
var density = 0
//get highest fluid density
val tilePosXStart = Math.round(nextHitbox!!.posX / TSIZE)
val tilePosYStart = Math.round(nextHitbox!!.posY / TSIZE)
val tilePosXEnd = Math.round(nextHitbox!!.hitboxEnd.x / TSIZE)
val tilePosYEnd = Math.round(nextHitbox!!.hitboxEnd.y / TSIZE)
val tilePosXStart = (nextHitbox.posX / TSIZE).roundToInt()
val tilePosYStart = (nextHitbox.posY / TSIZE).roundToInt()
val tilePosXEnd = (nextHitbox.hitboxEnd.x / TSIZE).roundToInt()
val tilePosYEnd = (nextHitbox.hitboxEnd.y / TSIZE).roundToInt()
for (y in tilePosYStart..tilePosYEnd) {
for (x in tilePosXStart..tilePosXEnd) {
val tile = map.getTileFromTerrain(x, y)
@@ -620,55 +606,45 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
}
private fun clampHitbox() {
hitbox!!.setPositionFromPoint(
clampW(hitbox!!.pointedX), clampH(hitbox!!.pointedY))
hitbox.setPositionFromPoint(
clampW(hitbox.pointedX), clampH(hitbox.pointedY))
}
private fun clampNextHitbox() {
nextHitbox!!.setPositionFromPoint(
clampW(nextHitbox!!.pointedX), clampH(nextHitbox!!.pointedY))
nextHitbox.setPositionFromPoint(
clampW(nextHitbox.pointedX), clampH(nextHitbox.pointedY))
}
private fun updateNextHitboxFromVelo() {
val fluidResistance = mvmtRstcToMultiplier(tileMvmtRstc)
val submergedRatio = FastMath.clamp(
submergedHeight / nextHitbox!!.height,
0f, 1f
)
val applyResistance: Boolean = !isNoSubjectToFluidResistance
&& submergedRatio > FLUID_RESISTANCE_IGNORE_THRESHOLD_RATIO
val resistance: Float = FastMath.interpolateLinear(
submergedRatio,
1f, fluidResistance
)
nextHitbox!!.set(
Math.round(hitbox!!.posX + veloX * (if (!applyResistance) 1f else resistance)).toFloat()
, Math.round(hitbox!!.posY + veloY * (if (!applyResistance) 1f else resistance)).toFloat()
, Math.round(baseHitboxW * scale).toFloat()
, Math.round(baseHitboxH * scale).toFloat())
nextHitbox.set(
(hitbox.posX + veloX).round()
, (hitbox.posY + veloY).round()
, (baseHitboxW * scale).round()
, (baseHitboxH * scale).round()
)
/** Full quantisation; wonder what havoc these statements would wreak...
*/
}
private fun updateHitboxX() {
hitbox!!.setDimension(
nextHitbox!!.width, nextHitbox!!.height)
hitbox!!.setPositionX(nextHitbox!!.posX)
hitbox.setDimension(
nextHitbox.width, nextHitbox.height)
hitbox.setPositionX(nextHitbox.posX)
}
private fun updateHitboxY() {
hitbox!!.setDimension(
nextHitbox!!.width, nextHitbox!!.height)
hitbox!!.setPositionY(nextHitbox!!.posY)
hitbox.setDimension(
nextHitbox.width, nextHitbox.height)
hitbox.setPositionY(nextHitbox.posY)
}
override fun drawGlow(gc: GameContainer, g: Graphics) {
if (isVisible && spriteGlow != null) {
if (!sprite!!.flippedHorizontal()) {
spriteGlow!!.render(g, hitbox!!.posX - hitboxTranslateX * scale, hitbox!!.posY + hitboxTranslateY * scale - (baseSpriteHeight - baseHitboxH) * scale + 2, scale)
spriteGlow!!.render(g, hitbox.posX - hitboxTranslateX * scale, hitbox.posY + hitboxTranslateY * scale - (baseSpriteHeight - baseHitboxH) * scale + 2, scale)
} else {
spriteGlow!!.render(g, hitbox!!.posX - scale, hitbox!!.posY + hitboxTranslateY * scale - (baseSpriteHeight - baseHitboxH) * scale + 2, scale)
spriteGlow!!.render(g, hitbox.posX - scale, hitbox.posY + hitboxTranslateY * scale - (baseSpriteHeight - baseHitboxH) * scale + 2, scale)
}
}
}
@@ -676,9 +652,9 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
override fun drawBody(gc: GameContainer, g: Graphics) {
if (isVisible && sprite != null) {
if (!sprite!!.flippedHorizontal()) {
sprite!!.render(g, hitbox!!.posX - hitboxTranslateX * scale, hitbox!!.posY + hitboxTranslateY * scale - (baseSpriteHeight - baseHitboxH) * scale + 2, scale)
sprite!!.render(g, hitbox.posX - hitboxTranslateX * scale, hitbox.posY + hitboxTranslateY * scale - (baseSpriteHeight - baseHitboxH) * scale + 2, scale)
} else {
sprite!!.render(g, hitbox!!.posX - scale, hitbox!!.posY + hitboxTranslateY * scale - (baseSpriteHeight - baseHitboxH) * scale + 2, scale)
sprite!!.render(g, hitbox.posX - scale, hitbox.posY + hitboxTranslateY * scale - (baseSpriteHeight - baseHitboxH) * scale + 2, scale)
}
}
}
@@ -691,52 +667,46 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
if (sprite != null) sprite!!.update(delta)
}
private fun clampW(x: Float): Float {
if (x < TSIZE + nextHitbox!!.width / 2) {
return TSIZE + nextHitbox!!.width / 2
} else if (x >= (map.width * TSIZE).toFloat() - TSIZE.toFloat() - nextHitbox!!.width / 2) {
return (map.width * TSIZE).toFloat() - 1f - TSIZE.toFloat() - nextHitbox!!.width / 2
private fun clampW(x: Float): Float =
if (x < TSIZE + nextHitbox.width / 2) {
TSIZE + nextHitbox.width / 2
} else if (x >= (map.width * TSIZE).toFloat() - TSIZE.toFloat() - nextHitbox.width / 2) {
(map.width * TSIZE).toFloat() - 1f - TSIZE.toFloat() - nextHitbox.width / 2
} else {
return x
x
}
}
private fun clampH(y: Float): Float {
if (y < TSIZE + nextHitbox!!.height) {
return TSIZE + nextHitbox!!.height
} else if (y >= (map.height * TSIZE).toFloat() - TSIZE.toFloat() - nextHitbox!!.height) {
return (map.height * TSIZE).toFloat() - 1f - TSIZE.toFloat() - nextHitbox!!.height
private fun clampH(y: Float): Float =
if (y < TSIZE + nextHitbox.height) {
TSIZE + nextHitbox.height
} else if (y >= (map.height * TSIZE).toFloat() - TSIZE.toFloat() - nextHitbox.height) {
(map.height * TSIZE).toFloat() - 1f - TSIZE.toFloat() - nextHitbox.height
} else {
return y
y
}
}
private fun clampWtile(x: Int): Int {
private fun clampWtile(x: Int): Int =
if (x < 0) {
return 0
0
} else if (x >= map.width) {
return map.width - 1
map.width - 1
} else {
return x
x
}
}
private fun clampHtile(x: Int): Int {
private fun clampHtile(x: Int): Int =
if (x < 0) {
return 0
0
} else if (x >= map.height) {
return map.height - 1
map.height - 1
} else {
return x
x
}
}
private val isPlayerNoClip: Boolean
get() = this is Player && this.isNoClip()
private fun quantiseTSize(v: Float): Int {
return FastMath.floor(v / TSIZE) * TSIZE
}
private fun quantiseTSize(v: Float): Int = FastMath.floor(v / TSIZE) * TSIZE
fun setDensity(density: Int) {
if (density < 0)
@@ -745,6 +715,10 @@ open class ActorWithBody constructor() : Actor, Visible, Glowing {
this.density = density.toFloat()
}
fun Float.round() = Math.round(this).toFloat()
fun Float.roundToInt(): Int = Math.round(this)
fun Float.abs() = FastMath.abs(this)
companion object {
@Transient private val TSIZE = MapDrawer.TILE_SIZE

View File

@@ -1,6 +1,6 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import com.torvald.terrarum.gameitem.InventoryItem
import net.torvald.terrarum.gameitem.InventoryItem
/**
* Created by minjaesong on 16-03-14.

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import org.newdawn.slick.Input

View File

@@ -1,9 +1,9 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import com.torvald.JsonFetcher
import com.torvald.random.Fudge3
import com.torvald.random.HQRNG
import com.torvald.terrarum.langpack.Lang
import net.torvald.JsonFetcher
import net.torvald.random.Fudge3
import net.torvald.random.HQRNG
import net.torvald.terrarum.langpack.Lang
import com.google.gson.JsonObject
import org.newdawn.slick.SlickException
import java.io.IOException

View File

@@ -1,8 +1,8 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import com.torvald.JsonFetcher
import com.torvald.random.Fudge3
import com.torvald.terrarum.langpack.Lang
import net.torvald.JsonFetcher
import net.torvald.random.Fudge3
import net.torvald.terrarum.langpack.Lang
import com.google.gson.JsonObject
import org.newdawn.slick.SlickException
import java.io.IOException

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import org.newdawn.slick.GameContainer
import org.newdawn.slick.Graphics

View File

@@ -1,6 +1,6 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import com.torvald.terrarum.gameactors.faction.Faction
import net.torvald.terrarum.gameactors.faction.Faction
import java.util.*
/**

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import org.newdawn.slick.GameContainer
import org.newdawn.slick.Graphics

View File

@@ -1,6 +1,6 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import com.torvald.point.Point2f
import net.torvald.point.Point2f
/**
* Created by minjaesong on 16-01-15.

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import java.util.*

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
/**
* Created by minjaesong on 16-03-14.

View File

@@ -1,10 +1,10 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import com.torvald.random.HQRNG
import com.torvald.terrarum.gameactors.ai.ActorAI
import com.torvald.terrarum.gameactors.faction.Faction
import com.torvald.terrarum.gameitem.InventoryItem
import com.torvald.terrarum.Terrarum
import net.torvald.random.HQRNG
import net.torvald.terrarum.gameactors.ai.ActorAI
import net.torvald.terrarum.gameactors.faction.Faction
import net.torvald.terrarum.gameitem.InventoryItem
import net.torvald.terrarum.Terrarum
import org.newdawn.slick.GameContainer
import java.util.*

View File

@@ -1,7 +1,7 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import com.torvald.spriteanimation.SpriteAnimation
import com.torvald.terrarum.mapdrawer.MapDrawer
import net.torvald.spriteanimation.SpriteAnimation
import net.torvald.terrarum.mapdrawer.MapDrawer
/**
* Created by minjaesong on 16-03-25.

View File

@@ -1,11 +1,11 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import com.torvald.JsonFetcher
import com.torvald.terrarum.gameactors.faction.Faction
import com.torvald.spriteanimation.SpriteAnimation
import net.torvald.JsonFetcher
import net.torvald.terrarum.gameactors.faction.Faction
import net.torvald.spriteanimation.SpriteAnimation
import com.google.gson.JsonObject
import com.torvald.terrarum.gameactors.faction.FactionFactory
import com.torvald.terrarum.mapdrawer.MapDrawer
import net.torvald.terrarum.gameactors.faction.FactionFactory
import net.torvald.terrarum.mapdrawer.MapDrawer
import org.newdawn.slick.SlickException
import java.io.IOException

View File

@@ -1,6 +1,6 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import com.torvald.terrarum.mapgenerator.RoguelikeRandomiser
import net.torvald.terrarum.mapgenerator.RoguelikeRandomiser
import org.newdawn.slick.Color
import org.newdawn.slick.GameContainer
import org.newdawn.slick.Graphics

View File

@@ -1,11 +1,11 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import com.torvald.terrarum.gameactors.faction.Faction
import com.torvald.terrarum.gamecontroller.EnumKeyFunc
import com.torvald.terrarum.gamecontroller.KeyMap
import com.torvald.terrarum.mapdrawer.MapDrawer
import com.torvald.terrarum.Terrarum
import com.torvald.spriteanimation.SpriteAnimation
import net.torvald.terrarum.gameactors.faction.Faction
import net.torvald.terrarum.gamecontroller.EnumKeyFunc
import net.torvald.terrarum.gamecontroller.KeyMap
import net.torvald.terrarum.mapdrawer.MapDrawer
import net.torvald.terrarum.Terrarum
import net.torvald.spriteanimation.SpriteAnimation
import com.jme3.math.FastMath
import org.lwjgl.input.Controller
import org.lwjgl.input.Controllers

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import org.newdawn.slick.SlickException
import java.io.IOException

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
/**
* Created by minjaesong on 16-03-14.

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gameactors
package net.torvald.terrarum.gameactors
import org.newdawn.slick.GameContainer
import org.newdawn.slick.Graphics

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gameactors.ai
package net.torvald.terrarum.gameactors.ai
/**
* Created by minjaesong on 16-03-14.

View File

@@ -1,6 +1,6 @@
package com.torvald.terrarum.gameactors.faction
package net.torvald.terrarum.gameactors.faction
import com.torvald.random.HQRNG
import net.torvald.random.HQRNG
import java.util.HashSet
/**

View File

@@ -1,6 +1,6 @@
package com.torvald.terrarum.gameactors.faction
package net.torvald.terrarum.gameactors.faction
import com.torvald.JsonFetcher
import net.torvald.JsonFetcher
import com.google.gson.JsonObject
import java.io.IOException

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gameactors.scheduler
package net.torvald.terrarum.gameactors.scheduler
/**
* Ultima-like NPC scheduler

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gamecontroller
package net.torvald.terrarum.gamecontroller
/**
* Created by minjaesong on 15-12-31.

View File

@@ -1,13 +1,13 @@
package com.torvald.terrarum.gamecontroller
package net.torvald.terrarum.gamecontroller
import com.torvald.terrarum.gameactors.Controllable
import com.torvald.terrarum.gameactors.Player
import com.torvald.terrarum.mapdrawer.MapCamera
import com.torvald.terrarum.mapdrawer.MapDrawer
import com.torvald.terrarum.Terrarum
import com.torvald.terrarum.tileproperties.TileNameCode
import com.torvald.terrarum.tileproperties.TilePropCodex
import com.torvald.terrarum.ui.UIHandler
import net.torvald.terrarum.gameactors.Controllable
import net.torvald.terrarum.gameactors.Player
import net.torvald.terrarum.mapdrawer.MapCamera
import net.torvald.terrarum.mapdrawer.MapDrawer
import net.torvald.terrarum.Terrarum
import net.torvald.terrarum.tileproperties.TileNameCode
import net.torvald.terrarum.tileproperties.TilePropCodex
import net.torvald.terrarum.ui.UIHandler
import org.newdawn.slick.Input
/**

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gamecontroller
package net.torvald.terrarum.gamecontroller
/**
* Created by minjaesong on 16-01-15.

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gamecontroller
package net.torvald.terrarum.gamecontroller
import java.util.Hashtable

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gamecontroller
package net.torvald.terrarum.gamecontroller
import org.newdawn.slick.GameContainer
import org.newdawn.slick.Input

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gameitem
package net.torvald.terrarum.gameitem
import org.newdawn.slick.GameContainer

View File

@@ -1,6 +1,6 @@
package com.torvald.terrarum.gameitem
package net.torvald.terrarum.gameitem
import com.torvald.terrarum.tileproperties.TilePropCodex
import net.torvald.terrarum.tileproperties.TilePropCodex
import org.newdawn.slick.GameContainer
/**

View File

@@ -1,5 +1,5 @@
package com.torvald.terrarum.gamemap
package net.torvald.terrarum.gamemap
import org.newdawn.slick.SlickException

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gamemap
package net.torvald.terrarum.gamemap
/**
* Created by minjaesong on 16-01-17.

View File

@@ -1,6 +1,6 @@
package com.torvald.terrarum.gamemap
package net.torvald.terrarum.gamemap
import com.torvald.point.Point2f
import net.torvald.point.Point2f
import java.io.Serializable

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gamemap
package net.torvald.terrarum.gamemap
import java.io.Serializable
import java.util.Spliterator

View File

@@ -1,4 +1,4 @@
package com.torvald.terrarum.gamemap
package net.torvald.terrarum.gamemap
/**
* Created by minjaesong on 16-01-24.

Some files were not shown because too many files have changed in this diff Show More