Skip to content

Commit

Permalink
feat: extra codecs
Browse files Browse the repository at this point in the history
  • Loading branch information
andantet committed Jan 12, 2025
1 parent 3d01e69 commit 76356b8
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 8 deletions.
14 changes: 7 additions & 7 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,18 @@ org.gradle.jvmargs=-Xmx1G
org.gradle.parallel=true

# minecraft
minecraft_version=1.21.3
minecraft_version=1.21.4

# fabric
yarn_build=2
loader_version=0.16.9
fabric_version=0.109.0+1.21.3
yarn_build=8
loader_version=0.16.10
fabric_version=0.114.2+1.21.4

# kotlin
kotlin_version=2.0.21
fabric_kotlin_version=1.12.3
kotlin_version=2.1.0
fabric_kotlin_version=1.13.0

# mod properties
mod_version=1.0
mod_version=1.1
maven_group=net.mcbrawls
mod_id=codex
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.11-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-bin.zip
networkTimeout=10000
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
26 changes: 26 additions & 0 deletions src/main/kotlin/dev/andante/codex/ExtraCodecs.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package dev.andante.codex

import com.mojang.serialization.Codec
import net.minecraft.util.math.Vec2f
import org.joml.Vector2f
import org.joml.Vector3d
import kotlin.time.Duration

object ExtraCodecs {
val VECTOR_3D: Codec<Vector3d> = Codec.DOUBLE.listOf().xmap(
{ list -> Vector3d(list[0], list[1], list[2]) },
{ vect -> listOf(vect.x, vect.y, vect.z) }
)

val VECTOR_2F: Codec<Vector2f> = Codec.FLOAT.listOf().xmap(
{ list -> Vector2f(list[0], list[1]) },
{ vect -> listOf(vect.x, vect.y) }
)

val VEC_2F: Codec<Vec2f> = VECTOR_2F.xmap(
{ vector -> Vec2f(vector.x, vector.y) },
{ vec -> Vector2f(vec.x, vec.y) }
)

val DURATION: Codec<Duration> = Codec.STRING.xmap(Duration::parse, Duration::toString)
}

0 comments on commit 76356b8

Please sign in to comment.