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

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

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

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

Мануал Ослепление при взрыве

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

The Boss

Новичок
в Начало мода
PHP:
new Text:flashbangStage[5];
new FlashbangStage[MAX_PLAYERS], FlashbangSwayLevel[MAX_PLAYERS];
В - OnGameModeInit
PHP:
    for (new t = 1; t <= 4; t++){
        flashbangStage[t] = TextDrawCreate(-20.000000,2.000000,"|");
        TextDrawUseBox(flashbangStage[t],1);
        TextDrawTextSize(flashbangStage[t],660.000000,22.000000);
        TextDrawAlignment(flashbangStage[t],0);
        TextDrawFont(flashbangStage[t],3);
        TextDrawLetterSize(flashbangStage[t],1.000000,52.200000);
        TextDrawBackgroundColor(flashbangStage[t],0x000000ff);
        TextDrawColor(flashbangStage[t],0x000000ff);
        TextDrawSetOutline(flashbangStage[t],1);
        TextDrawSetProportional(flashbangStage[t],1);
        TextDrawSetShadow(flashbangStage[t],1);
    }
    TextDrawBoxColor(flashbangStage[1],0xffffffff);
    TextDrawBoxColor(flashbangStage[2],0xffffffaa);
    TextDrawBoxColor(flashbangStage[3],0xffffff55);
    TextDrawBoxColor(flashbangStage[4],0xffffff22);
Для Командного процессора на DC_CMD

PHP:
CMD:grenade(playerid, params[])//DC_CMD
{
    new weaponId,ammoAmount;
    GetPlayerWeaponData(playerid, 8, weaponId, ammoAmount);
    if (weaponId == WEAPON_GRENADE && ammoAmount > 0) return SendClientMessage(playerid, -1, "У вас уже есть граната!");
    SendClientMessage(playerid, -1, "Вам выдана граната.");
    GivePlayerWeapon(playerid, WEAPON_GRENADE, 1);
    return 1;
}
Для обычных командных процессоров

PHP:
if(strcmp(cmd, "/grenade", true) == 0)//???????
{
    new weaponId,ammoAmount;
    GetPlayerWeaponData(playerid, 8, weaponId, ammoAmount);
    if (weaponId == WEAPON_GRENADE && ammoAmount > 0) return SendClientMessage(playerid, -1, "У вас уже есть граната!");
    SendClientMessage(playerid, -1, "Вам выдана граната.");
    GivePlayerWeapon(playerid, WEAPON_GRENADE, 1);
    return 1;
}
В - OnPlayerTakeDamage

PHP:
    if (weaponid == WEAPON_GRENADE || weaponid == 51){
        new
            Float:health
        ;
        GetPlayerHealth(playerid, health);
        SetPlayerHealth(playerid, (health - (amount * 0.3)));
        FlashbangStage[playerid] = 1;
        HandleFlashbangStage(playerid);
    }
В конец мода
PHP:
forward HandleFlashbangStage(playerid);
public HandleFlashbangStage(playerid)
{
    switch(FlashbangStage[playerid])
	{
        case 1..5:
		{
            SetPlayerDrunkLevel(playerid, (FlashbangStage[playerid] == 1) ? 50000 : GetPlayerDrunkLevel(playerid));
            if (FlashbangStage[playerid] == 2)
			{
                FlashbangSwayLevel[playerid] = 1;
                HandleFlashbangSway(playerid);
            }
            if (FlashbangStage[playerid] < 5) TextDrawShowForPlayer(playerid, flashbangStage[FlashbangStage[playerid]]);
            if (FlashbangStage[playerid] > 1) TextDrawHideForPlayer(playerid, flashbangStage[FlashbangStage[playerid] - 1]);
            FlashbangStage[playerid] = ((FlashbangStage[playerid] == 5) ? -1 : FlashbangStage[playerid]);
        }
    }
    if (FlashbangStage[playerid] < 5 && FlashbangStage[playerid] != -1)
	{
        FlashbangStage[playerid]++;
        new time = (FlashbangStage[playerid] == 2) ? 1800 : 100;
        SetTimerEx("HandleFlashbangStage", time, false, "i", playerid);
    }
    return 1;
}
forward HandleFlashbangSway(playerid);
public HandleFlashbangSway(playerid)
{
    switch(FlashbangSwayLevel[playerid])
	{
		case 1..6:
	 	{
            SetPlayerDrunkLevel(playerid, 10000 - (2000 * (FlashbangSwayLevel[playerid] - 1)));
            if (FlashbangSwayLevel[playerid] == 6) FlashbangSwayLevel[playerid] = -1;
        }
    }
    if (FlashbangSwayLevel[playerid] < 6 && FlashbangSwayLevel[playerid] != -1)
	{
        FlashbangSwayLevel[playerid]++;
        new time = (FlashbangSwayLevel[playerid] == 5) ? 1000 : 600;
        SetTimerEx("HandleFlashbangSway", time, false, "i", playerid);
    }
}
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу