Вопросы

Спойлер

#include OnPlayerUseVending
PHP код:
#include <a_samp> 

forward OnPlayerUseVending(playerid); 
forward VendCheck(playerid); 

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys){ 
    if(IsKeyJustDown(KEY_SECONDARY_ATTACK, newkeys, oldkeys)) { 
        if(GetPlayerAnimationIndex(playerid)!=1660) SetTimerEx("VendCheck", 500, false, "d", playerid); 
    } 
    return CallLocalFunction("vend_OnPlayerKeyStateChange", "iii", playerid, newkeys, oldkeys); 

#if defined _ALS_OnPlayerKeyStateChange 
    #undef OnPlayerKeyStateChange 
#else 
    #define _ALS_OnPlayerKeyStateChange 
#endif 
#define OnPlayerKeyStateChange vend_OnPlayerKeyStateChange 
forward vend_OnPlayerKeyStateChange(playerid, newkeys, oldkeys); 

public VendCheck(playerid){ 
    if(GetPlayerAnimationIndex(playerid)==1660) CallLocalFunction("OnPlayerUseVending", "i", playerid); 
}  

 

pwn:

 

Спойлер

public OnPlayerUseVending(playerid) 

    new Float: health; 
    GetPlayerHealthEx(playerid, health); 
    if(health < 100) 
    { 
         
        GivePlayerCash(playerid, -200); 
        SetPlayerHealthEx(playerid, 100); 
         
        GameTextForPlayer(playerid, "~r~-$200", 3000, 1); 
        format(gString, sizeof(gString), "* %s bought a drink from the vending machine.", GetName(playerid)); 
        ProxDetector(20.0, playerid, gString, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); 
    } 
    return 1; 
}  

Когда есть 100 hp подходя к спранку, нажимая F (enter) есть анимация покупки, деньги не снимаются.

Как сделать так, чтобы не была анимация когда у тебя 100 hp?

 

 

Отредактировано пользователем Покемон

Заметка от LilPokemon , создано

2.9. Весь код необходимо брать под тег "код". Как это делать вы можете посмотреть в разделе: "Дополнительно -> FAQ".

Поделиться сообщением


Ссылка на сообщение

4 ответа на этот вопрос

  • 0

@DO “DoNi” NI в этом коде я вообще не вижу выдачи анимации

Поделиться сообщением


Ссылка на сообщение
  • 0
5 минут назад, DEST сказал:

@DO “DoNi” NI в этом коде я вообще не вижу выдачи анимации

Можно в инклуд посмотреть, кажется)

 

include;

 

      if(GetPlayerAnimationIndex(playerid)!=1660) SetTimerEx("VendCheck", 500, false, "d", playerid); 
      if(GetPlayerAnimationIndex(playerid)==1660) CallLocalFunction("OnPlayerUseVending", "i", playerid); 

 

Отредактировано пользователем DO “DoNi” NI

Поделиться сообщением


Ссылка на сообщение
  • 0

@DO “DoNi” NI это проверка на анимацию, а не ее выдача. 

Поделиться сообщением


Ссылка на сообщение
  • 0
public OnPlayerUseVending(playerid)
{
    new Float: health;
    GetPlayerHealth(playerid, health);
    if(health < 100)
    {
        GivePlayerMoney(playerid, -200);
        SetPlayerHealth(playerid, 100);

        GameTextForPlayer(playerid, "~r~-$200", 3000, 1);
        format(gString, sizeof(gString), "* %s bought a drink from the vending machine.", GetName(playerid));
        ProxDetector(20.0, playerid, gString, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    }
    else if(health >= 100) return SendClientMessage(playerid, COLOR_GREY, "Твое здоровье вполне в хорошем состоянии!");
    return 1;
}

Попробуй

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Артём Профиков
      От Артём Профиков
      У меня есть система подсказок вот так она выглядет
      ShowNotification(playerid, тип, "текст", время, "команда через /", "текст кнопки");
      Только есть вопрос как сделать так чтоб она активировалась в определенном радиусе? Заранее спасибо