You've added some commands to your movements that don't need to be there. By putting the 'end' command after your movements it is prematurely finishing your script before the waitmovement command can take place. Here's a revised script with a few other changes to make it run better/ more efficiently. Changes are in
red:
Code:
#dynamic 0x800000
#org @start
lock
faceplayer
checkflag 0x204
if 0x1 goto @done // This should be ahead of your 'checkflag 0x203' command. You are setting flag 0x204 in this script but it would never proceed to @done since you're checking 0x203 first which is still set
checkflag 0x203
if 0x1 goto @rib
msgbox @tl 0x6
release
end
#org @tl
= There are lots of Rebels and kids\nlike you are joining them.\pWhy don't you go to the \nPolice Academy to get some sense of\lJustice.
#org @rib
msgbox @prib 0x6
closeonkeypress // This can be deleted as msgbox type 0x6 already incorporates the effects of closeonkeypress. This separate command is mainly used for msgbox 0x4
lock // This can be deleted as you already locked the NPC at the start of the script
applymovement 0x3 @m1
waitmovement 0x0
setflag 0x204
release
end
#org @m1
#raw 0x01
#raw 0x05 // #raw 0x1 and 0x5 are the same movement except 0x5 is (slightly?) faster so you can delete one of them. I'd also suggest adding a delay between the NPC looking up and down as in this script it will take place over a single frame which is way to quick
#raw 0x00
#raw 0xFE
release
end // Delete these to have your movements play out properly
#org @prib
= Ah! The Police Aspirant Ribbon.\pGood, now don't cause any trouble!
#org @done
msgbox @tld 0x6
release
end
#org @tld
= I want to see Kanto Crime free!\pThats why I encourage youngsters\non the right path.
In addition, when you're making a character talk ensure that there you're not leaving a space between '\n' and the next letter. It makes the text become unaligned and a bit weird :D