Move the vendor mod table off the legacy item template
LOAD_TEMPLATE_MODTABLES now returns a templateID -> modTable map that ForgeManager owns (vendorModTables). ForgeManager.forgeItem, WorkOrder validation and the ManageNPCMsg forge item list read it through ForgeManager.getVendorModTable(), and ItemTemplate.modTable is removed. Values are unchanged: static_vendor_items has 5089 rows, one per templateID, all present in static_item_templates, modTable 0-30. Templates not in the table still read 0. The old loader stopped at the first templateID missing from ItemTemplate.templates; there are none. No comparator added or removed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
2b4c1a73d1
commit
70ea9b3bc9
6 files changed
+27
-20
No files matched your search
@@ -136,7 +136,7 @@ public class WorkOrder implements Delayed {
|
||||
return 30; //30: That person cannot carry that item
|
||||
|
||||
if ((workOrder.prefixToken != 0 || workOrder.suffixToken != 0) &&
|
||||
!workOrder.vendor.getItemModTable().contains((template.modTable)))
|
||||
!workOrder.vendor.getItemModTable().contains(ForgeManager.getVendorModTable(workOrder.templateID)))
|
||||
return 59; //59: This hireling does not have this formula
|
||||
|
||||
if (!Warehouse.calcCostOverrun(workOrder).isEmpty())
|
||||
|
||||
Reference in new issue
Block a user