Night Fighter
Участник
- Сообщения
- 235
- Реакции
- 135
ребята, как убрать текст, посередине экрана победившей команды, вконце раунда, типа терррорст вин, контр-террорист вин!
public OnPluginStart()
{
HookEvent("round_end", OnRoundEnd);
}
public OnRoundEnd(Handle:event, const String:name[], bool:dontBroadcast)
{
PrintCenterTextAll(" ");
}
http://hlmod.ru/forum/showpost.php?p=183108&postcount=135
PHP:public OnPluginStart() { HookEvent("round_end", OnRoundEnd); } public OnRoundEnd(Handle:event, const String:name[], bool:dontBroadcast) { PrintCenterTextAll(" "); }
кто нибудь может это допилить?
public OnPluginStart() HookEvent("round_end", OnRoundEnd, EventHookMode_PostNoCopy);
public OnRoundEnd(Handle:event, String:name[], bool:dontBroadcast) for(new i=1; i<=MaxClients; i++) if(IsClientInGame(i))
{
PrintHintText(i, " ");
ClientCommand(i, "playgamesound Music.StopAllMusic");
}
#include <sourcemod>
#define ROUNDEND_TARGET_BOMBED 1 // Target Successfully Bombed!
#define ROUNDEND_VIP_ESCAPED 2 // The VIP has escaped!
#define ROUNDEND_VIP_ASSASSINATED 3 // VIP has been assassinated!
#define ROUNDEND_TERRORISTS_ESCAPED 4 // The terrorists have escaped!
#define ROUNDEND_CTS_PREVENTESCAPE 5 // The CT's have prevented most of the terrorists from escaping!
#define ROUNDEND_ESCAPING_TERRORISTS_NEUTRALIZED 6 // Escaping terrorists have all been neutralized!
#define ROUNDEND_BOMB_DEFUSED 7 // The bomb has been defused!
#define ROUNDEND_CTS_WIN 8 // Counter-Terrorists Win!
#define ROUNDEND_TERRORISTS_WIN 9 // Terrorists Win!
#define ROUNDEND_ROUND_DRAW 10 // Round Draw!
#define ROUNDEND_ALL_HOSTAGES_RESCUED 11 // All Hostages have been rescued!
#define ROUNDEND_TARGET_SAVED 12 // Target has been saved!
#define ROUNDEND_HOSTAGES_NOT_RESCUED 13 // Hostages have not been rescued!
#define ROUNDEND_TERRORISTS_NOT_ESCAPED 14 // Terrorists have not escaped!
#define ROUNDEND_VIP_NOT_ESCAPED 15 // VIP has not escaped!
#define ROUNDEND_GAME_COMMENCING 16 // Game Commencing!
public OnPluginStart()
{
HookEvent("round_end", Event_RoundEnd, EventHookMode_Pre);
}
public Action:Event_RoundEnd(Handle:event, const String:name[], bool:dontBroadcast)
{
new iReason = GetEventInt(event, "reason");
if(iReason == ROUNDEND_TARGET_BOMBED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_VIP_ESCAPED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_VIP_ASSASSINATED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_TERRORISTS_ESCAPED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_CTS_PREVENTESCAPE)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_ESCAPING_TERRORISTS_NEUTRALIZED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_BOMB_DEFUSED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_CTS_WIN)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_TERRORISTS_WIN)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_ALL_HOSTAGES_RESCUED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_TARGET_SAVED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_HOSTAGES_NOT_RESCUED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_TERRORISTS_NOT_ESCAPED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_VIP_NOT_ESCAPED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_ROUND_DRAW)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_GAME_COMMENCING)
SetEventString(event, "message", " ");
return Plugin_Continue;
}
#include <sourcemod>
#define ROUNDEND_TARGET_BOMBED 0 // Target Successfully Bombed!
#define ROUNDEND_VIP_ESCAPED 1 // The VIP has escaped!
#define ROUNDEND_VIP_ASSASSINATED 2 // VIP has been assassinated!
#define ROUNDEND_TERRORISTS_ESCAPED 3 // The terrorists have escaped!
#define ROUNDEND_CTS_PREVENTESCAPE 4 // The CT's have prevented most of the terrorists from escaping!
#define ROUNDEND_ESCAPING_TERRORISTS_NEUTRALIZED 5 // Escaping terrorists have all been neutralized!
#define ROUNDEND_BOMB_DEFUSED 6 // The bomb has been defused!
#define ROUNDEND_CTS_WIN 7 // Counter-Terrorists Win!
#define ROUNDEND_TERRORISTS_WIN 8 // Terrorists Win!
#define ROUNDEND_ROUND_DRAW 9 // Round Draw!
#define ROUNDEND_ALL_HOSTAGES_RESCUED 10 // All Hostages have been rescued!
#define ROUNDEND_TARGET_SAVED 11 // Target has been saved!
#define ROUNDEND_HOSTAGES_NOT_RESCUED 12 // Hostages have not been rescued!
#define ROUNDEND_TERRORISTS_NOT_ESCAPED 13 // Terrorists have not escaped!
#define ROUNDEND_VIP_NOT_ESCAPED 14 // VIP has not escaped!
#define ROUNDEND_GAME_COMMENCING 15 // Game Commencing!
public OnPluginStart()
{
HookEvent("round_end", Event_RoundEnd, EventHookMode_Pre);
}
public Action:Event_RoundEnd(Handle:event, const String:name[], bool:dontBroadcast)
{
new iReason = GetEventInt(event, "reason");
if(iReason == ROUNDEND_TARGET_BOMBED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_VIP_ESCAPED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_VIP_ASSASSINATED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_TERRORISTS_ESCAPED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_CTS_PREVENTESCAPE)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_ESCAPING_TERRORISTS_NEUTRALIZED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_BOMB_DEFUSED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_CTS_WIN)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_TERRORISTS_WIN)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_ALL_HOSTAGES_RESCUED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_TARGET_SAVED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_HOSTAGES_NOT_RESCUED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_TERRORISTS_NOT_ESCAPED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_VIP_NOT_ESCAPED)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_ROUND_DRAW)
SetEventString(event, "message", " ");
if(iReason == ROUNDEND_GAME_COMMENCING)
SetEventString(event, "message", " ");
return Plugin_Continue;
}
#include <sourcemod>
#include <sdktools>
public OnPluginStart()
{
HookEvent("round_end", Event_RoundEnd);
}
public OnMapStart()
{
PrecacheSound("radio/terwin.wav");
PrecacheSound("radio/ctwin.wav");
PrecacheSound("radio/bombdef.wav");
}
public Event_RoundEnd(Handle:event, const String:name[], bool:dontBroadcast)
{
new winner = GetEventInt(event, "winner");
if(winner <= 1)
return;
for(new client = 1; client <= MaxClients; client++)
if(IsClientInGame(client) && !IsFakeClient(client))
{
StopSound(client, SNDCHAN_STATIC, winner == 2 ? "radio/terwin.wav":"radio/ctwin.wav");
StopSound(client, SNDCHAN_STATIC, winner == 2 ? "radio/terwin.wav":"radio/bombdef.wav");
StopSound(client, SNDCHAN_STATIC, winner == 2 ? "radio/ctwin.wav":"radio/bombdef.wav");
StopSound(client, SNDCHAN_STATIC, winner == 2 ? "radio/bombdef.wav":"radio/ctwin.wav");
StopSound(client, SNDCHAN_STATIC, winner == 2 ? "radio/bombdef.wav":"radio/terwin.wav");
}
}
#include <sdktools_sound>
public OnPluginStart() HookEvent("round_end", Event_RoundEnd);
public Event_RoundEnd(Handle:event, String:name[], bool:dontBroadcast) switch(GetEventInt(event, "winner"))
{
case 2:for(new i=1; i<=MaxClients; i++) if(IsClientInGame(i)) StopSound(i, SNDCHAN_STATIC, "radio/terwin.wav");
case 3:for(new i=1; i<=MaxClients; i++) if(IsClientInGame(i)) StopSound(i, SNDCHAN_STATIC, "radio/ctwin.wav");
}
public OnPluginStart() HookEvent("round_end", Event_RoundEnd, EventHookMode_Pre);
public Action:Event_RoundEnd(Handle:event, String:name[], bool:dontBroadcast)
{
SetEventString(event, "message", " ");
return Plugin_Continue;
}
#include <sdktools_sound>
public OnPluginStart()
{
HookEvent("round_end", RoundEnd, EventHookMode_Pre);
HookEvent("round_end", Event_RoundEnd);
}
public Action:RoundEnd(Handle:event, String:name[], bool:dontBroadcast)
{
SetEventString(event, "message", " ");
return Plugin_Continue;
}
public Event_RoundEnd(Handle:event, String:name[], bool:dontBroadcast) switch(GetEventInt(event, "winner"))
{
case 2:for(new i=1; i<=MaxClients; i++) if(IsClientInGame(i)) StopSound(i, SNDCHAN_STATIC, "radio/terwin.wav");
case 3:for(new i=1; i<=MaxClients; i++) if(IsClientInGame(i)) StopSound(i, SNDCHAN_STATIC, "radio/ctwin.wav");
}
ОффтопПроще тормозить 2 звука сразу в одном цикле
как же ты допустил два аналогичных цикла
Дали код - из него и сделал) К тому же, код то FrozDark'а.просто сделать хук звука
Это же не по event'у блокировать, поэтому может и не сработать. Хотел попробовать, но подумал, что может быть ненадёжно (особенно на старой версии CS:S то).PreHook то блокируется и текст сообщения и звук
Зачем изобретать велосипед, который уже изобрели ...Это же не по event'у блокировать
А я тебе о том, что в событие Pre не всё делается. Хотя, я "стоп-звук" не проверял, может там и задумано так, что можно остановить звук ещё до его воспроизведения. Иначе - лучше с событием Post (после попытки воспроизведения)!не об этом
Ок гуру, тебе виднее.А я тебе о том, что в событие Pre не всё делается. Хотя, я "стоп-звук" не проверял, может там и задумано так, что можно остановить звук ещё до его воспроизведения. Иначе - лучше с событием Post (после попытки воспроизведения)!
Плагин работает отлично! Нужно добавить только ещё одну команду чтобы удаляла надпись "Вы убили товарища по команде"Re: [CS:S] Убрать текст и звук победившей команды
EPacker2, а так нельзя сразу?! :-DPHP:#include <sdktools_sound> public OnPluginStart() { HookEvent("round_end", RoundEnd, EventHookMode_Pre); HookEvent("round_end", Event_RoundEnd); } public Action:RoundEnd(Handle:event, String:name[], bool:dontBroadcast) { SetEventString(event, "message", " "); return Plugin_Continue; } public Event_RoundEnd(Handle:event, String:name[], bool:dontBroadcast) switch(GetEventInt(event, "winner")) { case 2:for(new i=1; i<=MaxClients; i++) if(IsClientInGame(i)) StopSound(i, SNDCHAN_STATIC, "radio/terwin.wav"); case 3:for(new i=1; i<=MaxClients; i++) if(IsClientInGame(i)) StopSound(i, SNDCHAN_STATIC, "radio/ctwin.wav"); }