1

Тема: AHK: Проблема с UDF - getPlayerIdByName()

Сделал код сокращения команды для создания Дигла.
'getUserName()' в игре работает отлично, а вот 'getPlayerIdByName()', мягко говоря, не очень...
При вводе команды '/dg 5' в чат вставляется '/sellgun Deagle 5 10 -1'

UDF находится в той же папке, что и скрипт.
Компилирую с помощью AHK2exe, в v1.1.30.1 ANSI 32-bit. (менял на v1.1.30.1 Unicode 32-bit и v1.1.30.1 Unicode 64-bit - 0 реакции)

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

myplayerid:=GetPlayerIdByName(mynickname)
mynickname:=GetUserName()

:?:/dg 5::
SendMessage, 0x50,, 0x4190419,, A
Sleep, 100
SendInPut, {F6}/sellgun Deagle 5 10 %myplayerid%{Enter}
Return

Может кто знает как исправить?
Заранее спасибо

2

Re: AHK: Проблема с UDF - getPlayerIdByName()

Для вопросов по играм есть отдельная ветка.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

3 (изменено: belyankin12, 2019-01-09 22:16:23)

Re: AHK: Проблема с UDF - getPlayerIdByName()

Попробуем почитать построчно. Строчки номер 1-2: какие-то служебные команды, строчка три пустая. Строчка четыре значит взять ID у игрока имя которого хранится в переменной nickname. Следующая строчка: в переменную nickname записывается Ваше имя. Дальше нам не нужно.
По секрету, скрипты выполняются сверху вниз, теперь догадаетесь в чем проблема ?

Когда вы говорите что не можете сделать, вам всего-лишь не хватает фантазии придумать какой-нибудь костыль.

4 (изменено: Purple, 2019-01-09 23:22:23)

Re: AHK: Проблема с UDF - getPlayerIdByName()

belyankin12
Уже делал, но всё равно пишет вместо моего "id" - "-1".

5

Re: AHK: Проблема с UDF - getPlayerIdByName()

А что делали то?

Когда вы говорите что не можете сделать, вам всего-лишь не хватает фантазии придумать какой-нибудь костыль.

6

Re: AHK: Проблема с UDF - getPlayerIdByName()

belyankin12

Менял местами..

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

mynickname:=GetUserName()
myplayerid:=GetPlayerIdByName(mynickname)

:?:/dg 5::
SendMessage, 0x50,, 0x4190419,, A
Sleep, 100
SendInPut, {F6}/sellgun Deagle 5 10 %myplayerid%{Enter}
Return

7

Re: AHK: Проблема с UDF - getPlayerIdByName()

В вашем UDF должна быть ещё функция getid() или что-то такое, она возвращает именно ваш ID, а не ID того, чье имя вы укажете. Попробуйте её.

Когда вы говорите что не можете сделать, вам всего-лишь не хватает фантазии придумать какой-нибудь костыль.

8 (изменено: Purple, 2019-01-10 01:02:07)

Re: AHK: Проблема с UDF - getPlayerIdByName()

belyankin12
Будь добр, подскажи как её (функцию getId()) вставить в мой код так, чтобы она была рабочая.
Заранее спасибо

9

Re: AHK: Проблема с UDF - getPlayerIdByName()

Точно так же как и getusername(). Просто воспользуйтесь ею так же, как будто вы пытаетесь получить свое имя, только вместо имени будет ваш ID.

Когда вы говорите что не можете сделать, вам всего-лишь не хватает фантазии придумать какой-нибудь костыль.