Всем привет, как реализовать, с меня лайк (пример) :
Если карта dust2 :
Т убивает КТ получает 20hp
Если карта inferno :
Т убивает КТ получает другой бонус (скорость.. или что то другое..)
Вообщем интересует именно проверка карты.
C-подобный:if(dust2) { дествие1 } if(inferno) { действие2 }
используй плагин авто скин и не парься. Там есть настройки для каждого персонажа отдельно.Выдача персонального скина по стим ид( с меню, например если будет много скинов у игрока).
Personal Skin ну или сюда добавить менюшку и поддержку скинов больше,чем 1.
Там игрокам ставится рандомно. + без стим ид.используй плагин авто скин и не парся.
Кто-то знает решение?Как вы знаете валве добавили свои скины в игру и теперь если игрок заходит на сервере с этим скином он у него стоит, вопрос, есть ли плагин который убирает скины валве?
Кто-то знает решение?
Аааа, не увидел что чел кинул ссылку. Сори.Кто-то знает решение?
L 12/18/2019 - 00:00:14: [SM] Blaming: plugin.smx
L 12/18/2019 - 00:00:14: [SM] Call stack trace:
L 12/18/2019 - 00:00:14: [SM] [0] SetConVarInt
L 12/18/2019 - 00:00:14: [SM] [1] Line 28, C:\desktop\sourcemod-1.10.0-git6458-windows\addons\sourcemod\scripting\plugin.sp::OnEnd
L 12/18/2019 - 00:00:22: [SM] Exception reported: Invalid convar handle 0 (error 4)
#include <sourcemod>
new Handle:command;
public OnPluginStart()
{
HookEvent("round_start", OnStart);
HookEvent("round_end", OnEnd);
command = FindConVar("sm_command");
}
public OnStart(Handle:event, String:name[], bool:dontBroadcast)
{
SetConVarInt(command, 0);
}
public OnEnd(Handle:event, String:name[], bool:dontBroadcast)
{
SetConVarInt(command, 1);
}
Ребят что не так подскажите пожалуйста. sm 1.10, на 1.09 всё было отлично.
Оффтоп
C-подобный:L 12/18/2019 - 00:00:14: [SM] Blaming: plugin.smx L 12/18/2019 - 00:00:14: [SM] Call stack trace: L 12/18/2019 - 00:00:14: [SM] [0] SetConVarInt L 12/18/2019 - 00:00:14: [SM] [1] Line 28, C:\desktop\sourcemod-1.10.0-git6458-windows\addons\sourcemod\scripting\plugin.sp::OnEnd L 12/18/2019 - 00:00:22: [SM] Exception reported: Invalid convar handle 0 (error 4)
Плагин
Оффтоп
C-подобный:#include <sourcemod> new Handle:command; public OnPluginStart() { HookEvent("round_start", OnStart); HookEvent("round_end", OnEnd); command = FindConVar("sm_command"); } public OnStart(Handle:event, String:name[], bool:dontBroadcast) { SetConVarInt(command, 0); } public OnEnd(Handle:event, String:name[], bool:dontBroadcast) { SetConVarInt(command, 1); }
Как понять обычной команде? Квар есть, я же говорю на см ниже версии плагин отлично работает, и на 1.10 работает.. до смены карты..Сообщения автоматически склеены:
квар отсутствует или ты пытаешься присвоить значение обычной команде. проверка на наличие квара нету.
ну так в server.cfg нужно было прописать, а не плагин делатьна 1.10 работает.. до смены карты
Что прописать? Плагин меняет квар другова плагина, до перехода на новый см всё работало.ну так в server.cfg нужно было прописать, а не плагин делать
Это говорит о том, что плагин не может найти кварException reported: Invalid convar handle 0
static const char CVAR[] = "sm_cvar";
ConVar cvar;
public void OnPluginStart()
{
HookEvent("round_start", Event_Start, EventHookMode_PostNoCopy);
HookEvent("round_end", Event_End, EventHookMode_PostNoCopy);
if(!(cvar = FindConVar(CVAR))) LogError("Can't find cvar '%s' (P_Start)!", CVAR);
}
public void Event_Start(Event event, const char[] name, bool dontBroadcast)
{
if(CheckCvar()) SetConVarInt(cvar, 0, true);
else LogError("Can't find cvar '%s' (R_Start)!", CVAR);
}
public void Event_End(Event event, const char[] name, bool dontBroadcast)
{
if(CheckCvar()) SetConVarInt(cvar, 1, true);
else LogError("Can't find cvar '%s' (R_End)!", CVAR);
}
stock bool CheckCvar()
{
return cvar || (cvar = FindConVar(CVAR));
}
Поставил, поиграли, сменил карту, поиграли. Всё работает) Спасибо большое.Это говорит о том, что плагин не может найти квар
Попробуй вот так:
C-подобный:static const char CVAR[] = "sm_cvar"; ConVar cvar; public void OnPluginStart() { HookEvent("round_start", Event_Start, EventHookMode_PostNoCopy); HookEvent("round_end", Event_End, EventHookMode_PostNoCopy); if(!(cvar = FindConVar(CVAR))) LogError("Can't find cvar '%s' (P_Start)!", CVAR); } public void Event_Start(Event event, const char[] name, bool dontBroadcast) { if(CheckCvar()) SetConVarInt(cvar, 0, true); else LogError("Can't find cvar '%s' (R_Start)!", CVAR); } public void Event_End(Event event, const char[] name, bool dontBroadcast) { if(CheckCvar()) SetConVarInt(cvar, 1, true); else LogError("Can't find cvar '%s' (R_End)!", CVAR); } stock bool CheckCvar() { return cvar || (cvar = FindConVar(CVAR)); }
Дело не в версии sm, а в последовательности загрузки плагинов, которая в сурсмоде является "серой лошадкой".Плагин
C-подобный:... public OnPluginStart() { HookEvent("round_start", OnStart); HookEvent("round_end", OnEnd); command = FindConVar("sm_command"); } ...
public void OnAllPluginsLoaded()
{
command = FindConVar("sm_command");
}