mirror of
https://github.com/curioustorvald/Terrarum.git
synced 2026-06-17 14:04:05 +09:00
more pictogrammes
Former-commit-id: 670df70bbed466e56034dbdd33d7a1da31cd88d7 Former-commit-id: 2b106753155be6080d4651acca1981f10d614421
This commit is contained in:
@@ -29,7 +29,7 @@ abstract class Actor : Comparable<Actor>, Runnable {
|
||||
"ID: ${hashCode()} (${actorValue.getAsString(AVKey.NAME)})"
|
||||
override fun compareTo(other: Actor): Int = (this.referenceID - other.referenceID).sign()
|
||||
|
||||
fun Int.sign(): Int = if (this > 0) 1 else if (this < 0) -1 else this
|
||||
fun Int.sign(): Int = if (this > 0) 1 else if (this < 0) -1 else 0
|
||||
|
||||
/**
|
||||
* Usage:
|
||||
|
||||
@@ -769,7 +769,7 @@ open class ActorWithBody : Actor(), Visible {
|
||||
Hitbox(nextHitbox.posX, nextHitbox.posY,
|
||||
nextHitbox.width + 2.0, nextHitbox.height + 2.0)
|
||||
// when not walking, enlarge the hitbox for calculation so that
|
||||
// feet tiles are to be taken into calculation
|
||||
// feet tiles are also counted
|
||||
else
|
||||
nextHitbox.clone()
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ import java.security.SecureRandom
|
||||
*/
|
||||
object CreatureRawInjector {
|
||||
|
||||
const val JSONPATH = "./res/raw/creatures/"
|
||||
const val JSONPATH = "./assets/raw/creatures/"
|
||||
private const val MULTIPLIER_RAW_ELEM_SUFFIX = AVKey.MULT
|
||||
|
||||
/**
|
||||
@@ -26,12 +26,14 @@ object CreatureRawInjector {
|
||||
fun inject(actorValueRef: ActorValue, jsonFileName: String) {
|
||||
val jsonObj = JsonFetcher(JSONPATH + jsonFileName)
|
||||
|
||||
val elementsInt = arrayOf(AVKey.BASEHEIGHT, AVKey.TOOLSIZE, AVKey.ENCUMBRANCE)
|
||||
val elementsString = arrayOf(AVKey.RACENAME, AVKey.RACENAMEPLURAL)
|
||||
val elementsDouble = arrayOf(AVKey.BASEHEIGHT, AVKey.BASEMASS, AVKey.ACCEL, AVKey.TOOLSIZE, AVKey.ENCUMBRANCE)
|
||||
val elementsDoubleVariable = arrayOf(AVKey.STRENGTH, AVKey.SPEED, AVKey.JUMPPOWER, AVKey.SCALE, AVKey.SPEED)
|
||||
val elementsDouble = arrayOf(AVKey.BASEMASS, AVKey.ACCEL)
|
||||
val elementsDoubleVariable = arrayOf(AVKey.STRENGTH, AVKey.SPEED, AVKey.JUMPPOWER, AVKey.SCALE)
|
||||
val elementsBoolean = arrayOf(AVKey.INTELLIGENT)
|
||||
// val elementsMultiplyFromOne = arrayOf()
|
||||
|
||||
setAVInts(actorValueRef, elementsInt, jsonObj)
|
||||
setAVStrings(actorValueRef, elementsString, jsonObj)
|
||||
setAVDoubles(actorValueRef, elementsDouble, jsonObj)
|
||||
setAVDoublesVariable(actorValueRef, elementsDoubleVariable, jsonObj)
|
||||
@@ -93,6 +95,20 @@ object CreatureRawInjector {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Fetch and set int actor values
|
||||
* @param avRef
|
||||
* *
|
||||
* @param elemSet
|
||||
* *
|
||||
* @param jsonObject
|
||||
*/
|
||||
private fun setAVInts(avRef: ActorValue, elemSet: Array<String>, jsonObject: JsonObject) {
|
||||
for (s in elemSet) {
|
||||
avRef[s] = jsonObject.get(s).asInt
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Fetch and set actor values that should multiplier be applied to the base value of 1.
|
||||
* E.g. physiquemult
|
||||
|
||||
@@ -12,8 +12,10 @@ object PBCynthia {
|
||||
val p: Player = Player()
|
||||
CreatureRawInjector.inject(p.actorValue, "CreatureHuman.json")
|
||||
|
||||
p.actorValue[AVKey._PLAYER_QUICKBARSEL] = 0
|
||||
p.actorValue["selectedtile"] = 16
|
||||
|
||||
|
||||
p.sprite = SpriteAnimation()
|
||||
p.sprite!!.setDimension(26, 42)
|
||||
p.sprite!!.setSpriteImage("assets/graphics/sprites/test_player_2.png")
|
||||
|
||||
@@ -59,7 +59,6 @@ object PBSigrid {
|
||||
p.actorValue[AVKey.BASEDEFENCE] = 141
|
||||
|
||||
p.actorValue["selectedtile"] = 16
|
||||
p.actorValue[AVKey._PLAYER_QUICKBARSEL] = 0
|
||||
|
||||
p.setHitboxDimension(15, p.actorValue.getAsInt(AVKey.BASEHEIGHT)!!, 10, 0)
|
||||
|
||||
|
||||
@@ -172,14 +172,14 @@ class Player : ActorWithBody(), Controllable, Pocketed, Factionable, Luminous, L
|
||||
|
||||
walkCounterX += 1
|
||||
|
||||
// Heading flag
|
||||
if (left)
|
||||
walkHeading = LEFT
|
||||
else
|
||||
walkHeading = RIGHT
|
||||
|
||||
isWalkingH = true
|
||||
}
|
||||
|
||||
// Heading flag
|
||||
if (left)
|
||||
walkHeading = LEFT
|
||||
else
|
||||
walkHeading = RIGHT
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user