Доступ к готовым решениям

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Мануал Дубинка вместо тайзера

Статус
В этой теме нельзя размещать новые ответы.

Jonathan Manhattan

Новичок
Привет всем вот не большая переделка похожего тазера,только удар дубинкой.
PHP:
#define TAZE_WEAPON 3
#define TAZE_TIMER 8000 
#define TAZE_SPARK 18717 
#define TAZE_DESTROY 1250 
#define TAZE_LOSEHP 1 
#define COLOR_PURPLE 0xC2A2DAAA
Ко всем new:
PHP:
new Tazer[MAX_PLAYERS];
new Spark[MAX_PLAYERS];
new Tazed[MAX_PLAYERS];
Ко всем forward"ам:
PHP:
forward DestroySpark(playerid);
forward TazedRemove(playerid);
В паблик onplayerconnect:
PHP:
Tazed[playerid] = 0;
Tazer[playerid] = 0;
Создаем паблики:
PHP:
public DestroySpark(playerid)
{
        DestroyObject(Spark[playerid]);
        return 1;
}

public TazedRemove(playerid)
{
        TogglePlayerControllable(playerid, 1);
        ClearAnimations(playerid);
        Tazed[playerid] = 0;
        return 1;
}
В паблик OnPlayerGiveDamage:
PHP:
 if(Tazer[playerid] == 1 && GetPlayerWeapon(playerid) == TAZE_WEAPON)
        {
            new Float:health,losehp;
        GetPlayerHealth(damagedid,health);
        losehp = TAZE_LOSEHP;
            if(Tazed[damagedid] == 1) return 1;
            new Float:x, Float:y, Float:z;
            GetPlayerPos(damagedid, x, y, z);
            ClearAnimations(damagedid);
            ApplyAnimation(damagedid,"PED","KO_skid_front",4.1,0,1,1,1,0);
new string[100];
GetPlayerName(playerid,sendername,sizeod(sendername));
GetPlayerName(damagedid,giver,sizeod(giver));
format(string, sizeof(string), "%s ударил дубинкой %s", sendername,giver);
                     ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
            Spark[damagedid] = CreateObject(TAZE_SPARK, x, y, z-3, 0, 0, 0);
            SetTimerEx("DestroySpark", TAZE_DESTROY, 0, "i", damagedid);
            SetTimerEx("TazedRemove", TAZE_TIMER, 0, "i", damagedid);
            //TogglePlayerControllable(damagedid, 0);
            Tazed[damagedid] = 1;
            if(losehp) {} else SetPlayerHealth(damagedid, health+amount);
        }
Автор основы команды Battista
Автор переделки Я
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу