graphics.hを利用したゲームを作りました。whileループを使用して画面出力を作成しているため、次の例のx1値は常に5ずつ減少します。これは、whileループが続く場合を除いて、ゲームのすべての画面を常に作成し続けることを意味します。ただし、プレーヤーには画面の一部しか表示されません。これは明らかに非常に非効率的であるため、誰かがこれをより効率的な方法で行うためのヒントを持っているかどうか疑問に思いました。また、より具体的な問題があります... outtextxyは負のx値を許可していません。つまり、
outtextxy(-10,400,"text that is long enough that should be shown on screen even though it starts before screen beginning");
画面に表示されないので、私のコードは次のとおりです。
outtextxy(x1+301,400,"Use 'd' to duck");
ゲーム内のその画面が渡される直前に、最後の文字のx値が渡されたときではなく、x値が負になった瞬間に、画面への印刷が停止します。