Написание плагинов

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
@Fox1qqq, согласно лицензии GNU GPL v3.0, ты можешь выкладывать любую модификацию любого исходного кода.
Автор оригинала должен присутствовать в поле author в Plugin myinfo.
 

Fox1qqq

Крякнем, плюнем и надежно склеим скотчем!
Сообщения
247
Реакции
145

Rostu

Добрая душа
Сообщения
986
Реакции
622
@Grey83, А почему в твоем плагине точка на половину показывается? :ab:
20170801125946_1.jpg
 

rus0707

Участник
Сообщения
326
Реакции
43
Привет всем кто может запелить веб страничку со званием и привязать к плагину статистике
 

rus0707

Участник
Сообщения
326
Реакции
43
@Kruzya, @Kruzya,
@Fox1qqq, согласно лицензии GNU GPL v3.0, ты можешь выкладывать любую модификацию любого исходного кода.
Автор оригинала должен присутствовать в поле author в Plugin myinfo.
мб сможешь запелить мне веб странички со званием и привизать её к стате. я тебе пишу в личку ты не отвечаешь мне рико тебя по советовал
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
@rus0707, я не понимаю, что конкретно тебе надо. Чисто веб-страничку со званиями игроков, или что?
 

Amirsz

Релаксируем... Ну хотя бы пытаемся
Сообщения
261
Реакции
81
Нужен плагин, которые выполнял бы команду за N секунд до смены карты или через N секунд после начала карты.
Буду очень благодарен...
 

alexmy

Участник
Сообщения
284
Реакции
13
Всем привет, ребята помогите решить проблему с чит командой. Вводится хорошо и постоянно но не всегда...
PHP:
L4D_CheatCommand(anyclient, "z_spawn", "tank auto");

Как бы весь плагин:
PHP:
#pragma semicolon 1
#include <sourcemod>
#pragma newdecls required

bool locktime;
Handle TankSpawn = null;

public void OnPluginStart()
{
    HookEvent("tank_killed",        Event_TankKilled,       EventHookMode_Pre);
    HookEvent("create_panic_event", Event_CreatePanicEvent, EventHookMode_Post);
    HookEvent("round_start",        EventRoundStart,        EventHookMode_Post);
}
public void EventRoundStart(Event event, const char[] name, bool dontBroadcast)
{
    locktime = true;
}
public void Event_TankKilled(Event event, const char[] name, bool dontBroadcast)
{
    int client = GetClientOfUserId(event.GetInt("attacker"));
    {
        char id_player[32];
        GetClientName(client, id_player, sizeof(id_player));
        {
            locktime = false;
            int anyclient = GetAnyClient();
            if(anyclient == -1)return;
            {
                L4D_CheatCommand(anyclient, "z_spawn", "mob auto");
                L4D_CheatCommand(anyclient, "director_force_panic_event", "");
                PrintToChat(anyclient, "\x04%s \x03убил персонажа \x04Танк, \x03тем самым вызвал \x04паническую волну!", id_player);
            }
        }
    }
}
public void Event_CreatePanicEvent(Event event, const char[] name, bool dontBroadcast)
{
    if(locktime)return;
    {
        if (TankSpawn != null)
        {
            delete(TankSpawn);
            TankSpawn = null;
        }
        TankSpawn = CreateTimer(15.0, l4d_spawntank, _);
        locktime = true;
    }
}
public Action l4d_spawntank(Handle timer)
{
    int anyclient = GetAnyClient();
    if(anyclient == -1)return Plugin_Continue;
    {
        L4D_CheatCommand(anyclient, "z_spawn", "tank auto");
        PrintToChat(anyclient, "\x03 За истребление \x04паническую волны, \x03появился новый \x04Танк.");
    }
    TankSpawn = null;
    return Plugin_Stop;
}
stock int GetAnyClient()
{
    int i;
    for (i = 1; i <= GetMaxClients(); i++)
    {
        if (IsClientConnected(i) && IsClientInGame(i) && !IsFakeClient(i))
            return i;
    }
    return 0;
}
stock void L4D_CheatCommand(int client, char [] command, char arguments[]="")
{
    if (client)
    {
        int userflags = GetUserFlagBits(client);
        SetUserFlagBits(client, ADMFLAG_ROOT);
        int flags = GetCommandFlags(command);
        SetCommandFlags(command, flags & ~FCVAR_CHEAT);
        FakeClientCommand(client, "%s %s", command, arguments);
        SetCommandFlags(command, flags);
        SetUserFlagBits(client, userflags);
    }
}
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
@alexmy, пробовали заменить FakeClientCommand() на ServerCommand()?
 

Черная вдова

Участник
Сообщения
2,795
Реакции
670
Кто-нибудь знает как узнать расположение зоны закладки бомбы ?
Я пробовал:
C-подобный:
while ((index = FindEntityByClassname(index,"func_bomb_target")) != -1)
{
   new Float:end_posz[3];
   GetEntPropVector(index, Prop_Data, "m_vecAbsOrigin", end_posz);
не работает
 
Сверху Снизу