[Помощь] Помогите с getPlayerHealth() - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: Sanoxxx, Alowir, Phoenixxx_Czar  
[Помощь] Помогите с getPlayerHealth()
Molotovs Дата: Вторник, 14.08.2018, 14:54 | Сообщение # 1
Новичок
Сообщений: 4
Статус: Offline
Прошу помощи, как сделать при прописывании команды /med в чат бы на выбивало что у тебя полное здоровье(100 hp), но ты можешь все равно использовать аптечку. Если же меньше 100 hp , мы можем спокойно ее использовать Заготовку нашел на просторах, не особо понимаю куда впихнуть getPlayerHealth()
Код

:?:/med::
addChatMessageEx("[helper]: Ты здоров. 1 - все равно использовать аптечку 2 - отказ ")
Loop,
{
    if (getkeystate("1", "P"))
    {
        sendchat("/med")
        Return
    }
    else if (getkeystate("2", "P"))
    {
        addChatMessageEx( "[helper]: отказ")
        Return
    }
}


Сообщение отредактировал Molotovs - Вторник, 14.08.2018, 14:58
[CM]James17 Дата: Вторник, 14.08.2018, 15:13 | Сообщение # 2
Новичок
Сообщений: 22
Статус: Offline
Надеюсь, я правильно понял. В тот момент, когда у игрока, после введенной команды /med, уровень здоровья будет выше 90, но меньше 160 (по-моему, это максимально допустимое количество hp), скрипт будет предлагать выполнить команду еще раз. Добавил сюда простой командный процессор, если это можно так назвать :D, но, по желанию, можно использовать другие инклуды.
Код
#SingleInstance Force
#Include UDF.ahk
~Enter::
if (isInChat() and !isDialogOpen())
{
    sleep 150
    dwAddress := dwSAMP + 0x12D8F8
    chatInput := readString(hGTA, dwAddress, 256)
    sleep 150
    if chatInput = /med
    {
  if (getPlayerHealth()>90>100)
  {
   addChatMessage("{FFFFFF}[Helper]Ты здоров. 1 - использовать аптечку; 2 - отказаться")
   if (getKeyState("1", "P"))
    SendChat("/med")
   if (getKeyState("2", "P"))
    addChatMessage("{FFFFFF}[Helper] Отказ.")
  }
    }
}
return


Сообщение отредактировал [CM]James17 - Вторник, 14.08.2018, 15:19
MrGPro Дата: Вторник, 14.08.2018, 16:46 | Сообщение # 3
Боец
Сообщений: 202
Статус: Offline
Более восприимчивый код к HotKey .
Код
#SingleInstance Force
#Include SAMPUDF.ahk
#IfWinActive GTA:SA:MP

$~Enter::
if (isInChat() and !isDialogOpen())
{
    sleep 150
    dwAddress := dwSAMP + 0x12D8F8
    chatInput := readString(hGTA, dwAddress, 256)
    sleep 150
    if (chatInput = "/med")
    {
    if (getPlayerHealth() >= 99)
    {
     addChatMessage("{FFFFFF}[Helper]Ты здоров. 1 - использовать аптечку; 2 - отказаться")
     while !(getKeyState("1", "P") or getKeyState("2", "P"))
    {
       if (getKeyState("1", "P"))
     SendChat("/med")
       if (getKeyState("2", "P"))
     addChatMessage("{FFFFFF}[Helper] Отказ.")
    }
    }
    }
}
return


Тебе помогли не забывай про благодарность >> тыкни репутацию
---------------------------------------͡ ͋̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏͋͋' ͡ ͋̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏͋͋' ͡ ͋̏̏̏̏̏̏̏̏̏ -----------------------------------------------------
Зам.Администратора на проекте "DayZ Epoсh SPN" сервер Arma 2OA DayZ Epoch пиратка и лицензия
CZAR Дата: Вторник, 14.08.2018, 18:04 | Сообщение # 4
Czar Of Scripts
Сообщений: 1373
Статус: Offline
[CM]James17, такие условия к сожалению нельзя писать sad




Я в ВК
Ушел в веб.

• Ничего не покупаю.
• Способы не проверяю.


У меня теперь новый домен, если ссылка не работает - напишите.

Гарант Cheat-Master:
*тема*

AHK
[S-RP] House Finder / House Teleporter
[SAMP] Online Counter
[S-RP] [For Event] Show Star
[S-RP] AntiCasino
[S-RP] [BOT] Auto Fisher + Auto Find Worm + Auto Cook
[S-RP] [BOT] /dance
Winner | Делаем розыгрыши среди участников темы.
SAMP-UDF
[AHK Урок] Выбор в диалогах мышкой и enter`ом
[SAMP] Быстрый ответ на СМС
[ERP] Помощник для адвоката
[DRP] FakeTime

Достижения:
- 26.02.2017
- 03.01.2018
- 26.05.2018
- 22.09.2018
- 04.04.2019
[CM]James17 Дата: Среда, 15.08.2018, 12:56 | Сообщение # 5
Новичок
Сообщений: 22
Статус: Offline
Phoenixxx_Czar, дааа, да, точно. Как только увидел код постом выше, вспомнил, что я совсем забыл добавить в свой код while, писал быстро, на работоспособность не проверял. Спасибо, что на ошибку указали.
Molotovs Дата: Среда, 15.08.2018, 22:27 | Сообщение # 6
Новичок
Сообщений: 4
Статус: Offline
Нужно что то вроде такого, но не реагирует на нажатия в чём проблема?
Код

:?:/med::
    if (getPlayerHealth() >= 99)
    {
     addChatMessage("{FFFFFF}[Helper]Ты здоров. 1 - использовать аптечку; 2 - отказаться")
     while !(getKeyState("1", "P") or getKeyState("2", "P"))
    {
       if (getKeyState("1", "P"))
     SendChat("med")
       if (getKeyState("2", "P"))
     addChatMessage("{FFFFFF}[Helper] Отказ.")
    }
}
return

Добавлено (15.08.2018, 22:58)
---------------------------------------------
MrGPro, Нашёл твой код по поводу ХП, но проблемка после отказа лечения он всё равно предлагает лечение

Код

#Include SAMPUDF.ahk
#IfWinActive GTA:SA:MP

global Minut := 0.03
global timer_HealChecker := Minut*60*1000
global antiFlood := true

; Данный скрипт требует версии 1.0.25.13.
Gui, Add, Text,, First name:
Gui, Add, Text,, Last name:
Gui, Add, Edit, vFirstName ym ; Опция ym начинает новую колонку элементов управления.
Gui, Add, Edit, vLastName
Gui, Add, Button, default, OK ; Метка ButtonOK (если она существует) будет запущена при нажатии кнопки.
Gui, Show,, Simple Input Example
SetTimer, HealChecker, On
return

HealChecker:
if (antiFlood)
{
    Loop
    {
  if (getPlayerHealth() <= 40 and getPlayerHealth() >= 0)
  {
   addChatMessageEx("FFFFFF", "[ХП помощник]:Используй аптечку у тебя " getPlayerHealth() " хп. Использовать - [1], отказ - [2]")
   Loop,
   {
    if (getkeystate("1", "P"))
    {
     sendchat("/usemed")
     break
    }
    if (getkeystate("2", "P"))
    {
     addChatMessageEx("FFFFFF", "[ХП помощник]: Вы отказались от помощи")
     break
    }
   }
   antiFlood := false
   SetTimer, HealChecker, % timer_HealChecker
   break
  }
  else
  {
   antiFlood := false
   SetTimer, HealChecker, 1000
   break
  }
    }
    return
}
antiFlood := true
return


Сообщение отредактировал Molotovs - Среда, 15.08.2018, 22:28
MrGPro Дата: Среда, 15.08.2018, 23:16 | Сообщение # 7
Боец
Сообщений: 202
Статус: Offline
Molotovs, Вот тебе наглядное пособие
Код
global Minut := 0.03
global timer_HealChecker := Minut*60*1000
global antiFlood := true
sleep, % timer_HealChecker
MsgBox, % timer_HealChecker


Конструкция выше построена на натуральное число(1/2/3/4...), а не на сотые и и десятые. Код который я указывал предназначен для того чтобы после нажатия отказа повторное предложение появиться через 1 2 3 4 .... мин после нажатия клавиши.



Тебе помогли не забывай про благодарность >> тыкни репутацию
---------------------------------------͡ ͋̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏͋͋' ͡ ͋̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏͋͋' ͡ ͋̏̏̏̏̏̏̏̏̏ -----------------------------------------------------
Зам.Администратора на проекте "DayZ Epoсh SPN" сервер Arma 2OA DayZ Epoch пиратка и лицензия


Сообщение отредактировал MrGPro - Среда, 15.08.2018, 23:19
Molotovs Дата: Среда, 15.08.2018, 23:27 | Сообщение # 8
Новичок
Сообщений: 4
Статус: Offline
MrGPro, А как сделать что бы после отказа скрипт прекращал действовать, но когда у тебя будет ниже 90 хп, он вновь работал?
MrGPro Дата: Четверг, 16.08.2018, 00:26 | Сообщение # 9
Боец
Сообщений: 202
Статус: Offline
Molotovs, пробуй этот
Код
global Minut := 2
global timer_HealChecker := Minut*60*1000
global antiFlood := true

; Данный скрипт требует версии 1.0.25.13.
Gui, Add, Text,, First name:
Gui, Add, Text,, Last name:
Gui, Add, Edit, vFirstName ym ; Опция ym начинает новую колонку элементов управления.
Gui, Add, Edit, vLastName
Gui, Add, Button, default, OK ; Метка ButtonOK (если она существует) будет запущена при нажатии кнопки.
Gui, Show,, Simple Input Example
SetTimer, HealChecker, On
return

HealChecker:
if (antiFlood)
{
   while (getPlayerHealth() <= 79)
   {
     addChatMessageEx("FFFFFF", "[ХП помощник]:Используй аптечку у тебя " getPlayerHealth() " хп. Использовать - [1], отказ - [2]")
     Loop,
     {
   if (getkeystate("1", "P"))
   {
    sendchat("/usemed")
    break
   }
   if (getkeystate("2", "P"))
   {
    addChatMessageEx("FFFFFF", "[ХП помощник]: Вы отказались от помощи")
    break
   }
     }
     antiFlood := false
     SetTimer, HealChecker, % timer_HealChecker
     return
   }
    SetTimer, HealChecker, 1000
    return
}
antiFlood := true
return


Тебе помогли не забывай про благодарность >> тыкни репутацию
---------------------------------------͡ ͋̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏͋͋' ͡ ͋̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏͋͋' ͡ ͋̏̏̏̏̏̏̏̏̏ -----------------------------------------------------
Зам.Администратора на проекте "DayZ Epoсh SPN" сервер Arma 2OA DayZ Epoch пиратка и лицензия
Molotovs Дата: Четверг, 16.08.2018, 00:53 | Сообщение # 10
Новичок
Сообщений: 4
Статус: Offline
MrGPro, При соглашении на лечение скрипт останавливается если ты даже не вылечился wacko wacko
  • Страница 1 из 1
  • 1
Поиск:
Статистика Форума
Лучшие пользователи
Admin [39113]

GеNius [7210]

[CM]Russel [5557]

kenlo763 [4952]

[CM]AGRESSOR [4639]

Snake_Firm [4452]

Сэс [4416]

Artem_Buero [4223]

[CM]Durman [3204]

[CM]Рафаэль [3080]

iMaddy [2855]

sky_Woker [2854]

getrekt [2745]

Новые пользователи