[ZP]于感染模式中出复仇者 (2010/08/01 22:48更新)

Home Home
<< 1 2 3 >>
跳页: (共 3 页)
引用 | 编辑 Rubbish-Nec
2010-07-12 13:26
楼主
推文 x45
为了更令人误会……我把标题改得更糟糕了表情          




在玩某伺服器时……会出现这个事件……

喔喔、复仇者出现了



要记着……这个是很普通的传染模式……

话说很久很久以前……YKH大在Ailledmodders问过一下




他提到有机率性的存在……嘿嘿嘿



首先,我的是ZP4.3,别的我不敢保证

1. 备份!!弄不回来我可帮不了你阿!!

2.开启zombie_plague40.sma

3.找寻『new g_burning_duration[33] // burning task duration』

4.在下面开新行加入:
复制程式
// For Nemesis
new g_nemesis_in_game[33] // 选定不幸的彊尸
new bool:g_nemesis_appear
new bool:g_nemesis_die
new bool:OK_to_make

5.找寻『public event_round_start()』

6.在里加入
复制程式
    // Nemesis Something
    g_nemesis_appear = false
    g_nemesis_die = false
    OK_to_make = false
    set_task(random_float(30.0,125.0), "make_rubbish_nemesis")

7.加入新行 -- 注意不是在『public event_round_start()』内
复制程式
public make_rubbish_nemesis()
{
    OK_to_make = true
}

8.再找寻『respawn_player_manually(id)』

9.把整个『respawn_player_manually(id)』换成我这个:
复制程式
respawn_player_manually(id)
{
    // Set proper team before respawning, so that the TeamInfo message that's sent doesn't confuse PODBots
    if (g_respawn_as_zombie[id])
    {
        fm_cs_set_user_team(id, FM_CS_TEAM_T)

        if(g_nemround && fnGetNemesis() == 0)
            return;
        if (g_plagueround && fnGetNemesis() == 0)
            return;
        if (g_nemesis_die)
            return;
        
        new g_hahachance = random_num(1,10)

            if(g_hahachance == 1  && fnGetNemesis() == 0)
        {
            if(!g_nemesis_appear && OK_to_make && g_modestarted)
            {
                g_nemesis_in_game[id] = true
                g_nemesis_appear = true
            }
        }
    }
    else
    fm_cs_set_user_team(id, FM_CS_TEAM_CT)
    
    // Respawning a player has never been so easy
    ExecuteHamB(Ham_CS_RoundRespawn, id) // 这指令是重生……能活动、能咬人的那种

    if(g_nemesis_in_game[id]) // 能活动就了召唤复仇者吧,嘿嘿嘿
    {
        zombieme(id, 0, 1, 0, 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] = false

        g_nemesis_appear = true
    }
}

10.修改参数
复制程式
set_task(random_float(30.0,125.0), "make_rubbish_nemesis") // 新游戏后随后30-125秒内会出现复仇者
new g_hahachance = random_num(1,10)  // 1/10的机会



背景音乐:

11.找寻『public fw_PlayerKilled(victim, attacker, shouldgib)』

12.找寻里面的『if (g_nemesis[victim])』

13.把整个『if (g_nemesis[victim])』换成我这个
复制程式
    // Nemesis explodes!
    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)
        set_task(0.0, "ambience_sound_effects", TASK_AMBIENCESOUNDS)
    }

14.回到『respawn_player_manually(id)』

15.找寻『g_nemesis_appear = true』

16.在下面加入
复制程式
        remove_task(TASK_AMBIENCESOUNDS)
        set_task(0.0, "ambience_sound_effects", TASK_AMBIENCESOUNDS)

17.飞走表情          

18.飞到『public ambience_sound_effects(taskid)』

19.把整个『public ambience_sound_effects(taskid)』换成我的
复制程式
// Ambience Sound Effects Task
public ambience_sound_effects(taskid)
{
    // Play a random sound depending on the round
    static sound[64], iRand, duration, ismp3
    
    if(g_nemesis_die)
    {
        iRand = random_num(0, ArraySize(sound_ambience1) - 1)
        ArrayGetString(sound_ambience1, iRand, sound, charsmax(sound))
        duration = ArrayGetCell(sound_ambience1_duration, iRand)
        ismp3 = ArrayGetCell(sound_ambience1_ismp3, iRand)
    }
    else if (g_nemround) // Nemesis Mode
    {
        iRand = random_num(0, ArraySize(sound_ambience2) - 1)
        ArrayGetString(sound_ambience2, iRand, sound, charsmax(sound))
        duration = ArrayGetCell(sound_ambience2_duration, iRand)
        ismp3 = ArrayGetCell(sound_ambience2_ismp3, iRand)
    }
    else if (g_survround) // Survivor Mode
    {
        iRand = random_num(0, ArraySize(sound_ambience3) - 1)
        ArrayGetString(sound_ambience3, iRand, sound, charsmax(sound))
        duration = ArrayGetCell(sound_ambience3_duration, iRand)
        ismp3 = ArrayGetCell(sound_ambience3_ismp3, iRand)
    }
    else if (g_swarmround) // Swarm Mode
    {
        iRand = random_num(0, ArraySize(sound_ambience4) - 1)
        ArrayGetString(sound_ambience4, iRand, sound, charsmax(sound))
        duration = ArrayGetCell(sound_ambience4_duration, iRand)
        ismp3 = ArrayGetCell(sound_ambience4_ismp3, iRand)
    }
    else if (g_plagueround) // Plague Mode
    {
        iRand = random_num(0, ArraySize(sound_ambience5) - 1)
        ArrayGetString(sound_ambience5, iRand, sound, charsmax(sound))
        duration = ArrayGetCell(sound_ambience5_duration, iRand)
        ismp3 = ArrayGetCell(sound_ambience5_ismp3, iRand)
    }
    else if(g_nemesis_appear)
    {
        iRand = random_num(0, ArraySize(sound_ambience2) - 1)
        ArrayGetString(sound_ambience2, iRand, sound, charsmax(sound))
        duration = ArrayGetCell(sound_ambience2_duration, iRand)
        ismp3 = ArrayGetCell(sound_ambience2_ismp3, iRand)
    }
    else // Infection Mode
    {
        iRand = random_num(0, ArraySize(sound_ambience1) - 1)
        ArrayGetString(sound_ambience1, iRand, sound, charsmax(sound))
        duration = ArrayGetCell(sound_ambience1_duration, iRand)
        ismp3 = ArrayGetCell(sound_ambience1_ismp3, iRand)
    }
    
    // Play it on clients
    if (ismp3)
        client_cmd(0, "mp3 play ^"sound/%s^"", sound)
    else
        PlaySound(sound)
    
    // Set the task for when the sound is done playing
    set_task(float(duration), "ambience_sound_effects", TASK_AMBIENCESOUNDS)
}



完成后效果如此:

于多人感染、普通感染等等没有复仇者出现的模式中,在30-125秒内随机找一个要复活的彊尸当复仇者(并使用复仇者模式音乐)

若复仇者挂掉,彊尸就不能再重生,而且回到普通感染模式的音乐






Q&A
一、为什么没背景音乐?
答:因为你没在『cstrike/addons/amxmodx/configs/zombie_plague.ini』内加入声音
例:复制程式
[Ambience Sounds] (randomly chosen if more than one) (only .wav and .mp3 formats supported) (duration is in seconds)
INFECTION ENABLE = 1
INFECTION SOUNDS = zombie_plague/gamestartup1.mp3
INFECTION DURATIONS = 268
NEMESIS ENABLE = 1
NEMESIS SOUNDS = zombie_plague/nemesis_detected.mp3
NEMESIS DURATIONS = 63

感谢收看

附上懒人包(真的很懒……繁化都没有……)






本帖包含附件
档名: zip zp_plugin_43.rar   (2022-06-09 14:15 / 334 KB)   下载次数:379


献花 x8
引用 | 编辑 HsK
2010-07-12 14:19
1楼
  
教学详细 ^^

支持大大

TiG 的 ser 我一直没去

找天有空去玩玩 xd

献花 x0
引用 | 编辑 andyt0621
2010-07-12 14:22
2楼
  
之前有大大写了生还者每局出现的..
我想应该差不多吧0.0

献花 x0
引用 | 编辑 fk1794xd
2010-07-12 14:27
3楼
  
在头版变了
"于感染模式中出"

想歪了-V-

献花 x1
引用 | 编辑 灭绝的天空
2010-07-12 16:17
4楼
  
我看过还有击杀僵尸特定机率出现复仇- -

所以有可能刚被抓就变复仇= =

献花 x0
引用 | 编辑 kongchiyung
2010-07-12 16:46
5楼
  
大大,我完全看不懂,你可以帮我修改吗?

本帖包含附件
档名: zip zombie_plague40.rar   (2022-06-09 14:15 / 57 KB)   下载次数:8


献花 x0
引用 | 编辑 ngan9876
2010-07-12 17:06
6楼
  
tig啦个伺服不没品的XD
丧尸王有丧尸炸弹,我一直炸死为丧尸
IP地址右出错,我明明按香港休闲伺服,他GIVE我去了TW的TIG死亡模式

献花 x0
引用 | 编辑 01a2Bc3DeF
2010-07-12 22:30
7楼
  
下面是引用 fk1794xd 于 2010-07-12 14:27 发表的 : 到引言文
在头版变了
"于感染模式中出"

想歪了-V-
在感染模式中出还真惊险阿表情
刚也是看到标题被骗进来的表情

献花 x0
引用 | 编辑 森之千手
2010-07-13 02:13
8楼
  
下面是引用 fk1794xd 于 2010-07-12 14:27 发表的 : 到引言文
在头版变了
"于感染模式中出"

想歪了-V-

如果你在现实的感染模式还在中出,你真强表情

===============================================

这个是不错,可惜本人不玩ZP

献花 x0
引用 | 编辑 wataru
2010-07-13 08:15
9楼
  
被标题骗进来+1~~
我糟糕了~

献花 x0
引用 | 编辑 01a2Bc3DeF
2010-07-13 13:54
10楼
  
下面是引用 森之千手 于 2010-07-13 02:13 发表的 : 到引言文


如果你在现实的感染模式还在中出,你真强表情

===============================================

这个是不错,可惜本人不玩ZP
该不会是中出zm吧表情

献花 x0
引用 | 编辑 Rubbish-Nec
2010-07-13 14:02
11楼
  
表情 别给我想歪!!表情


献花 x1
引用 | 编辑 a7811311622
2010-07-13 15:49
12楼
  
[正题]
ZP本来就是随便人改的…例如我…
我把感染炸弹碰到幸存者的伤害从原本的秒杀改成「幸存者血量的四分之一」…
这样非感染模式时至少可以看到恐怖的感染炸弹在乱飞~
(虽然结果是死的很惨罢了… 表情 )
[/正题]

[离题]
回覆内容一路看下来发现好多绅士呢… 表情
[/离题]

献花 x0
引用 | 编辑 i-c0112
2010-07-13 19:57
13楼
  
嗯~~~~~~~~~~~~
还好标题变正常了 不然我可能也跟前面那些绅士们一样了 表情

你的影片nemesis好像出现不到几秒呢 表情 都是小僵尸满场跑

献花 x0
引用 | 编辑 史来姆
2010-07-13 21:22
14楼
  
反而比较想有幸存者的出现..
楼上们的不说我也看不出啊
呵呵,我是乖孩子 表情

献花 x0
引用 | 编辑 takkinyuen
2010-07-13 21:48
15楼
  
下面是引用 史来姆 于 2010-07-13 21:22 发表的 : 到引言文
反而比较想有幸存者的出现..
楼上们的不说我也看不出啊
呵呵,我是乖孩子 表情

2个的原理是一样的吧
希望楼主 能研究到如何改音乐

献花 x0
引用 | 编辑 andy22022099
2010-07-14 15:14
16楼
  
中出到底是什么东东阿
RN大 我托付给您了
懂模组又懂插件的好像没几个阿

献花 x0
引用 | 编辑 hemazizi
2010-07-14 15:59
17楼
  
其实我不太懂有sma提供一下吗?
3.在上面的空格加入:是指在那呀表情
我搜寻到有2个respawn_player_manually(id)表情

献花 x0
引用 | 编辑 [AHK]XXX
2010-07-14 18:16
18楼
  
下面是引用 ngan9876 于 2010-07-12 17:06 发表的 : 到引言文
tig啦个伺服不没品的XD
丧尸王有丧尸炸弹,我一直炸死为丧尸
IP地址右出错,我明明按香港休闲伺服,他GIVE我去了TW的TIG死亡模式
5系ip错系TIG个SER有预留位置给vip 你要低于人数28先可以进去  5系就会帮你转向另一个server

献花 x0
引用 | 编辑 ★Final☆苍
2010-07-14 18:17
19楼
  
我听不懂这篇文章是啥 但是谢谢

献花 x0
引用 | 编辑 [AHK]XXX
2010-07-14 18:18
20楼
  
TIG不是计时间 是计尸的死亡人数达到一定标准 就会出王 表情

献花 x0
引用 | 编辑 takkinyuen
2010-07-15 08:06
21楼
  
楼主研究到如何正确改音乐吗?

献花 x0
引用 | 编辑 我爱如花
2010-07-15 10:46
22楼
  
真有趣嘛..中出.. 先感谢 我完全明白了表情

献花 x0
引用 | 编辑 kevin961104
2010-07-15 12:17
23楼
  
虽然之前看过你发提问区的文就有...不过你发在教学区...
因为应该很少人故意去找你在提问区发的文...Nec大你真的很无私..
虽然肯动手做的..可能也很少..所以在此衷心说一句..谢谢你
期待背景音乐中..还有花和推一定是要的吧...

题外话:
我找到了追踪者说S.T.A.R.的音效..你还要吗?..我先私信给你

献花 x0
引用 | 编辑 Rubbish-Nec
2010-07-15 14:19
24楼
  
下面是引用 [AHK]XXX 于 2010-07-14 18:18 发表的 : 到引言文
TIG不是计时间 是计尸的死亡人数达到一定标准 就会出王 表情

因为这个是仿……不要要求太多吧……表情

献花 x0
引用 | 编辑 [AHK]XXX
2010-07-15 14:37
25楼
  
如果要TIG和HKA的伺服器东西可问我拿 表情

献花 x0
引用 | 编辑 kevin961104
2010-07-15 15:18
26楼
  
那个......
1.开启zombie_plague40.sma

2.找寻『respawn_player_manually(id)』

3.在上面的空格加入:

在上面的空格加入是什么意思,,,是加左respawn_player_manually(id)的上面吗
即是:
// For Nemesis
new g_nemesis_in_game[33] // 选定不幸的彊尸
new bool:g_nemesis_appear
new bool:g_nemesis_die
new bool:OK_to_make

respawn_player_manually(id)

这样吗??

献花 x0
引用 | 编辑 Rubbish-Nec
2010-07-15 15:19
27楼
  
下面是引用 kevin961104 于 2010-07-15 15:18 发表的 : 到引言文
那个......
1.开启zombie_plague40.sma

2.找寻『respawn_player_manually(id)』

3.在上面的空格加入:

在上面的空格加入是什么意思,,,是加左respawn_player_manually(id)的上面吗
即是:
// For Nemesis
new g_nemesis_in_game[33] // 选定不幸的彊尸
new bool:g_nemesis_appear
new bool:g_nemesis_die
new bool:OK_to_make

respawn_player_manually(id)

这样吗??

有一个是这样的:

respawn_player_manually(id)
{
.
.
.

}

就是在上面加入表情

献花 x0
引用 | 编辑 kevin961104
2010-07-15 15:23
28楼
  
1.<-------------?
respawn_player_manually(id)
{     2.<-------------?
.     3.<-------------?
.     4.<-------------?
.     5.<-------------?
    6.<-------------?
}     7.<-------------?
    8.<-----------?

上面的意思为??? 真的不太懂,,,,
是1.的位置吗..

献花 x0
引用 | 编辑 Rubbish-Nec
2010-07-15 15:43
29楼
  
下面是引用 kevin961104 于 2010-07-15 15:23 发表的 : 到引言文
1.<-------------?

respawn_player_manually(id)
{
.
.
.
}


上面的意思为??? 真的不太懂,,,,
是1.的位置吗..

1.

献花 x0
<< 1 2 3 >>
跳页: (共 3 页)