PDA

Просмотр полной версии : Как вытащить координаты из строки консоли ?


alex888
06.05.2008, 16:47
Предположим чар сделал релок из точки с координатами x y
в точку с координатами x1 y1
В консоли это выглядит так
You use Body Relocation (lvl 1) on location (x1, y1),
но $.pos у него остается равным x y =-o
Епст как моно выделить новые координаты после релока ??
4ерТ ты не мог бы довести идею до конца идею до конца ?? :)

masterspirta
06.05.2008, 17:02
You use Body Relocation (lvl 1) on location (x1, y1),
Выделил)))
Тебя куда и к чему нужно выделить••••••
You use Body Relocation (lvl 1) on location (/d+), (/d+),
можна так из консоли выдрать только нужно смотреть что б косяк с со скобками не вышел !

alex888
06.05.2008, 17:15
Упс :) если быть точным мне нужно присвоить значения x1 y1 собственной переменной :)

А эта строка прям в этом виде в теле макроса должна стоять?
You use Body Relocation (lvl 1) on location (/d+), (/d+),

Чему будут присвоены эти координаты (/d+), (/d+) ?
так моно написать $x1y1 = (/d+), (/d+), ?

masterspirta
06.05.2008, 18:42
ТУТ (http://ragbot.ru/forum/showpost.php?p=6117&postcount=21) все что тебе нужна...и впредь плз будь точнее что куда и откуда нужна вытащить и для каких целей

4epT
06.05.2008, 19:57
alex888, на самом деле тебе придётся нарисовать ещё 1 АМ, ктоый будет срабатывать на появление в консоли этой строчки, а уж потом из ней (из строчки) выдирать нужные тебе координаты!

console /You use Body Relocation.*on location \((\d+), (\d+)\)/

при таком раскладе:
$x1 = $.lastMatch1
$x2 = $.lastMatch2

а вот где можно поиграться с шаблоном (http://www.pcre.ru/eval/You%20use%20Body%20Relocation.*on%20location%20%5C ((%5Cd%2B)%2C%20(%5Cd%2B)%5C)%40%3D%23%3D%40101%40 %3D%23%3D%40You%20use%20Body%20Relocation%20(lvl%2 01)%20on%20location%20(123%2C%20456)/)

alex888
07.05.2008, 02:21
Упс какая штука прикольная :) (я про ссылку). Спасибо большое!!! сам бы я запарился разбираться.Правда я так и подумал, что нужно будет
2 переменные организовать и присвоить им целочисленные значения.
Но никак сообразить не мог как эти метасимволы и модификаторы расставить правильно, чтобы их получить.
Меня и сейчас терзают смутные сомнения, что вот это .* стоит там где ему положено.
Там же вроде (lvl 1) должно находиться, а оно нам никаким боком не нужно.
Или оно там стоит чтобы скобки убрать ?
Буду проверять :p

4epT
07.05.2008, 03:29
ну изначально малоли уровни разные бывают :)

да и так запись по короче :)