Files
oboe/rsrc/dialogs/edit-townperson-advanced.xml
Nat Quayle Nelson 3e3b2e1e6f assign escbtn and defbtn appropriately
Behaviorally: This change makes it so that Enter will never cancel
a dialog, unless that dialog only contains info to be read. Escape
will never unpredictably be treated as Enter. And some dialogs without
Escape to cancel, now can be canceled with Escape.

A lot of this just refactors dialogs to define the cancel button
at the top, not as a hotkey on a cancel button deep in the XML.
I think this makes enter/escape behavior in dialogxml files more
legible at a glance.
2025-03-27 14:46:57 -05:00

67 lines
3.6 KiB
XML

<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<!-- NOTE: This file should be updated to use relative positioning the next time it changes. -->
<?xml-stylesheet href="dialog.xsl" type="text/xsl"?>
<dialog defbtn='okay' escbtn='cancel'>
<!--
TODO: Assign numeric types (type = 'int' or 'uint') to fields as appropriate
-->
<field name='extra1' top='126' left='221' width='67' height='16'/>
<field name='extra2' top='153' left='221' width='67' height='16'/>
<field name='death' top='298' left='285' width='67' height='16'/>
<field name='sdfy' top='362' left='262' width='39' height='16'/>
<field name='sdfx' top='362' left='310' width='39' height='16'/>
<text size='large' top='6' left='50' width='256' height='17'>Townsperson/monster advanced</text>
<text top='28' left='62' width='97' height='15'>Creature type:</text>
<text name='type' top='28' left='162' width='195' height='15'/>
<text top='72' left='20' width='150' height='14'>When is creature here?</text>
<text name='extra1-lbl' framed='true' top='127' left='57' width='154' height='15'/>
<text name='extra2-lbl' framed='true' top='153' left='57' width='154' height='15'/>
<text top='293' left='25' width='247' height='27'>
Number of town special node to call when creature is killed:
(-1 for none)
</text>
<button name='editdeath' type='large' top='294' left='360'>Create/Edit</button>
<text top='321' left='25' width='247' height='27'>
Number of town special node to call before talking to creature:
(-1 for none)
</text>
<field name='hail' top='326' left='285' width='67' height='16'/>
<button name='edithail' type='large' top='322' left='360'>Create/Edit</button>
<text top='350' left='25' width='230' height='40'>
Stuff done flag creature's life is linked to:
(0 - alive,
1 - dead),
if either is -1, this is ignored.
</text>
<button name='editsdf' type='regular' top='358' left='360'>Choose</button>
<text size='large' top='182' left='9' width='205' height='17'>Creature and special encs.</text>
<button name='okay' type='regular' top='358' left='512'>OK</button>
<button name='cancel' type='regular' top='358' left='438'>Cancel</button>
<pict type='dlog' num='16' top='8' left='8'/>
<text top='7' left='317' width='126' height='15'>Creature number:</text>
<text name='num' top='7' left='454' width='50' height='15'/>
<text size='large' top='49' left='9' width='130' height='17'>Creature timing:</text>
<group name='time'>
<led name='time1' top='74' left='150'>Always here</led>
<led name='time2' top='90' left='150'>Appear on given day</led>
<led name='time3' top='106' left='150'>Disappear on day</led>
<led name='time4' top='74' left='280'>Sometimes here A</led>
<led name='time5' top='90' left='280'>Sometimes here B</led>
<led name='time6' top='106' left='280'>Sometimes here C</led>
<led name='time7' top='74' left='409'>Appear when event</led>
<led name='time8' top='90' left='409'>Disappear when event</led>
<led name='time9' top='106' left='409'>Appear after town dies</led>
</group>
<field name='group' tab-order='3' type='uint' top='205' left='397' width='50' height='16'/>
<text top='203' left='25' width='363' height='68'>
What special encounter group is this creature a part of? (0 - none)<br/><br/>
A creature which is part of a special group does not exist until it's created by a special encounter
(like special node type One-Time Place Town Encounter).
</text>
<text top='133' left='366' width='222' height='44'>
For an explanation on how event codes work,
see the chapter in the instructions on the passing of time.
</text>
<button name='choose-event' type='regular' top='150' left='296'>Choose</button>
</dialog>