Hello shavit. Founded few bugs with shavit-chat. Using latest version SM and latest GitHub Release
1) Team chat not working
2) If message contain "/" or "!" - teamchat working and allchat but not working prefixes
3) I can't use 3 colors in 1 prefix (prefix will be shorter)
4) I'm using pernament mutes (attached) and it is don't working for gaging players :C Maybe u can help me? )
Issues:
Can u make a message like: Congrats ur rank now is [Legendary] on 3 position
And message when map complated: Kruzi complated mg_100_traps with (923 points[+23])
Or maybe chattrigger !chatranks and if it typed in chat player will see position of players near their ranks
How can i hide some commands like rtv or nominate?
Or maybe showrank on score (on mvp or assists)
If it is possible add more colors please. Like white or something else. I have colors.inc with 17 colors
// type GetCmdArg(3, value, 15); new type = StringToInt(value); if (type < 1 || type > 3) { ReplyToCommand(client, "Неверный тип мута: \"%s\"", value); return Plugin_Handled; }
// time GetCmdArg(2, value, 15); new time = StringToInt(value); KvJumpToKey(KV, SteaM, true); KvSetNum(KV, "type", type); if (time > 0) KvSetNum(KV, "time", time * 60 + GetTime()); else KvSetNum(KV, "time", 0); KvRewind(KV); if (target > 0) { wS_MutePlayer(target, type); if (time > 0) { wS_KillUnMuteTimer(target); MyUnMuteTimer[target] = CreateTimer(float(time*60), MyUnMuteTimer_CallBack, target); PrintToChatAll("[\x0CFunny\x0BGaming\x01] \x06%N \x01получил мут на \x0F%s \x01мин", target, value); } else PrintToChatAll("[\x0CFunny\x0BGaming\x01] \x06%N \x01получил \x02вечный мут", target); } else { decl String:x_steam[25]; for (new i = 1; i <= MaxClients; i++) { if (IsClientInGame(i) && !IsFakeClient(i) && GetClientAuthId(i, AuthId_Steam2,x_steam, 25) && strcmp(x_steam, SteaM) == 0) { wS_MutePlayer(i, type);
if (time > 0) { wS_KillUnMuteTimer(i); MyUnMuteTimer[i] = CreateTimer(float(time*60), MyUnMuteTimer_CallBack, i); PrintToChatAll("[\x0CFunny\x0BGaming\x01] \x06%N \x01 получил мут на \x0F%s \x01мин", i, value); } else PrintToChatAll("[\x0CFunny\x0BGaming\x01] \x06%N \x01 получил \x02вечный мут", i);
public Action:mute_del_all(client, args) { if (!KvGotoFirstSubKey(KV, true)) { PrintToConsole(client, "База и так пуста"); return Plugin_Handled; }
CloseHandle(KV); KV = CreateKeyValues("mute_player"); KeyValuesToFile(KV, "mute_player.txt"); for (new i = 1; i <= MaxClients; i++) { if (IsClientInGame(i) && !IsFakeClient(i)) { wS_KillUnMuteTimer(i); chat_muted[i] = false; SetClientListeningFlags(i, VOICE_NORMAL); } } PrintToConsole(client, "База очищена (все муты удалены)");
return Plugin_Handled; }
///
public Action:mute_list(client, args) { if (!KvGotoFirstSubKey(KV, true)) { PrintToConsole(client, "Мутов нет"); return Plugin_Handled; } new x = 0, time, type, world_time = GetTime(), H, M, S; decl String:SteaM[25]; do { if (!KvGetSectionName(KV, SteaM, 25)) continue;
time = KvGetNum(KV, "time"); type = KvGetNum(KV, "type"); if (time < 1) { PrintToConsole(client, "%02d. %s (%s) | вечный мут", ++x, SteaM, MutType[type]); PrintToChat(client, "%02d. %s (%s) | вечный мут", ++x, SteaM, MutType[type]); } else { time -= world_time; H = time / 3600; M = (time % 3600) / 60; S = time % 60; if (S > -1) { PrintToConsole(client, "%02d. %s (%s) | до снятия мута: %d:%02d:%02d", ++x, SteaM, MutType[type], H, M, S); PrintToChat(client, "%02d. %s (%s) | до снятия мута: %d:%02d:%02d", ++x, SteaM, MutType[type], H, M, S); }else{ PrintToConsole(client, "%02d. %s (%s) | мут снят (время истекло)", ++x, SteaM, MutType[type]); PrintToChat(client, "%02d. %s (%s) | мут снят (время истекло)", ++x, SteaM, MutType[type]); } } } while (KvGotoNextKey(KV, true)); KvRewind(KV); return Plugin_Handled; }
///
public Action:say(client, args) { if (chat_muted[client] && client > 0) return Plugin_Handled; return Plugin_Continue; }
wS_MutePlayer(client, mut_type) { if (mut_type != 2) chat_muted[client] = true; if (mut_type != 1) SetClientListeningFlags(client, VOICE_MUTED); }
wS_UnMuteSteaM(const String:SteaM[]) { decl String:x_steam[25]; for (new i = 1; i <= MaxClients; i++) { if (IsClientInGame(i) && !IsFakeClient(i) && GetClientAuthId(i, AuthId_Steam2,x_steam, 25) && strcmp(x_steam, SteaM) == 0) { wS_KillUnMuteTimer(i); chat_muted[i] = false; SetClientListeningFlags(i, VOICE_NORMAL); PrintToChat(i, "[\x0CFunny\x0BGaming\x01] \x06%N\x01, с вас \x02снят мут", i); } } }
///
public Action:MyUnMuteTimer_CallBack(Handle:timer, any:client) { MyUnMuteTimer[client] = INVALID_HANDLE; decl String:SteaM[25]; if (GetClientAuthId(client, AuthId_Steam2,SteaM, 25) && KvJumpToKey(KV, SteaM)) { new type = KvGetNum(KV, "type"); KvDeleteThis(KV); KvRewind(KV); if (type == 1) chat_muted[client] = false; else if (type == 2) SetClientListeningFlags(client, VOICE_NORMAL); else { chat_muted[client] = false; SetClientListeningFlags(client, VOICE_NORMAL); } PrintToChat(client, "[\x0CFunny\x0BGaming\x01] \x06%N\x01, с вас \x02снят мут", client); } return Plugin_Stop; }
///
public OnClientPutInServer(client) { chat_muted[client] = false;
if (IsFakeClient(client)) return;
decl String:SteaM[25]; if (!GetClientAuthId(client, AuthId_Steam2,SteaM, 25) || !KvJumpToKey(KV, SteaM)) return;
new time = KvGetNum(KV, "time"); new type = KvGetNum(KV, "type"); if (time != 0) { time -= GetTime(); if (time < 1) { KvDeleteThis(KV); KvRewind(KV); return; } MyUnMuteTimer[client] = CreateTimer(float(time), MyUnMuteTimer_CallBack, client); } KvRewind(KV); wS_MutePlayer(client, type); }
///
public OnClientDisconnect(client) { wS_KillUnMuteTimer(client); }
shavit-chat will be updated soon.
note: you will need Simple Chat Processor (Redux) for the new fixes to apply. shavit-chat will still work, but new functionality won't be added without SCP.
Pushed a big update. Including fix for shavit-chat (implementation of support for SCP), custom sprites for mapzones: make sure you also upload the new config file/materials folder and optimized mapzones so we can aim for lower server variance. https://github.com/shavitush/bhoptimer/pull/89
I really recommend updating.
P.S I'm aware of 'weird looking mapzones' in CS:GO, just edit the sprites to whatever you want.
Can anyone give me the settings for a bhop server? I get like warmup time, voting map after time finishes and mapchooser votes doesn't appear at like 3 minute I think
Can anyone give me the settings for a bhop server? I get like warmup time, voting map after time finishes and mapchooser votes doesn't appear at like 3 minute I think
non-forced mapchooser votes are broken at the moment because of a change with shavit-misc
My shavits chat isn't loading, I did rcon sm plugins list and it said <failed> to load shavits chat, I checked console.log but theres nothing about shavits chat
My shavits chat isn't loading, I did rcon sm plugins list and it said <failed> to load shavits chat, I checked console.log but theres nothing about shavits chat