📧 Message Board Archive

ATTN: REDINK1
earlier you helped me. I tried it out but it's not working. I put the script here. PLZ tell me what I'm doing wrong.



void main(void)

{

     &temp = &current_sprite;

     

     freeze(1);

     say_stop("'3testing123", &current_sprite);

     wait(1000);

     say_stop("'5testing second sprite", &temp);

     unfreeze(1);

}            
Re: ATTN: REDINK1
It seems that the problem is simple, but it isn't. There are a few things that you did it wrong.



If I remembered correctly, you would like to have two people talking in the background while Dink is doing other things, right?



You need at least 2 scripts (and I prefer to using 3 scripts.) for this to work. But let's make it simpler by using two scripts and one global &temp.



script for first people

void main(void)

{

.... (setup the necessary features of the first person)

&temp = &current_sprite;

}



script for second people & the conversation

void main(void)

{

.... (setup the necessary features of the first person)

// This is ensentially important for this script to work!

wait(1000);

say_stop_npc("'3The first one is talking.", &current_sprite);

wait(1000);

say_stop_npc("'5The second one is talking now.", &temp);

wait(1000);

say_stop_npc("'3The first one is talking again.", &current_sprite);

wait(1000);

freeze(1);

say_stop("Now Dink is talking.", 1);

wait(1000);

say_stop("'5The second one is talking to Dink now.", &temp);

wait(1000);

say_stop("Dink is talking again.", 1);

unfeeze(1);

say_stop_npc("'3The first one is talking.", &current_sprite);

wait(1000);

say_stop_npc("'5The second one is talking.", &temp);

}



Two important things:



1. Use say_stop_npc if you don't want the conversation interfering things or being interupted.

2. You must have a wait(???) in your script attached to a sprite to have an ongoing scene. Otherwise, nothing will happen. Those parts of the scripts will be somehow flushed while loading the screen.







: earlier you helped me. I tried it out but it's not working. I put the script here. PLZ tell me what I'm doing wrong.



: void main(void)

: {

:   &temp = &current_sprite;

:  

:   freeze(1);

:   say_stop("'3testing123", &current_sprite);

:   wait(1000);

:   say_stop("'5testing second sprite", &temp);

:   unfreeze(1);

: }



Re: ATTN: REDINK1
: earlier you helped me. I tried it out but it's not working. I put the script here. PLZ tell me what I'm doing wrong.



At least THESE -> say_stop("'3testing123", &current_sprite); were wrong. Put in   say_stop("'6blah blah blah. ", &current_sprite); <1> ''''''' :)

Re: ATTN: REDINK1


:   At least THESE -> say_stop("'3testing123", &current_sprite); were wrong. Put in say_stop("'6blah blah blah. ", &current_sprite); <1> ' :)



What the hell.. Why did it change different after posting? Strange.. But sorry, you propably putted it right in your script.





Re: ATTN: REDINK1
: : At least THESE -> say_stop("'3testing123", &current_sprite); were wrong. Put in say_stop("'6blah blah blah. ", &current_sprite); <1> ' :)



: What the hell.. Why did it change different after posting? Strange.. But sorry, you propably putted it right in your script.



I haven't put it in my script yet. What was wrong?



Re: ATTN: REDINK1
Just the ' in the start of the color speak thing, but it's nothing, those marks seem to change (at least in my computer) when i post them. I didn't post that very serious anyways, i just thought it was a little mistake. In THIS script, or part of a script, whatever:



void main(void)

{

    &temp = &current_sprite;

    freeze(1);

    say_stop("'3testing123", &current_sprite);

    wait(1000);

    say_stop("'5testing second sprite", &temp);

    unfreeze(1);

}              



BTW, why was it first &current_sprite, and later &temp, they're the same thing, right?

Re: ATTN: REDINK1
: Just the ' in the start of the color speak thing, but it's nothing, those marks seem to change (at least in my computer) when i post them. I didn't post that very serious anyways, i just thought it was a little mistake. In THIS script, or part of a script, whatever:



: void main(void)



: {



:   &temp = &current_sprite;



:   freeze(1);



:   say_stop("'3testing123", &current_sprite);



:   wait(1000);



:   say_stop("'5testing second sprite", &temp);



:   unfreeze(1);



: }



: BTW, why was it first &current_sprite, and later &temp, they're the same thing, right?



&temp is a global??



The way that I would do it is... complicated.  Following the advice of Redink