shinyrose 发表于 2006-11-17 03:30:58

怎么往拆C4成功加声效?

miscstats.sma中的
public bomb_defused(defuser)
if (BombDefused)
announceEvent(defuser, "DEFUSED_BOMB")
该怎么写好?
或者有没有其他的办法往miscstats.sma加代码实现此效果?

pop781 发表于 2006-11-17 14:17:09

回复: 怎么往拆C4成功加声效?


// 先预缓存声音文件
public plugin_precache()
{
// 例如:
   precache_sound("misc/defused.wav")
}

if (BombDefused)
{
   announceEvent(defuser, "DEFUSED_BOMB")

   // 所有人播放声音
   client_cmd(0,"spk misc/defused")
}

Ryu2877 发表于 2006-11-17 16:47:06

回复: 怎么往拆C4成功加声效?

借个地方。。。。
呵呵,烂人啊,在自己服里用的插件可以用“native”,如果别人直接单独使用那个插件,没有金钱插件或读取次数多(如赌博等),不“stock”一个来判断读取不但繁琐而且分分钟出错,所以发出去的代码用“is_plugin。。。”、“callfunc”,金山用的累了,在这里回复。

pop781 发表于 2006-11-17 17:48:38

回复: 怎么往拆C4成功加声效?

不太明白。。。?

注册一个导出函数和 “callfunc” 效果一样,但更方便。
可以开个新的帖子一起研究一下。。
还有你那代码问题挺多的例如:

public Round_End()
{
new playersList,pnum
get_players(playersList, pnum)
for ( new i = 0; i < pnum; i++ )
{
new t = get_user_team(playersList)
if ( t && t != 3)
{
   new id = playersList
   Levy_or_Imburse(id)
}
}
}


虽然使用没有错误,但应该为:

public Round_End()
{
new playersList,pnum,t,id
get_players(playersList, pnum)
for ( new i = 0; i < pnum; i++ )
{
t = get_user_team(playersList)
if ( t && t != 3)
{
   id = playersList
   Levy_or_Imburse(id)
}
}
}
永远不要在循环里定义参数。。

shinyrose 发表于 2006-11-17 18:29:10

回复: 怎么往拆C4成功加声效?

Post by pop781

// 先预缓存声音文件
public plugin_precache()
{
// 例如:
precache_sound("misc/defused.wav")
}

if (BombDefused)
{
announceEvent(defuser, "DEFUSED_BOMB")

// 所有人播放声音
client_cmd(0,"spk misc/defused")
}


非常感谢!!
可以完全无错编译通过.
那是否用同样的办法,实现被O4炸死也加声效?
我编译的时候出错了!
AMXX原代码如下:

if (wpnindex == CSW_HEGRENADE && (GrenadeKill || GrenadeSuicide))
{
new killer_name, victim_name

get_user_name(killer, killer_name, 31)
get_user_name(victim, victim_name, 31)

set_hudmessage(255, 100, 100, -1.0, 0.25, 1, 6.0, 6.0, 0.5, 0.15, -1)

if (!selfkill)
{
   if (GrenadeKill)
    ShowSyncHudMsg(0, g_he_sync, "%L", LANG_PLAYER, g_HeMessages, killer_name, victim_name)
}
else if (GrenadeSuicide)
   ShowSyncHudMsg(0, g_he_sync, "%L", LANG_PLAYER, g_SHeMessages, victim_name)
}

Ryu2877 发表于 2006-11-17 18:52:21

回复: 怎么往拆C4成功加声效?

呵呵,由于这个插件很简单,我习惯了“即需即定义”,没有复查效率,谢谢指正。
关于那个版本为什么不定义“native”,是为了考虑兼容性,或许别人有自己的或根本不用金钱插件,但是不管如何,直接编译那个代码后插件不会运行出错(自用的确实用“native”,正如你所说,方便快捷)。

pop781 发表于 2006-11-17 19:05:13

回复: 怎么往拆C4成功加声效?

Post by shinyrose

那是否用同样的办法,实现被O4炸死也加声效?
我编译的时候出错了!
AMXX原代码如下:

if (wpnindex == CSW_HEGRENADE && (GrenadeKill || GrenadeSuicide))
{
new killer_name, victim_name

get_user_name(killer, killer_name, 31)
get_user_name(victim, victim_name, 31)

set_hudmessage(255, 100...

你增加了那个地方?

道理和上面一样的,根据自己需要进行变化

if (!selfkill)
{
   if (GrenadeKill)
   {
      ShowSyncHudMsg(0, g_he_sync, "%L", LANG_PLAYER, g_HeMessages, killer_name, victim_name)
      // ...执行播放声音
   }
   else if (GrenadeSuicide)
   {
      ShowSyncHudMsg(0, g_he_sync, "%L", LANG_PLAYER, g_SHeMessages, victim_name)
      // ...执行播放声音
   }
}

shinyrose 发表于 2006-11-18 15:53:46

回复: 怎么往拆C4成功加声效?

if (!selfkill)


{
if (

GrenadeKill)


{



ShowSyncHudMsg(0, g_he_sync, "%L", LANG_PLAYER, g_HeMessages[random_num(0, 3)], killer_name, victim_name)


play_sound("misc/default")


}


else if (
GrenadeSuicide)


{

ShowSyncHudMsg(0, g_he_sync, "%L", LANG_PLAYER, g_SHeMessages[random_num(0, 3)], victim_name)


play_sound("misc/default")


}

}

有问题,不出声...请教!!

fgyaa 发表于 2006-11-18 16:51:47

回复: 怎么往拆C4成功加声效?

学习中,顶一下。:)

pop781 发表于 2006-11-18 17:30:07

回复: 怎么往拆C4成功加声效?

Post by shinyrose
if (!selfkill)


{

if (




GrenadeKill)



{


:sweat:
不是
play_sound("misc/default")

是这个
// 播放声音
client_cmd(0,"spk misc/default")

页: [1] 2
查看完整版本: 怎么往拆C4成功加声效?