diff options
| author | historia <[not public]> | 2026-07-05 20:06:53 -0400 |
|---|---|---|
| committer | historia <[not public]> | 2026-07-05 20:07:50 -0400 |
| commit | 843fa6db681e494bf46e191655323a40577542b5 (patch) | |
| tree | cf32ec18d50434c14a1152147ff6e5e8b3576998 /internal/admin/static/objecteditor.js | |
| parent | 7b5ed92e003d8a4bf9bdc69d43b7354eb2260dfa (diff) | |
| download | thehouseoficarus-843fa6db681e494bf46e191655323a40577542b5.tar.gz | |
feat: remove deprecated use/station interaction model
Diffstat (limited to 'internal/admin/static/objecteditor.js')
| -rw-r--r-- | internal/admin/static/objecteditor.js | 54 |
1 files changed, 23 insertions, 31 deletions
diff --git a/internal/admin/static/objecteditor.js b/internal/admin/static/objecteditor.js index 7e2d04b..d4cca21 100644 --- a/internal/admin/static/objecteditor.js +++ b/internal/admin/static/objecteditor.js @@ -61,30 +61,6 @@ var SECTIONS = [ ] }, { - id: 'use', label: 'Use (Station)', path: 'use', - detect: function(d) { return d.use; }, - fields: [ - ['message', 'Message', 'text', 'You use the station...'], - ['wait', 'Wait', 'number', '4', 'narrow'], - ['skill', 'Skill', 'text', 'e.g. smithing'], - ['level', 'Level', 'number', '1', 'narrow'], - ['xp', 'XP', 'number', '25', 'narrow'], - ['fail_message', 'Fail Message', 'text', 'You fail to use the station.'], - ], - inline: [ - {label:'Success', path:'success', fields:[ - ['base', 'Base', 'number', '0.5', 'narrow'], ['per_level', 'Per Lvl', 'number', '0.01', 'narrow'], ['cap', 'Cap', 'number', '0.95', 'narrow'] - ]}, - {label:'Consume', key:'consume', type:'kv', valType:'number'}, - ], - subtables: [ - {label:'Reward', key:'reward', single:true, fields:[ - ['item_id', 'Item ID', 'search', '', '', 'items'], ['weight', 'Weight', 'number'], ['quantity', 'Quantity', 'number'], - ['message', 'Message', 'text'], - ]} - ] - }, - { id: 'safespot', label: 'Safespot', path: 'safespot', detect: function(d) { return d.safespot; }, fields: [ @@ -113,18 +89,16 @@ var SECTIONS = [ ] }, { - id: 'on_look', label: 'On Look', path: 'on_look', + id: 'on_look', label: 'On Look', labelHint: '(what happens when you "look <this>")', path: 'on_look', detect: function(d) { return d.on_look; }, fields: [ ['set_flags', 'Set Flags', 'json', '{"flag":"value"}'], ['set_player_flags', 'Set Player Flags', 'json', '{"pflag":"value"}'], - ['give_item', 'Give Item', 'text', 'e.g. keycard'], - ['take_item', 'Take Item', 'text', 'e.g. bomb'], + ['give_item', 'Give Item', 'search', 'e.g. keycard', '', null, 'items'], + ['take_item', 'Take Item', 'search', 'e.g. bomb', '', null, 'items'], ['teleport', 'Teleport', 'number', '5', 'narrow'], ['heal', 'Heal', 'number', '10', 'narrow'], ['credits', 'Credits', 'number', '100', 'narrow'], - ['reputation_cost', 'Reputation Cost', 'number', '1', 'narrow'], - ['aps_node', 'APS Node', 'checkbox'], ] }, ]; @@ -253,6 +227,8 @@ function renderCard(sec, data) { h += renderCoreCard(data); } else if (sec.id === 'steal') { h += renderStealCard(data); + } else if (sec.id === 'on_look') { + h += renderOnLookCard(data); } else { h += '<div class="obj-card-grid">'; sec.fields.forEach(function(f) { @@ -484,6 +460,24 @@ function renderStealCard(data) { return h; } +function renderOnLookCard(data) { + var sec = SECTIONS.find(function(s) { return s.id === 'on_look'; }); + var h = '<div style="display:flex;gap:10px">'; + h += renderField(sec, sec.fields[0], data, -1, null, 'flex:1'); + h += renderField(sec, sec.fields[1], data, -1, null, 'flex:1'); + h += '</div>'; + h += '<div style="display:flex;gap:10px;margin-top:8px">'; + h += renderField(sec, sec.fields[2], data, -1, null, 'flex:1'); + h += renderField(sec, sec.fields[3], data, -1, null, 'flex:1'); + h += '</div>'; + h += '<div style="display:flex;gap:10px;margin-top:8px">'; + h += renderField(sec, sec.fields[4], data, -1); + h += renderField(sec, sec.fields[5], data, -1); + h += renderField(sec, sec.fields[6], data, -1); + h += '</div>'; + return h; +} + function renderArraySection(sec, data) { var arr = data[cardPath(sec)] || []; var h = ''; @@ -783,8 +777,6 @@ function addSection() { objectData[sec.path] = {}; } else if (sec.id === 'gather') { objectData[sec.path] = {skill:'', tools:[], success:{base:0, per_level:0, cap:1}, drops:[], gather_message:'', fail_message:'', respawn_timer:0, respawn_broadcast:'', deplete_timer:0, nest_chance:0}; - } else if (sec.id === 'use') { - objectData[sec.path] = {message:'', wait:1, consume:{}, reward:{}, fail_message:'', success:{base:0, per_level:0, cap:1}, skill:'', level:1, xp:0}; } else if (sec.id === 'safespot') { objectData[sec.path] = {tier:1, max_block_size:'', max_occupants:1, unsafe_chance:0, decay_ticks:0, decay_chance:0, respawn_on_hide:false, respawn_ticks:0, levels:[]}; } else { |
