Page 1 of 1
[done]+activatable
Posted: Sun Mar 12, 2006 14:13
by Enjay
Something like this may already exist, but I don't think so. Solarsnofall sent me some decorate stuff a couple of weeks ago. Part of it was a decorate item that could be activated and deactivated. Whilst activated the thing cycled through it's spawn state doing stuff according to the pointers it had. When deactivated, it stopped. This is a very useful idea and can be used to create all kinds of special effect items. However, as far as Solarsnowfall and I can work out, the only way to make the item activatable/deactivatable is to give it the +ismonster flag. This has a couple of drawbacks that became very frustrating during testing and could, I'm sure, be equally so under certain play conditions. eg, starting a game with -nomonsters (quite a common thing to do when testing) means none of your items are present in the map. Using "kill monsters" destroys any of the items on the map.
So, to the request, a flag of some sort that allows an item that is essentially a decoration to be activated and deactivated without making it a monster. If this already exists, then can someone point me in the direction of it. If it doesn't then... pretty please.

Posted: Sun Mar 12, 2006 14:22
by Graf Zahl
It already exists as the 'SwitchableDecoration' base class. The reason why it isn't documented is that Randy has changed its behavior for 2.1.0 in a way that breaks DECORATE. I'd have to adjust the parser first to make it work without future compatibility issues.
Posted: Sun Mar 12, 2006 15:21
by Enjay
OK, so I should wait for Randy's code to be implemented before I try and do anything with this. Fair enough.
Posted: Sun Mar 12, 2006 15:27
by Graf Zahl
No. I added a workaround for the next version because everyone should know by now that waiting for Randy is pointless...
Posted: Sun Mar 12, 2006 15:29
by Tormentor667
Graf Zahl wrote:No. I added a workaround for the next version because everyone should know by now that waiting for Randy is pointless...
What makes you that sure to say this?...no more further developement on ZDoom?
Posted: Sun Mar 12, 2006 15:34
by Graf Zahl
Did you see any notable progress in the last year that did not come from .96x?
It almost seems that Randy abandoned the fp code and there's almost no work done on the current code as well.
According to the changelog Randy has worked on 4 days with the ZDoom source so far this year...
Posted: Sun Mar 12, 2006 21:04
by Nash
What does this +activatable flag do? Does this allow me to create actors that I can, for instance, talk to, by hitting +USE?
I am aware of ConversationID and Kaiser's Strife Script Compiler but I have expressed my dislike for Strife's conversation system because so many things are still hardcoded into the EXE. I prefer creating my own script dialogues with ACS.
Posted: Sun Mar 12, 2006 21:25
by Alter
Then try to create the dialogue system example in ACS good luck!
Posted: Sun Mar 12, 2006 21:43
by Enjay
Nash wrote:What does this +activatable flag do?
Well, the kind of things I have in mind (and what Solarsnowfall has already done) is particle and other special effects using decorate actors and sprites - although I'm sure a lot more could be done (eg a damaging item, like whirling blades or something, that can be switched on and off).
Imagine a looping spawn state that spits out little projectiles in random directions and maybe plays a sound too, but which can be switched on and off. I know something similar can be achieved with a script a lot of the time, but a well set up DECORATE item can easily be placed in a map, any map, and left to get on with it.
I'm deliberately not giving too much detail as to what Solarsnowfall has done because I don't want to steal his thunder, but he has produced some very pretty looking effects and this feature would help with them.
Posted: Mon Mar 13, 2006 0:22
by Graf Zahl
Randy has already put the necessary code into the SVN so I was able to officially document this, although the next GZDoom version won't released for at least a few days more. There's one issue I'd like to resolve first and that will take 2 or 3 days at least.