изменение кода АХК не выходя из игры

Статус
В этой теме нельзя размещать новые ответы.

Cesar Ballard

Участник
Автор темы
81
5
И так, вопрос знатокам(не опять, а снова)
Можно ли как-то изменять ахк код прямо в игре (приоритетно - УЖЕ запущенного скрипта)не выходя в оконный режим и не реоладя скрипт в трее, т.е. я хочу изменять некое число в 1 из функций скрипта(а не создавать отдельный документ и что-то там мутить)
Более подробнее уточню некие аспекты
работа будет из сампом, сам скрипт будет от части примитивен, несколько действий банальных, без отыгровок и тд, чисто работа по таргету педа.
 

darksoor

Известный
674
353
И так, вопрос знатокам(не опять, а снова)
Можно ли как-то изменять ахк код прямо в игре (приоритетно - УЖЕ запущенного скрипта)не выходя в оконный режим и не реоладя скрипт в трее, т.е. я хочу изменять некое число в 1 из функций скрипта(а не создавать отдельный документ и что-то там мутить)
Более подробнее уточню некие аспекты
работа будет из сампом, сам скрипт будет от части примитивен, несколько действий банальных, без отыгровок и тд, чисто работа по таргету педа.
Если некое число, можно воспользоваться банальными переменными:
AutoHotKey:
var := 1
F2::
if (var == 1) {
   var := 0
   addChatMessage("Переменная изменена и присвоено ей: " var)
   return
}
if (var == 0) {
   var := 1
   addChatMessage("Переменная изменена и присвоено ей: " var)
   return
}
return
 

Cesar Ballard

Участник
Автор темы
81
5
Если некое число, можно воспользоваться банальными переменными:
AutoHotKey:
var := 1
F2::
if (var == 1) {
   var := 0
   addChatMessage("Переменная изменена и присвоено ей: " var)
   return
}
if (var == 0) {
   var := 1
   addChatMessage("Переменная изменена и присвоено ей: " var)
   return
}
return
Идея хорошая, конечно, но когда переменной этой надо будет присвоить какое то число от 1 до 30 не особо сок долбать 30 раз по кнопке, а темболее фиаско будет просрать эту переменную в процессе "просчёлки" и опять новый круг долбать.
Понимаю что можно сделать типа на ф1, допустим, обратный отсчет, но все же, как то слишком долго будет песня
Мб как то в гуи это проще будет сделать? Или нажав на опр клавишу ахк будет ожидать внесения данных и будет таким уже способом заполнятся эта нужная переменная
Крч какой то аналог импутбокса, только в игре

И ещё вопросик не в тему
Смотри, задача какой то функции сделать 2 команды в чате, к примеру
...

SendChat("/w "targ )
...
^ от так збс пашет
работа типа идёт по таргету с помощью самп юдф, но когда я, к примеру, пишу так
SendChat("/w "targ var)

меня сразу вылетает игра. Конечно, тупой вопрос, пздц, но как разделить переменные между собой что бы ахк различал их как 2, а не 1. Если запятой разделяю - скрипт не пашет.
 
Последнее редактирование:

index

Известный
126
82
работа типа идёт по таргету с помощью самп юдф, но когда я, к примеру, пишу так
SendChat("/w "targ var)

меня сразу вылетает игра. Конечно, тупой вопрос, пздц, но как разделить переменные между собой что бы ахк различал их как 2, а не 1. Если запятой разделяю - скрипт не пашет.
AutoHotKey:
sendChat("/w " targ " " var)

Идея хорошая, конечно, но когда переменной этой надо будет присвоить какое то число от 1 до 30 не особо сок долбать 30 раз по кнопке, а темболее фиаско будет просрать эту переменную в процессе "просчёлки" и опять новый круг долбать.
Понимаю что можно сделать типа на ф1, допустим, обратный отсчет, но все же, как то слишком долго будет песня
Мб как то в гуи это проще будет сделать? Или нажав на опр клавишу ахк будет ожидать внесения данных и будет таким уже способом заполнятся эта нужная переменная
Скажи, что вообще сделать хочешь?
 
  • Нравится
Реакции: Cesar Ballard

Cesar Ballard

Участник
Автор темы
81
5
AutoHotKey:
sendChat("/w " targ " " var)


Скажи, что вообще сделать хочешь?
При нажатии пкм + опр. кнопка проигрывается перечень простеньких серверных команд с помощью сендчата относительно таргета, НО 1 из команд должна быть следующего типа, в чем ща и основная проблема
/серверная команда + ид\ник который будет взят с таргета(тут понятно мне) + цифра которуя будет указана где-то в переменной(взял за пример код указанный выше дарксуром)
(но что бы в любой момент я мог изменить значения этой переменной прямо в игре)
от у меня и проблем ща как разделить переменные таргета и указаного ранее в отдельной переменной числа между собой.


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

index

Известный
126
82
AutoHotKey:
~Enter::
while(isInChat())
    continue
chatInput := readString(hGTA, dwSAMP + 0x12D8F8, 256)
if(RegExMatch(chatInput, "^[\./](?P<Command>\S+)\s+(?P<Args>.*?)\s*$", cmd))
{
   if(cmdCommand == "setMyVar")
      myVar := cmdArgs
}
return
Сообщение "/setMyVar 123" в чат установит значение переменной myVar равной 123. Потом можешь ее использовать как 2й аргумент в нужной команде серверу

от у меня и проблем ща как разделить переменные таргета и указаного ранее в отдельной переменной числа между собой
Выше писал
AutoHotKey:
sendChat("/w " targetVar " " myVar)
; или
sendChat("/w " targetVar A_Space myVar)
; суть в пробеле между ними при отправке серверу
 
  • Нравится
Реакции: Cesar Ballard и #Rin

Cesar Ballard

Участник
Автор темы
81
5
AutoHotKey:
~Enter::
while(isInChat())
    continue
chatInput := readString(hGTA, dwSAMP + 0x12D8F8, 256)
if(RegExMatch(chatInput, "^[\./](?P<Command>\S+)\s+(?P<Args>.*?)\s*$", cmd))
{
   if(cmdCommand == "setMyVar")
      myVar := cmdArgs
}
return
Сообщение "/setMyVar 123" в чат установит значение переменной myVar равной 123. Потом можешь ее использовать как 2й аргумент в нужной команде серверу


Выше писал
AutoHotKey:
sendChat("/w " targetVar " " myVar)
; или
sendChat("/w " targetVar A_Space myVar)
; суть в пробеле между ними при отправке серверу
Да, да, провтыкал изначально, спасибо за помощь)
 
Статус
В этой теме нельзя размещать новые ответы.