if(isEventMoveRight() == true)
{
if((playerX != 70) && (playerX+11 != 'T'))
{
playerX = playerX+1;
}
}
'T'是來自玩家的不同字符塊。當然,我並沒有使用數組作爲'T's或背景我只使用一個球員,我想。我不確定它是否使用我爲玩家正確設置的陣列。事實上......我不知道如何使用一個數組作爲gameMap句號。試圖阻止一個字符塊移動到另一個字符塊
我會告訴你我必須做的事。在控制檯內部,我必須使用字符來創建遊戲。我打算讓一個像小精靈一樣的東西像一個能夠繞着屏幕跑動的人,當他像塞爾達那樣到達邊緣時移動窗口。很明顯,我並不是在製作整個遊戲,而只是做出其中的一小部分,但這對我來說都證明太多了。我使用的是Visual Studio 2010,但我必須使用他所做的一些代碼來幫助我們,但說實話,這看起來更像是一種障礙而不是幫助,因爲所有關於此的教程都是從頭開始在VS2010中使用C++而不是從他的代碼。
我首先想到我可以創建一個名爲gameMap的數組,並使用兩個for循環來填充背景空間。然後最重要的是有一個玩家陣列,一個障礙物陣列和使用相同策略的敵人陣列。但由於一些奇怪的原因,我必須設置char類型,兩個for循環將打印到數組[i] [j] 裏面這兩個for循環,即使事先在代碼中我已明確設置了數組中的內容。 例,
char array[2][2] = {
{ '*', '*',},
{ '*', '*',},
};
但正如我所說,當我試圖剛剛打印出它的陣列像它完全忽略了什麼我已經設置該數組已經和剛打印出一堆「星號」。對背景來說很好,但是當我想打印播放器而不是在一個正方形中打印一串星號時,它會將它們打印成一長排,然後唯一的方法就是在打印出播放器陣列時,我在下面的另一個for循環打印出剩下的控制檯窗口的X值,所以在這種情況下,有70個字符的空格,但這當然是完全錯誤的,甚至不是一個合適的解決方案。
任何幫助將不勝感激。