From d02f0d2cdf67f1445a9ccae86b99a2578adab585 Mon Sep 17 00:00:00 2001 From: historia <[not public]> Date: Fri, 10 Jul 2026 17:02:13 -0400 Subject: feat(admin): update search to use standard condition/action framework rather than bespoke implementation --- internal/admin/static/triggerseditor.js | 37 ++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) (limited to 'internal/admin/static/triggerseditor.js') diff --git a/internal/admin/static/triggerseditor.js b/internal/admin/static/triggerseditor.js index 29759eb..dbc1e41 100644 --- a/internal/admin/static/triggerseditor.js +++ b/internal/admin/static/triggerseditor.js @@ -110,7 +110,7 @@ function syncStepEffects(row, si) { if (!effectsEl) return; var step = triggerData.steps[si] || {}; ['messages','broadcast','broadcast_global','teleport','heal','credits', - 'give_item','take_item','despawn_mob','aps_node'].forEach(function(k) { delete step[k]; }); + 'give_item','take_item','despawn_mob','aps_node','drop_table'].forEach(function(k) { delete step[k]; }); delete step.set_global_flags; delete step.set_player_flags; delete step.spawn_mob; var msgInputs = effectsEl.querySelectorAll('.trig-msg-input'); @@ -147,6 +147,12 @@ function syncStepEffects(row, si) { step.spawn_mob.id = smInput.value.trim(); } + var dtBlock = effectsEl.querySelector('.ie-drop-table'); + if (dtBlock) { + var dt = ie_collectDropTableBlock(dtBlock); + if (dt) step.drop_table = dt; + } + triggerData.steps[si] = step; } @@ -336,9 +342,37 @@ function renderStepEffects(step, si) { h += renderKVSection('Set Player Flags', 'set_player_flags', step.set_player_flags); } + if (Array.isArray(step.drop_table) || step.drop_table !== undefined) { + h += '