Axe Software Forums
  Quest Developer Forum
  Aliasing in command statements


Author Topic:   Aliasing in command statements
MaDbRiT posted 04-05-2002 12:04 GMT     
Hi all,

Long time and no post from me, but I am now back in action and planning to play some more with Quest.

First job I want to deal with is rewriting my 'Quest Extension Library', this has got a lot of legacy code that provides features that are no longer relevant in Quest 3.1 and is in dire need of a rework, it is rather a mess of patches now.

However I am hitting a bit of a stumbling block with streamlining the code, the use of the '@' to de-alias object names in command statements, although it looks a great idea, seems to be impossible to use in anything other than very simple commands.

I'm finding that where I need to provide a custom 'failure' response for a command, I cannot use the "#@object#" style. An example is that if I code this..

quote:

command <whack #@thing# with #@otherthing#> do <myWhackProc>

If either object is not available in the room, Quest falls back to its default object not here message. I need the 'myWhackProc' procedure to ALWAYS be run to be able to provide different failure messages according to which of the two objects is missing and so on - the only way I can think of to do this is to NOT use the de-alias & disambiguating '#@object#' construction and handle everything of that nature in my own code - have I missed something somewhere?

Just a suggestion, it might be nice if the default action for this construct was to remain as it is now, but an option to force the use of the script following be added. The idea being that the disambiguation menu and de-aliasing is always useful, but it would be nice to be able to control 'what happens next'.

How about this as a suggestion for the syntax to have the following script forced to run regardless?

quote:

command <whack #@thing# with #@otherthing#;force> do <myWhackProc>

O.T. Anybody else here seen the new O.O. beta's of ALAN 3.0? Interesting ideas a plenty.

Al

Alex posted 05-05-2002 14:29 GMT          
Hmm... it's an idea I suppose - not sure about the syntax though. The idea of the #@whatever# syntax is it's supposed to be a shortcut - if you need to do more sophisticated parsing then it's probably simpler all round to use the functions as you'd have to in Quest 3.0x.

While I'm here, my computer display has broken *again* - in the end it was too expensive to get fixed professionally (almost as much as buying an equivalent-spec machine second-hand, I think), so we bodged a fix. Which worked for all of about five minutes... I shall be getting a nice new computer soon hopefully.

carlii posted 05-05-2002 14:55 GMT          
Good luck ! :S
MaDbRiT posted 06-05-2002 12:13 GMT          
Alwx wrote

quote:

Hmm... it's an idea I suppose - not sure about the syntax though.

I agree the suggested syntax is 'clunky' in the extreme, but I thought the concept was a useful one, however...

quote:

The idea of the #@whatever# syntax is it's supposed to be a shortcut - if you need to do more sophisticated parsing then it's probably simpler all round to use the functions as you'd have to in Quest 3.0x.

If it was the intention to provide a shortcut and not for authors do all user commands this way I have missed the point slightly! So it's back to my old routines it seems (pun intentional).

quote:

While I'm here, my computer display has broken *again* - in the end it was too expensive to get fixed professionally (almost as much as buying an equivalent-spec machine second-hand, I think), so we bodged a fix. Which worked for all of about five minutes... I shall be getting a nice new computer soon hopefully.

I sympathise, I have personally found laptop PC's (with the exception of the expensive but near bullet-proof 'Husky' range) to be fragile and short lived things. The most common points of failure being flexible joints between the screen unit and main body and the screens themselves.

Of course the screen on a laptop is easily its most expensive single component, so if that fails out of warranty it is almost always more economically sensible to throw it away & buy another machine - especially as if it is out of warranty it is surely horribly obsolete anyway.

My own old laptop, a Compaq Contura model (yikes that is an old dog) now features bolted on external cabinet hinges (to replace the internal ones that were so stiff they cracked their mountings and prised the casing open) and a great big piece of the keyboard decking and screen surround cut away to prevent the replacement screen connector cable from being bent sharply in the same place every time, which is what broke the original. Other tasteful mods include superglued reinforcements of the various 'so thin they cracked' sections of the keyboard deck. Amazingly the thing still works, but is now so underpowered it is of limited practical use anyway.

I keep it going so I may use it to try my Quest educational pieces, if they run acceptably on this, they'll run fine on anything the intended audience is likely to use.

Obsolete it may be, but on the bright side, it LOOKS so awful and old that on my latest spell of hospitalisation at least no one bothered to steal it - unlike its replacement which vanished from my locker while I was undergoing treatment last time I was in.

Oops, severe wandering off topic there - sorry. Presumably Quest 3.1 will be 'in limbo' until you get a new PC Alex?

Al

Alex posted 06-05-2002 10:14 GMT          
quote:

If it was the intention to provide a shortcut and not for authors do all user commands this way I have missed the point slightly!

My hope is that, aside from sophisticated libraries, the shortcut *should* be flexible enough for most authors to use it pretty much all of the time.

As for Quest being in limbo... well, yep, although hopefully the new PC isn't too far off (it will be a desktop this time!) - but exams are looming. *sigh*

carlii posted 08-05-2002 02:41 GMT          
Hehe, thanks for the cool story Computer Whizz. :P

I have got a game working at the moment, I might email you guys soon with the ideas. :D

BTW, how do you QUOTE in this forum???
I seem to have 'LOST' the button that does it! :S

Alex posted 08-05-2002 10:16 GMT          
Take a look at http://www.axeuk.com/ubb/ubbcode.html
Computer Whizz posted 08-05-2002 16:46 GMT          
I don't remember posting here!
: )

You must meant MaDbRiT.... I like his story's too!

Computer Whizz