From 7a72b26d3893d69dec196b627881c2cbb15ce656 Mon Sep 17 00:00:00 2001 From: DrPerkyLegit Date: Sat, 30 May 2026 01:12:57 -0400 Subject: [PATCH] add villager trade, fix missing villager name --- Minecraft.World/Villager.cpp | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/Minecraft.World/Villager.cpp b/Minecraft.World/Villager.cpp index ff21005..10e96fd 100644 --- a/Minecraft.World/Villager.cpp +++ b/Minecraft.World/Villager.cpp @@ -467,11 +467,12 @@ void Villager::addOffers(int addCount) case PROFESSION_LIBRARIAN: addItemForTradeIn(newOffers, Item::paper_Id, random, getRecipeChance(.8f)); addItemForTradeIn(newOffers, Item::book_Id, random, getRecipeChance(.8f)); - //addItemForTradeIn(newOffers, Item::writtenBook_Id, random, getRecipeChance(0.3f)); + addItemForTradeIn(newOffers, Item::writtenBook_Id, random, getRecipeChance(0.3f)); addItemForPurchase(newOffers, Tile::bookshelf_Id, random, getRecipeChance(.8f)); addItemForPurchase(newOffers, Tile::glass_Id, random, getRecipeChance(.2f)); addItemForPurchase(newOffers, Item::compass_Id, random, getRecipeChance(.2f)); addItemForPurchase(newOffers, Item::clock_Id, random, getRecipeChance(.2f)); + addItemForPurchase(newOffers, Item::nameTag_Id, random, getRecipeChance(.2f)); if (random->nextFloat() < getRecipeChance(0.07f)) { @@ -543,7 +544,7 @@ void Villager::staticCtor() MIN_MAX_VALUES[Item::diamond_Id] = pair(4, 6); MIN_MAX_VALUES[Item::paper_Id] = pair(24, 36); MIN_MAX_VALUES[Item::book_Id] = pair(11, 13); - //MIN_MAX_VALUES.insert(Item::writtenBook_Id, pair(1, 1)); + MIN_MAX_VALUES[Item::writtenBook_Id] = pair(1, 1); MIN_MAX_VALUES[Item::enderPearl_Id] = pair(3, 4); MIN_MAX_VALUES[Item::eyeOfEnder_Id] = pair(2, 3); MIN_MAX_VALUES[Item::porkChop_raw_Id] = pair(14, 18); @@ -602,6 +603,8 @@ void Villager::staticCtor() MIN_MAX_PRICES[Item::chicken_cooked_Id] = pair(-8, -6); MIN_MAX_PRICES[Item::eyeOfEnder_Id] = pair(7, 11); MIN_MAX_PRICES[Item::arrow_Id] = pair(-12, -8); + + MIN_MAX_VALUES[Item::nameTag_Id] = pair(20, 22); } /** @@ -754,26 +757,22 @@ wstring Villager::getDisplayName() { if (hasCustomName()) return getCustomName(); - int name = IDS_VILLAGER; switch(getProfession()) { case PROFESSION_FARMER: - name = IDS_VILLAGER_FARMER; - break; + return L"Farmer"; case PROFESSION_LIBRARIAN: - name = IDS_VILLAGER_LIBRARIAN; - break; + return L"Librarian"; case PROFESSION_PRIEST: - name = IDS_VILLAGER_PRIEST; - break; + return L"Priest"; case PROFESSION_SMITH: - name = IDS_VILLAGER_SMITH; - break; + return L"Smith"; case PROFESSION_BUTCHER: - name = IDS_VILLAGER_BUTCHER; - break; + return L"Butcher"; + default: + return L"Villager"; }; - return app.GetString(name); + } void Villager::thunderHit(const LightningBolt* lightningBolt)