Skip to content

Commit 2cf4ec8

Browse files
committed
UD-260214
1 parent 6d8597e commit 2cf4ec8

15 files changed

Lines changed: 139 additions & 46 deletions

File tree

src/main/java/com/altnoir/mia/client/MIAClient.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,13 @@ public MIAClient(IEventBus modEventBus, ModContainer modContainer) {
2222
}
2323
public static void addModEventBus(IEventBus modEventBus) {
2424
modEventBus.addListener(MiaClientEvents::modLoad);
25+
modEventBus.addListener(MiaClientEvents::onClientSetup);
2526
modEventBus.addListener(MiaClientEvents::registerDimensionEffects);
2627
modEventBus.addListener(MiaClientEvents::registerParticles);
2728
modEventBus.addListener(MiaClientEvents::registerTooltipComponentFactories);
2829
modEventBus.addListener(MiaClientEvents::registerEntityRenderers);
2930
modEventBus.addListener(MiaClientEvents::registerScreens);
3031
modEventBus.addListener(MiaClientEvents::registerKeyBindings);
31-
modEventBus.addListener(MiaClientEvents::onClientSetup);
3232
}
3333

3434
public static void addGameEventBus(IEventBus gameEventBus) {

src/main/java/com/altnoir/mia/client/MiaClientEvents.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import com.altnoir.mia.client.handler.HookHandler;
77
import com.altnoir.mia.client.renderer.TheAbyssDimEffects;
88
import com.altnoir.mia.common.component.ArtifactBundleInventoryComponent;
9-
import com.altnoir.mia.compat.ponder.TestPonder;
9+
import com.altnoir.mia.compat.ponder.MiaPonder;
1010
import com.altnoir.mia.core.event.client.*;
1111
import com.altnoir.mia.core.event.common.AbyssMobEvent;
1212
import com.altnoir.mia.init.MiaKeyBinding;
@@ -24,6 +24,10 @@ public static void modLoad(final ModConfigEvent event) {
2424
MiaClientConfig.onLoad(event.getConfig());
2525
}
2626

27+
public static void onClientSetup(final FMLClientSetupEvent event) {
28+
PonderIndex.addPlugin(new MiaPonder());
29+
}
30+
2731
public static void registerParticles(RegisterParticleProvidersEvent event) {
2832
RegisterParticlesEvent.register(event);
2933
}
@@ -87,10 +91,6 @@ public static void onCameraAngles(ViewportEvent.ComputeCameraAngles event) {
8791
event.setPitch(-event.getPitch());
8892
event.setRoll(event.getRoll() + 180.0F);
8993
}
90-
91-
public static void onClientSetup(final FMLClientSetupEvent event) {
92-
PonderIndex.addPlugin(new TestPonder());
93-
}
9494
}
9595

9696

src/main/java/com/altnoir/mia/common/item/abs/IMiaTooltip.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.altnoir.mia.common.item.abs;
22

3-
import com.altnoir.mia.init.MiaColors;
3+
import com.altnoir.mia.core.MiaColors;
44
import net.minecraft.client.resources.language.I18n;
55
import net.minecraft.core.registries.BuiltInRegistries;
66
import net.minecraft.network.chat.Component;
@@ -13,7 +13,7 @@ default void appendTooltip(ItemStack stack, List<Component> tooltip) {
1313
var rl = BuiltInRegistries.ITEM.getKey(stack.getItem());
1414
var description = String.format("tooltip.mia.description.%s", rl.getPath());
1515
if (I18n.exists(description)) {
16-
tooltip.add(1, Component.translatable(description).withColor(MiaColors.ABYSS_GREEN));
16+
tooltip.add(1, Component.translatable(description).withColor(MiaColors.GREEN.getColor()));
1717
}
1818
}
1919
}

src/main/java/com/altnoir/mia/compat/ponder/TestPonder.java renamed to src/main/java/com/altnoir/mia/compat/ponder/MiaPonder.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,14 @@
55
import net.createmod.ponder.api.registration.PonderSceneRegistrationHelper;
66
import net.minecraft.resources.ResourceLocation;
77

8-
public class TestPonder implements PonderPlugin {
8+
public class MiaPonder implements PonderPlugin {
99
@Override
1010
public String getModId() {
1111
return MIA.MOD_ID;
1212
}
1313

1414
@Override
1515
public void registerScenes(PonderSceneRegistrationHelper<ResourceLocation> helper) {
16-
TestPonderScenes.registerScenes(helper);
16+
MiaPonderScenes.registerScenes(helper);
1717
}
1818
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package com.altnoir.mia.compat.ponder;
2+
3+
import com.altnoir.mia.compat.ponder.animation.LamptubeAnimation;
4+
import com.altnoir.mia.init.MiaBlocks;
5+
import net.createmod.ponder.api.registration.PonderSceneRegistrationHelper;
6+
import net.minecraft.resources.ResourceLocation;
7+
8+
public class MiaPonderScenes {
9+
public static void registerScenes(PonderSceneRegistrationHelper<ResourceLocation> helper) {
10+
helper.forComponents(MiaBlocks.AMETHYST_LAMPTUBE.getId(), MiaBlocks.PEDESTAL.getId())
11+
.addStoryBoard("amethyst_lamptube", LamptubeAnimation::amethystPressing);
12+
helper.forComponents(MiaBlocks.PRASIOLITE_LAMPTUBE.getId())
13+
.addStoryBoard("prasiolite_lamptube", LamptubeAnimation::prasiolitePressing);
14+
}
15+
}

src/main/java/com/altnoir/mia/compat/ponder/TestPonderAnimation.java

Lines changed: 0 additions & 13 deletions
This file was deleted.

src/main/java/com/altnoir/mia/compat/ponder/TestPonderScenes.java

Lines changed: 0 additions & 13 deletions
This file was deleted.
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
package com.altnoir.mia.compat.ponder.animation;
2+
3+
import com.altnoir.mia.common.block.abs.AbsCrystalTubeBlock;
4+
import com.altnoir.mia.common.block.entity.PedestalBlockEntity;
5+
import net.createmod.ponder.api.PonderPalette;
6+
import net.createmod.ponder.api.scene.SceneBuilder;
7+
import net.createmod.ponder.api.scene.SceneBuildingUtil;
8+
import net.minecraft.core.BlockPos;
9+
import net.minecraft.core.Direction;
10+
import net.minecraft.world.item.ItemStack;
11+
import net.minecraft.world.level.block.Blocks;
12+
import net.minecraft.world.phys.Vec3;
13+
14+
public class LamptubeAnimation {
15+
public static void amethystPressing(SceneBuilder scene, SceneBuildingUtil util) {
16+
scene.title("amethyst_lamptube", "Amethyst Lamptube Animation");
17+
scene.configureBasePlate(0, 0, 5);
18+
19+
scene.world().showSection(util.select().layer(0), Direction.DOWN);
20+
scene.idle(20);
21+
22+
BlockPos pedestal = util.grid().at(2, 1, 2);
23+
BlockPos lamptube = util.grid().at(2, 3, 2);
24+
scene.world().showSection(util.select().position(pedestal), Direction.DOWN);
25+
scene.idle(5);
26+
scene.world().showSection(util.select().position(lamptube), Direction.DOWN);
27+
scene.idle(20);
28+
29+
scene.rotateCameraY(-30);
30+
scene.idle(10);
31+
ItemStack stone = new ItemStack(Blocks.STONE);
32+
Class<PedestalBlockEntity> type = PedestalBlockEntity.class;
33+
scene.world().modifyBlockEntity(pedestal, type, b -> b.setItem(0, stone));
34+
scene.idle(20);
35+
scene.world().modifyBlock(lamptube, b -> b.setValue(AbsCrystalTubeBlock.POWERED, true), false);
36+
scene.idle(5);
37+
scene.world().modifyBlock(lamptube, b -> b.setValue(AbsCrystalTubeBlock.POWERED, false), false);
38+
scene.idle(5);
39+
40+
Vec3 lamptubeTop = util.vector().topOf(lamptube);
41+
scene.overlay().showText(60).attachKeyFrame()
42+
.text("text.mia.ponder.amethyst_lamptube.text1")
43+
.colored(PonderPalette.GREEN)
44+
.pointAt(lamptubeTop).placeNearTarget();
45+
scene.idle(70);
46+
scene.markAsFinished();
47+
}
48+
49+
public static void prasiolitePressing(SceneBuilder scene, SceneBuildingUtil util) {
50+
scene.title("prasiolite_lamptube", "Prasiolite Lamptube Animation");
51+
scene.configureBasePlate(0, 0, 5);
52+
53+
scene.world().showSection(util.select().layer(0), Direction.DOWN);
54+
scene.idle(20);
55+
56+
BlockPos lamptube = util.grid().at(2, 3, 2);
57+
scene.world().showSection(util.select().fromTo(1, 1, 1, 3, 2, 3), Direction.DOWN);
58+
scene.idle(5);
59+
scene.world().showSection(util.select().position(lamptube), Direction.DOWN);
60+
scene.idle(20);
61+
62+
scene.rotateCameraY(-30);
63+
scene.idle(10);
64+
65+
scene.world().modifyBlock(lamptube, b -> b.setValue(AbsCrystalTubeBlock.POWERED, true), false);
66+
scene.idle(5);
67+
scene.world().modifyBlock(lamptube, b -> b.setValue(AbsCrystalTubeBlock.POWERED, false), false);
68+
scene.idle(5);
69+
70+
Vec3 lamptubeTop = util.vector().topOf(lamptube);
71+
scene.overlay().showText(60).attachKeyFrame()
72+
.text("text.mia.ponder.amethyst_lamptube.text1")
73+
.colored(PonderPalette.GREEN)
74+
.pointAt(lamptubeTop).placeNearTarget();
75+
scene.idle(70);
76+
scene.markAsFinished();
77+
}
78+
}
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package com.altnoir.mia.core;
2+
3+
import net.createmod.catnip.theme.Color;
4+
5+
public enum MiaColors {
6+
WHITE(0xeeeeee),
7+
BLACK(0x221111),
8+
9+
RED(0xff5d6c),
10+
GREEN(0x8cba51),
11+
BLUE(0x5f6caf),
12+
13+
SLOW(0x22ff22),
14+
MEDIUM(0x0084ff),
15+
FAST(0xff55ff),
16+
17+
INPUT(0x7fcde0),
18+
19+
OUTPUT(0xddc166),
20+
;
21+
private final Color color;
22+
23+
MiaColors(int color) {
24+
this.color = new Color(color, false).setImmutable();
25+
}
26+
27+
public int getColor() {
28+
return color.getRGB();
29+
}
30+
31+
public Color getColorObject() {
32+
return color;
33+
}
34+
}

src/main/java/com/altnoir/mia/core/event/client/ClientTooltipEvent.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import com.altnoir.mia.common.item.abs.IMiaTooltip;
44
import com.altnoir.mia.common.recipe.ArtifactSmithingRecipe;
55
import com.altnoir.mia.init.MiaAttributes;
6-
import com.altnoir.mia.init.MiaColors;
6+
import com.altnoir.mia.core.MiaColors;
77
import com.altnoir.mia.init.MiaRecipes;
88
import com.altnoir.mia.init.MiaTags;
99
import net.minecraft.ChatFormatting;
@@ -58,7 +58,7 @@ private static void holdShiftTooltip(List<Component> tooltip) {
5858
tooltip.add(1, Component.translatable(
5959
TOOLTIP_HOLD_SHIFT,
6060
Component.literal("Shift").withStyle(ChatFormatting.GRAY)
61-
).withColor(MiaColors.ABYSS_GREEN));
61+
).withColor(MiaColors.GREEN.getColor()));
6262
}
6363

6464
private static List<Component> materialModifiers(ItemStack material, List<RecipeHolder<ArtifactSmithingRecipe>> recipes) {

0 commit comments

Comments
 (0)