-=|УЧЕНИК|=-
вся жизнь,сплошной цирк.
- Сообщения
- 876
- Реакции
- 212
Тоже самоеНу попробуй
так-же крашит и ошибка эта же
Тоже самоеНу попробуй
И скинь полный эррор логТоже самое
так-же крашит и ошибка эта же
Не хочет компилитьИ скинь полный эррор лог
Не хочет компилить
E:\Users\Desktop\�������� ������\source.sp(52) : error 017: undefined symbol "ghDownloader"
E:\Users\Desktop\�������� ������\source.sp(53) : error 017: undefined symbol "ghDownloader"
E:\Users\Desktop\�������� ������\source.sp(58) : error 017: undefined symbol "ghDownloader"
Как сделать проверку на текущий скин игрока?
GetClientModel(int client, char[] model, int maxlen)
if(model)
{
//
}
У стима же конкретная длинна, нету меньше/больше. Ну да ладно.Как сделать проверку на кол-во цифр у стима STEAM_0:1:цифры? То есть if(iSteamIDClient <= 10000000)
// buff - это условный буфер, в котором лежит Steam_id
strlen(buff[sizeof("Steam_0:1:")-1])
Примеры использованния:
if(strlen(buff[sizeof("Steam_0:1:")-1]) < 10)
#define SteamIdLength(%0) strlen(%0[sizeof("Steam_0:1:")-1])
if(SteamIdLength(buff) < 10)
Через софт поменять можно, пасибаУ стима же конкретная длинна, нету меньше/больше. Ну да ладно.
Примерно так можно определить количество цифер:
C-подобный:// buff - это условный буфер, в котором лежит Steam_id strlen(buff[sizeof("Steam_0:1:")-1])
ну скажем "пока" тогда команде разработчиков и тем кто зарегистрировались до 2009 года.Через софт поменять можно, пасиба
Как сделать проверку на кол-во цифр у стима STEAM_0:1:цифры? То есть if(iSteamIDClient <= 10000000)
for(int client = 0;client<=MaxClients;client++)
{
if(IsClientInGame(client) && !IsFakeClient(client))
{
char steam[32];
int num;
char dhs;
GetClientAuthId(client,AuthId_Steam2,steam, sizeof(steam))
dhs = steam.substr(10,sizeof(steam));
num = StringToInt(dhs);
if(num<10000000)
{
//
}
else if(num>99999999)
{
//
}
else
{
//
}
}
}
Привет, посмотри этот вариант. Плагин на новом синтаксисе, сразу говорюПривет всем
Можно ли сделать в данном плагине,чтоб звук перезарядки был один только?
И чтоб не было такого,что когда обойма полная,ты нажимаешь перезарядить и там много раз звук воспроизводит.
Ну если конечно не много заморочек там.
Заранее благодарю.
#include <sourcemod>
#include <sdktools>
#include <sdkhooks>
public OnPluginStart()
{
for (new client = 1; client <= MaxClients; client++)
{
if (IsClientInGame(client))
{
SDKHook(client, SDKHook_OnTakeDamage, TakeDamageHook);
}
}
}
public OnClientPutInServer(client)
{
SDKHook(client, SDKHook_OnTakeDamage, TakeDamageHook);
}
public Action:TakeDamageHook(client, &attacker, &inflictor, &Float:damage, &damagetype)
{
if ( (client>=1) && (client<=MaxClients) && (attacker>=1) && (attacker<=MaxClients) && (attacker==inflictor) )
{
decl String:WeaponName[64];
GetClientWeapon(attacker, WeaponName, sizeof(WeaponName));
if (StrContains(WeaponName, "knife", false) != -1)
{
damage = 0.0;
return Plugin_Changed;
}
}
return Plugin_Continue;
}
Не уверен в правильности хука, но должно работатьПодпелите плагин если не сложно.Нет урона от ножа только для ROOT.Нет урона от ножа:#include <sourcemod> #include <sdktools> #include <sdkhooks> public OnPluginStart() { for (new client = 1; client <= MaxClients; client++) { if (IsClientInGame(client)) { SDKHook(client, SDKHook_OnTakeDamage, TakeDamageHook); } } } public OnClientPutInServer(client) { SDKHook(client, SDKHook_OnTakeDamage, TakeDamageHook); } public Action:TakeDamageHook(client, &attacker, &inflictor, &Float:damage, &damagetype) { if ( (client>=1) && (client<=MaxClients) && (attacker>=1) && (attacker<=MaxClients) && (attacker==inflictor) ) { decl String:WeaponName[64]; GetClientWeapon(attacker, WeaponName, sizeof(WeaponName)); if (StrContains(WeaponName, "knife", false) != -1) { damage = 0.0; return Plugin_Changed; } } return Plugin_Continue; }
#include <sourcemod>
#include <sdktools>
#include <sdkhooks>
int g_iFlagRestrict;
public OnPluginStart()
{
g_iFlagRestrict = ReadFlagString("z");
for(int i = 1; i <= MaxClients; i++) if(IsClientAuthorized(i) && IsClientInGame(i)) {
OnClientPostAdminCheck(i);
}
}
public void OnClientPostAdminCheck(int client)
{
if(!IsFakeClient(client) && GetUserFlagBits(client) & g_iFlagRestrict) {
SDKHook(client, SDKHook_TraceAttack, Hook_OnTraceAttack);
}
}
public Action Hook_OnTraceAttack(int victim, int &attacker, int &inflictor, float &damage, int &damagetype, int &ammotype, int hitbox, int hitgroup)
{
if(victim > 0 && victim < MaxClients && victim != attacker) {
char classname[32];
GetClientWeapon(attacker, classname, sizeof(classname));
if(StrContains(classname, "knife", false) != -1) {
damage = 0.0;
return Plugin_Changed;
}
}
return Plugin_Continue;
}