学校であった怖い話みたいに、話を聞く人の順番で、その人の話す内容が変わったり、ラストが変わったりするスクリプトを考えました
のですが、どうも無駄が多いような気がしてなりません
ここをもっとこうしたらいいよ、みたいなアドバイスをお願いします

*define
clickstr "」。!?",2
dim ?0[2]
game

*start
if ?0[2]!=0 goto *owari
誰の話を聞こう。
select "Aさん",*atalkif,"Bさん",*btalkif,"Cさん",*ctalkif

*atalkif
if ?0[0]=1 goto *kiita
if ?0[1]=1 goto *kiita
if ?0[2]=1 goto *kiita
if ?0[1]!=0 goto *atalk3
if ?0[0]!=0 goto *atalk2
goto *atalk1

*btalkif
if ?0[0]=2 goto *kiita
if ?0[1]=2 goto *kiita
if ?0[2]=2 goto *kiita
if ?0[1]!=0 goto *btalk3
if ?0[0]!=0 goto *btalk2
goto *btalk1