Files
oboe/rsrc/dialogs/edit-monster-abils.xml
Celtic Minstrel 5450ae1caf Implement editing dialogs for individual monster abilities
Changes to game:
- Permanent martyr's shield is now customizable - extra1 is per-mille chance to activate each time damage is taken, and extra2 is percent of damage taken to apply to attacker
- Absort spells is now customizable - extra1 is per-mille chance to activate each time damage is taken or a magic effect is applied, and extra2 is how much hp to gain from non-damaging magic effects
- Splits ability is now customizable - extra1 is per-mille chance of splitting each time damage is taken
- Special node ability is now called before the monster tries its normal attack, and multiple monsters can use them per round (though each can only use theirs once)
- Fix issue with breath weapons and icy touch abilities conflicting (legacy import issue)
- Add two variations of the summoning ability - summon according to summoning level (like the spells), or summon a random creature of a particular species
- Fix touch abilities using the range as chance to use

Changes to dialog engine:
- Fix tab order handling to exclude fields that are currently hidden
- Add method to retrieve the parameter passed to toast(), as a quick way to distinguish between the user clicking OK or Cancel after run() has exited
- Fix hidden fields being drawn anyway
- Fix setting stack page sometimes crashing if the current page was invalid due to earlier reducing the page count to 0
2015-01-20 17:18:41 -05:00

69 lines
4.2 KiB
XML

<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<?xml-stylesheet href="dialog.xsl" type="text/xsl"?>
<dialog skin='light' defbtn='okay'>
<!--
TODO: Assign numeric types (type = 'int' or 'uint') to fields as appropriate
-->
<field name='loot-item' top='178' left='194' width='64' height='16'/>
<field name='loot-chance' top='178' left='464' width='64' height='16'/>
<text top='216' left='120' width='40' height='16'>Magic:</text>
<field name='magic-res' top='215' left='167' width='80' height='16'/>
<text top='246' left='120' width='40' height='16'>Fire:</text>
<field name='fire-res' top='245' left='167' width='80' height='16'/>
<text top='216' left='273' width='40' height='16'>Cold:</text>
<field name='cold-res' top='215' left='320' width='80' height='16'/>
<text top='246' left='273' width='40' height='16'>Poison:</text>
<field name='poison-res' top='245' left='320' width='80' height='16'/>
<led name='mindless' top='215' left='415' width='70'>Mindless</led>
<led name='invuln' top='245' left='415' width='70'>Invulnerable</led>
<pict type='dlog' num='16' top='8' left='8'/>
<text size='large' top='6' left='50' width='158' height='16'>Edit Monster Abilities</text>
<text framed='true' top='6' left='222' width='111' height='14'>Monster number:</text>
<text name='num' framed='true' top='8' left='340' width='37' height='14'/>
<text top='2' left='408' width='184' height='54'>
Enter properties for this monster type. For a detailed
description of the fields, see the documentation.
</text>
<text size='large' top='54' left='7' width='110' height='14'>Special abilities:</text>
<stack name='abils'>
<text name='abil-name1' framed='true' top='54' left='124' width='183' height='14'/>
<text name='abil-name2' framed='true' top='80' left='124' width='183' height='14'/>
<text name='abil-name3' framed='true' top='106' left='124' width='183' height='14'/>
<text name='abil-name4' framed='true' top='132' left='124' width='183' height='14'/>
<button name='abil-edit1' type='regular' top='51' left='314'>Add</button>
<button name='abil-edit2' type='regular' top='77' left='314'>Add</button>
<button name='abil-edit3' type='regular' top='103' left='314'>Add</button>
<button name='abil-edit4' type='regular' top='129' left='314'>Add</button>
</stack>
<button name='abil-up' type='up' top='82' left='30'/>
<button name='abil-down' type='down' top='107' left='30'/>
<text size='large' top='160' left='7' width='158' height='16'>Special treasure:</text>
<text top='179' left='23' width='162' height='14'>Item to drop when killed:</text>
<text top='179' left='270' width='186' height='14'>Chance of dropping: (0-100)</text>
<text top='211' left='9' width='108' height='112'>Monster resistances:<br/><br/>
This is the % of full damage the monster takes when of this type.<br/>
e.g. 0 - no damage, 100 - normal, 200 - double
</text>
<text top='81' left='420' width='94' height='14'>Summon type:</text>
<group name='summon'>
<led name='s0' state='off' top='85' left='505' width='100'>Weak (no summon)</led>
<led name='s1' state='off' top='100' left='505' width='100'>Type 1</led>
<led name='s2' state='off' top='115' left='505' width='100'>Type 2</led>
<led name='s3' state='off' top='130' left='505' width='100'>Type 3</led>
<led name='s4' state='off' top='145' left='505' width='100'>Unique (no summon)</led>
</group>
<led name='invis' size='small' top='280' left='120' width='450'>
This monster is naturally and permanently invisible.
</led>
<led name='guard' size='small' top='296' left='120' width='450'>
This monster is a guard - when the town goes hostile, it will hunt the party down.
</led>
<text top='331' left='10' width='250' height='16'>Special node to call when monster first seen</text>
<field name='onsee' top='330' left='270' width='50' height='16'/>
<button name='edit-see' type='large' top='327' left='330'>Create/Edit</button>
<text top='361' left='10' width='250' height='16'>Monster vocalization sound</text>
<field name='snd' top='360' left='270' width='50' height='16'/>
<button name='pick-snd' type='regular' top='357' left='330'>Choose</button>
<button name='okay' type='regular' top='385' left='572'>OK</button>
<button name='cancel' type='regular' top='385' left='506' def-key='esc'>Cancel</button>
</dialog>