Page 2 of 2
Posted: 2008-02-21 14:27:21
by Grin
ситуация такова что инжект очень интересно работает с командами...
на самом деле дурдом полный...
всякая команда переводится в текстовй варинт где параметры разделены проблемами... дальше эта строка еще раз интерпритируется.
В даной строке может содержатся несколько команд одновременно.
uo.textprint('111; textprint 12; textopen ')
пологике должно выдать строку 111; textprint 12; textopen а фиг там;)
и затого что команда переводится в вид
textprint 111; textprint 12; textopen
будет выполнено ашь 3 команды;) хотя из за того что я так надругался над textprint происходит смешение указателя буфера и в текст попадают '
в общем как оказалось рациональный вариант писать команды через uo.exec...
потому как реализовано превращение... это ужас...
Posted: 2008-02-21 19:43:31
by korzh
Edred wrote:Я думаю, это либо просто "хотелка", причем совершенно глупая, либо попытка "развода" экспертов, типа "счас я их возьму на понт".
В противном случае автор давно бы уже озвучил свои умные мысли, что же такое хитрое можно реализовать в скриптах выводом в текстовое окно точки с запятой.
Это не в коем случае не попытка брать экспертов на понт.
"Хотелка" - ближе, но не то
Идея на самом деле реально глупая
Сделать через
инжект скрипт генерации содержимого конфиг файла для яваскрипта

Поетому зачем там ";" думаю понятно.
зы Просьба
не писать о том что все это можно сделать кучей других способов, и на кучи других языках. Это просто был спор

Posted: 2008-02-21 20:12:30
by Destruction
Дык генерируй в файл и не спорь больше из-за такой фигни

Posted: 2008-02-21 20:20:41
by korzh
Destruction wrote:Дык генерируй в файл и не спорь больше из-за такой фигни

Я бы попробовал, но вот документации по работе с файлами в инжекте я чето не нашел
И можно ли сохранять файлы не в .тхт а в .js?

Posted: 2008-02-21 21:44:03
by Grin
ну сгенеришь, дальше копи паст?
скриптов море по работе с файлами, как назапись так и на чтение...
а особые дотошные моглаи скачать исходкники со всей документацией...
но ; вносится изменением 1 байта
Posted: 2008-02-22 00:04:59
by Edred
Grin wrote:всякая команда переводится в текстовй варинт где параметры разделены проблемами... дальше эта строка еще раз интерпритируется.
Об этой Йоко когда-то на старом форуме писал. Ноги растут из старого инжекта, в котором, первоначально, вообще скриптового модуля не было, а была реализация некоторых команд через вводимый в клиенте текст... Потом появился скрипт-модуль, но команды было проще переводить опять же в текст и вперед через клиент. Так до сих пор и есть...
Posted: 2008-02-22 01:29:55
by korzh
Grin wrote:ну сгенеришь, дальше копи паст?
скриптов море по работе с файлами, как назапись так и на чтение...
а особые дотошные моглаи скачать исходкники со всей документацией...
но ; вносится изменением 1 байта
да, дальше копипаст
А на тему моря скриптов, просто для работы с файлами я не видел, а смотреть кучу минингов и тд и искать в них функции работы с фалами - долго.
Исходники посмотрю, не подумал както..
Posted: 2008-02-22 02:01:44
by Edred
Работа с файлами инжекта описана в разделе FAQ форума. Кроме того, функции для работы с файлами (более удобные) есть в АСМе.
Posted: 2008-02-23 04:05:24
by korzh
Edred wrote:Работа с файлами инжекта описана в разделе FAQ форума. Кроме того, функции для работы с файлами (более удобные) есть в АСМе.
в асме насколько я помню можно только числа в файл записывать..
в faq посмотрю, спасибо/
попробовал с файлом, с первой строки не вышло
invalid number of arguments

Posted: 2008-02-23 11:26:45
by Edred
Дело не в первой строке, ты дальше что-то не то делаешь с переменной f. Весь скрипт в студию.
Posted: 2008-02-23 13:27:51
by korzh
С чтением файла разобрался, можно пример использования команды для записи строки в файл?
Posted: 2008-02-23 15:39:03
by Savage
В коде тэги не работают поэтому так выкладываю, жирным отмечено то что тебе надо.
sub Record()
VAR f=file("records.txt")
VAR TileInfo, Exit=0, X,Y, i=0
UO.SetGlobal('AddTree','Off') ; Num +
UO.SetGlobal('EndRecord','Off') ; Num /
f.Create()
f.Open()
; AddStart()
While Exit==0
X=UO.GetX()
Y=UO.GetY()
UO.Print("Press command key! Davi knopku!")
While UO.GetGlobal('AddTree')=='Off' AND UO.GetGlobal('EndRecord')=='Off'
wait(500)
Wend
If UO.GetGlobal('EndRecord')=='On' Then
Exit=1
Endif
If UO.GetGlobal('AddTree')=='On' Then
UO.SetGlobal('AddTree','Off')
If UO.GetX()<>X OR UO.GetY()<>Y Then
UO.Print("Writing waypoint. Zapisivayu koordinaty!")
f.WriteLn("Step")
f.WriteLn(UO.GetX())
f.WriteLn(UO.GetY())
Endif
UO.Info()
UO.Print("Click on tree. Tkni v derevo!")
While UO.Targeting()==2
wait(500)
Wend
TileInfo=UO.LastTile()
f.WriteLn("Chop")
f.WriteLn(TileInfo)
i=i+1
Endif
Wend
f.WriteLn("End")
f.Close()
UO.Print("Recording stopped. Zapis' zavershena.")
UO.Print("Count of added trees="+STR(i))
UO.Print("Dobavleno derev'ev="+STR(i))
end sub
Posted: 2008-02-23 17:43:18
by korzh
Savage wrote:В коде тэги не работают поэтому так выкладываю, жирным отмечено то что тебе надо.
.....
огромное спасибо

Posted: 2008-02-23 19:02:06
by korzh
опять рано порадовался =(
Снова ошибка про параметры.
Posted: 2008-02-23 22:27:45
by Edred
Телепаты в отпуске. Хочешь помощи - кидай скрипт. Не кидаешь - разбирайся сам.
Posted: 2008-02-26 00:13:12
by korzh
2Edred
Если не трудно, напиши пожалуйста такой скриптик на 3 строчки:
создаем\открываем файл
записываем в него "текст"
закрываем