前陣子,我寫了一篇有關RM實現陣列的文章。
很多人也不明白甚麼是陣列,
有甚麼用處,甚至質疑我是否在亂作一通,
使我非常失望。
有鑑於此,
我決定寫一篇文章介紹陣列,
說說其結構和用處。
陣列(array),顧名思義,
即是一行東西,
它不是一個系統,而是一項技術。
就像一列火車,車卡上都順序寫了編號,
每一個車卡都能載不同的東西,
變數、開關,甚至文字。
一卡卡的車卡,組合而成就是陣列了。
陣列獨特之處在於它的編號,
有了這些編號就能做出一般資料模式做不到的事情,
如玩家輸入一個數字,
程式就從陣列中找出有相同編號的車卡。
這比一般變數方便而有條理得多。
由於陣列易於管理,
所以自90年代都是程式設計師的好幫手,
就用一個例子,
在RPGMaker95以來至現在的XP,
都大量使用陣列來滿足遊戲製作的千變萬化,
如供用家使用的變數、開關、主角資料、
怪物資料、物品、技能,還有許多許多,
在指令裡面,也有物品編號、主角編號,
這些就是我之前所提及的車卡編號。
正因如此,用家才能有更大的自由度。
那麼,怎樣才可以在遊戲製作中使用陣列呢?
舉一個例子,如在過三關的遊戲中,
我們可以用二次元陣列, 方便AI運算。
或者在戰棋遊戲當中負責記錄各單位的耐久度、
攻擊力、移動力等。
如需要讀取該單位的資料,
只需要編號,就能夠獲得該資料,
省去繁複的判斷。
以下是一個C++的讀取指令
cout>>array1[7];
cout>>是輸出的指令
array1是陣列的名稱
[7]是陣列編號
這樣就能輸出陣列array1的7號車卡裡的資料了。
用回戰棋的例子,獲得編號後,如[3],
hp[3]就是單位的耐久度,
atk[3]就是攻擊力,
而move[3]就是移動力了。
這就是並排陣列,大家也應該看到其優點。
再深入的就不多說了,
如果想知道更多有關陣列的模式,
請參閱有關書籍。
如想知道怎樣在RM使用陣列,
請查看RM類陣列實現的教學文章。
[此贴子已经被作者于2005-2-5 14:58:37编辑过] |