2017-10-19 47 views
1

我是一名學生,希望做一個項目。如何在CMD窗口中沿橫軸平滑移動

我做了一個500 * 500的數組,我的角色「■」在屏幕的中間。 CMD窗口上的可視化地圖無法顯示500 * 500的全部數組,因此它沿着垂直軸延伸,從而可以滾動。該數組放入一個循環並接受控制字符「■」的箭頭鍵命令。最近我發現,而不必打印整個陣列移動的字符代碼:

int gotoxy(int x, int y) 
{ 
COORD Cur; 
Cur.X=x; 
Cur.Y=y; 
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), Cur); 
} 

但這是不夠的,創造一個平穩的水平運動更不用說擴大地圖的左側和右側。每次打印陣列所需的大小都會造成口吃。

所以我想知道是否有一種方法可以順暢地將我的角色移動到沒有大小的地圖上。

+0

是的,有...但這不是教程的地方。請參閱:[help/on-topic] –

+1

如果用「平滑」表示您想要按像素移動字符像素,那麼這是不可能的。在你的情況下,「像素」是字符位置。 –

+0

是啊,你說對不起,對不起,不好意思 – WaterDragonFly

回答

0

前段時間我用cmd做了一個pong遊戲。使用cout每幀更新整個字段的難度難以置信。我們最終使用Windows.h庫 - 就像你做的那樣,並且使用函數WriteConsoleOutput,即使更新整個場景,延遲也沒有了。