|Anonymous | Login | Signup for a new account||2020-07-13 00:17 PDT|
|Main | My View | View Issues | Change Log | Roadmap|
|View Issue Details|
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000978||I6 Library||General||public||2012-08-08 16:18||2015-05-10 17:47|
|Target Version||6/12||Fixed in Version||6/12|
|Summary||0000978: Problem with <action> statements in Infix|
|Description||Originally reported by Nathan Summers as Issue L61117|
<action> statements may give different results under Infix than when called normally by the game.
A bare space.
You can see a dangerous device here.
>;< ATTACK BOMB
; <Attack (the dangerous device)>
Violence isn't the answer to this one.
The bomb explodes.
*** You have died ***
|Minimal Source Text To Reproduce|
Include "Parser"; Include "Verblib"; Include "Grammar"; [ Initialise; location = theroom; ]; Object theRoom "The room" with description "A bare space.", has light;Include "Parser"; Object -> bomb "dangerous device" with name 'dangerous' 'device', before [; Attack: deadflag = 1; "The bomb explodes."; ];
|Additional Information||The Infix command ;< ATTACK BOMB is supposedly identical to the <Attack bomb> statement; both should lead to the same outcome as the HIT DEVICE command. Here, the Attack action triggered by HIT DEVICE is trapped by the bomb's before property, causing it to explode; this is the correct behaviour. However, the same action when executed from Infix is not intercepted by the bomb's before property, and so the default "Violence isn't the answer" message is displayed.|
Comment by Cedric Knight:
It's because the 'meta' flag has been set for the Infix command. That stops InformLibrary.begin_action() from running BeforeRoutines(). I can't immediately see any way of fixing it. A workaround would be to set meta=0 before calling the <action>. In the long term we might want the meta flag to attach to actions rather than verbs.
|Tags||No tags attached.|
|First stab: https://github.com/DavidGriffith/inform6lib/commit/17152ec2f03ac06e18b57e08979b3a27e8233217 [^]|
Refinement: https://github.com/DavidGriffith/inform6lib/commit/3ad4a89259394842cc1b8ea2b7e1a883ede8d624 [^]
I think this bug is squashed.
|Closing all resolved issues from 2014 and earlier.|
|2012-08-08 16:18||DavidG||New Issue|
|2012-10-07 18:16||DavidG||Assigned To||=> DavidG|
|2012-10-07 18:16||DavidG||Status||new => assigned|
|2014-05-19 04:33||DavidG||Note Added: 0002795|
|2014-05-19 04:34||DavidG||Status||assigned => acknowledged|
|2014-05-19 05:18||DavidG||Note Added: 0002796|
|2014-05-19 05:18||DavidG||Status||acknowledged => resolved|
|2014-05-19 05:18||DavidG||Fixed in Version||=> 6/12|
|2014-05-19 05:18||DavidG||Resolution||open => fixed|
|2015-05-10 17:47||jmcgrew||Note Added: 0003614|
|2015-05-10 17:47||jmcgrew||Status||resolved => closed|
|Copyright © 2000 - 2010 MantisBT Group|