Skip to content

Commit 3c3a89b

Browse files
author
ozelot379
committed
Convert new v1.16 textures
1 parent b88b1d3 commit 3c3a89b

15 files changed

Lines changed: 239 additions & 24 deletions

‎CHANGELOG.md‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# Changelog
22

3+
## [3.6.0]
4+
- Convert new v1.16 textures
5+
- Convert wither armor texture
6+
- Fix spawn egg mask texture
7+
38
## [3.5.1]
49
- Fix conduit textures
510

‎README.md‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -124,12 +124,12 @@ This files are applied additionally before output
124124

125125
This project uses the follow main features or external libraries:
126126

127-
- [Web Worker](https://developer.mozilla.org/docs/Web/API/Web_Workers_API) for convert it in the background to not freeze the browser ui (web app)
127+
- [Web Worker](https://developer.mozilla.org/docs/Web/API/Web_Workers_API) for convert it in the background to not freeze the browser ui (Web app)
128128
- [jszip](https://www.npmjs.com/package/jszip) for read, modify and write zip files
129129
- [jimp](https://www.npmjs.com/package/jimp) for graphic manipulation
130-
- [file-saver](https://www.npmjs.com/package/file-saver) for deliver the converted pack to download
131-
- [webpack](https://www.npmjs.com/package/webpack) for bundle the dist code
132-
- [Service Worker](https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API) for offline cache and usage (web app)
130+
- [file-saver](https://www.npmjs.com/package/file-saver) for deliver the converted pack to download (Web app)
131+
- [webpack](https://www.npmjs.com/package/webpack) for bundle the dist code (Web app)
132+
- [Service Worker](https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API) for offline cache and usage (Web app)
133133

134134
## Web app
135135

‎package.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "@ozelot379/convert-minecraft-java-texture-to-bedrock-api",
33
"type": "module",
44
"productName": "ConvertJavaTextureToBedrockApi",
5-
"version": "3.5.1",
5+
"version": "3.6.0",
66
"description": "API for convert Minecraft Java texture packs to Bedrock texture packs",
77
"keywords": [
88
"Minecraft",

‎src/converter/ColorizeOverlayConverter.mjs‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,8 @@ class ColorizeOverlayConverter extends AbstractConverter {
134134

135135
// Saddle
136136
[[["textures/entity/pig/pig.png"], ["textures/entity/saddle.png"]], "textures/entity/pig/pig_saddle.png"],
137+
[[["textures/entity/strider/strider.png"], ["textures/entity/strider/strider_saddle.png"]], "textures/entity/strider/strider_saddled.png"],
138+
[[["textures/entity/strider/strider_suffocated.png"], ["textures/entity/strider/strider_saddle.png", null, true]], "textures/entity/strider/strider_suffocated_saddled.png"],
137139

138140
// Splash potion (Colors from px 7/9 from original bedrock textures)
139141
[[["textures/items/potion_overlay.png", [88, 184, 255]], ["textures/items/potion_bottle_splash_empty.png"]], "textures/items/potion_bottle_splash.png"],
@@ -166,6 +168,7 @@ class ColorizeOverlayConverter extends AbstractConverter {
166168

167169
// Spawn egg (Colors from px 8/9 and 5/9 from original bedrock textures)
168170
[[["textures/items/spawn_egg.png", [65, 53, 41]], ["textures/items/spawn_egg_overlay.png", [13, 13, 13]]], "textures/items/egg_bat.png"],
171+
[[["textures/items/spawn_egg.png", [204, 167, 58]], ["textures/items/spawn_egg_overlay.png", [59, 32, 24]]], "textures/items/egg_bee.png"],
169172
[[["textures/items/spawn_egg.png", [211, 153, 1]], ["textures/items/spawn_egg_overlay.png", [226, 220, 112]]], "textures/items/egg_blaze.png"],
170173
[[["textures/items/spawn_egg.png", [239, 200, 142]], ["textures/items/spawn_egg_overlay.png", [135, 101, 74]]], "textures/items/egg_cat.png"],
171174
[[["textures/items/spawn_egg.png", [10, 57, 67]], ["textures/items/spawn_egg_overlay.png", [149, 12, 12]]], "textures/items/egg_cave_spider.png"],
@@ -189,7 +192,7 @@ class ColorizeOverlayConverter extends AbstractConverter {
189192
[[["textures/items/spawn_egg.png", [102, 99, 83]], ["textures/items/spawn_egg_overlay.png", [197, 191, 127]]], "textures/items/egg_husk.png"],
190193
[[["textures/items/spawn_egg.png", [45, 0, 0]], ["textures/items/spawn_egg_overlay.png", [223, 223, 0]]], "textures/items/egg_lava_slime.png"],
191194
[[["textures/items/spawn_egg.png", [165, 136, 107]], ["textures/items/spawn_egg_overlay.png", [136, 84, 57]]], "textures/items/egg_llama.png"],
192-
[[["textures/items/spawn_egg.png"], ["textures/items/spawn_egg_overlay.png"]], "textures/items/egg_mask.png"],
195+
[[["textures/items/spawn_egg.png", [219, 0, 0]], ["textures/items/spawn_egg_overlay.png", [240, 226, 0]]], "textures/items/egg_mask.png"],
193196
[[["textures/items/spawn_egg.png", [23, 2, 0]], ["textures/items/spawn_egg_overlay.png", [72, 45, 26]]], "textures/items/egg_mule.png"],
194197
[[["textures/items/spawn_egg.png", [137, 13, 14]], ["textures/items/spawn_egg_overlay.png", [162, 162, 162]]], "textures/items/egg_mushroomcow.png"],
195198
[[["textures/items/spawn_egg.png"], ["textures/items/spawn_egg_overlay.png"]], "textures/items/egg_null.png"],

‎src/converter/CopyConverter.mjs‎

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,13 @@ class CopyConverter extends AbstractConverter {
2626
*/
2727
static get DEFAULT_CONVERTER_DATA() {
2828
return [
29+
// Battern
30+
["textures/entity/banner/banner_pattern_illager.tga", "textures/entity/banner/banner_illager.tga"],
31+
32+
// Beef
33+
["textures/items/beef_cooked.png", "textures/items/hoglin_meat_cooked.png"],
34+
["textures/items/beef_raw.png", "textures/items/hoglin_meat_raw.png"],
35+
2936
// Cat
3037
["textures/entity/cat/redtabby.png", "textures/entity/cat/red.png"],
3138
["textures/entity/cat/siamesecat.png", "textures/entity/cat/siamese.png"],
@@ -37,6 +44,10 @@ class CopyConverter extends AbstractConverter {
3744
// Command block
3845
["textures/blocks/command_block_back_mipmap.png", "textures/blocks/command_block.png"],
3946

47+
// Compass & clock
48+
["textures/items/compass_atlas.png", "textures/items/lodestonecompass_atlas.png"],
49+
["textures/items/compass_item.png", "textures/items/lodestonecompass_item.png"],
50+
4051
// Fire
4152
["textures/blocks/fire_0.png", "textures/flame_atlas.png"],
4253

@@ -75,6 +86,9 @@ class CopyConverter extends AbstractConverter {
7586
["textures/items/empty_armor_slot_leggings.png", "textures/ui/empty_armor_slot_leggings.png"],
7687
["textures/items/empty_armor_slot_shield.png", "textures/ui/empty_armor_slot_shield.png"],
7788

89+
// Wither
90+
["textures/entity/creeper/creeper_armor.png", "textures/entity/wither_boss/wither_armor_blue.png"],
91+
7892
["bedrock_textures/", "textures/"]
7993
];
8094
}

‎src/converter/DeleteConverter.mjs‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ class DeleteConverter extends AbstractConverter {
2828
return [
2929
"assets/", // Speed up loading
3030

31+
"textures/blocks/chain.png",
32+
3133
"textures/blocks/conduit.png",
3234
"textures/entity/conduit/break_particle.png",
3335

‎src/converter/DespriteExperimentalConverter.mjs‎

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,15 @@ class DespriteExperimentalConverter extends AbstractConverter {
159159
[192, 0, 16, 16, "textures/ui/loom_dye_empty.png", [33, 26, 16, 16]],
160160
[208, 0, 16, 16, "textures/ui/loom_pattern_item_empty.png", [23, 45, 16, 16]]
161161
]
162+
],
163+
[
164+
"textures/gui/container/smithing.png",
165+
256,
166+
[
167+
[17, 7, 30, 30, "textures/ui/smithing_icon.png"],
168+
[53, 49, 13, 13, "textures/ui/smithing-table-plus.png"],
169+
[76, 47, 16, 16, "textures/ui/ingot_image.png"]
170+
]
162171
]
163172
];
164173
}

‎src/converter/DialogConverter.mjs‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ class DialogConverter extends AbstractConverter {
7979
["textures/ui/dialog_background_hollow_2", [8, 23, 8, 42]],
8080
["textures/ui/dialog_background_hollow_3", [8, 23, 8, 8]],
8181
["textures/ui/dialog_background_hollow_4", [8, 8, 8, 8]],
82+
["textures/ui/dialog_background_hollow_4_thin", [6, 6, 6, 6]],
8283
["textures/ui/dialog_background_hollow_5", [8, 17, 8, 42]],
8384
["textures/ui/dialog_background_hollow_6", [8, 23, 8, 104]],
8485
["textures/ui/dialog_background_hollow_7", [8, 66, 8, 8]],

‎src/converter/MetadataConverter.mjs‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ class MetadataConverter extends AbstractConverter {
4141
MetadataConverter.mcmeta = JSON.parse((await this.output.read(from)).toString("utf8").trim()); // trim it to supports UF8 files with 'BOOM' at the beginning
4242

4343
if (MetadataConverter.mcmeta.pack.pack_format !== 4 && MetadataConverter.mcmeta.pack.pack_format !== 5) {
44-
throw new Error("Only supports pack_format 4 (v1.13 and v1.14) or 5 (v1.15)!");
44+
throw new Error("Only supports pack_format 4 (v1.13 or v1.14) or 5 (v1.15 or v1.16)!");
4545
}
4646

4747
const manifest = {

‎src/converter/PiglinConverter.mjs‎

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
import {AbstractConverter} from "./AbstractConverter.mjs";
2+
import {DeleteConverter} from "./DeleteConverter.mjs";
3+
4+
/**
5+
* Class PiglinConverter
6+
*/
7+
class PiglinConverter extends AbstractConverter {
8+
/**
9+
* @inheritDoc
10+
*/
11+
async convert() {
12+
const [from, to, delete_from] = this.data;
13+
14+
const to_delete = [];
15+
16+
if (!await this.output.exists(from)) {
17+
return to_delete;
18+
}
19+
20+
this.log.log(`Convert piglin ${to}`);
21+
22+
const image_from = await this.readImage(from);
23+
24+
const factor = (image_from.getWidth() / 64);
25+
26+
const image = await this.createImage((128 * factor), (128 * factor));
27+
28+
image.composite(image_from.clone().crop(0, 0, (36 * factor), (64 * factor)), 0, 0);
29+
30+
image.composite(image_from.clone().crop((36 * factor), factor, (5 * factor), (5 * factor)), (36 * factor), factor);
31+
32+
image.composite(image_from.clone().crop((39 * factor), (6 * factor), (10 * factor), (9 * factor)), (57 * factor), (22 * factor));
33+
image.composite(image_from.clone().crop((51 * factor), (6 * factor), (10 * factor), (9 * factor)), (57 * factor), (38 * factor));
34+
35+
image.composite(image_from.clone().crop((36 * factor), (16 * factor), (28 * factor), (48 * factor)), (36 * factor), (16 * factor));
36+
37+
await this.writeImage(to, image);
38+
39+
if (delete_from) {
40+
to_delete.push(new DeleteConverter(from));
41+
}
42+
43+
return to_delete;
44+
}
45+
46+
/**
47+
* @inheritDoc
48+
*/
49+
static get DEFAULT_CONVERTER_DATA() {
50+
return [
51+
["textures/entity/piglin/piglin.png", "textures/entity/piglin/piglin.png"],
52+
["textures/entity/piglin/zombified_piglin.png", "textures/entity/piglin/zombie_piglin.png", true]
53+
];
54+
}
55+
}
56+
57+
export {PiglinConverter};

0 commit comments

Comments
 (0)