The Dink Network

Yo're dead.. (that's your que!)

June 17th 2003, 07:47 PM
pillbug.gif
Does anybody know why this script isn't fully working? It runs up to Dink saying "Now what?" But then just stops. Please help! (I realise Dink is saying all that)

VOID DIE(VOID)
{
freeze(1);
say_stop("Okay, now what??",1);
wait(500);
say_stop("`#Hmmm...",1);
wait(500);
say_stop("`#I'll try to make a plan here, you just, uh... wander around a bit",&1);
wait(500);
say_stop("(ehh.. She'll make the plan... like we'll ever get outta here with her in charge...) OK!",1);
screenlock(0);

&story == 1;
}

June 17th 2003, 09:01 PM
knightg.gif
WC
Peasant He/Him United States
Destroying noobs since 1999. 
You have a &1 when it should just be 1.
June 17th 2003, 09:05 PM
pillbug.gif
ohh... *clubs himself with rusty knife, with nails sticking out of it* How can I be so careless...
June 17th 2003, 09:09 PM
sob_scorpy.gif
Tyrsis
Peasant She/Her Russia
 
You have a too long die() procedure, I think. Really it can ork for a very short time, so your first wait() is the end of it
June 17th 2003, 09:11 PM
pillbug.gif
Too long? Now I feel slightly less humiliated, can I have it trigger different scripts before it gets too long?

Thanks!
June 18th 2003, 12:01 AM
wizardg.gif
Paul
Peasant He/Him United States
 
It's not the actual length that matters. The thing is you can't have any kind of deley in a die procedure (including say_stop) or by the time it's done waiting the thing is dead and the script is killed.

Try something like this:

//a new script deadnow.c
void main( void )
{
freeze(1);
say_stop("Okay, now what??",1);
wait(500);
say_stop("`#Hmmm...",1);
wait(500);
say_stop("`#I'll try to make a plan here, you just, uh... wander around a bit", 1);
wait(500);
say_stop("(ehh.. She'll make the plan... like we'll ever get outta here with her in charge...) OK!",1);
screenlock(0);

&story = 1;
kill_this_task();
//Don't forget that part.
}

Then in the die procedure, just do:
spawn("deadnow");
June 18th 2003, 05:28 AM
pq_frog.gif
Ric
Peasant They/Them Canada
 
Or just
void die ()
{
goto dead;
}
void dead ()
{
dead:
stuffhere;
say_morestuffhere;
UNFREEZE!;

Its true you must use another script. Either spawn one or have a room sript look for the &story change in a loop. But don't forget to unfreeze.
}
June 18th 2003, 05:52 AM
wizardb.gif
Phoenix
Peasant He/Him Norway
Back from the ashes 
I don't think that's gonna solve anything, cause the problem is that when the sprite dies, so does the script (after die has started), so that would just be cut off as well. I believe.
June 18th 2003, 09:47 AM
sob_scorpy.gif
Tyrsis
Peasant She/Her Russia
 
The script dies and its life is just enough for 1-2 lines (no wait(), of course)
June 18th 2003, 11:29 AM
spike.gif
Look at en-mog.c and at his death procedure in the "original" Dink.

("original", since I really hate that expression.)
June 18th 2003, 02:14 PM
old.gif
So, nobody notice?

Its

&story = 1;

NOT NOT NOT

&story == 1;

when you want to change it...
June 18th 2003, 10:30 PM
wizardg.gif
Paul
Peasant He/Him United States
 
Oops, didn't catch that one.
June 23rd 2003, 08:22 AM
slayer.gif
MadStalker
Peasant He/Him Finland
tag line 
OOOHNOOO EasyDinkC sux0rs because it has the same problem. It puts &crap = 69; instead of &crap == 69;. Well alright, I'll admit that EDC rulezzzz...