下面是引用 史來姆 於 2010-07-27 19:55 發表的 :
為甚麼都是不行
複製程式
else if ((get_playersnum() <= 10 && fnGetZombies() <= 1) || (10 < get_playersnum() <= 20 && fnGetZombies() <= 2) || (20< get_playersnum()<=32 && fnGetZombies() <= 3))
我設成31bot,加上我 = 32人
20秒後,只有一只而已.......
後來有測試過了…那寫法只是滿足「依照人數來決定有幾個屍王」的內容…
如果想要倒數結束後出現你想要的人數的話…需要再多寫其他內容:
尋找「make_a_zombie(mode, id)」裡的:
// Single Infection Mode
g_lastmode = MODE_INFECTION
// Turn player into the first zombie
zombieme(id, 0, 0, 0)
改成
複製程式
// Single Infection Mode
g_lastmode = MODE_INFECTION
// Turn player into the first zombie
if (get_playersnum() <= 10)
{
zombieme(id, 0, 0, 0)
}
else if (10 < get_playersnum() <= 20)
{
static id_next
do
{
id_next = random_num(1, iPlayersnum)
}
while(id_next == id)
zombieme(id, 0, 0, 0)
zombieme(id_next, 0, 0, 0)
}
else
{
static id_next, id_last
do
{
id_next = random_num(1, iPlayersnum)
}
while(id_next == id)
do
{
id_last = random_num(1, iPlayersnum)
}
while(id_last == id || id_last == id_next)
zombieme(id, 0, 0, 0)
zombieme(id_next, 0, 0, 0)
zombieme(id_last, 0, 0, 0)
}
不過這樣改的缺點是:
如果假設你用32人…即是會出現3隻屍王時…
如果殭屍的數量一直沒超過3隻的話…
這段時間任何人變成殭屍都會是屍王…
如果看不懂我想表達的…就進入遊戲裡測試就知道了…