Такое возможно?
Здравствуйте, у меня такая трудности с заменой я не могу придумать скрипт который заменял бы
Код:
{ Код:
k = "{\n( "+x+0+" "+y+128" 128 ) ( "+x+128+" "+y+128+" 128 ) ( "+x+128+" "+y+0+" 128 ) SKY [ 1 0 0 -64 ] [ 0 -1 0 64 ] 0 1 1 \n( "+x+0+" "+y+0+" 0 ) ( "+x+128+" "+y+0+" 0 ) ( "+x+128+" "+y+128+" 0 ) SKY [ 1 0 0 -64 ] [ 0 -1 0 64 ] 0 1 1 \n( "+x+0+" "+y+128+" 128 ) ( "+x+0+" "+y+0+" 128 ) ( "+x+0+" "+y+0+" 0 ) C1A3WALL01 [ 0 1 0 -64 ] [ 0 0 -1 0 ] 0 1 1 \n( "+x+128+" "+y+128+" 0 ) ( "+x+128+" " +y+0+ " 0 ) ( "+x+128+" "+y+0+" 128 ) C1A3WALL01 [ 0 1 0 -64 ] [ 0 0 -1 0 ] 0 1 1 \n( "+x+128+" "+y+128+" 128 ) ( "+x+0+" "+y+128+" 128 ) ( "+x+0+" "+y+128+" 0 ) C1A3WALL01 [ 1 0 0 -64 ] [ 0 0 -1 0 ] 0 1 1 \n( "+x+128+" "+y+0+" 0 ) ( "+x+0+" "+y+0+" 0 ) ( "+x+0+" "+y+0+" 128 ) C1A3WALL01 [ 1 0 0 -64 ] [ 0 0 -1 0 ] 0 1 1 \n}"; |
мне достаточно неочевидно, как из первого получается второй у вас.
в любом случае полагаю вашу задачу можно отлично решить при помощи регулярных ьвыражений |
KOPCAP,
Редактор карт Gold Source на JavaScript пишете? |
Цитата:
P.S. Gvozd спасибо за ссылку буду разбираться. |
KOPCAP,
Обычный и называется "Gold Source", но зачем писать редактор на JavaScript, это что-то новенькое. А что вам именно нужно сделать, я так и не понял. |
Цитата:
1. удаляла начальные строки, не нужные далее: Код:
{ Код:
( 128 128 128 ) Код:
( "+(x*1+128*1)+" "+(y*1+128*1)+" 128 ) при чем остаток Код:
SKY [ 1 0 0 16 ] [ 0 -1 0 -16 ] 0 1 1 |
Gvozd спасибо почитал статью и вот что получилось:
var fso, tf; fso = new ActiveXObject("Scripting.FileSystemObject"); file=fso.openTextFile("index.map", 1, true); file.readLine(); file.readLine(); file.readLine(); file.readLine(); file.readLine(); file.readLine(); file.readLine(); function drowbrush(){ var newbrush = ""; var repls = ""; newbrush=newbrush+file.readLine()+"\n"; repls = file.ReadLine(); repls = repls.replace(/\s/, "kp\"+(x*1+"); repls = repls.replace(/\s/, "*1)+\"kp\"+(y*1+"); repls = repls.replace(/\s/, "*1)+\"kp"); repls = repls.replace(/\s/, "kp"); repls = repls.replace(/\s/, "kp"); repls = repls.replace(/\s/, "kp\"+(x*1+"); repls = repls.replace(/\s/, "*1)+\"kp\"+(y*1+"); repls = repls.replace(/\s/, "*1)+\"kp"); repls = repls.replace(/\s/, "kp"); repls = repls.replace(/\s/, "kp"); repls = repls.replace(/\s/, "kp\"+(x*1+"); repls = repls.replace(/\s/, "*1)+\"kp\"+(y*1+"); repls = repls.replace(/\s/, "*1)+\"kp"); repls = repls.replace(/\s/, "kp"); repls = repls.replace(/\s/, "kp"); repls = repls.replace(/kp/g, " "); alert(repls); } drowbrush();в файле index.map хранится { "classname" "worldspawn" "classname" "worldspawn" "MaxRange" "4096" "mapversion" "220" "mapversion" "220" "wad" "\program files\valve\valve\halflife.wad;\program files\valve\valve\decals.wad" { ( 0 128 128 ) ( 128 128 128 ) ( 128 0 128 ) SKY [ 1 0 0 -64 ] [ 0 -1 0 64 ] 0 1 1 ( 0 0 0 ) ( 128 0 0 ) ( 128 128 0 ) SKY [ 1 0 0 -64 ] [ 0 -1 0 64 ] 0 1 1 ( 0 128 128 ) ( 0 0 128 ) ( 0 0 0 ) C1A3WALL01 [ 0 1 0 -64 ] [ 0 0 -1 0 ] 0 1 1 ( 128 128 0 ) ( 128 0 0 ) ( 128 0 128 ) C1A3WALL01 [ 0 1 0 -64 ] [ 0 0 -1 0 ] 0 1 1 ( 128 128 128 ) ( 0 128 128 ) ( 0 128 0 ) C1A3WALL01 [ 1 0 0 -64 ] [ 0 0 -1 0 ] 0 1 1 ( 128 0 0 ) ( 0 0 0 ) ( 0 0 128 ) C1A3WALL01 [ 1 0 0 -64 ] [ 0 0 -1 0 ] 0 1 1 } }вот начало но по крайней мере получаю то что нужно чуть доработаю и все Спасибо, тему можно закрывать. |
Часовой пояс GMT +3, время: 03:34. |