Сервер ксс, помогите облегчить себе жизнь: как менять команды местами через команду или плагин ?
#include <cstrike>
public void OnPluginStart()
{
RegAdminCmd("sm_swap", Action_Swap, ADMFLAG_ROOT);
}
public Action Action_Swap(int iClient, int iArgs)
{
for(int i = 1; i <= MaxClients; i++)
{
if(IsClientInGame(i) && GetClientTeam(i) == 2)
{
CS_SwitchTeam(i, 3);
PrintToChat(i, "Вас кинуло за CT");
}
else if(IsClientInGame(i) && GetClientTeam(i) == 3)
{
CS_SwitchTeam(i, 2);
PrintToChat(i, "Вас кинуло за T");
}
}
}
C-подобный:#include <cstrike> public void OnPluginStart() { RegAdminCmd("sm_swap", Action_Swap, ADMFLAG_ROOT); } public Action Action_Swap(int iClient, int iArgs) { for(int i = 1; i <= MaxClients; i++) { if(IsClientInGame(i) && GetClientTeam(i) == 2) { CS_SwitchTeam(i, 3); PrintToChat(i, "Вас кинуло за CT"); } else if(IsClientInGame(i) && GetClientTeam(i) == 3) { CS_SwitchTeam(i, 2); PrintToChat(i, "Вас кинуло за T"); } } }
#include <cstrike>
public void OnPluginStart()
{
RegAdminCmd("sm_swap", Action_Swap, ADMFLAG_ROOT);
}
public Action Action_Swap(int iClient, int iArgs)
{
for(int i = 1, j; i <= MaxClients; i++)
{
if (IsClientInGame(i))
{
if (1 < (j = GetClientTeam(i)))
{
CS_SwitchTeam(i, view_as<int>(!view_as<bool>(j - 2)) + 2);
CS_RespawnPlayer(i);
}
PrintToChat(i, "\x04[Уведомление] \x01Произошла смена команд");
}
}
}
C-подобный:#include <cstrike> public void OnPluginStart() { RegAdminCmd("sm_swap", Action_Swap, ADMFLAG_ROOT); } public Action Action_Swap(int iClient, int iArgs) { for(int i = 1; i <= MaxClients; i++) { if(IsClientInGame(i) && GetClientTeam(i) == 2) { CS_SwitchTeam(i, 3); PrintToChat(i, "Вас кинуло за CT"); } else if(IsClientInGame(i) && GetClientTeam(i) == 3) { CS_SwitchTeam(i, 2); PrintToChat(i, "Вас кинуло за T"); } } }
Ничего не понял, я не программист, объясните простым языком что сделать надо? Отблагодарю каждого0-0C-подобный:#include <cstrike> public void OnPluginStart() { RegAdminCmd("sm_swap", Action_Swap, ADMFLAG_ROOT); } public Action Action_Swap(int iClient, int iArgs) { for(int i = 1, j; i <= MaxClients; i++) { if(IsClientInGame(i)) { if (1 < (j = GetClientTeam(i))) CS_SwitchTeam(i, view_as<int>(!view_as<bool>(j - 2)) + 2); } } PrintToChatAll("\x04[Уведомление] \x01Произошла смена команд"); }
скомпилить плагинНичего не понял, я не программист, объясните простым языком что сделать надо? Отблагодарю каждого
Скомпилировано на SM 1.10Ничего не понял, я не программист, объясните простым языком что сделать надо? Отблагодарю каждого
было бы ещё неплохо указать под какой см1SwapTeam - от меня
2SwapTeam - от @DeathScore13
А таки после CS_SwitchTeam разве не надо воскресить игрока на респе и выдать скин своей новой команды?0-0C-подобный:#include <cstrike> public void OnPluginStart() { RegAdminCmd("sm_swap", Action_Swap, ADMFLAG_ROOT); } public Action Action_Swap(int iClient, int iArgs) { for(int i = 1, j; i <= MaxClients; i++) { if (IsClientInGame(i)) { if (1 < (j = GetClientTeam(i))) CS_SwitchTeam(i, view_as<int>(!view_as<bool>(j - 2)) + 2); PrintToChat(i, "\x04[Уведомление] \x01Произошла смена команд"); } } }
надо. исправилА таки после CS_SwitchTeam разве не надо воскресить игрока
закинул на ftp , перегрузил сервер, как теперь пользоваться плагином? В админке ничего не появилось
всё, заработало, спасибо, как потестирую напишу вам в лс за помощь отблагодарю@yanetmen, а разве что то должно? Команда !swap
а можешь помочь с этим: Синий(красный) экран при убийстве в голову
а можешь помочь с этим: Синий(красный) экран при убийстве в головунадо. исправил