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

Madness aka null138

Участник
Сообщения
713
Реакции
734
Кто может подсказать?

Стреляешь в func_button, и она активируется (что там дальше, зависит от карты)
Выстрел по кнопке равносилен +use
C++:
#include <sdktools>

public void OnPluginStart() {
    HookEntityOutput("func_button", "OnDamaged", OnDamaged);
}

public void OnDamaged(const char[] output, int caller, int activator, float delay) {
    AcceptEntityInput(caller, "Press", activator, caller);
}
 

GuSenoK

Участник
Сообщения
253
Реакции
8
Может кто-то написать плагин из этой темы? Нужно чтобы при попадании по союзникам из них брызгала кровь, а не искры.


EDIT: В этой же теме есть сделанный плагин.
 
Последнее редактирование:

Koder ;D

Участник
Сообщения
55
Реакции
7
Помогите написать плагин который будет запрещать броню на сервере пожалуйста.
 

Wanderer

Шизофреник
Сообщения
171
Реакции
27
Нужен плагин,чтобы в конце раунда выполнялась команда mp_freezetime , и при спавне было условие,если mp_freezetime меньше заданного . то гравитация должна быть пониженная,как только mp_freezetime закончилось,то гравитация становится нормальной.
 

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
Нужен плагин,чтобы в конце раунда выполнялась команда mp_freezetime , и при спавне было условие,если mp_freezetime меньше заданного . то гравитация должна быть пониженная,как только mp_freezetime закончилось,то гравитация становится нормальной.
Смысл делать гравитацию, если при mp_freezetime игроки заморожены и ждут окончания этого времени?
 

Palonez

бб братки
Сообщения
3,035
Реакции
1,837
Нужен плагин,чтобы в конце раунда выполнялась команда mp_freezetime , и при спавне было условие,если mp_freezetime меньше заданного . то гравитация должна быть пониженная,как только mp_freezetime закончилось,то гравитация становится нормальной.
Ты пишешь про "Меньше заданной" и при этом хочешь "как только mp_freezetime закончилось,то гравитация становится нормальной. "?
 

Wanderer

Шизофреник
Сообщения
171
Реакции
27
Ты пишешь про "Меньше заданной" и при этом хочешь "как только mp_freezetime закончилось,то гравитация становится нормальной. "?
Именно,как только закончилось mp_freezetime, гравитация становится нормальной (800),а во время действия mp_freezetime гравитация пониженная. Просто баг с Infinity Jumping, в конце раунда зажимают пробел,и mp_freezetime баг игнорирует,они просто летают.
Сообщения автоматически склеены:

Смысл делать гравитацию, если при mp_freezetime игроки заморожены и ждут окончания этого времени?
Баг у меня с Infinity jumping, в конце раунда зажимают пробел,и летают в начале нового раунда.
 

-=HellFire=-

Kernel panic - not syncing: Fatal exception
Сообщения
1,394
Реакции
585
Именно,как только закончилось mp_freezetime, гравитация становится нормальной (800),а во время действия mp_freezetime гравитация пониженная. Просто баг с Infinity Jumping, в конце раунда зажимают пробел,и mp_freezetime баг игнорирует,они просто летают.
Сообщения автоматически склеены:


Баг у меня с Infinity jumping, в конце раунда зажимают пробел,и летают в начале нового раунда.
Такая же шняга, mp_freezetime тебе не поможет ничем т.к даже в нём будет катание по полу, нужно хукать конец и старт раунда и писать ф-цию в них.
Сделал себе в 30 строчек, в лс напиши если нужен.
 
Последнее редактирование:

0-BuTaJIuK-0

Участник
Сообщения
235
Реакции
57
C++:
#include <sdktools>
#include <jwp>
#include <sourcemod>
#include <cstrike>

public void OnPluginStart()
{
    HookEntityOutput("func_button", "OnDamaged", OnDamaged);
}

public void OnDamaged(const char[] output, int caller, int activator, float delay)
{
    for(int Zaebal = 1; Zaebal <= MaxClients; Zaebal++)
    {
        if(IsClientInGame(Zaebal) && GetClientTeam(Zaebal) == 3 && JWP_IsWarden(Zaebal))
        {
            if(Zaebal == activator)
            {
                AcceptEntityInput(caller, "Press", activator, caller);
            }
        }
    }
}
Когда добавляю if(Zaebal == activator) - перестает работать
Кто может подсказать?
 
Последнее редактирование:

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
Как установить прозрачность модели (не игрока)?
При
SetEntityRenderMode(client, RENDER_TRANSCOLOR);
SetEntityRenderColor(client, 255, 255, 255, 50);

пишет Exception reported: Property "m_nRenderMode" not found
 

Черная вдова

Участник
Сообщения
2,795
Реакции
670
Как установить прозрачность модели (не игрока)?
При
SetEntityRenderMode(client, RENDER_TRANSCOLOR);
SetEntityRenderColor(client, 255, 255, 255, 50);

пишет Exception reported: Property "m_nRenderMode" not found
Создать например prop_dynamic_override которое будет копировать положение оригинального объекта и его уже сделать прозрачным, оригинальный объект сделать полностью невидимым
m_clrender помоему
 

FokS

Участник
Сообщения
422
Реакции
52
Может кто сделать иммунитет для админов с флагом "b" ? Чтобы для них не действовал кик.
 

Вложения

  • check_spectator.sp
    2.1 КБ · Просмотры: 13

0-BuTaJIuK-0

Участник
Сообщения
235
Реакции
57
int wh;
Написал плагин, когда кмд на jaile стреляет (wh = 1), если кто-то стреляет по кнопке в этот момент, она активируется и потом принимает значение (wh = 0), так-же после выстрела кмд, стоит таймер 0.1 для возвращения (wh = 0)
Да, жесткий костыль, но хукнить id пользователя с HookEntityOutput не получается (activator = -1 или принимает id последнего игрока нажавшего кнопку)

Кто-то может как-то оптимизировать код или же убрать таймер в 0.1, но с условием, где после выстрела кмд и непопадания в кнопку (wh=0)

P.S. event player_shoor - не работает в данном случае.

C++:
кря
 
Последнее редактирование:

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
int wh;
Написал плагин, когда кмд на jaile стреляет (wh = 1), если кто-то стреляет по кнопке в этот момент, она активируется и потом принимает значение (wh = 0), так-же после выстрела кмд, стоит таймер 0.1 для возвращения (wh = 0)
Да, жесткий костыль, но хукнить id пользователя с HookEntityOutput не получается (activator = -1 или принимает id последнего игрока нажавшего кнопку)

Кто-то может как-то оптимизировать код или же убрать таймер в 0.1, но с условием, где после выстрела кмд и непопадания в кнопку (wh=0)

P.S. event player_shoor - не работает в данном случае.

C++:
#include <sdktools>
#include <jwp>
#include <sourcemod>
#include <cstrike>

bool wh;
bool tt;

public void OnPluginStart()
{
    HookEntityOutput("func_button", "OnDamaged", OnDamaged);
    HookEvent("bullet_impact", OnBulletImpact);
}

public void OnBulletImpact(Event Xevent, const String:name[], bool:dontBroadcast)
{
    int iUserID = Xevent.GetInt("userid");
    int iClient = GetClientOfUserId(iUserID);
    if(JWP_IsWarden(iClient) && wh == false)
    {
        wh = true;
        CreateTimer(0.1, Timer_tt, _, TIMER_REPEAT|TIMER_FLAG_NO_MAPCHANGE);
    }
    else
    {
        return;
    }
}

public void OnDamaged(const char[] output, int caller, int activator, float delay)
{
    if(wh == true && tt == false)
    {
        AcceptEntityInput(caller, "Press", activator, caller);
        wh = false;
        tt = true;
    }
}

public Action Timer_tt(Handle hTimer)
{
    if(tt == true)
    {
        tt = false;
    }
    else
    {
    wh = false;
    }
    KillTimer(hTimer);
}
Попробуйте так
C++:
#include <sdktools>
#include <jwp>
#include <cstrike>


public void OnPluginStart()
{
    HookEntityOutput("func_button", "OnDamaged", OnDamaged);

}

public void OnDamaged(const char[] output, int caller, int activator, float delay)
{
    if(JWP_IsWarden(caller))
    {
        AcceptEntityInput(activator, "Press", caller, activator);
    }
}
 

0-BuTaJIuK-0

Участник
Сообщения
235
Реакции
57
Попробуйте так
C++:
#include <sdktools>
#include <jwp>
#include <cstrike>


public void OnPluginStart()
{
    HookEntityOutput("func_button", "OnDamaged", OnDamaged);

}

public void OnDamaged(const char[] output, int caller, int activator, float delay)
{
    if(JWP_IsWarden(caller))
    {
        AcceptEntityInput(activator, "Press", caller, activator);
    }
}

Caller - это № кнопки
 

-=|УЧЕНИК|=-

вся жизнь,сплошной цирк.
Сообщения
876
Реакции
212
Привет народ
Подскажите плагин
Забыл названия,через админку можно устанавливать на дасте2 зону,чтоб терры не сидели там.
dust2tspawn_css подобный этому плагин,ну там через админку все делается.
Раньше был у меня такой,не могу найти и названия забыл.
Знаю что он тут есть на сайте.
Заранее всем спасибо
--------------------------
Сорян,не сюда написал
Ну может тут ответят)
 

over_trax

Участник
Сообщения
1,451
Реакции
488
привет. Тут фонарик на кнопку осмотра оружия, нужно его перебиндить на Е и убрать все не нужные квары, если это нужно
 

Вложения

  • CsGoFlashlight.sp
    3.9 КБ · Просмотры: 7
Сверху Снизу