Initial Shimmer Colored Lighting Integration
This commit is contained in:
@@ -25,6 +25,7 @@ minecraft {
|
||||
dependencies {
|
||||
compileOnly group:'org.spongepowered', name:'mixin', version:'0.8.5'
|
||||
compileOnly("me.hypherionmc.craterlib:CraterLib-common-1.19.1:${craterlib_version}")
|
||||
compileOnly("com.lowdragmc.shimmer:Shimmer-common-1.19.1:${shimmer_version}")
|
||||
}
|
||||
|
||||
processResources {
|
||||
|
@@ -7,6 +7,7 @@ import me.hypherionmc.craterlib.events.CraterEventBus;
|
||||
import me.hypherionmc.craterlib.platform.Services;
|
||||
import me.hypherionmc.hyperlighting.common.init.HLBlocks;
|
||||
import me.hypherionmc.hyperlighting.common.init.HLItems;
|
||||
import me.hypherionmc.hyperlighting.integration.HyperLightingIntegrations;
|
||||
import net.minecraft.client.renderer.ItemBlockRenderTypes;
|
||||
|
||||
/**
|
||||
@@ -17,6 +18,7 @@ public class ClientRegistration {
|
||||
|
||||
public void registerAll() {
|
||||
Services.CLIENT_HELPER.registerCustomRenderTypes(HLBlocks.BLOCKS.getEntries(), HLItems.ITEMS.getEntries());
|
||||
HyperLightingIntegrations.registerClient();
|
||||
}
|
||||
|
||||
public void registerEvents() {
|
||||
|
@@ -2,6 +2,7 @@ package me.hypherionmc.hyperlighting.common.init;
|
||||
|
||||
import me.hypherionmc.craterlib.client.gui.tabs.CreativeTabBuilder;
|
||||
import me.hypherionmc.hyperlighting.common.config.HyperLightingConfig;
|
||||
import me.hypherionmc.hyperlighting.integration.HyperLightingIntegrations;
|
||||
import net.minecraft.world.item.CreativeModeTab;
|
||||
import net.minecraft.world.item.ItemStack;
|
||||
|
||||
@@ -18,6 +19,7 @@ public class CommonRegistration {
|
||||
HLBlocks.loadAll();
|
||||
HLItems.loadAll();
|
||||
HLEntities.loadAll();
|
||||
HyperLightingIntegrations.registerCommon();
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -0,0 +1,22 @@
|
||||
package me.hypherionmc.hyperlighting.integration;
|
||||
|
||||
import me.hypherionmc.craterlib.platform.Services;
|
||||
import me.hypherionmc.hyperlighting.integration.shimmer.HyperLightingShimmer;
|
||||
|
||||
/**
|
||||
* @author HypherionSA
|
||||
* @date 07/08/2022
|
||||
*/
|
||||
public class HyperLightingIntegrations {
|
||||
|
||||
public static void registerCommon() {
|
||||
|
||||
}
|
||||
|
||||
public static void registerClient() {
|
||||
if (Services.PLATFORM.isModLoaded("shimmer")) {
|
||||
HyperLightingShimmer.registerAll();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
@@ -0,0 +1,46 @@
|
||||
package me.hypherionmc.hyperlighting.integration.shimmer;
|
||||
|
||||
import com.lowdragmc.shimmer.client.light.ColorPointLight;
|
||||
import com.lowdragmc.shimmer.client.light.LightManager;
|
||||
import me.hypherionmc.craterlib.common.item.BlockItemDyable;
|
||||
import me.hypherionmc.craterlib.util.RenderUtils;
|
||||
import me.hypherionmc.hyperlighting.common.blocks.AdvancedLanternBlock;
|
||||
import me.hypherionmc.hyperlighting.common.blocks.AdvancedTorchBlock;
|
||||
import me.hypherionmc.hyperlighting.common.init.HLBlocks;
|
||||
import net.minecraft.world.item.DyeColor;
|
||||
|
||||
/**
|
||||
* @author HypherionSA
|
||||
* @date 07/08/2022
|
||||
*/
|
||||
public class HyperLightingShimmer {
|
||||
|
||||
public static void registerAll() {
|
||||
registerBlocks();
|
||||
registerItems();
|
||||
}
|
||||
|
||||
private static void registerItems() {
|
||||
LightManager.INSTANCE.registerItemLight(HLBlocks.ADVANCED_TORCH.asItem(), stack -> new ColorPointLight.Template(stack.getCount() / 10 + 6, RenderUtils.alphaColorFromDye(((BlockItemDyable)stack.getItem()).getColor(stack), 1f)));
|
||||
LightManager.INSTANCE.registerItemLight(HLBlocks.ADVANCED_LANTERN.asItem(), stack -> new ColorPointLight.Template(stack.getCount() / 10 + 6, RenderUtils.alphaColorFromDye(((BlockItemDyable)stack.getItem()).getColor(stack), 1f)));
|
||||
}
|
||||
|
||||
private static void registerBlocks() {
|
||||
LightManager.INSTANCE.registerBlockLight(HLBlocks.ADVANCED_TORCH.get(), (state, blockPos) -> {
|
||||
if (state.getValue(AdvancedTorchBlock.LIT)) {
|
||||
DyeColor color = state.getValue(AdvancedTorchBlock.COLOR);
|
||||
return new ColorPointLight.Template(10, RenderUtils.alphaColorFromDye(color, 1f));
|
||||
}
|
||||
return null;
|
||||
});
|
||||
|
||||
LightManager.INSTANCE.registerBlockLight(HLBlocks.ADVANCED_LANTERN.get(), (state, blockPos) -> {
|
||||
if (state.getValue(AdvancedLanternBlock.LIT)) {
|
||||
DyeColor color = state.getValue(AdvancedLanternBlock.COLOR);
|
||||
return new ColorPointLight.Template(10, RenderUtils.alphaColorFromDye(color, 1f));
|
||||
}
|
||||
return null;
|
||||
});
|
||||
}
|
||||
|
||||
}
|
@@ -20,6 +20,18 @@ dependencies {
|
||||
modApi("com.terraformersmc:modmenu:${mod_menu_version}") {
|
||||
exclude(group: "net.fabricmc.fabric-api")
|
||||
}
|
||||
|
||||
// Sodium
|
||||
modImplementation ("curse.maven:sodium-394468:${sodium_version}") {
|
||||
exclude(group: "net.fabricmc.fabric-api")
|
||||
}
|
||||
// This is a dependency of Sodium....
|
||||
implementation 'org.joml:joml:1.10.4'
|
||||
|
||||
// Shimmer
|
||||
modImplementation ("com.lowdragmc.shimmer:Shimmer-fabric-1.19.1:${shimmer_version}") {
|
||||
exclude(group: "net.fabricmc.fabric-api")
|
||||
}
|
||||
}
|
||||
|
||||
loom {
|
||||
|
@@ -84,6 +84,12 @@ dependencies {
|
||||
compileOnly project(":Common")
|
||||
annotationProcessor 'org.spongepowered:mixin:0.8.4-SNAPSHOT:processor'
|
||||
implementation fg.deobf("me.hypherionmc.craterlib:CraterLib-forge-1.19.1:${craterlib_version}")
|
||||
|
||||
// Rubidium
|
||||
implementation fg.deobf("curse.maven:rubidium-574856:${ribidium_version}")
|
||||
|
||||
// Shimmer
|
||||
implementation fg.deobf("com.lowdragmc.shimmer:Shimmer-forge-1.19.1:${shimmer_version}")
|
||||
}
|
||||
|
||||
tasks.withType(JavaCompile) {
|
||||
|
10
build.gradle
10
build.gradle
@@ -42,13 +42,21 @@ subprojects {
|
||||
url = 'https://repo.spongepowered.org/repository/maven-public/'
|
||||
}
|
||||
maven {
|
||||
name = 'First Dark Dev Maven'
|
||||
name = 'First Dark Dev Maven Snapshots'
|
||||
url = 'https://maven.firstdarkdev.xyz/snapshots'
|
||||
}
|
||||
maven {
|
||||
name = 'First Dark Dev Maven Releases'
|
||||
url = 'https://maven.firstdarkdev.xyz/releases'
|
||||
}
|
||||
maven {
|
||||
name = "TerraformersMC Maven"
|
||||
url = "https://maven.terraformersmc.com/releases"
|
||||
}
|
||||
maven {
|
||||
name = "Curseforge Maven"
|
||||
url 'https://cfa2.cursemaven.com'
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@@ -28,5 +28,8 @@ org.gradle.jvmargs=-Xmx3G
|
||||
org.gradle.daemon=false
|
||||
|
||||
#dependencies
|
||||
craterlib_version=1.0.5d
|
||||
craterlib_version=1.0.6d
|
||||
mod_menu_version=4.0.5
|
||||
shimmer_version=0.1.11d
|
||||
sodium_version=3820973
|
||||
ribidium_version=3864138
|
||||
|
Reference in New Issue
Block a user