ModernUO/Projects/UOContent/Mobiles/Vendors/NPC
Robert Dickey 865a8cf218
fix: sell Bushido and Ninjitsu books through Tokuno scribes (#2622)
Tokuno scribes currently load only `SBScribe`, so the existing Zento scribe does not offer the Book of Bushido or Book of Ninjitsu. Add the existing `SBSamurai` and `SBNinja` inventories when `Core.SE && IsTokunoVendor`.

This reuses the existing book prices and default stock quantities. It does not change NPC placement, trainer behavior, or inventories outside Tokuno.

### Sources and reasoning

- The [official UO Ninjitsu guide](https://uo.com/wiki/ultima-online-wiki/skills/ninjitsu/) identifies the scribe at Rokuon Cultural Center in Zento as a seller of the Book of Ninjitsu.
- [UOGuide: Bushido](https://www.uoguide.com/Bushido), documenting standard UO, explicitly lists Tokuno Islands scribe NPCs as a source for the Book of Bushido. This supports adding both book inventories to Tokuno scribes.
- Documentation distinction: the [official UO Bushido guide](https://uo.com/wiki/ultima-online-wiki/skills/bushido/) describes the Zento seller as a samurai trainer, rather than a scribe. The Bushido scribe change follows the explicit UOGuide description. These references do not independently establish the exact historical introduction date or original prices.

### Validation

- Built the change in a customized ModernUO 0.15.6.145 deployment: Release, linux-x64, zero warnings or errors.
- In-game with Mondain's Legacy enabled: both books appeared on the existing Zento scribe, and a player successfully purchased both.
- Reviewed the expansion/location guard for pre-SE and non-Tokuno behavior; those cases were not gameplay-tested. This exact patch has not been built against current upstream main.
2026-09-09 23:07:32 -07:00
..
Guildmasters feat: Pre-Publish 14 Crafting (supersedes #2181, #2381) (#2476) 2026-06-07 20:27:22 -07:00
Alchemist.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
AnimalTrainer.cs fix: pet release never finished, summon master follows the pet, horse breeder and notoriety guards (#2613) 2026-09-06 16:12:29 -07:00
Architect.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Armorer.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Baker.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Bard.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Barkeeper.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Beekeeper.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Blacksmith.cs chore: Fixes variable types for possible performance issues (#2172) 2025-05-01 21:54:41 -07:00
Bowyer.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Butcher.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Carpenter.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Cobbler.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Cook.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
CustomHairstylist.cs fix: Refactors Custom Hairstylist (#2188) 2025-05-17 03:30:07 -07:00
Farmer.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Fisherman.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Furtrader.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Glassblower.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
GolemCrafter.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
GypsyAnimalTrainer.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
GypsyBanker.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
GypsyMaiden.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
HairStylist.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Herbalist.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
HolyMage.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
InnKeeper.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
IronWorker.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Jeweler.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
KeeperOfChivalry.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
LeatherWorker.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Mage.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Mapmaker.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Miller.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Miner.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Monk.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Provisioner.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Rancher.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Ranger.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
RealEstateBroker.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Scribe.cs fix: sell Bushido and Ninjitsu books through Tokuno scribes (#2622) 2026-09-09 23:07:32 -07:00
Shipwright.cs fix: Fixes missing codegen for ShipWright (#1316) 2022-12-30 10:48:42 -08:00
StoneCrafter.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Tailor.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Tanner.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
TavernKeeper.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Thief.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Tinker.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Vagabond.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
VarietyDealer.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Veterinarian.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Waiter.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Weaponsmith.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00
Weaver.cs fix: Changes on Vendor>NPC to use code generation (#1308) 2022-12-22 12:40:26 -08:00