Not really a pain in the ass. You just use setflags and checkflags. For example, when one steps on a tile that leads to the Fire Town, it will setflag 0x1 then warp you to Fire Town. Then Just do a couple of checkflags for several story-related things and some features.
I've looked at your code in the thread, and if it's playing the animation twice, I believe it's going to have the same problem as mine. The problem with mine, is that it plays the animation twice, and has a slight chance to miss. I haven't tested yours out yet though so I'm not sure. How many times have you tested it? Has the accuracy been fine every time?