// Brass & Sigil — JEI hides // // Hides all Waystones items + all Numismatics coin items from the JEI // item list. Combined with the server-side recipe removal in // economy_policy.js, players don't see crafting recipes OR the item // icons in the JEI ingredient list -- they only ever encounter these // items through the welcome grant or the bank exchange. const COLORS = [ 'white', 'orange', 'magenta', 'light_blue', 'yellow', 'lime', 'pink', 'gray', 'light_gray', 'cyan', 'purple', 'blue', 'brown', 'green', 'red', 'black', ]; const WAYSTONE_ITEMS = [ // regular waystone variants 'waystones:waystone', 'waystones:mossy_waystone', 'waystones:sandy_waystone', 'waystones:blackstone_waystone', 'waystones:deepslate_waystone', 'waystones:end_stone_waystone', // handheld + plate 'waystones:warp_stone', 'waystones:warp_scroll', 'waystones:bound_scroll', 'waystones:return_scroll', 'waystones:warp_plate', // sharestones (16 colors) + shards 'waystones:sharestone', // base id if registered ]; COLORS.forEach(c => { WAYSTONE_ITEMS.push(`waystones:${c}_sharestone`); WAYSTONE_ITEMS.push(`waystones:${c}_portstone`); }); const COIN_ITEMS = [ 'numismatics:spur', 'numismatics:bevel', 'numismatics:cog', 'numismatics:crown', 'numismatics:sun', ]; JEIEvents.hideItems(event => { [...WAYSTONE_ITEMS, ...COIN_ITEMS].forEach(id => { try { event.hide(id); } catch (e) { // Some IDs may not exist (e.g. base 'waystones:sharestone' isn't // registered if only colored variants are). Swallow per-item // failures so one bad id doesn't break the whole pass. } }); });