Skip to content

Commit 9b651e3

Browse files
authored
Merge pull request #91 from Polaris-Bears-MC/baka4n-update
Baka4n update
2 parents 1b2effe + f1fd50f commit 9b651e3

File tree

8 files changed

+88
-89
lines changed

8 files changed

+88
-89
lines changed

processor/annotation/src/main/java/org/polaris2023/annotation/modelgen/block/CubeAll.java

+2
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,6 @@
66
@Retention(RetentionPolicy.SOURCE)
77
public @interface CubeAll {
88
boolean item() default true;
9+
String render_type() default "";
10+
String texture() default "";
911
}

processor/annotation/src/main/java/org/polaris2023/annotation/modelgen/item/BasicBlockItem.java

+2
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,6 @@
55

66
@Retention(RetentionPolicy.SOURCE)
77
public @interface BasicBlockItem {
8+
String suffix() default "";
9+
String prefix() default "";
810
}

processor/annotation/src/main/java/org/polaris2023/annotation/modelgen/item/BasicBlockItemWithSuffix.java

-9
This file was deleted.

processor/src/main/java/org/polaris2023/processor/clazz/datagen/ModelProcessor.java

+65-59
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,6 @@ public void fieldDef(VariableElement variableElement, TypeElement typeElement) {
7575
BasicItem typeBasicItem = typeElement.getAnnotation(BasicItem.class);
7676
BasicItem basicItem = register(variableElement.getAnnotation(BasicItem.class));
7777
BasicBlockItem basicBlockItem = register(variableElement.getAnnotation(BasicBlockItem.class));
78-
BasicBlockItemWithSuffix basicBlockItemWithSuffix = register(variableElement.getAnnotation(BasicBlockItemWithSuffix.class));
7978
CubeAll cube = register(variableElement.getAnnotation(CubeAll.class));
8079
CubeColumn cubeColumn = register(variableElement.getAnnotation(CubeColumn.class));
8180
Stairs stairs = register(variableElement.getAnnotation(Stairs.class));
@@ -91,41 +90,67 @@ public void fieldDef(VariableElement variableElement, TypeElement typeElement) {
9190
AllWood allWood = register(variableElement.getAnnotation(AllWood.class));
9291
AllSign allSign = register(variableElement.getAnnotation(AllSign.class));
9392
AllDoor allDoor = register(variableElement.getAnnotation(AllDoor.class));
94-
if (typeBasicItem != null &&
95-
typeBasicItem.used() &&
96-
variableElement.getModifiers().contains(Modifier.STATIC) &&
97-
isAnnotation()) {
98-
basicSet(typeElement.getQualifiedName() + "." + variableElement.getSimpleName(), typeBasicItem, typeBasicItem.value(), true, "");
93+
//item model gen
94+
if (spawnEggItem != null) {
95+
checkAppend(typeElement, variableElement, "spawnEggItem");
9996
}
100-
if (basicItem != null && basicItem.used()) {
101-
basicSet(typeElement.getQualifiedName() + "." + variableElement.getSimpleName(), basicItem, basicItem.value(), true, "");
97+
else if (parentItem != null) {
98+
check();
99+
MODEL.append("\n\t\t")
100+
.append(".parentItem(")
101+
.append(typeElement.getQualifiedName())
102+
.append(".")
103+
.append(variableElement.getSimpleName())
104+
.append(", \"")
105+
.append(parentItem.parent())
106+
.append("\"");
107+
if (parentItem.textures().length > 0) {
108+
MODEL.append(",")
109+
.append(Arrays
110+
.stream(parentItem.textures())
111+
.map(kv -> "\"" + kv.key() + "\"" + ", \"" + kv.value() + "\"")
112+
.collect(Collectors.joining(",")));
113+
}
114+
MODEL.append(")");
115+
}
116+
else if (basicBlockItem != null) {
117+
if (basicBlockItem.suffix().isEmpty()) {
118+
checkAppend(typeElement, variableElement,"basicBlockItem");
119+
} else {
120+
checkAppend(typeElement, variableElement, "basicBlockItemWithSuffix", basicBlockItem.suffix());
121+
}
102122
}
103-
if (basicBlockItem != null) {
104-
checkAppend(typeElement, variableElement,"basicBlockItem");
123+
else if (basicItem != null && basicItem.used()) {
124+
basicSet(typeElement.getQualifiedName() + "." + variableElement.getSimpleName(), basicItem, basicItem.value(), true, "");
105125
}
106-
if (basicBlockItemWithSuffix != null) {
107-
checkAppend(typeElement, variableElement, "basicBlockItemWithSuffix", basicBlockItemWithSuffix.suffix());
126+
else if (typeBasicItem != null &&
127+
typeBasicItem.used() &&
128+
variableElement.getModifiers().contains(Modifier.STATIC)) {
129+
basicSet(typeElement.getQualifiedName() + "." + variableElement.getSimpleName(), typeBasicItem, typeBasicItem.value(), true, "");
108130
}
131+
//block model gen
109132
if (cube != null) {
110-
checkAppend(typeElement, variableElement,"cubeAll", cube.item());
133+
checkAppend(typeElement, variableElement,"cubeAll", cube.texture(), cube.render_type(), cube.item());
111134
}
112-
if (cubeColumn != null) {
113-
checkAppend(typeElement, variableElement, "cubeColumn", cubeColumn.end(), cubeColumn.side(), cubeColumn.item(), cubeColumn.horizontal(), cubeColumn.horizontal());
135+
else if (cubeColumn != null) {
136+
checkAppend(typeElement, variableElement, "cubeColumn", cubeColumn.end(), cubeColumn.side(), cubeColumn.item(), cubeColumn.horizontal(), cubeColumn.suffix());
114137
}
115-
if (allWood != null) {
116-
checkAppend(typeElement, variableElement, "allWoodBlock");
138+
else if (log != null) {
139+
checkAppend(typeElement, variableElement, "logBlock", log.item());
117140
}
118-
if (allDoor != null) {
119-
checkAppend(typeElement, variableElement, "allDoorBlock");
141+
else if (wood != null) {
142+
checkAppend(typeElement, variableElement, "woodBlock", wood.item());
120143
}
121-
if (allSign != null) {
122-
checkAppend(typeElement, variableElement, "allSignBlock");
144+
else if (button != null) {
145+
checkAppend(typeElement, variableElement, "buttonBlock", button.texture());
123146
}
124-
if (pressurePlate != null) {
125-
checkAppend(typeElement, variableElement, "pressurePlateBlock", pressurePlate.texture(), pressurePlate.item());
147+
else if(fence != null) {
148+
checkAppend(typeElement, variableElement, "fenceBlock", fence.texture(), fence.item());
126149
}
127-
128-
if (stairs != null) {
150+
else if (fenceGate != null) {
151+
checkAppend(typeElement, variableElement, "fenceGateBlock", fenceGate.texture(), fenceGate.item());
152+
}
153+
else if (stairs != null) {
129154
String all = stairs.all();
130155
checkAppend(typeElement, variableElement, "stairsBlock",
131156
all.isEmpty() ? stairs.bottom() : all,
@@ -134,7 +159,7 @@ public void fieldDef(VariableElement variableElement, TypeElement typeElement) {
134159
stairs.item()
135160
);
136161
}
137-
if (slab != null) {
162+
else if (slab != null) {
138163
String all = slab.all();
139164
checkAppend(typeElement, variableElement, "slabBlock",
140165
all.isEmpty() ? slab.bottom() : all,
@@ -143,43 +168,24 @@ public void fieldDef(VariableElement variableElement, TypeElement typeElement) {
143168
slab.item()
144169
);
145170
}
146-
if (log != null) {
147-
checkAppend(typeElement, variableElement, "logBlock", log.item());
148-
}
149-
if (wood != null) {
150-
checkAppend(typeElement, variableElement, "woodBlock", wood.item());
151-
}
152-
if (button != null) {
153-
checkAppend(typeElement, variableElement, "buttonBlock", button.texture());
154-
}
155-
if(fence != null) {
156-
checkAppend(typeElement, variableElement, "fenceBlock", fence.texture(), fence.item());
171+
else if (pressurePlate != null) {
172+
checkAppend(typeElement, variableElement, "pressurePlateBlock", pressurePlate.texture(), pressurePlate.item());
157173
}
158-
if (fenceGate != null) {
159-
checkAppend(typeElement, variableElement, "fenceGateBlock", fenceGate.texture(), fenceGate.item());
174+
else if (allSign != null) {
175+
checkAppend(typeElement, variableElement, "allSignBlock");
160176
}
161-
if (spawnEggItem != null) {
162-
checkAppend(typeElement, variableElement, "spawnEggItem");
177+
else if (allDoor != null) {
178+
checkAppend(typeElement, variableElement, "allDoorBlock");
163179
}
164-
if (parentItem != null) {
165-
check();
166-
MODEL.append("\n\t\t")
167-
.append(".parentItem(")
168-
.append(typeElement.getQualifiedName())
169-
.append(".")
170-
.append(variableElement.getSimpleName())
171-
.append(", \"")
172-
.append(parentItem.parent())
173-
.append("\"");
174-
if (parentItem.textures().length > 0) {
175-
MODEL.append(",")
176-
.append(Arrays
177-
.stream(parentItem.textures())
178-
.map(kv -> "\"" + kv.key() + "\"" + ", \"" + kv.value() + "\"")
179-
.collect(Collectors.joining(",")));
180-
}
181-
MODEL.append(")");
180+
else if (allWood != null) {
181+
checkAppend(typeElement, variableElement, "allWoodBlock");
182182
}
183+
184+
185+
186+
187+
188+
183189
}
184190

185191
private static void basicSet(String name, BasicItem basicItem, Addition addition, boolean first, String prefix) {

processor/src/main/java/org/polaris2023/utils/Codes.java

+10-9
Original file line numberDiff line numberDiff line change
@@ -240,15 +240,16 @@ public final class %%classname%% implements DataProvider, IModel<%%classname%%>
240240
return this;
241241
}
242242
243-
private <T extends Block> %%classname%% cubeAll(Supplier<T> block, boolean isItem) {
243+
private <T extends Block> %%classname%% cubeAll(Supplier<T> block, String texture, String renderType, boolean isItem) {
244244
ResourceLocation key = BuiltInRegistries.BLOCK.getKey(block.get());
245245
ResourceLocation blockKey = key.withPrefix("block/");
246-
MODELS.put(blockKey, Map.of(
247-
"parent", "minecraft:block/cube_all",
248-
"textures", Map.of(
249-
"all", blockKey.toString()
250-
)
251-
));
246+
Map<String, Object> tMap = new HashMap<>();
247+
tMap.put("parent", "minecraft:block/cube_all");
248+
tMap.put("textures", Map.of(
249+
"all", texture.isEmpty() ? blockKey.toString() : texture
250+
));
251+
if(!renderType.isEmpty()) tMap.put("render_type", renderType);
252+
MODELS.put(blockKey, tMap);
252253
BLOCKSTATES.put(key, Map.of(
253254
"variants", Map.of("", model(blockKey, null, null, null, false))
254255
));
@@ -271,9 +272,9 @@ private Map<String, Object> model(ResourceLocation key, Number x, Number y, Numb
271272
if (!key.getPath().contains("planks")) {
272273
key = planks(key);
273274
ResourceLocation finalKey = key;
274-
cubeAll(() -> BuiltInRegistries.BLOCK.get(finalKey), true);
275+
cubeAll(() -> BuiltInRegistries.BLOCK.get(finalKey), "", "", true);
275276
} else {
276-
cubeAll(block, true);
277+
cubeAll(block, "", "", true);
277278
}
278279
ResourceLocation finalKey1 = key;
279280
buttonBlock(() -> BuiltInRegistries.BLOCK.get(replace(finalKey1, "button")), "");

src/main/java/org/polaris2023/wild_wind/common/init/ModBlocks.java

+1
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,7 @@ public class ModBlocks {
106106
register("duckweed", DUCKWEED);
107107

108108
@I18n(en_us = "Brittle Ice", zh_cn = "脆冰", zh_tw = "脆冰")
109+
@CubeAll(render_type = "translucent", texture = "wild_wind:block/brittle_ice_0")
109110
public static final DeferredBlock<BrittleIceBlock> BRITTLE_ICE =
110111
register("brittle_ice", BrittleIceBlock::new, BlockBehaviour.Properties.ofFullCopy(Blocks.ICE)
111112
.strength(0.1F).isValidSpawn(Blocks::never).pushReaction(PushReaction.DESTROY));

src/main/java/org/polaris2023/wild_wind/common/init/ModItems.java

+8-5
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package org.polaris2023.wild_wind.common.init;
22

3+
import net.minecraft.client.renderer.ItemBlockRenderTypes;
4+
import net.minecraft.client.renderer.RenderType;
35
import net.minecraft.world.item.BoatItem;
46
import net.minecraft.world.item.Item;
57
import net.neoforged.neoforge.registries.DeferredItem;
@@ -17,9 +19,10 @@
1719
import static org.polaris2023.wild_wind.common.init.ModInitializer.*;
1820

1921

20-
@BasicItem
22+
2123
public class ModItems {
2224

25+
@BasicItem
2326
@I18n(en_us = "Living Tuber", zh_cn = "活根", zh_tw = "活根")
2427
public static final DeferredItem<LivingTuberItem> LIVING_TUBER =
2528
register("living_tuber", properties -> new LivingTuberItem(properties
@@ -34,20 +37,20 @@ public class ModItems {
3437
public static final DeferredItem<MagicFluteItem> MAGIC_FLUTE =
3538
register("magic_flute", MagicFluteItem::stackTo1);
3639

37-
40+
@BasicItem
3841
@I18n(en_us = "Cheese", zh_tw = "起司", zh_cn = "奶酪")
3942
public static final DeferredItem<CheeseItem> CHEESE =
4043
register("cheese", p -> new CheeseItem(p.stacksTo(16).food(ModFoods.CHEESE.get())));
41-
44+
@BasicItem
4245
@I18n(en_us = "Russian Soup", zh_cn = "罗宋汤", zh_tw = "羅宋湯")
4346
public static final DeferredItem<Item> RUSSIAN_SOUP =
4447
simpleItem("russian_soup", p -> p.stacksTo(1));
45-
48+
@BasicItem
4649
@I18n(en_us = "Vegetable Soup", zh_cn = "蔬菜浓汤", zh_tw = "蔬菜濃湯")
4750
public static final DeferredItem<Item> VEGETABLE_SOUP =
4851
simpleItem("vegetable_soup", p -> p.stacksTo(1));
4952

50-
53+
@BasicItem
5154
@I18n(en_us = "Nether Mushroom Stew", zh_cn = "下界蘑菇煲", zh_tw = "下界蘑菇煲")
5255
public static final DeferredItem<NetherMushroomStewItem> NETHER_MUSHROOM_STEW =
5356
register("nether_mushroom_stew", properties ->

src/main/resources/assets/wild_wind/models/block/brittle_ice.json

-7
This file was deleted.

0 commit comments

Comments
 (0)