Привет! Если вы читаете это - Вы еще не зарегистрированы. Это займет не больше минуты. Нажмите здесь, чтобы пройти регистрацию в несколько простых шагов, чтобы пользоваться всеми возможностями нашего форума. Обратите внимание, запрещены непристойные, матерные, бессмысленные (цифры, случайный набор букв) ники. Удачи!

Реклама






 
SAMP АДМИНКИ 15 ЛВЛ ПРИ ВХОДЕ КОМАНДА /MAKEADMIN2017 Адрес сервера:176.32.36.34:7777

500р
Маленький баннер400р/мес(Статический показ)
,400рТекстовая реклама300р/мес(Статический показ)
Большой баннер статический
1200р 1000/мес

Внимание ЦЕНЫ СНИЖЕНЫ!!!
Писать по поводу рекламы VK: vk.com/sergey68

** Как получить V.I.P --> КЛИК **
Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 12
  1. #1
    Пользователь
    Аватар для vulturous
    Статус
    Оффлайн
    Регистрация
    23.02.2017
    Сообщений
    13
    Репутация
    2 [+/-] 

    OnPlayerTakeDamage - урон от оружия.

    PHP код:
    public OnPlayerTakeDamage(playeridissueridFloatamountweaponid)
    {
        
    #pragma unused issuerid
        #pragma unused amount
        
    const Floatp_hp;  ///4990
        
    GetPlayerHealth(playeridp_hp); //4991
        
    switch(weaponid)
        {
            case 
    24SetPlayerHealth(playeridp_hp 50); // Desert Eagle
            
    case 22SetPlayerHealth(playeridp_hp 50); // Colt 45
            
    case 32SetPlayerHealth(playeridp_hp -10); // Tec 9
            
    case 28SetPlayerHealth(playeridp_hp -10); // Uzi
            
    case 23SetPlayerHealth(playeridp_hp -50); // Silenced Colt
            
    case 31SetPlayerHealth(playeridp_hp -35); // M4
            
    case 30SetPlayerHealth(playeridp_hp -40); // AK
            
    case 29SetPlayerHealth(playeridp_hp -18); // MP5
            
    case 34SetPlayerHealth(playeridp_hp -300); // Sniper Rifle
            
    case 33SetPlayerHealth(playeridp_hp -35); // Cunt Gun
            
    case 25SetPlayerHealth(playeridp_hp -100); // Pump Shotgun
            
    case 27SetPlayerHealth(playeridp_hp -70); // Spaz 12
        
    }
        return 
    true;

    .pwn(4990) : error 001: expected token: "=", but found ";"
    .pwn(4991) : error 035: argument type mismatch (argument 2)

    2 Errors.


    Добавил new p_hp;

    PHP код:
        const Floatp_hp// 91
        
    GetPlayerHealth(playeridp_hp);// 92 
    .pwn(4991) : error 001: expected token: "=", but found ";"
    .pwn(4992) : warning 213: tag mismatch

    Добавил

    PHP код:
    static const Floatp_hp;  ///4990 
    .pwn(4991) : error 035: argument type mismatch (argument 2)

    1 Error.
    Последний раз редактировалось vulturous; 12.10.2017 в 23:57.

  2. #2
    Пользователь
    Аватар для Nexius_Tailer
    Статус
    Онлайн
    Регистрация
    19.05.2013
    Адрес
    Гомель, Беларусь
    Сообщений
    1,062
    Репутация
    501 [+/-] 
    А зачем делать константой то, что в последующем изменяется?

    PHP код:
    new Float:p_hp;
    GetPlayerHealth(playeridp_hp); 
    Не хотите постоянно проверять обновления моих скриптов?
    Подключите его последним, после всех остальных
    Nexius's Update Checker

  3. #3
    Пользователь
    Аватар для vulturous
    Статус
    Оффлайн
    Регистрация
    23.02.2017
    Сообщений
    13
    Репутация
    2 [+/-] 
    Константа уже была в коде... Как глупо бы это не звучало:D
    ///////
    Скомпилировалось.

    ---------- Сообщение добавлено в 02:13 ---------- Предыдущее сообщение добавлено в 01:19 ----------

    К сожалению система почему-то не работает. А проблема в том, что когда стреляешь в игрока, у него почему-то снимает 93 хп. Взял систему c http://pawno-info.ru/showthread.php?t=242579

    В чем проблема, мужики, не понимаю.

  4. #4
    Пользователь
    Аватар для vulturous
    Статус
    Оффлайн
    Регистрация
    23.02.2017
    Сообщений
    13
    Репутация
    2 [+/-] 
    Проблема не решена.

  5. #5
    Пользователь
    Аватар для The Zaka
    Статус
    Оффлайн
    Регистрация
    18.04.2017
    Сообщений
    106
    Репутация
    2 [+/-] 
    93 хп сносит потому, что дефолтный урон с дигла 43. Работает твоя система урона и дефолтная

    ---------- Сообщение добавлено в 20:01 ---------- Предыдущее сообщение добавлено в 19:59 ----------

    а вообще пробуй так:
    Код HTML:
    new float:hp;
    getplayerhealth(playerid, hp);
    if(weaponid == 24) setplayerhealth(playerid, hp-50);//deserteagle

  6. #6
    Пользователь
    Аватар для vulturous
    Статус
    Оффлайн
    Регистрация
    23.02.2017
    Сообщений
    13
    Репутация
    2 [+/-] 
    Короче тема такая. Если я удалю все к чертям собачим в onplayergivedamage, то, сноситься хп будет по 43 как ты и пишешь, нооо, есть очень большое "NO" у меня часто дамаг не проходит, игрок будто использует гм.

    Для этого я использую такую систему:

    PHP код:
        new FloatvidaFloatarmaduraFloatdmg;

        
    GetPlayerArmour(damagedidarmadura);
        
    GetPlayerHealth(damagedidvida);

        if(
    armadura 0)
        {
            if(
    amount armadura)
            {
                
    dmg amount armadura;
                
    vida vida dmg;
                
    SetPlayerArmour(damagedid0.0);
                
    SetPlayerHealth(damagedidvida);
                return 
    1;
            }
            
    armadura armadura amount;
            
    SetPlayerArmour(damagedidarmadura);
        }
        if(
    armadura 1)
        {
            
    vida vida amount;
            
    SetPlayerHealth(damagedidvida);
        } 
    Даже если она одна система в givedamage, почему сносит то +30 хп, нигде этого не написано

  7. #7
    Пользователь
    Аватар для The Zaka
    Статус
    Оффлайн
    Регистрация
    18.04.2017
    Сообщений
    106
    Репутация
    2 [+/-] 
    Код HTML:
    new Float: vida, Float: armadura, Float: dmg;
    
        GetPlayerArmour(damagedid, armadura);
        GetPlayerHealth(damagedid, vida);
    
        if(armadura > 0)
        {
            if(amount > armadura)
            {
                dmg = amount - armadura;
                vida = vida - dmg;
                SetPlayerArmour(damagedid, 0.0);
                if(weaponid == 24) setplayerhealth(playerid, vida-50);
                return 1;
            }
            armadura = armadura - amount;
            SetPlayerArmour(damagedid, armadura);
        }
        if(armadura < 1)
        {
            vida = vida - amount;
            if(weaponid == 24) setplayerhealth(playerid, vida-50);
        }
    попробуй только из дигла выстрели

  8. #8
    Пользователь
    Аватар для KatranLife
    Статус
    Оффлайн
    Регистрация
    15.07.2014
    Адрес
    Украина
    Сообщений
    745
    Репутация
    207 [+/-] 
    Используйте паблик OnPlayerWeaponShot. + return 0;
    Всю инфу можно найти в вики, почему вы не пользуетесь ним?...
    Remember that there is usually a solution faster and easier that first comes to mind .

  9. #9
    Пользователь
    Аватар для vulturous
    Статус
    Оффлайн
    Регистрация
    23.02.2017
    Сообщений
    13
    Репутация
    2 [+/-] 
    У меня почему-то тоже хп снимается. только у меня по 93, а игрока в которого стрелял 51. Нужно бы чтобы у меня хп не снималось, а у игрока в которого стреляешь 47.

  10. #10
    •Модератор lvl 2•
    Аватар для ihNNNNNify
    Статус
    Оффлайн
    Регистрация
    18.06.2014
    Адрес
    grandlarc
    Сообщений
    1,155
    Репутация
    163 [+/-] 
    Всего наград
    1
    Цитата Сообщение от KatranLife Посмотреть сообщение
    Используйте паблик OnPlayerWeaponShot. + return 0;
    Всю инфу можно найти в вики, почему вы не пользуетесь ним?...
    Потому что не разбирается человек, он просто взял этот код (который предоставил нам) с паблика и даже не разобрался в коде.


Страница 1 из 2 12 ПоследняяПоследняя

Метки этой темы

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •