chore: datagen blahaj, fix when held left-handed

Fixes #47
This commit is contained in:
Ampflower 🌺 2025-03-13 14:53:58 -07:00
parent 457e69735f
commit 0c5975aa1a
No known key found for this signature in database
GPG Key ID: FC0397C90D508D7F
79 changed files with 153 additions and 817 deletions

View File

@ -1,6 +1,8 @@
package gay.pridecraft.joy.data; package gay.pridecraft.joy.data;
import gay.pridecraft.joy.JoyUtil; import gay.pridecraft.joy.JoyUtil;
import gay.pridecraft.joy.block.BlahajBlocks;
import gay.pridecraft.joy.block.CuddlyBlock;
import gay.pridecraft.joy.registry.JoyBlocks; import gay.pridecraft.joy.registry.JoyBlocks;
import gay.pridecraft.joy.registry.JoyItems; import gay.pridecraft.joy.registry.JoyItems;
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
@ -20,8 +22,11 @@ import net.minecraft.data.client.TextureKey;
import net.minecraft.data.client.TextureMap; import net.minecraft.data.client.TextureMap;
import net.minecraft.data.client.VariantSettings; import net.minecraft.data.client.VariantSettings;
import net.minecraft.data.client.When; import net.minecraft.data.client.When;
import net.minecraft.registry.Registries;
import net.minecraft.util.Identifier; import net.minecraft.util.Identifier;
import net.minecraft.util.math.Direction;
import java.util.List;
import java.util.Optional; import java.util.Optional;
public class JoyModelProvider extends FabricModelProvider { public class JoyModelProvider extends FabricModelProvider {
@ -55,6 +60,44 @@ public class JoyModelProvider extends FabricModelProvider {
gen.registerFlowerPotPlant(JoyBlocks.BLUE_ALLIUM, JoyBlocks.POTTED_BLUE_ALLIUM, BlockStateModelGenerator.TintType.NOT_TINTED); gen.registerFlowerPotPlant(JoyBlocks.BLUE_ALLIUM, JoyBlocks.POTTED_BLUE_ALLIUM, BlockStateModelGenerator.TintType.NOT_TINTED);
gen.registerFlowerPotPlant(JoyBlocks.WHITE_ALLIUM, JoyBlocks.POTTED_WHITE_ALLIUM, BlockStateModelGenerator.TintType.NOT_TINTED); gen.registerFlowerPotPlant(JoyBlocks.WHITE_ALLIUM, JoyBlocks.POTTED_WHITE_ALLIUM, BlockStateModelGenerator.TintType.NOT_TINTED);
gen.registerFlowerPotPlant(JoyBlocks.TRANS_ALLIUM, JoyBlocks.POTTED_TRANS_ALLIUM, BlockStateModelGenerator.TintType.NOT_TINTED); gen.registerFlowerPotPlant(JoyBlocks.TRANS_ALLIUM, JoyBlocks.POTTED_TRANS_ALLIUM, BlockStateModelGenerator.TintType.NOT_TINTED);
registerProxy(gen,
BlahajBlocks.BLAHAJ_BLOCK,
BlahajBlocks.BLAVINGAD_BLOCK,
BlahajBlocks.BREAD_BLOCK,
BlahajBlocks.BROWN_BEAR_BLOCK
);
for (final var block : List.of(
BlahajBlocks.BLAHAJ_BLOCK,
BlahajBlocks.BLAVINGAD_BLOCK,
BlahajBlocks.BREAD_BLOCK,
BlahajBlocks.BROWN_BEAR_BLOCK)) {
gen.blockStateCollector.accept(cuddlyBlockState(block, ModelIds.getBlockModelId(block), false));
}
registerShark(gen, BlahajBlocks.GRAY_SHARK_BLOCK, false);
BlahajBlocks.PRIDE_BLOCKS.forEach(shark -> registerShark(gen, shark, true));
}
private static void registerShark(BlockStateModelGenerator gen, Block shark, boolean pride) {
final var model = block("blue_shark", TextureKey.TEXTURE);
final var id = ModelIds.getBlockModelId(shark);
model.upload(
id,
pride ?
TextureMap.texture(Registries.BLOCK.getId(shark)
.withPath(str -> "block/pride_sharks/" + str.substring(0, str.lastIndexOf('_')))) :
TextureMap.texture(shark),
gen.modelCollector
);
gen.registerParentedItemModel(shark, id);
gen.blockStateCollector.accept(cuddlyBlockState(shark, id, false));
}
private static void registerProxy(BlockStateModelGenerator gen, Block... toProxy) {
for (final var proxied : toProxy) {
gen.registerParentedItemModel(proxied, ModelIds.getBlockModelId(proxied));
}
} }
private static void registerBed(BlockStateModelGenerator gen, Block block) { private static void registerBed(BlockStateModelGenerator gen, Block block) {
@ -102,6 +145,31 @@ public class JoyModelProvider extends FabricModelProvider {
return supplier; return supplier;
} }
private static BlockStateSupplier cuddlyBlockState(Block block, Identifier model, boolean wall) {
return MultipartBlockStateSupplier.create(block)
.with(When.create().set(CuddlyBlock.FACING, Direction.NORTH),
rotateVariant(model, VariantSettings.Rotation.R0, wall))
.with(When.create().set(CuddlyBlock.FACING, Direction.EAST),
rotateVariant(model, VariantSettings.Rotation.R90, wall))
.with(When.create().set(CuddlyBlock.FACING, Direction.SOUTH),
rotateVariant(model, VariantSettings.Rotation.R180, wall))
.with(When.create().set(CuddlyBlock.FACING, Direction.WEST),
rotateVariant(model, VariantSettings.Rotation.R270, wall));
}
private static BlockStateVariant rotateVariant(Identifier model, VariantSettings.Rotation Y, boolean wall) {
final var var = BlockStateVariant.create()
.put(VariantSettings.MODEL, model)
.put(VariantSettings.Y, Y);
if (wall) {
var.put(VariantSettings.X, VariantSettings.Rotation.R90);
}
return var;
}
private static BlockStateVariant model(Identifier model) { private static BlockStateVariant model(Identifier model) {
return BlockStateVariant.create() return BlockStateVariant.create()
.put(VariantSettings.MODEL, model); .put(VariantSettings.MODEL, model);

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/ace_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/ace_shark"
},
"facing=south": {
"model": "joy:block/ace_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/ace_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/agender_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/agender_shark"
},
"facing=south": {
"model": "joy:block/agender_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/agender_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/aro_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/aro_shark"
},
"facing=south": {
"model": "joy:block/aro_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/aro_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/aroace_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/aroace_shark"
},
"facing=south": {
"model": "joy:block/aroace_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/aroace_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/bi_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/bi_shark"
},
"facing=south": {
"model": "joy:block/bi_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/bi_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/blue_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/blue_shark"
},
"facing=south": {
"model": "joy:block/blue_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/blue_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/blue_whale",
"y": 90
},
"facing=north": {
"model": "joy:block/blue_whale"
},
"facing=south": {
"model": "joy:block/blue_whale",
"y": 180
},
"facing=west": {
"model": "joy:block/blue_whale",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/bread",
"y": 90
},
"facing=north": {
"model": "joy:block/bread"
},
"facing=south": {
"model": "joy:block/bread",
"y": 180
},
"facing=west": {
"model": "joy:block/bread",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/brown_bear",
"y": 90
},
"facing=north": {
"model": "joy:block/brown_bear"
},
"facing=south": {
"model": "joy:block/brown_bear",
"y": 180
},
"facing=west": {
"model": "joy:block/brown_bear",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/demi_r_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/demi_r_shark"
},
"facing=south": {
"model": "joy:block/demi_r_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/demi_r_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/demi_s_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/demi_s_shark"
},
"facing=south": {
"model": "joy:block/demi_s_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/demi_s_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/demiboy_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/demiboy_shark"
},
"facing=south": {
"model": "joy:block/demiboy_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/demiboy_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/demigirl_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/demigirl_shark"
},
"facing=south": {
"model": "joy:block/demigirl_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/demigirl_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/enby_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/enby_shark"
},
"facing=south": {
"model": "joy:block/enby_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/enby_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/gay_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/gay_shark"
},
"facing=south": {
"model": "joy:block/gay_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/gay_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/genderfluid_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/genderfluid_shark"
},
"facing=south": {
"model": "joy:block/genderfluid_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/genderfluid_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/genderqueer_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/genderqueer_shark"
},
"facing=south": {
"model": "joy:block/genderqueer_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/genderqueer_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/gray_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/gray_shark"
},
"facing=south": {
"model": "joy:block/gray_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/gray_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/grey_r_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/grey_r_shark"
},
"facing=south": {
"model": "joy:block/grey_r_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/grey_r_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/grey_s_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/grey_s_shark"
},
"facing=south": {
"model": "joy:block/grey_s_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/grey_s_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/greyrose_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/greyrose_shark"
},
"facing=south": {
"model": "joy:block/greyrose_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/greyrose_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/intersex_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/intersex_shark"
},
"facing=south": {
"model": "joy:block/intersex_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/intersex_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/lesbian_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/lesbian_shark"
},
"facing=south": {
"model": "joy:block/lesbian_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/lesbian_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/pan_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/pan_shark"
},
"facing=south": {
"model": "joy:block/pan_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/pan_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/poly_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/poly_shark"
},
"facing=south": {
"model": "joy:block/poly_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/poly_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/pride_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/pride_shark"
},
"facing=south": {
"model": "joy:block/pride_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/pride_shark",
"y": 270
}
}
}

View File

@ -1,19 +0,0 @@
{
"variants": {
"facing=east": {
"model": "joy:block/trans_shark",
"y": 90
},
"facing=north": {
"model": "joy:block/trans_shark"
},
"facing=south": {
"model": "joy:block/trans_shark",
"y": 180
},
"facing=west": {
"model": "joy:block/trans_shark",
"y": 270
}
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/ace"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/agender"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/aro"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/aroace"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/bi"
}
}

View File

@ -2,9 +2,9 @@
"credit": "original model by hibii, changes made by musicalskele", "credit": "original model by hibii, changes made by musicalskele",
"texture_size": [32, 32], "texture_size": [32, 32],
"textures": { "textures": {
"0": "joy:block/blue_shark", "texture": "joy:block/blue_shark",
"particle": "joy:block/blue_shark" "particle": "#texture"
}, },
"elements": [ "elements": [
{ {
"name": "shork", "name": "shork",
@ -12,13 +12,13 @@
"to": [10, 4, 9], "to": [10, 4, 9],
"rotation": {"angle": 0, "axis": "y", "origin": [0, -6, 0]}, "rotation": {"angle": 0, "axis": "y", "origin": [0, -6, 0]},
"faces": { "faces": {
"north": {"uv": [4.5, 4.5, 6.5, 6.5], "texture": "#0"}, "north": {"uv": [4.5, 4.5, 6.5, 6.5], "texture": "#texture"},
"east": {"uv": [0, 4.5, 4.5, 6.5], "texture": "#0"}, "east": {"uv": [0, 4.5, 4.5, 6.5], "texture": "#texture"},
"south": {"uv": [11, 4.5, 13, 6.5], "texture": "#0"}, "south": {"uv": [11, 4.5, 13, 6.5], "texture": "#texture"},
"west": {"uv": [6.5, 4.5, 11, 6.5], "texture": "#0"}, "west": {"uv": [6.5, 4.5, 11, 6.5], "texture": "#texture"},
"up": {"uv": [6.5, 4.5, 4.5, 0], "texture": "#0"}, "up": {"uv": [6.5, 4.5, 4.5, 0], "texture": "#texture"},
"down": {"uv": [8.5, 0, 6.5, 4.5], "texture": "#0"} "down": {"uv": [8.5, 0, 6.5, 4.5], "texture": "#texture"}
} }
}, },
{ {
"name": "tail", "name": "tail",
@ -26,13 +26,13 @@
"to": [9, 3, 16], "to": [9, 3, 16],
"rotation": {"angle": 0, "axis": "y", "origin": [8, 2, 15.5]}, "rotation": {"angle": 0, "axis": "y", "origin": [8, 2, 15.5]},
"faces": { "faces": {
"north": {"uv": [3.5, 10, 4.5, 11], "texture": "#0"}, "north": {"uv": [3.5, 10, 4.5, 11], "texture": "#texture"},
"east": {"uv": [0, 10, 3.5, 11], "texture": "#0"}, "east": {"uv": [0, 10, 3.5, 11], "texture": "#texture"},
"south": {"uv": [8, 10, 9, 11], "texture": "#0"}, "south": {"uv": [8, 10, 9, 11], "texture": "#texture"},
"west": {"uv": [4.5, 10, 8, 11], "texture": "#0"}, "west": {"uv": [4.5, 10, 8, 11], "texture": "#texture"},
"up": {"uv": [4.5, 10, 3.5, 6.5], "texture": "#0"}, "up": {"uv": [4.5, 10, 3.5, 6.5], "texture": "#texture"},
"down": {"uv": [5.5, 6.5, 4.5, 10], "texture": "#0"} "down": {"uv": [5.5, 6.5, 4.5, 10], "texture": "#texture"}
} }
}, },
{ {
"name": "tail base", "name": "tail base",
@ -40,13 +40,13 @@
"to": [9.5, 3.5, 11], "to": [9.5, 3.5, 11],
"rotation": {"angle": 0, "axis": "y", "origin": [0, -6, 0]}, "rotation": {"angle": 0, "axis": "y", "origin": [0, -6, 0]},
"faces": { "faces": {
"north": {"uv": [1, 12, 2.5, 13.5], "texture": "#0"}, "north": {"uv": [1, 12, 2.5, 13.5], "texture": "#texture"},
"east": {"uv": [0, 12, 1, 13.5], "texture": "#0"}, "east": {"uv": [0, 12, 1, 13.5], "texture": "#texture"},
"south": {"uv": [3.5, 12, 5, 13.5], "texture": "#0"}, "south": {"uv": [3.5, 12, 5, 13.5], "texture": "#texture"},
"west": {"uv": [2.5, 12, 3.5, 13.5], "texture": "#0"}, "west": {"uv": [2.5, 12, 3.5, 13.5], "texture": "#texture"},
"up": {"uv": [2.5, 12, 1, 11], "texture": "#0"}, "up": {"uv": [2.5, 12, 1, 11], "texture": "#texture"},
"down": {"uv": [4, 11, 2.5, 12], "texture": "#0"} "down": {"uv": [4, 11, 2.5, 12], "texture": "#texture"}
} }
}, },
{ {
"name": "tail stabilizer", "name": "tail stabilizer",
@ -54,13 +54,13 @@
"to": [8.5, 6, 16], "to": [8.5, 6, 16],
"rotation": {"angle": 22.5, "axis": "x", "origin": [8, 3, 14]}, "rotation": {"angle": 22.5, "axis": "x", "origin": [8, 3, 14]},
"faces": { "faces": {
"north": {"uv": [1, 1, 1.5, 3], "texture": "#0"}, "north": {"uv": [1, 1, 1.5, 3], "texture": "#texture"},
"east": {"uv": [0, 1, 1, 3], "texture": "#0"}, "east": {"uv": [0, 1, 1, 3], "texture": "#texture"},
"south": {"uv": [2.5, 1, 3, 3], "texture": "#0"}, "south": {"uv": [2.5, 1, 3, 3], "texture": "#texture"},
"west": {"uv": [1.5, 1, 2.5, 3], "texture": "#0"}, "west": {"uv": [1.5, 1, 2.5, 3], "texture": "#texture"},
"up": {"uv": [1.5, 1, 1, 0], "texture": "#0"}, "up": {"uv": [1.5, 1, 1, 0], "texture": "#texture"},
"down": {"uv": [2, 0, 1.5, 1], "texture": "#0"} "down": {"uv": [2, 0, 1.5, 1], "texture": "#texture"}
} }
}, },
{ {
"name": "tail stabilizer", "name": "tail stabilizer",
@ -68,13 +68,13 @@
"to": [8.5, 3, 15], "to": [8.5, 3, 15],
"rotation": {"angle": -45, "axis": "x", "origin": [8, 3, 15]}, "rotation": {"angle": -45, "axis": "x", "origin": [8, 3, 15]},
"faces": { "faces": {
"north": {"uv": [1.5, 8, 2, 9.5], "texture": "#0"}, "north": {"uv": [1.5, 8, 2, 9.5], "texture": "#texture"},
"east": {"uv": [0.5, 8, 1.5, 9.5], "texture": "#0"}, "east": {"uv": [0.5, 8, 1.5, 9.5], "texture": "#texture"},
"south": {"uv": [3, 8, 3.5, 9.5], "texture": "#0"}, "south": {"uv": [3, 8, 3.5, 9.5], "texture": "#texture"},
"west": {"uv": [2, 8, 3, 9.5], "texture": "#0"}, "west": {"uv": [2, 8, 3, 9.5], "texture": "#texture"},
"up": {"uv": [2, 8, 1.5, 7], "texture": "#0"}, "up": {"uv": [2, 8, 1.5, 7], "texture": "#texture"},
"down": {"uv": [2.5, 7, 2, 8], "texture": "#0"} "down": {"uv": [2.5, 7, 2, 8], "texture": "#texture"}
} }
}, },
{ {
"name": "left pectoral", "name": "left pectoral",
@ -82,13 +82,13 @@
"to": [6, 1, 10], "to": [6, 1, 10],
"rotation": {"angle": 22.5, "axis": "x", "origin": [6, 1, 7]}, "rotation": {"angle": 22.5, "axis": "x", "origin": [6, 1, 7]},
"faces": { "faces": {
"north": {"uv": [7.5, 8.5, 8, 9.5], "texture": "#0"}, "north": {"uv": [7.5, 8.5, 8, 9.5], "texture": "#texture"},
"east": {"uv": [5.5, 8.5, 7.5, 9.5], "texture": "#0"}, "east": {"uv": [5.5, 8.5, 7.5, 9.5], "texture": "#texture"},
"south": {"uv": [10, 8.5, 10.5, 9.5], "texture": "#0"}, "south": {"uv": [10, 8.5, 10.5, 9.5], "texture": "#texture"},
"west": {"uv": [8, 8.5, 10, 9.5], "texture": "#0"}, "west": {"uv": [8, 8.5, 10, 9.5], "texture": "#texture"},
"up": {"uv": [8, 8.5, 7.5, 6.5], "texture": "#0"}, "up": {"uv": [8, 8.5, 7.5, 6.5], "texture": "#texture"},
"down": {"uv": [8.5, 6.5, 8, 8.5], "texture": "#0"} "down": {"uv": [8.5, 6.5, 8, 8.5], "texture": "#texture"}
} }
}, },
{ {
"name": "right pectoral", "name": "right pectoral",
@ -97,13 +97,13 @@
"shade": false, "shade": false,
"rotation": {"angle": 22.5, "axis": "x", "origin": [10, 1, 7]}, "rotation": {"angle": 22.5, "axis": "x", "origin": [10, 1, 7]},
"faces": { "faces": {
"north": {"uv": [8, 8.5, 7.5, 9.5], "texture": "#0"}, "north": {"uv": [8, 8.5, 7.5, 9.5], "texture": "#texture"},
"east": {"uv": [10, 8.5, 8, 9.5], "texture": "#0"}, "east": {"uv": [10, 8.5, 8, 9.5], "texture": "#texture"},
"south": {"uv": [10.5, 8.5, 10, 9.5], "texture": "#0"}, "south": {"uv": [10.5, 8.5, 10, 9.5], "texture": "#texture"},
"west": {"uv": [7.5, 8.5, 5.5, 9.5], "texture": "#0"}, "west": {"uv": [7.5, 8.5, 5.5, 9.5], "texture": "#texture"},
"up": {"uv": [7.5, 8.5, 8, 6.5], "texture": "#0"}, "up": {"uv": [7.5, 8.5, 8, 6.5], "texture": "#texture"},
"down": {"uv": [8, 6.5, 8.5, 8.5], "texture": "#0"} "down": {"uv": [8, 6.5, 8.5, 8.5], "texture": "#texture"}
} }
}, },
{ {
"name": "dorsal fin", "name": "dorsal fin",
@ -111,13 +111,13 @@
"to": [9, 7, 8], "to": [9, 7, 8],
"rotation": {"angle": 22.5, "axis": "x", "origin": [8, 4, 7]}, "rotation": {"angle": 22.5, "axis": "x", "origin": [8, 4, 7]},
"faces": { "faces": {
"north": {"uv": [10, 1.5, 11, 3.5], "texture": "#0"}, "north": {"uv": [10, 1.5, 11, 3.5], "texture": "#texture"},
"east": {"uv": [8.5, 1.5, 10, 3.5], "texture": "#0"}, "east": {"uv": [8.5, 1.5, 10, 3.5], "texture": "#texture"},
"south": {"uv": [12.5, 1.5, 13.5, 3.5], "texture": "#0"}, "south": {"uv": [12.5, 1.5, 13.5, 3.5], "texture": "#texture"},
"west": {"uv": [11, 1.5, 12.5, 3.5], "texture": "#0"}, "west": {"uv": [11, 1.5, 12.5, 3.5], "texture": "#texture"},
"up": {"uv": [11, 1.5, 10, 0], "texture": "#0"}, "up": {"uv": [11, 1.5, 10, 0], "texture": "#texture"},
"down": {"uv": [12, 0, 11, 1.5], "texture": "#0"} "down": {"uv": [12, 0, 11, 1.5], "texture": "#texture"}
} }
}, },
{ {
"name": "back dorsal", "name": "back dorsal",
@ -125,13 +125,13 @@
"to": [8.5, 3.5, 13], "to": [8.5, 3.5, 13],
"rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 12.5]}, "rotation": {"angle": -22.5, "axis": "x", "origin": [8, 3, 12.5]},
"faces": { "faces": {
"north": {"uv": [2.5, 0.5, 3, 1], "texture": "#0"}, "north": {"uv": [2.5, 0.5, 3, 1], "texture": "#texture"},
"east": {"uv": [2, 0.5, 2.5, 1], "texture": "#0"}, "east": {"uv": [2, 0.5, 2.5, 1], "texture": "#texture"},
"south": {"uv": [3.5, 0.5, 4, 1], "texture": "#0"}, "south": {"uv": [3.5, 0.5, 4, 1], "texture": "#texture"},
"west": {"uv": [3, 0.5, 3.5, 1], "texture": "#0"}, "west": {"uv": [3, 0.5, 3.5, 1], "texture": "#texture"},
"up": {"uv": [3, 0.5, 2.5, 0], "texture": "#0"}, "up": {"uv": [3, 0.5, 2.5, 0], "texture": "#texture"},
"down": {"uv": [3.5, 0, 3, 0.5], "texture": "#0"} "down": {"uv": [3.5, 0, 3, 0.5], "texture": "#texture"}
} }
}, },
{ {
"name": "mouf back", "name": "mouf back",
@ -139,13 +139,13 @@
"to": [10, 1, 1], "to": [10, 1, 1],
"rotation": {"angle": 0, "axis": "y", "origin": [0, -6, 0]}, "rotation": {"angle": 0, "axis": "y", "origin": [0, -6, 0]},
"faces": { "faces": {
"north": {"uv": [0, 3.5, 2, 4], "texture": "#0"}, "north": {"uv": [0, 3.5, 2, 4], "texture": "#texture"},
"east": {"uv": [0, 3.5, 0, 4], "texture": "#0"}, "east": {"uv": [0, 3.5, 0, 4], "texture": "#texture"},
"south": {"uv": [2, 3.5, 4, 4], "texture": "#0"}, "south": {"uv": [2, 3.5, 4, 4], "texture": "#texture"},
"west": {"uv": [2, 3.5, 2, 4], "texture": "#0"}, "west": {"uv": [2, 3.5, 2, 4], "texture": "#texture"},
"up": {"uv": [2, 3.5, 0, 3.5], "texture": "#0"}, "up": {"uv": [2, 3.5, 0, 3.5], "texture": "#texture"},
"down": {"uv": [4, 3.5, 2, 3.5], "texture": "#0"} "down": {"uv": [4, 3.5, 2, 3.5], "texture": "#texture"}
} }
}, },
{ {
"name": "mouf top", "name": "mouf top",
@ -153,13 +153,13 @@
"to": [10, 1, 1], "to": [10, 1, 1],
"rotation": {"angle": 0, "axis": "y", "origin": [0, -6, 0]}, "rotation": {"angle": 0, "axis": "y", "origin": [0, -6, 0]},
"faces": { "faces": {
"north": {"uv": [0.5, 3.5, 2.5, 3.5], "texture": "#0"}, "north": {"uv": [0.5, 3.5, 2.5, 3.5], "texture": "#texture"},
"east": {"uv": [0, 3.5, 0.5, 3.5], "texture": "#0"}, "east": {"uv": [0, 3.5, 0.5, 3.5], "texture": "#texture"},
"south": {"uv": [3, 3.5, 5, 3.5], "texture": "#0"}, "south": {"uv": [3, 3.5, 5, 3.5], "texture": "#texture"},
"west": {"uv": [2.5, 3.5, 3, 3.5], "texture": "#0"}, "west": {"uv": [2.5, 3.5, 3, 3.5], "texture": "#texture"},
"up": {"uv": [2.5, 3.5, 0.5, 3], "texture": "#0"}, "up": {"uv": [2.5, 3.5, 0.5, 3], "texture": "#texture"},
"down": {"uv": [4.5, 3, 2.5, 3.5], "texture": "#0"} "down": {"uv": [4.5, 3, 2.5, 3.5], "texture": "#texture"}
} }
} }
], ],
"display": { "display": {
@ -169,10 +169,10 @@
"scale": [1.15, 1.15, 1.15] "scale": [1.15, 1.15, 1.15]
}, },
"thirdperson_lefthand": { "thirdperson_lefthand": {
"rotation": [140, -60, 105], "rotation": [140, -60, 105],
"translation": [-8, 1.5, 6], "translation": [-8, 3.75, 6.25],
"scale": [1.15, 1.15, 1.15] "scale": [1.15, 1.15, 1.15]
}, },
"firstperson_righthand": { "firstperson_righthand": {
"rotation": [70, -55, 60], "rotation": [70, -55, 60],
"translation": [-3.25, 5, 1] "translation": [-3.25, 5, 1]
@ -200,4 +200,4 @@
"translation": [0, 5, -3] "translation": [0, 5, -3]
} }
} }
} }

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/demi_r"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/demi_s"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/demiboy"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/demigirl"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/enby"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/gay"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/genderfluid"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/genderqueer"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/gray_shark"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/grey_r"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/grey_s"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/greyrose"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/intersex"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/lesbian"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/pan"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/poly"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/pride"
}
}

View File

@ -1,6 +0,0 @@
{
"parent": "joy:block/blue_shark",
"textures": {
"0": "joy:block/pride_sharks/trans"
}
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/ace_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/agender_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/aro_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/aroace_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/bi_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/blue_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/blue_whale"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/bread"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/brown_bear"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/demi_r_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/demi_s_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/demiboy_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/demigirl_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/enby_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/gay_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/genderfluid_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/genderqueer_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/gray_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/grey_r_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/grey_s_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/greyrose_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/intersex_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/lesbian_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/pan_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/poly_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/pride_shark"
}

View File

@ -1,3 +0,0 @@
{
"parent": "joy:block/trans_shark"
}