#IfWinActive GTA:SA:MP
#SingleInstance
SetTimer, otvet, 150
IniRead, Chatlog, Report.ini, Main, Chatlog
IniRead, TextReport1, Report.ini, Main, TextReport1
IniRead, TextReport2, Report.ini, Main, TextReport2
IniRead, TextReport3, Report.ini, Main, TextReport3
IniRead, TextReport4, Report.ini, Main, TextReport4
IniRead, TextReport5, Report.ini, Main, TextReport5
otvet:
{
lastline := GetNewLine(Chatlog)
IfInString, lastline, % TextReport1
{
Soundplay, %A_ScriptDir%\sound.wav
}
IfInString, lastline, % TextReport2
{
Soundplay, %A_ScriptDir%\sound.wav
}
IfInString, lastline, % TextReport3
{
Soundplay, %A_ScriptDir%\sound.wav
}
IfInString, lastline, % TextReport4
{
Soundplay, %A_ScriptDir%\sound.wav
}
IfInString, lastline, % TextReport5
{
Soundplay, %A_ScriptDir%\sound.wav
}
}
return
GetNewLine(filename)
{ ;функция чтения последней строки, если файл изменен каждыее 100 мс
static old
static new
if !old
{
FileGetSize, old, %filename%
new := old
}
while old = new
{
sleep 100
FileGetSize, new, %filename%
}
old := new
Loop, read, %filename%
if A_LoopReadLine
{
last := A_LoopReadLine ;последняя строка
}
return last
}