Подскажите пожалуйста, как подсчитать сколько игрок убил соперников в голову. Нужно в конце раунда вывести текст с информацией сколько игрок убил соперников в голову
#include <sdktools>
public OnPluginStart() HookEvent("round_end", Event_RoundEnd);
void Event_RoundEnd(Event event, const char[] name, bool dontBroadcast)
{
for (int i = 1; i <= MaxClients; i++)
{
if (IsClientInGame(i) && !IsFakeClient(i))
{
PrintToChat(i, "Вы убили в голову %d раз(а)", GetEntProp(i, Prop_Send, "m_iNumRoundKillsHeadshots"));
}
}
}
[SM] Exception reported: Property "m_iNumRoundKillsHeadshots" not found (entity 1/player)C-подобный:#include <sdktools> public OnPluginStart() HookEvent("round_end", Event_RoundEnd); void Event_RoundEnd(Event event, const char[] name, bool dontBroadcast) { for (int i = 1; i <= MaxClients; i++) { if (IsClientInGame(i) && !IsFakeClient(i)) { PrintToChat(i, "Вы убили в голову %d раз(а)", GetEntProp(i, Prop_Send, "m_iNumRoundKillsHeadshots")); } } }
[SM] Exception reported: Property "m_iNumRoundKillsHeadshots" not found (entity 1/player)
Ошибку выдает
#include <sdktools>
public void OnPluginStart()
{
HookEvent("player_death", Event_PlayerDeath);
HookEvent("round_end", Event_RoundEnd);
}
int g_iCountHeadshoots[MAXPLAYERS+1];
void Event_PlayerDeath(Event event, const char[] name, bool dontBroadcast)
{
int client = GetClientOfUserId(event.GetInt("userid"));
int attacker = GetClientOfUserId(event.GetInt("attacker"));
if (event.GetBool("headshot") && GetClientTeam(client) != GetClientTeam(attacker))
g_iCountHeadshoots[attacker]++;
}
void Event_RoundEnd(Event event, const char[] name, bool dontBroadcast)
{
for (int i = 1; i <= MaxClients; i++)
{
if (IsClientInGame(i) && !IsFakeClient(i))
{
PrintToChat(i, "Вы убили в голову %d раз(а)", g_iCountHeadshoots[i]);
g_iCountHeadshoots[i] = 0;
}
}
}
public void OnClientDisconnect(int client)
{
g_iCountHeadshoots[client] = 0;
}
Это именно то что я искал, спасибо большоеC-подобный:#include <sdktools> public void OnPluginStart() { HookEvent("player_death", Event_PlayerDeath); HookEvent("round_end", Event_RoundEnd); } int g_iCountHeadshoots[MAXPLAYERS+1]; void Event_PlayerDeath(Event event, const char[] name, bool dontBroadcast) { int client = GetClientOfUserId(event.GetInt("userid")); int attacker = GetClientOfUserId(event.GetInt("attacker")); if (event.GetBool("headshot") && GetClientTeam(client) != GetClientTeam(attacker)) g_iCountHeadshoots[attacker]++; } void Event_RoundEnd(Event event, const char[] name, bool dontBroadcast) { for (int i = 1; i <= MaxClients; i++) { if (IsClientInGame(i) && !IsFakeClient(i)) { PrintToChat(i, "Вы убили в голову %d раз(а)", g_iCountHeadshoots[i]); g_iCountHeadshoots[i] = 0; } } } public void OnClientDisconnect(int client) { g_iCountHeadshoots[client] = 0; }
Можно так напримерПодскажите пожалуйста, как получить в конце раунда время, за которое был сыгран раунд.
Пример: начался раунд и закончился за 40 сек, как эти 40 сек получить в конце раунда (Время может быть любое, нужно получить именно то время за которое раунд закончился)
int g_iTime[2];
public void OnPluginStart()
{
HookEvent("round_start", Event_RoundStart, EventHookMode_PostNoCopy);
HookEvent("round_end", Event_RoundEnd, EventHookMode_PostNoCopy);
}
void Event_RoundStart(Event hEvent, const char[] sEvName, bool bDontBroadcast)
{
g_iTime[0] = GetTime();
}
void Event_RoundEnd(Event hEvent, const char[] sEvName, bool bDontBroadcast)
{
g_iTime[1] = GetTime();
PrintToChatAll("Длительность раунда [%i] секунд!", g_iTime[1] - g_iTime[0]);
}
Спасибо большоеМожно так например
C-подобный:int g_iTime[2]; public void OnPluginStart() { HookEvent("round_start", Event_RoundStart, EventHookMode_PostNoCopy); HookEvent("round_end", Event_RoundEnd, EventHookMode_PostNoCopy); } void Event_RoundStart(Event hEvent, const char[] sEvName, bool bDontBroadcast) { g_iTime[0] = GetTime(); } void Event_RoundEnd(Event hEvent, const char[] sEvName, bool bDontBroadcast) { g_iTime[1] = GetTime(); PrintToChatAll("Длительность раунда [%i] секунд!", g_iTime[1] - g_iTime[0]); }
UPD: Изменил название функции, одинаковые были сори
Другое - Bround Подходит?Здравствуйте!
Мне нужен плагин на подобие !nz (Раунд без прицела), только !deagle (раунд на диглах)
Когда-то видел такое, но найти не смог.
Custom Rounds - не подходит
Нет =(Другое - Bround Подходит?
Что в нем не так? Голосование как в !nz есть, диглы тоже естьНет =(
Возможно при композиции инклюд одной версии, а на сервере плагин другойВсем доброе утро, подскажите пожалуйста как исправить ошибкуСам плагин levelsranks стоит и он работает[SM] Unable to load plugin "[LR] Knife_Score.smx": Could not find required plugin "levelsranks"
Sourcemod 1.9
Если как-то можно плагин оптимизировать, то буду рад советам
Точно нет, я глянул версию ядра что стоит на сервере, скачал именно эту версию и скомпилил плагин с библиотекой именно этой версии. Так же пробовал с библиотекой с самого сервера компилить, ошибка естьВозможно при композиции инклюд одной версии, а на сервере плагин другой
Версии одинаковые, одинаковые, но в одной ошибка, а в другой нет..Точно нет, я глянул версию ядра что стоит на сервере, скачал именно эту версию и скомпилил плагин с библиотекой именно этой версии. Так же пробовал с библиотекой с самого сервера компилить, ошибка есть
посмотри у инклуда lvlranks секцию public SharedPlugin, название должно точно совпадать с названием на сервер sm plugins list (регистр тоже)Всем доброе утро, подскажите пожалуйста как исправить ошибкуСам плагин levelsranks стоит и он работает[SM] Unable to load plugin "[LR] Knife_Score.smx": Could not find required plugin "levelsranks"
Sourcemod 1.9
Если как-то можно плагин оптимизировать, то буду рад советам
1) Ласт версия не работает на 1.9 смВерсии одинаковые, одинаковые, но в одной ошибка, а в другой нет..
Сообщения автоматически склеены:
@7pElllHuK, лучше сделать так:
1. Скачать с гита ласт версию
2. Залить в см на компьютере и скомпилировать
3. Залить компилированные и прочие необходимые файлы на сервер
4. В том же см создавать модули
Название совпадает, 1 в 1посмотри у инклуда lvlranks секцию public SharedPlugin, название должно точно совпадать с названием на сервер sm plugins list (регистр тоже)