[ZP4.2]彷Tig 感染模式出倖存者和復仇者

Home Home
引用 | 編輯 dennis888
2011-02-15 07:15
樓主
推文 x0
出復仇者的內容是根據Rubbish-Nec 大大寫的修改,出倖存者就是小弟自己寫,抱歉加漏了==(26/3修改了,應該沒有問題==)
1.尋找 // Game vars
2.在// Game vars上加上
// For Nemesis
new g_nemesis_in_game[33] // 選定不幸的彊屍
new bool:g_nemesis_appear
new bool:g_nemesis_die
new bool:OK_to_make
3.尋找 public event_round_start(),開新一行加上
        // Nemesis Something
        g_nemesis_appear = false
        g_nemesis_die = false
        OK_to_make = false
        set_task(random_float(20.0,180.0), "make_rubbish_nemesis")
4.在 public event_round_start() 這段完了,下面加上
public make_rubbish_nemesis()
{
        OK_to_make = true
}
5.尋找 public respawn_player(taskid),把我這個複製然後貼上
public respawn_player(taskid)
{
    // Get player's team
    static team
    team = fm_get_user_team(ID_SPAWN)
   
    // Respawn on infection rounds only
    if (!g_endround && !g_survround && !g_swarmround && !g_nemround && !g_plagueround && team != CS_TEAM_SPECTATOR && team != CS_TEAM_UNASSIGNED && !is_user_alive(ID_SPAWN))
    {
        // Set proper team before respawning, so that the TeamInfo message that's sent doesn't confuse PODBots
        if (g_respawn_as_zombie[ID_SPAWN])
                {
                        fm_set_user_team(ID_SPAWN, CS_TEAM_T)
                       
                        if(g_nemround)
                            return;
                        if (g_plagueround)
                            return;
                        if (g_nemesis_die)
                            return;
                       
                        new g_hahachance = random_num(1,10)
                       
                        if(g_hahachance == 1 && fnGetZombies() <= 10)
                        {
                                if(!g_nemesis_appear && OK_to_make)
                                {
                                        g_nemesis_in_game[ID_SPAWN] = true
                                        g_nemesis_appear = true
                                }
                        }
                }
                else
                fm_set_user_team(ID_SPAWN, CS_TEAM_CT)
               
                // Respawning a player has never been so easy
                ExecuteHamB(Ham_CS_RoundRespawn, ID_SPAWN) // 這指令是重生……能活動、能咬人的那種
               
                if(g_nemesis_in_game[ID_SPAWN]) // 能活動就了召喚復仇者吧,嘿嘿嘿
                {
                        zombieme(ID_SPAWN, 0, 1, 0)
                       
                        set_hudmessage(200, 0, 0, HUD_EVENT_X, HUD_EVENT_Y, 0, 0.0, 3.0, 2.0, 1.0, -1)
                        ShowSyncHudMsg(0, g_MsgSync, "NEMESIS 出現……各位小心!!", LANG_PLAYER)
                       
                        g_nemesis_in_game[ID_SPAWN] = false
                       
                        g_nemesis_appear = true
                       
                        remove_task(TASK_AMBIENCESOUNDS)
                        ambience_sound_stop()
                        set_task(0.0, "ambience_sound_effects", TASK_AMBIENCESOUNDS)
                }
                if(!g_nemesis_appear && fnGetHumans() <= 4)
                {
                        new g_leaderchance = random_num(1,8)
                       
                        if(g_leaderchance == 1)
                        {
                                humanme(ID_SPAWN, 1)
                               
                                set_hudmessage(0, 0, 200, HUD_EVENT_X, HUD_EVENT_Y, 0, 0.0, 3.0, 2.0, 1.0, -1)
                                ShowSyncHudMsg(0, g_MsgSync, "SurvivorLeaderDetected!!", LANG_PLAYER)
                               
                                PlaySound(sound_survivor[random_num(0, sizeof sound_survivor -1)]);
                        }
                }
                if(g_nemesis_appear && fnGetHumans() <= 4)
                {
                        new g_chance = random_num(1,8)
                       
                        if(g_chance == 1)
                        {
                                humanme(ID_SPAWN, 1)
                               
                                set_hudmessage(0, 0, 200, HUD_EVENT_X, HUD_EVENT_Y, 0, 0.0, 3.0, 2.0, 1.0, -1)
                                ShowSyncHudMsg(0, g_MsgSync, "SurvivorLeaderDetected!!", LANG_PLAYER)
                               
                                PlaySound(sound_survivor[random_num(0, sizeof sound_survivor -1)]);
                        }
                }
    }
}
6.尋找public ambience_sound_effects(taskid)
7.把if (g_nemround) // Nemesis Mode 變成else if (g_nemround) // Nemesis Mode
8.在else if (g_nemround) // Nemesis Mode上面加上
        if(g_nemesis_die)
        {
        isound = random_num(0, sizeof sound_ambience1 - 1)
        copy(amb_sound, sizeof amb_sound -1, sound_ambience1[isound])
        duration = sound_ambience1_duration[isound]
        }
        else if(g_nemesis_appear)
        {
        isound = random_num(0, sizeof sound_ambience2 - 1)
        copy(amb_sound, sizeof amb_sound -1, sound_ambience2[isound])
        duration = sound_ambience2_duration[isound]
        }
9.尋找 if (g_nemesis[victim]),把我這個複製然後貼上
    if (g_nemesis[victim])
        {
                SetHamParamInteger(3, 2)
               
                set_hudmessage(200, 0, 0, HUD_EVENT_X, HUD_EVENT_Y, 0, 0.0, 3.0, 2.0, 1.0, -1)
                ShowSyncHudMsg(0, g_MsgSync, "NEMESIS 已被殺死,喪屍將不可再重生!", LANG_PLAYER)
               
                g_nemesis_die = true
               
                remove_task(TASK_AMBIENCESOUNDS)
                ambience_sound_stop()
                set_task(0.0, "ambience_sound_effects", TASK_AMBIENCESOUNDS)
        }
10.教學完。不過ZP4.2沒有fnGetNemesis()和fnGetSurvivor()的指令,出過倖存者會再出,如果已經有復仇者,也會出,不過出了復仇者後不會再出(因g_nemesis_in_game[ID_SPAWN] = false,由true變成false )

獻花 x0
引用 | 編輯 Hangbaby
2011-02-15 18:10
1樓
  
有沒有zp4.3教學

獻花 x0
引用 | 編輯 dennis888
2011-02-15 22:07
2樓
  
zp4.3教學有兩個
http://bbs-mychat.com/reads.php?tid=907292 <-- 這個要Rubbish-Nec 大大發的復仇者在感染模式出現的插件
http://bbs-mychat.com/reads.php?tid=907946 <-- 這個不需要Rubbish-Nec 大大發的復仇者在感染模式出現的插件

獻花 x0
引用 | 編輯 alvin321
2011-02-20 18:58
3樓
  
好亂...

獻花 x0
引用 | 編輯 dennis888
2011-02-20 22:37
4樓
  
都不知道你有沒有認真看==
只是說很亂
小弟自問很認真發文
而且認真看也能夠改到主插件可以出倖存者和復仇者
你是不是只是為了加威望和$ ,而回一篇這麼短又無意義的回覆?

獻花 x0
引用 | 編輯 784063999
2011-03-02 14:15
5樓
  
如果沒有fnGetNemesis()和fnGetSurvivor()
可以自行增加其他指令

獻花 x0
引用 | 編輯 glay2005
2011-03-26 21:43
6樓
  
不過我改完轉檔OK後去測試好像無反應的樣子....
而且新回合並沒有隨機變成喪屍....
管理選單也變無效....

獻花 x0
引用 | 編輯 feifei767
2011-04-08 23:16
7樓
  
這是字海??
好對不起.我放棄去看..

獻花 x0
引用 | 編輯 xiaozai
2011-04-26 11:32
8樓
  
哇,這麼長啊 ,看的我頭暈! 表情

獻花 x0
引用 | 編輯 kaiabc777
2011-07-29 17:55
9樓
  
請問是隨機抽選一個還是抽選多個?

獻花 x1
引用 | 編輯 apapff58584
2012-10-31 14:59
10樓
  
Game vars在哪裡? 我用搜尋都找不到..... 還是因為我的資料夾沒有= =

獻花 x0