Skip to content

Commit 29348ce

Browse files
KaupenjoeKaupenjoe
authored andcommitted
custom villager type
1 parent 5556148 commit 29348ce

11 files changed

Lines changed: 79 additions & 23 deletions

File tree

src/main/generated/.cache/1d732d3dd44f404bf56dee978e8311d6b3d29375

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
// 1.21.1 2025-01-02T18:47:58.901123 Tutorial Mod/
1+
// 1.21.1 2025-01-13T12:14:18.116129 Tutorial Mod/
22
64fc55f11d6f0c33caff17ecfb237f62e203dab4 data\tutorialmod\worldgen\placed_feature\nether_pink_garnet_ore_placed.json
33
7a3f15654432df3e07797bc6b4c446d30171931d data\tutorialmod\worldgen\configured_feature\nether_pink_garnet_ore.json
44
c8755c065a2eeab2b497e8d37c52b3b13cadff0f data\tutorialmod\worldgen\placed_feature\honey_berry_bush_placed.json
55
e336321ea1fc9ae816052f453ffa3778fbb65e51 data\tutorialmod\enchantment\lightning_striker.json
6-
454d4a2960bb565a3e43bbdcebbd00f18ebd8b4a data\tutorialmod\worldgen\configured_feature\driftwood.json
76
0f7ebea94a3e2b9c524868b159c8e9ace387ffa9 data\tutorialmod\worldgen\placed_feature\driftwood_placed.json
7+
1b35182431d814ec2fd0422089ec0323c5a180e2 data\tutorialmod\worldgen\configured_feature\driftwood.json
88
a248f3d2ed7262ab9e3ba1194d67ffd6b2e0d1cb data\tutorialmod\trim_pattern\kaupen.json
99
71f703c1e3662cffcd2d53f12d3b63d3ca44d44c data\tutorialmod\worldgen\configured_feature\pink_garnet_ore.json
1010
49b7301e34ddf925b7691873183712e13be0dab1 data\tutorialmod\worldgen\placed_feature\pink_garnet_ore_placed.json

src/main/generated/.cache/378f9509398ea584ca54616156177f9ec588f984

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// 1.21.1 2025-01-02T18:47:58.899122 Tutorial Mod/Block Loot Tables
1+
// 1.21.1 2025-01-13T12:14:18.114133 Tutorial Mod/Block Loot Tables
22
aba6545b7719a6ba09923ffe9708c8687f5ce4e9 data\tutorialmod\loot_table\blocks\cauliflower_crop.json
33
633f1a0fb106fb43356695bc26b6a016da215c5e data\tutorialmod\loot_table\blocks\driftwood_leaves.json
44
58a241a531737adcfd3f142c19c046fc895f84dc data\tutorialmod\loot_table\blocks\stripped_driftwood_log.json

src/main/generated/.cache/80beaa027efbcf9e17d04d48300d7784fb0cb57f

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// 1.21.1 2025-01-02T18:47:58.9031204 Tutorial Mod/Tags for minecraft:block
1+
// 1.21.1 2025-01-13T12:14:18.1171331 Tutorial Mod/Tags for minecraft:block
22
8159fdbcb7619cbd57674525489b6dfed8a407fd data\minecraft\tags\block\fence_gates.json
33
c07c4c3be2f1e2228e70cca883d68ce9bd7ba47e data\tutorialmod\tags\block\needs_pink_garnet_tool.json
44
079e21ee82e19be3b06c0ad61d06e9bdce588108 data\minecraft\tags\block\needs_iron_tool.json

src/main/generated/.cache/bf8b55c7a3e1253642a8b1063c0b39ff5689945b

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
// 1.21.1 2025-01-02T18:47:58.9021187 Tutorial Mod/Model Definitions
2-
826d6bd191f97dd0a81560627f54f0dd3d93d539 assets\tutorialmod\models\item\cauliflower.json
1+
// 1.21.1 2025-01-13T12:14:18.116129 Tutorial Mod/Model Definitions
32
de7cef03dda3a791b1e729beb70408dd1bdfc9a8 assets\tutorialmod\models\block\pink_garnet_fence_side.json
3+
826d6bd191f97dd0a81560627f54f0dd3d93d539 assets\tutorialmod\models\item\cauliflower.json
44
add44d7d8c56389e1421ca4553aeb6af9d6cac52 assets\tutorialmod\models\block\pink_garnet_door_top_left.json
55
45c1f72b68dbd01526cbfbe3e2924b10a6c08515 assets\tutorialmod\models\block\pink_garnet_trapdoor_bottom.json
66
76a79025ce73edf3ba690a750b764d4bada22ed8 assets\tutorialmod\models\item\pink_garnet_leggings_amethyst_trim.json
@@ -22,14 +22,14 @@ ab962cd8728f30199b0c73a4d57cfa1ba933d6bb assets\tutorialmod\models\item\pink_gar
2222
a0705209ed976483f2dfa04fb1e9a6a5bc7e4ad7 assets\tutorialmod\models\item\pink_garnet_leggings_netherite_trim.json
2323
2c337e9d04bbac33f9d13fdfaac49fb239b1b0d9 assets\tutorialmod\models\item\pink_garnet_lamp.json
2424
a7779ae2aac4f4da3808d0d77fdeae99af2b43f8 assets\tutorialmod\models\item\pink_garnet_wall.json
25-
ed27aaa00c275028e1495bb6d6bfdcea1851067b assets\tutorialmod\models\block\magic_block.json
2625
4045d824b7d7d69a90e27b8ec8b807e0e3b0e0de assets\tutorialmod\models\item\driftwood_sapling.json
26+
ed27aaa00c275028e1495bb6d6bfdcea1851067b assets\tutorialmod\models\block\magic_block.json
2727
00d484aeafa1b6b8a7a6dcc575cfd572b517bd23 assets\tutorialmod\models\item\pink_garnet_hammer.json
2828
767b2817679e427fc9d1c75e0de3281f6d03f9ea assets\tutorialmod\models\block\driftwood_leaves.json
2929
ace2be44ba279d782851a83721cbb60656643c2d assets\tutorialmod\models\item\pink_garnet_helmet_iron_trim.json
3030
a8da2b52484bd59ceded0f77d3d0e83e1bbf6950 assets\tutorialmod\models\block\driftwood_sapling.json
31-
f3f72a1eb57f8b905366cac9bf1a67bca00e859b assets\tutorialmod\models\block\pink_garnet_slab.json
3231
a6301422a0740a01db4de03064f9c7cca41e0451 assets\tutorialmod\models\item\chair.json
32+
f3f72a1eb57f8b905366cac9bf1a67bca00e859b assets\tutorialmod\models\block\pink_garnet_slab.json
3333
a78045a19bc30ef61f0b9dd96053f6916f7ee07f assets\tutorialmod\models\block\driftwood_log_horizontal.json
3434
d7b95d4b07c60273a02a034269f3cdbb0dcf2784 assets\tutorialmod\blockstates\driftwood_wood.json
3535
3188a352602d2d423ee9366748119ff0ba3905c9 assets\tutorialmod\models\block\pink_garnet_fence_gate_open.json
@@ -39,15 +39,15 @@ d7b95d4b07c60273a02a034269f3cdbb0dcf2784 assets\tutorialmod\blockstates\driftwoo
3939
14a77355431941873ff0d6076b9d11f952e48e83 assets\tutorialmod\models\item\pink_garnet_helmet_copper_trim.json
4040
09088767aa9d94be50e61bfa95da2ffbc6e640d3 assets\tutorialmod\models\block\cauliflower_crop_stage6.json
4141
f6782b74c6765a7069b470aa024e7842d988830e assets\tutorialmod\models\block\pink_garnet_door_top_left_open.json
42-
4d633dc23654e5f70770dc4b835059a04300f26f assets\tutorialmod\models\block\pink_garnet_lamp_on.json
4342
149fe694563e9829ab159973ffcd4fe467818d0a assets\tutorialmod\models\item\pink_garnet_chestplate_lapis_trim.json
43+
4d633dc23654e5f70770dc4b835059a04300f26f assets\tutorialmod\models\block\pink_garnet_lamp_on.json
4444
f7a00292b90ecbcc932f126d5f226891cf6b6012 assets\tutorialmod\models\item\pink_garnet_nether_ore.json
4545
78060f761e21d98042a47bf0698ec8ee5d9abad2 assets\tutorialmod\models\block\pink_garnet_wall_side.json
4646
5f49883df4b0c9bd2e80db5c5f5392b579b5a7cd assets\tutorialmod\models\block\cauliflower_crop_stage5.json
4747
449182fb0ac0479cfb756ef062a8c183fc5a3c2a assets\tutorialmod\models\item\kaupen_armor_trim_smithing_template.json
4848
63ec6c618a3a23eab4cab9c52d7d3250de9b516e assets\tutorialmod\models\item\mantis_spawn_egg.json
49-
03b168b9f42f1bab6bd21354f1ab060c7880d970 assets\tutorialmod\models\block\pink_garnet_end_ore.json
5049
85f8daae4c33ffad6aebd3e7f1d0bba169b1dff1 assets\tutorialmod\models\block\pink_garnet_door_top_right.json
50+
03b168b9f42f1bab6bd21354f1ab060c7880d970 assets\tutorialmod\models\block\pink_garnet_end_ore.json
5151
b4d76c98e3f66c7f9fe3667a7292ab19b617b44a assets\tutorialmod\models\item\honey_berries.json
5252
248015f397e8eaa74c1c5129d029c7a43916caa1 assets\tutorialmod\models\block\stripped_driftwood_log.json
5353
c9cc7ab7c299fce033da47ee15dfa7a259a4e0fb assets\tutorialmod\models\block\pink_garnet_fence_post.json
@@ -70,9 +70,9 @@ e4a99a451261b58f0ad99c765ea8dfb6af84412b assets\tutorialmod\blockstates\pink_gar
7070
c0f86e3f90e3aee91ec48242469069878a02edef assets\tutorialmod\models\block\pink_garnet_fence_gate_wall.json
7171
9b331a01219b0f1fbc72dc6fd41a1f0dc1330c09 assets\tutorialmod\models\item\stripped_driftwood_log.json
7272
cf96d28db115823b34bfd1565914960950d7f752 assets\tutorialmod\models\block\pink_garnet_stairs_outer.json
73-
19e117f512b98bc699379365b240a1afd8dfb66e assets\tutorialmod\blockstates\pink_garnet_lamp.json
7473
728955dac1ae3917f7506e988e00df1c568fe08a assets\tutorialmod\blockstates\pink_garnet_stairs.json
7574
22e3abaf5d35f4abb244206541c642bd57e93135 assets\tutorialmod\models\item\pink_garnet_fence.json
75+
19e117f512b98bc699379365b240a1afd8dfb66e assets\tutorialmod\blockstates\pink_garnet_lamp.json
7676
8d78b866bd5c4782e72d22f2bf83140a407bb550 assets\tutorialmod\models\block\pink_garnet_door_bottom_right.json
7777
f7956eb1acfccb309307cd40ba8d8e9a1f968b6e assets\tutorialmod\models\block\pink_garnet_pressure_plate_down.json
7878
1ea882168c3f6c6f5a5211ad546caa0682f6a711 assets\tutorialmod\models\block\pink_garnet_nether_ore.json
@@ -98,26 +98,26 @@ fbe25d6d6c7774cae3f8d493b26c35051b9eec04 assets\tutorialmod\models\item\pink_gar
9898
81bb3e4be03a91f0bc9119ef53fc4229cc8e66b7 assets\tutorialmod\blockstates\pink_garnet_trapdoor.json
9999
24f724c2198ff8944770b708972a4fb85bb82e77 assets\tutorialmod\models\block\pink_garnet_trapdoor_open.json
100100
1cc6be5e04b894e83adeca617247813233d85120 assets\tutorialmod\models\block\pink_garnet_door_bottom_right_open.json
101-
2432c923c88cdd88393f1121430a566ab1fcedae assets\tutorialmod\models\block\cauliflower_crop_stage2.json
102101
a14b776861c63f6e0da6942ef0b17cd5bb50e48d assets\tutorialmod\models\block\pink_garnet_pressure_plate.json
102+
2432c923c88cdd88393f1121430a566ab1fcedae assets\tutorialmod\models\block\cauliflower_crop_stage2.json
103103
23f375910536eabdd8edc98d945a973c1ad227b6 assets\tutorialmod\models\block\pink_garnet_door_top_right_open.json
104-
a6f7246ee184c6cf0823d42ea0f7fbae96f46f23 assets\tutorialmod\models\block\honey_berry_bush_stage1.json
105104
01e09c727272c77367655cf96923b5d3a9a8c901 assets\tutorialmod\models\item\pink_garnet_helmet.json
105+
a6f7246ee184c6cf0823d42ea0f7fbae96f46f23 assets\tutorialmod\models\block\honey_berry_bush_stage1.json
106106
f9ed04be9d2f4997aacfb20ab46ea7ab66f571b9 assets\tutorialmod\models\block\pink_garnet_stairs.json
107107
a4dd4c2f1de0c937e93fee9f3b393e7a05617b94 assets\tutorialmod\models\block\pink_garnet_wall_post.json
108108
a44535d9d85c5ae6fefb4d39b428c9af7e9900e8 assets\tutorialmod\models\item\pink_garnet_boots.json
109-
e6ce31e2d850fdc4b307c7e14fd0ce396c09c357 assets\tutorialmod\models\item\raw_pink_garnet_block.json
110109
7ab9e187331a16f3cfa67d61ecc1d896291e7ff4 assets\tutorialmod\models\item\pink_garnet_chestplate_copper_trim.json
110+
e6ce31e2d850fdc4b307c7e14fd0ce396c09c357 assets\tutorialmod\models\item\raw_pink_garnet_block.json
111111
d4f2571a42ea39d2c92dcdcbcd9d835f5e0ea76c assets\tutorialmod\models\block\honey_berry_bush_stage0.json
112112
93256a0a2c6cb54a34d92fff40f62a2c7ae32461 assets\tutorialmod\models\item\pink_garnet_pressure_plate.json
113113
5426855a63fe5d217174d00fe0f885d9add835ec assets\tutorialmod\models\item\pink_garnet_helmet_diamond_trim.json
114114
962989b7a68b022d4f6203f81683fa7993012349 assets\tutorialmod\blockstates\stripped_driftwood_log.json
115115
b7d757a10078d2c3b7b3c8c3fc52ec06cd8343d4 assets\tutorialmod\models\item\pink_garnet_leggings_copper_trim.json
116-
4e5264e1496f50b39797c17de60edbdee91753d7 assets\tutorialmod\blockstates\pink_garnet_end_ore.json
117116
fa9080666ba4e3910d0814ec35a3e300f861fb1c assets\tutorialmod\models\item\starlight_ashes.json
118-
122234d5a08c337bde3aa74fc23731cf53f4d7c8 assets\tutorialmod\blockstates\honey_berry_bush.json
117+
4e5264e1496f50b39797c17de60edbdee91753d7 assets\tutorialmod\blockstates\pink_garnet_end_ore.json
119118
eefb2c80e1274d2af9997558850ef1f06bf4ae04 assets\tutorialmod\blockstates\pink_garnet_pressure_plate.json
120119
f8b6f1021ac80c221d8d83ede8e5816c45ef723f assets\tutorialmod\blockstates\pink_garnet_button.json
120+
122234d5a08c337bde3aa74fc23731cf53f4d7c8 assets\tutorialmod\blockstates\honey_berry_bush.json
121121
14da4146e8a9ef621cae14b9287ddaffe7ceda22 assets\tutorialmod\models\block\driftwood_planks.json
122122
7db57b6386f02d11557397a148c30dea085235e0 assets\tutorialmod\blockstates\pink_garnet_slab.json
123123
e10ed0f44080df33ec18cbea1e4ca95ffa54b62f assets\tutorialmod\models\item\pink_garnet_button.json
@@ -135,8 +135,8 @@ e64dbf78056524e8ddd24b2b5ae8e50cb2575437 assets\tutorialmod\models\item\pink_gar
135135
81f2e13d6cc679527d92913f5a65a9a039ed52d9 assets\tutorialmod\models\item\pink_garnet_chestplate_netherite_trim.json
136136
f994d1b72c20eb9b7ec7865b240aa35ea234a49c assets\tutorialmod\models\item\pink_garnet_helmet_redstone_trim.json
137137
bca9ff36f9818e960478cbf836814f3bd7ca2d53 assets\tutorialmod\models\item\pink_garnet_boots_quartz_trim.json
138-
ef1aa6cb184e8340a5afc3a86268274faaf4ce20 assets\tutorialmod\models\item\pink_garnet_ore.json
139138
456dcc4ff2b0de4054ba3e2d9e5585de9104ec3b assets\tutorialmod\models\item\pink_garnet_leggings.json
139+
ef1aa6cb184e8340a5afc3a86268274faaf4ce20 assets\tutorialmod\models\item\pink_garnet_ore.json
140140
8ddfdc10d7070d71bc96e16eda77bad9dfb603fe assets\tutorialmod\models\block\pink_garnet_button_pressed.json
141141
57e30f54a5f8cabd13db8a1c1942e7316bb4160e assets\tutorialmod\models\item\pink_garnet_hoe.json
142142
f746b64540daf2ab6302b3ec01a78490c48fc10b assets\tutorialmod\models\item\bar_brawl_music_disc.json
@@ -148,16 +148,16 @@ e45c0bc65a8eab7b5b7c1517ad75f7c54a4bfab7 assets\tutorialmod\models\item\pink_gar
148148
268b730235251428de57a90cd62354235e9820b3 assets\tutorialmod\blockstates\stripped_driftwood_wood.json
149149
1486fa6458a3090a103fd2c3abdcbe3313087ac3 assets\tutorialmod\models\item\pink_garnet_chestplate.json
150150
02e3b536b79403608517865eacf91a8d9adce757 assets\tutorialmod\models\item\pink_garnet_chestplate_amethyst_trim.json
151-
db3c7fd404543728f8b989bee0ca68018dac6e79 assets\tutorialmod\models\item\magic_block.json
152151
d07d9c39d26911876be7b596eca7527632b20be2 assets\tutorialmod\models\item\pink_garnet_horse_armor.json
152+
db3c7fd404543728f8b989bee0ca68018dac6e79 assets\tutorialmod\models\item\magic_block.json
153153
40af2d76a6efa3e50ba294cfc6f11efb6e11854f assets\tutorialmod\blockstates\pink_garnet_deepslate_ore.json
154154
73f0318c977aefb7a5084eab98b03949bb15d457 assets\tutorialmod\models\block\driftwood_wood.json
155155
b7b6d1ec0c6f9dc025a7b966c24511af2f8e42cc assets\tutorialmod\models\block\driftwood_log.json
156156
9204479f209f552d935279fa732b1db0ac50cce6 assets\tutorialmod\models\item\pink_garnet_fence_gate.json
157157
74b4cd1c5f34e4c67a9c8e3a079f2aae3a8d530b assets\tutorialmod\models\block\cauliflower_crop_stage1.json
158158
647cf0235e37682ea58fc3d862cad62a2dc267fa assets\tutorialmod\models\block\cauliflower_crop_stage4.json
159-
1de8986c7f889df43a340003b65d2a4a43bc2348 assets\tutorialmod\models\item\raw_pink_garnet.json
160159
a264d62761eee33c3ef27bb4a3b28c4a5d01c3c7 assets\tutorialmod\models\block\pink_garnet_wall_inventory.json
160+
1de8986c7f889df43a340003b65d2a4a43bc2348 assets\tutorialmod\models\item\raw_pink_garnet.json
161161
9259f7ad8475837988d4a226212ceaa71d674929 assets\tutorialmod\blockstates\cauliflower_crop.json
162162
37d814e2e0356a246af16618c42984b84d9e2ed9 assets\tutorialmod\models\block\pink_garnet_block.json
163163
5766845b2b537199e0d43d0fa33b3fb4ff9dc38d assets\tutorialmod\models\block\pink_garnet_ore.json

src/main/generated/.cache/dfb0a8ea05a472c697eb35080aef6b0f1497af5b

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// 1.21.1 2025-01-02T18:47:58.9001191 Tutorial Mod/Recipes
1+
// 1.21.1 2025-01-13T12:14:18.1151331 Tutorial Mod/Recipes
22
612885645657e824e35aaf7ab21f9a0d6d427c19 data\tutorialmod\advancement\recipes\misc\raw_pink_garnet_from_magic_block.json
33
434e6d50936f8f4e61b7019a3b6f0717cf6020ac data\tutorialmod\recipe\pink_garnet_from_smelting_raw_pink_garnet.json
44
da415f625ebc9331383714ee60ff41204e6976b2 data\tutorialmod\advancement\recipes\misc\pink_garnet_from_blasting_pink_garnet_deepslate_ore.json
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
// 1.21.1 2025-01-02T18:47:58.8981189 Tutorial Mod/Tags for minecraft:item
1+
// 1.21.1 2025-01-13T12:14:18.114133 Tutorial Mod/Tags for minecraft:item
22
092261f42ebfb549fb26de57a2f4a5a8b86bc6b9 data\tutorialmod\tags\item\transformable_items.json
3-
3785ccf2250da2396658a0921bd6f81beb1f7be9 data\minecraft\tags\item\trim_templates.json
43
6ba665925c3e1e7b5501fa38ab3095b1987c0886 data\minecraft\tags\item\trim_materials.json
4+
3785ccf2250da2396658a0921bd6f81beb1f7be9 data\minecraft\tags\item\trim_templates.json
55
8f653a3350d8f1fbd15d245e7de66379a30930e2 data\minecraft\tags\item\swords.json
66
9359d13780a2f1f165db692a2df57266b1806e2a data\minecraft\tags\item\planks.json
77
a83d7a926074b69c0b715a6d7e603b0fc4c78d11 data\minecraft\tags\item\hoes.json
88
2aea14bcf6e0112aa2f69d63beab9d27793a3eb3 data\minecraft\tags\item\logs_that_burn.json
9-
8ced195f504be266fa1818b0cfbd2ee244987195 data\minecraft\tags\item\axes.json
109
351330e211b4558f91f0550566fbac71f5a3b2e5 data\minecraft\tags\item\shovels.json
10+
8ced195f504be266fa1818b0cfbd2ee244987195 data\minecraft\tags\item\axes.json
1111
1a39dedd310f06bf1a624b4363f683ebe3b2905b data\minecraft\tags\item\trimmable_armor.json
1212
840726859672b531edb33e064e2e0943de7fc82d data\minecraft\tags\item\pickaxes.json

src/main/java/net/kaupenjoe/tutorialmod/TutorialMod.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
import net.kaupenjoe.tutorialmod.potion.ModPotions;
1919
import net.kaupenjoe.tutorialmod.sound.ModSounds;
2020
import net.kaupenjoe.tutorialmod.util.HammerUsageEvent;
21+
import net.kaupenjoe.tutorialmod.villager.ModVillagers;
2122
import net.kaupenjoe.tutorialmod.world.gen.ModWorldGeneration;
2223
import net.minecraft.entity.effect.StatusEffectInstance;
2324
import net.minecraft.entity.effect.StatusEffects;
@@ -51,6 +52,7 @@ public void onInitialize() {
5152
ModWorldGeneration.generateModWorldGen();
5253

5354
ModEntities.registerModEntities();
55+
ModVillagers.registerVillagers();
5456

5557
FuelRegistry.INSTANCE.add(ModItems.STARLIGHT_ASHES, 600);
5658

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
package net.kaupenjoe.tutorialmod.villager;
2+
3+
import com.google.common.collect.ImmutableSet;
4+
import net.fabricmc.fabric.api.object.builder.v1.world.poi.PointOfInterestHelper;
5+
import net.kaupenjoe.tutorialmod.TutorialMod;
6+
import net.kaupenjoe.tutorialmod.block.ModBlocks;
7+
import net.minecraft.block.Block;
8+
import net.minecraft.registry.Registries;
9+
import net.minecraft.registry.Registry;
10+
import net.minecraft.registry.RegistryKey;
11+
import net.minecraft.registry.RegistryKeys;
12+
import net.minecraft.sound.SoundEvents;
13+
import net.minecraft.util.Identifier;
14+
import net.minecraft.village.VillagerProfession;
15+
import net.minecraft.world.poi.PointOfInterestType;
16+
17+
public class ModVillagers {
18+
public static final RegistryKey<PointOfInterestType> KAUPEN_POI_KEY = registerPoiKey("kaupen_poi");
19+
public static final PointOfInterestType KAUPEN_POI = registerPOI("kaupen_poi", ModBlocks.CHAIR);
20+
21+
public static final VillagerProfession KAUPENGER = registerProfession("kaupenger", KAUPEN_POI_KEY);
22+
23+
24+
private static VillagerProfession registerProfession(String name, RegistryKey<PointOfInterestType> type) {
25+
return Registry.register(Registries.VILLAGER_PROFESSION, Identifier.of(TutorialMod.MOD_ID, name),
26+
new VillagerProfession(name, entry -> entry.matchesKey(type), entry -> entry.matchesKey(type),
27+
ImmutableSet.of(), ImmutableSet.of(), SoundEvents.ENTITY_VILLAGER_WORK_LIBRARIAN));
28+
}
29+
30+
private static PointOfInterestType registerPOI(String name, Block block) {
31+
return PointOfInterestHelper.register(Identifier.of(TutorialMod.MOD_ID, name),
32+
1, 1, block);
33+
}
34+
35+
private static RegistryKey<PointOfInterestType> registerPoiKey(String name) {
36+
return RegistryKey.of(RegistryKeys.POINT_OF_INTEREST_TYPE, Identifier.of(TutorialMod.MOD_ID, name));
37+
}
38+
39+
public static void registerVillagers() {
40+
TutorialMod.LOGGER.info("Registering Villagers for " + TutorialMod.MOD_ID);
41+
}
42+
}

src/main/resources/assets/tutorialmod/lang/en_us.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,9 @@
8181
"block.tutorialmod.chair": "Chair",
8282

8383

84+
"entity.minecraft.villager.tutorialmod.kaupenger": "Kaupenger",
85+
86+
8487
"effect.tutorialmod.slimey": "Slimey",
8588

8689
"painting.tutorialmod.world.title": "World",
1.07 KB
Loading

0 commit comments

Comments
 (0)