- 1,214
- 1,043
AutoHotKey:
if (RegExMatch(chatInput, "^\/fakeuval\s(.*)\s(.*)", out))
; out1 = Ник
; out2 = Причина
if (RegExMatch(chatInput, "^\/fakeuval\s(.*)\s(.*)", out))
; out1 = Ник
; out2 = Причина
Свободен, можешь помочь с моим скриптом?Через 4 часика буду, щяс занят.
это фейк увольнение с организации, человек даже в игре может не находится)Наверное есть и другое решение твоей пробелемы, но лично я бы вводил не ник причина , а ид причина, и потом уже узнавать ник по ид. Ну и в регулировке читаешь цифры, потом остальное уже причину
(Надеюсь понял)
Свободен, можешь помочь с моим скриптом?
Pause
Loop
{
Send, {WheelDown}
Sleep, 370
Send, {WheelDown}
Sleep, 370
Send, {WheelDown}
Sleep, 370
Send, {WheelDown}
Sleep, 370
Send, {RButton}
Sleep, 20
MouseGetPos, X_Pos, Y_Pos
MouseClick, Left, X_Pos - 10, Y_Pos
Sleep, 26000
}
return
F11::
Pause
return
Спасибо тебе огромное.AutoHotKey:Pause Loop { If (stat != 1) return Send, {WheelDown} Sleep, 370 Send, {WheelDown} Sleep, 370 Send, {WheelDown} Sleep, 370 Send, {WheelDown} Sleep, 370 Send, {RButton} Sleep, 20 MouseGetPos, X_Pos, Y_Pos MouseClick, Left, X_Pos - 10, Y_Pos - 10 Sleep, 26000 } return F11:: Pause stat := (stat ? "0":"1") return
#SingleInstance Force
#Persistent
#Include udf.ahk
#IfWinActive GTA:SA:MP
;=========================
global startmoney = 2 ; Начальная ставка.
global maxrate = 25000 ; Максимальная сумма ставки в казино.
;=========================
global step = 0
F11::
Rate(startmoney)
return
F12::
PrintLow("~g~Script Reload", "500")
Reload
Return
Rate(money)
{
SendChat("/rulet")
sleep 300
SendInput {down 3}{enter}
sleep 500
SendInput %money%{enter}
Loop 1000
{
if (RegExMatch(getChatLineEx(0), "Вы выиграли {FFFFFF}.*{FFFF00} На барабане:"))
or (RegExMatch(getChatLineEx(1), "Вы выиграли {FFFFFF}.*{FFFF00} На барабане:"))
or (RegExMatch(getChatLineEx(2), "Вы выиграли {FFFFFF}.*{FFFF00} На барабане:"))
{
money := startmoney
step++
break
}
else if (RegExMatch(getChatLineEx(0), "Вы проиграли! На барабане"))
or (RegExMatch(getChatLineEx(1), "Вы проиграли! На барабане"))
or (RegExMatch(getChatLineEx(2), "Вы проиграли! На барабане"))
{
money := Round(money*1.5)
step++
break
}
}
addchatmessage("")
addchatmessage("")
addchatmessage("")
addchatmessage(step)
sleep 200
Rate(money)
}
Хз, мб из-за переполнения памяти, ибо если изначально скрипт работает нормально, а спустя какое-то время вылетает, то я не знаю что тут ещё сказать
Это не C++ чтобы контролировать все, даже кол-во занимаемых байтов переменой не можем определить.Как эту память высвободить? Мы же ничего не запоминаем, кроме step. (номера игры)
Зачем тут Loop 1000 ?Делать было как всегда нечего, решил написать скриптик, чтобы ставил ставку в казино рулетка (шанс 1 к 3) на серваке Samp-DM.
Принцип работы:
Если проигрыш, то ставка увеличивается в полтора раза. И так до тех пор, пока не выиграешь. В итоге после нескольких проигрышей подряд всё-таки наступает выигрыш, и мы всегда в плюсе на фиксированную сумму.
Код я значительно сократил, чтобы было удобней понять принцип работы. В общем... Спустя 15-20 минут работы - скрипт тупо аварийно завершает работу. (Работа ansi-32 была прекращена, что-то типо такого)
Вопрос. Почему? Как исправить?
C++:#SingleInstance Force #Persistent #Include udf.ahk #IfWinActive GTA:SA:MP ;========================= global startmoney = 2 ; Начальная ставка. global maxrate = 25000 ; Максимальная сумма ставки в казино. ;========================= global step = 0 F11:: Rate(startmoney) return F12:: PrintLow("~g~Script Reload", "500") Reload Return Rate(money) { SendChat("/rulet") sleep 300 SendInput {down 3}{enter} sleep 500 SendInput %money%{enter} Loop 1000 { if (RegExMatch(getChatLineEx(0), "Вы выиграли {FFFFFF}.*{FFFF00} На барабане:")) or (RegExMatch(getChatLineEx(1), "Вы выиграли {FFFFFF}.*{FFFF00} На барабане:")) or (RegExMatch(getChatLineEx(2), "Вы выиграли {FFFFFF}.*{FFFF00} На барабане:")) { money := startmoney step++ break } else if (RegExMatch(getChatLineEx(0), "Вы проиграли! На барабане")) or (RegExMatch(getChatLineEx(1), "Вы проиграли! На барабане")) or (RegExMatch(getChatLineEx(2), "Вы проиграли! На барабане")) { money := Round(money*1.5) step++ break } } addchatmessage("") addchatmessage("") addchatmessage("") addchatmessage(step) sleep 200 Rate(money) }
P.S: Могу ответить на вопросы по поводу любой строчки кода. (Вроде быдлокода сильного нет)
Цикл, который сначала отправит доклад, а потом каждые 9 минут будет сообщать тебе о том что через минуту скрипт кинет доклад, активация на клавишу 1Можете сделать скрипт, отправил доклад с поста, и после 9мин. скрипт в чат пишет "Через 1мин. нужно кинуть доклад". Т.е таймер 9мин. после отправки доклада
1:: ; Активация на клавишу 1
Loop
{
SendChat(”СЮДА ПИШИ ДОКЛАД")
Sleep 540000
AddChatMessage("{FF00FF}[AHK] {FFFFFF}Через минуту будет доклад")
Sleep 60000
}
Return
F11:: ; Приостановка на F11.
If not Stop
{
Stop := True
Pause
}
Return
F12:: ; Возобновление на F12.
If Stop
{
Stop := False
Pause
}
Return
Это не C++ чтобы контролировать все, даже кол-во занимаемых байтов переменой не можем определить.
Зачем тут Loop 1000 ?
getChatLineEx(0) - возвращает последнюю строчку в чате, зачем чекать еще другие 2 строчки
Хочу создать для своей семьи подсказки, а именно.
Когда кто-то например пишет !khelp выдает, потом /k пишется автоматически без клавиш, от моего лица, доступные команды, потом другой человек/или тот же, пишет !fflood например, и флудит, то что я настроил по данной команде.
Буду благодарен.
SetTimer, ProstoMetka, On
return
ProstoMetka:
GetChatLine(0, Output)
if (!isDialogOpen() && RegExMatch(Output, "!help"))
{
SendChat("/k Доступные команды: ...")
}
else (!isDialogOpen() && RegExMatch(Output, "!ewechototo"))
{
SendChat("/k Ещё что-то.")
}
return
А что делать если скрипт не запускается, нет ошибок, просто не запускается.Ну думаю по коду всё понятно. Если скрипт увидит в чате !help , то делает одно. Если !ewechototo , то что-то ещё.
Если надо сделать, чтобы реагировало конкретно на чат семьи, то добавь нужный цвет (Т.е конкретную форму выдачи сообщения в чат возьми из чат-лога)
C++:SetTimer, ProstoMetka, On return ProstoMetka: GetChatLine(0, Output) if (!isDialogOpen() && RegExMatch(Output, "!help")) { SendChat("/k Доступные команды: ...") } else (!isDialogOpen() && RegExMatch(Output, "!ewechototo")) { SendChat("/k Ещё что-то.") } return
#PersistentА что делать если скрипт не запускается, нет ошибок, просто не запускается.