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

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

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

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

FAQ Система повреждения ноги при падении

Oleg Polikhronidi

Изучающий
Пользователь
Регистрация
3 Июн 2019
Сообщения
224
Лучшие ответы
3
Репутация
68
Суть скрипта: при падении персонажа на землю - будет ломаться/повреждаться нога.
Есть 3 варианта исхода падения:

  • В случае удачного падения, Ваша нога будет здоровая и ничего не случится;
  • В случае более серьёзного падения - нога повредится и будет повреждена 5 минут;
  • Нога будет сломана и будет в прежнем состоянии только через 30 минут.
Команды для исправления ситуации:
/вылечить

Для правильной работы Вам необходимо подключить инклуд, который лежит в папке ../pawno/include.
Авторы разработки: Jeanstonik & ReCaptcha.

PHP:
#include <a_samp>
#include <walking_m>

new bool:noga[MAX_PLAYERS];
new Bolezn[MAX_PLAYERS];


forward Slomal(playerid);

public OnPlayerCommandText(playerid, cmdtext[])
{
     if (strcmp("/вылечить", cmdtext, true, 10) == 0)
     {
          Lechit(playerid);
          SendClientMessage(playerid, 0x00FF00AA, "Ты вылечил свою ногу!");
          return 1;
     }
     return 0;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    return 1;
}

public OnPlayerUpdate(playerid)
{
     if(GetPlayerAnimationIndex(playerid) == 1129 || GetPlayerAnimationIndex(playerid) == 1208)//проверка на анимации
     {
          if(noga[playerid] == false)
          {
               Bolezn[playerid] = random(3);//рандомируем число из массива
               if(Bolezn[playerid] == 0)
               {
                    //если выпадает ноль, то ничего не делаем
               }
               if(Bolezn[playerid] == 1)
               {
                    SendClientMessage(playerid, 0x00FF00AA, "Ты спрыгнул с небольшого расстояния, но твои кости оказались слабее, чем ты думал.");
                    SendClientMessage(playerid, 0x00FF00AA, "Нога поврежедена, она выздоровет только через {B6B6B6}5 {00FF00}минут.");
                    TogglePlayerWalking(playerid, true);
                    SetTimerEx("Podvernul", 300000, false, "d", playerid);
                    noga[playerid] = true;
               }
               if(Bolezn[playerid] == 2)
               {
                    SendClientMessage(playerid, 0x00FF00AA, "Из-за такого сильного прыжка твоя нога сломалась.");
                    SendClientMessage(playerid, 0x00FF00AA, "Кости сами скрепятся через {B6B6B6}30 {00FF00}минут.");
                    TogglePlayerWalking(playerid, true);
                    SetTimerEx("Slomal", 1800000, false, "d", playerid);
                    noga[playerid] = true;
               }
          }
     }
     walking_OnPlayerUpdate(playerid);
     return 1;
}
forward Podvernul(playerid);
public Podvernul(playerid)
{
     Lechit(playerid);
     new Float:x, Float:y, Float:z;
     GetPlayerPos(playerid, x, y, z);
     SetPlayerPos(playerid, x, y, z+0.2);
     SendClientMessage(playerid, 0x00FF00AA, "Твоя нога снова работает, продолжай бегать!");
     return 1;
}

public Slomal(playerid)
{
     Lechit(playerid);
     new Float:x, Float:y, Float:z;
     GetPlayerPos(playerid, x, y, z);
     SetPlayerPos(playerid, x, y, z+0.2);
     SendClientMessage(playerid, 0x00FF00AA, "Нога зажила! Ура!");
     return 1;
}

stock Lechit(playerid)
{
     noga[playerid] = false;
     TogglePlayerWalking(playerid, false);
     ClearAnimations(playerid);
}

public OnPlayerDisconnect(playerid, reason)
{
        walking_OnPlayerDisconnect(playerid);
        return 1;
}

public OnPlayerEnterVehicle(playerid, vehicleid)
{
        walking_OnPlayerEnterVehicle(playerid);
        return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
        walking_OnPlayerExitVehicle(playerid);
        return 1;
}
 

Вложения

Последнее редактирование:
Сверху Снизу