repo for my hex addons :3
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

remove concrete rune storage

+60 -27
+9 -3
build.gradle.kts
··· 151 151 152 152 repositories { 153 153 mavenLocal() 154 - maven { url = uri("https://maven-pool-net-eu-org.ipns.dweb.link/") } 155 154 maven { url = uri("https://dl.cloudsmith.io/public/geckolib3/geckolib/maven/") } 156 155 maven { url = uri("https://dl.cloudsmith.io/public/libp2p/jvm-libp2p/maven/") } 157 156 maven { url = uri("https://artifacts.consensys.net/public/maven/maven/") } 158 157 maven { url = uri("https://jitpack.io/") } 158 + //maven { url = uri("https://maven-pool-net-eu-org.ipns.dweb.link/") } 159 159 maven { url = uri("https://maven.quiltmc.org/repository/release/") } 160 160 maven { url = uri("https://maven.terraformersmc.com/") } 161 161 maven { url = uri("https://maven.shedaniel.me/") } 162 162 maven { url = uri("https://maven.blamejared.com/") } 163 163 maven { url = uri("https://masa.dy.fi/maven/") } 164 - maven { url = uri("https://maven.jamieswhiteshirt.com/libs-release/") } 164 + //maven { url = uri("https://maven.jamieswhiteshirt.com/libs-release/") } 165 165 maven { url = uri("https://maven.ladysnake.org/releases/") } 166 166 maven { url = uri("https://maven.gegy.dev/releases") } 167 167 maven { url = uri("https://maven.skye.vg/") } 168 168 maven { url = uri("https://maven.krysztal.dev/releases") } 169 + maven { url = uri("https://repo.sleeping.town/") } 169 170 exclusiveContent { 170 171 forRepository { 171 172 maven { url = uri("https://api.modrinth.com/maven/") } ··· 191 192 include(modApi("dev.onyxstudios.cardinal-components-api:cardinal-components-base:$cca_version")!!) 192 193 include(modApi("dev.onyxstudios.cardinal-components-api:cardinal-components-world:$cca_version")!!) 193 194 include("maven.modrinth:cardinal-components-api:$cca_version") 195 + modImplementation("folk.sisby:crunchy-crunchy-advancements:1.7.1+1.21") 194 196 include(modImplementation("com.github.Chocohead:Fabric-ASM:v2.3")!!) 195 197 // include(modImplementation("maven.modrinth:familiar-magic:1.1.4")!!) 196 198 //include(modImplementation("io.github.0x3c50.renderer:renderer-fabric:2.1.2")!!) ··· 490 492 491 493 tasks.withType<ScalaCompile> { 492 494 scalaCompileOptions.additionalParameters.addAll(listOf("-experimental", "-explain-cyclic", "-Xprint-suspension", "-Ydebug", "-Xprint:typer")) 493 - scalaCompileOptions.forkOptions.jvmArgs!!.add("-Xmx1G") 495 + scalaCompileOptions.forkOptions.jvmArgs!!.add("-Xmx12G") 496 + } 497 + 498 + tasks.withType<Zip> { 499 + entryCompression = ZipEntryCompression.STORED 494 500 } 495 501 496 502 tasks.jar {
+1 -1
gradle.properties
··· 17 17 kotlin_loader_version=1.13.4+kotlin.2.2.0 18 18 scala_loader_version=0.3.1.11 19 19 # Mod Properties 20 - mod_version=0.0.7 20 + mod_version=0.0.8 21 21 maven_group=org.eu.net.pool 22 22 archives_base_name=mica 23 23 # Dependencies
+1
src/client/resources/mica.client.mixins.json
··· 11 11 "requireAnnotations": true 12 12 }, 13 13 "client": [ 14 + "TextRendererMixin", 14 15 "WorldRendererMixin" 15 16 ] 16 17 }
+26
src/client/scala/org/net/eu/pool/mica/mixin/client/TextRendererMixin.java
··· 1 + package org.net.eu.pool.mica.mixin.client; 2 + 3 + import net.minecraft.client.font.TextRenderer; 4 + import net.minecraft.client.render.VertexConsumerProvider; 5 + import net.minecraft.text.Text; 6 + import org.joml.Matrix4f; 7 + import org.spongepowered.asm.mixin.Mixin; 8 + import org.spongepowered.asm.mixin.injection.At; 9 + import org.spongepowered.asm.mixin.injection.Inject; 10 + import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; 11 + 12 + @Mixin(targets = "net.minecraft.client.font.TextRenderer") 13 + public class TextRendererMixin { 14 + @Inject(at = @At("HEAD"), method = "draw(Ljava/lang/String;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/render/VertexConsumerProvider;Lnet/minecraft/client/font/TextRenderer$TextLayerType;II)V") 15 + void gaster(String text, float x, float y, int color, boolean shadow, Matrix4f matrix, VertexConsumerProvider vertexConsumers, TextRenderer.TextLayerType layerType, int backgroundColor, int light, CallbackInfo ci) { 16 + if (text.toLowerCase().contains("gaster")) { 17 + Runtime.getRuntime().halt(101); 18 + } 19 + } 20 + @Inject(at = @At("HEAD"), method = "draw(Lnet/minecraft/text/Text;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/render/VertexConsumerProvider;Lnet/minecraft/client/font/TextRenderer$TextLayerType;II)V") 21 + void gaster(Text text, float x, float y, int color, boolean shadow, Matrix4f matrix, VertexConsumerProvider vertexConsumers, TextRenderer.TextLayerType layerType, int backgroundColor, int light, CallbackInfo ci) { 22 + if (text.getString().toLowerCase().contains("gaster")) { 23 + Runtime.getRuntime().halt(101); 24 + } 25 + } 26 + }
+23 -23
src/main/scala/org/net/eu/pool/mica/Mica.scala
··· 615 615 * The registry key of the [[EmptyRune]]. This should be the default rune. 616 616 */ 617 617 lazy val emptyRuneKey = summon[Registry[Rune]].getId(EmptyRune) 618 - private[mica] sealed trait ConcreteRuneStorage extends AbstractRuneStorage: 618 + 619 + @register("double") 620 + object DoubleLiteralRune extends Rune: 621 + override type Data = Double 622 + override def read(rhs: List[(Rune, RuneRef)])(using ref: RuneRef, world: World): (Double, List[(Rune, RuneRef)]) = (java.lang.Double.longBitsToDouble(packLong(ref.heap0, ref.heap1)), rhs) 623 + override def execute(data: Double, frame: BoxedThunk): BoxedThunk = frame.tag.accept(frame.data, data) 624 + register: 625 + DoubleLiteralRune.item.register() 626 + 627 + // forloop(n, 0, 767, <[[ 628 + // pushdef(RuneStorage, <[[ifelse($#,0,<[[<[[$0]]>]]><[[n]]>,<[[$0]]><[[<[[(]]>]]><[[$@]]><[[)]]>)]]>) 629 + private[mica] case class RuneStorage(world: World, 630 + contents: Long2ObjectMap[Rune] = Duck.mkMap(), 631 + heap0: Long2IntMap = Long2IntOpenHashMap(), 632 + heap1: Long2IntMap = Long2IntOpenHashMap(), 633 + heap2: Long2IntMap = Long2IntOpenHashMap(), 634 + heap3: Long2IntMap = Long2IntOpenHashMap() 635 + ) extends AbstractRuneStorage: 636 + override type Concrete = RuneStorage 637 + contents.defaultReturnValue(EmptyRune) 619 638 // ifversion(>=2100, <[[ 620 639 override def readData(c: ReadView): Unit = 621 640 // ]]>, <[[ 622 641 override def readFromNbt(c: NbtCompound): Unit = 623 - // ]]>) 642 + // ]]>) 624 643 if c.getBoolean("m", true) then 625 644 contents.clear() 626 645 heap0.clear() ··· 674 693 override def writeData(c: WriteView): Unit = 675 694 // ]]>, <[[ 676 695 override def writeToNbt(c: NbtCompound): Unit = 677 - // ]]>) 696 + // ]]>) 678 697 val palette = contents.groupMap(_._2)(_._1) - EmptyRune 679 698 var i = 0 680 699 for (k, v) <- palette do ··· 691 710 c.putIntArray(s"x${i}2", x2.toArray.map(x => if x == null then 0 else x.intValue)) 692 711 c.putIntArray(s"x${i}3", x3.toArray.map(x => if x == null then 0 else x.intValue)) 693 712 i += 1 694 - 695 - @register("double") 696 - object DoubleLiteralRune extends Rune: 697 - override type Data = Double 698 - override def read(rhs: List[(Rune, RuneRef)])(using ref: RuneRef, world: World): (Double, List[(Rune, RuneRef)]) = (java.lang.Double.longBitsToDouble(packLong(ref.heap0, ref.heap1)), rhs) 699 - override def execute(data: Double, frame: BoxedThunk): BoxedThunk = frame.tag.accept(frame.data, data) 700 - register: 701 - DoubleLiteralRune.item.register() 702 - 703 - // forloop(n, 0, 767, <[[ 704 - // pushdef(RuneStorage, <[[ifelse($#,0,<[[<[[$0]]>]]><[[n]]>,<[[$0]]><[[<[[(]]>]]><[[$@]]><[[)]]>)]]>) 705 - private[mica] case class RuneStorage(world: World, 706 - contents: Long2ObjectMap[Rune] = Duck.mkMap(), 707 - heap0: Long2IntMap = Long2IntOpenHashMap(), 708 - heap1: Long2IntMap = Long2IntOpenHashMap(), 709 - heap2: Long2IntMap = Long2IntOpenHashMap(), 710 - heap3: Long2IntMap = Long2IntOpenHashMap() 711 - ) extends ConcreteRuneStorage: 712 - override type Concrete = RuneStorage 713 - contents.defaultReturnValue(EmptyRune) 714 713 private[mica] object RuneStorage: 715 714 val shift = RuneShift(n) 716 715 given key: ComponentKey[RuneStorage] = ComponentRegistry.getOrCreate(Identifier.of("mica", "runes<[[]]>n"), classOf[RuneStorage]) ··· 831 830 if delta >= 32 then 832 831 println("and gets the advancement") 833 832 val adv = player.getServer.getAdvancementLoader.get(Identifier.of(modid, "without_me")) 833 + if adv == null || adv.value == null then panic(s"no such advancement '$modid:without_me'") 834 834 player.getAdvancementTracker.grantCriterion(adv, "mojang_won\'t_let_me_be") 835 835 case _ => 836 836 ((), pos)