contact 머드클럽 문의하기 카카오톡
즐겨찾기 추가plus 머드클럽이 새롭게 오픈하였습니다!
sub image
[hanlp]제작기에서 지도변환 빼냈을 때 에러..
member photo 탈퇴 3 1,700 0 2004-02-18 12:11:34
전에 어떤 분께서 잘 빼내면 사용가능하다고 하셨는데
일단... 그냥 그대로 빼내니까 에러가^^;;

int cmd(string arg)
{
        mixed *dir;
        string rdfile, *lines, col, xx, yy, file_name, file;
        string tx, ty, text, msg, time, str, zone;
        int i, sz, x, y=0, si, max_si;

        if (!arg || sscanf(arg,"%s %s",str,zone) != 2)
                return notify_fail("\n사용법 : <화일명> <디렉토리명> 지도변환\n\n");

        rdfile = read_file("/text/map/"+str);
        if( !rdfile )
                        return notify_fail("\n * /text/map 디렉토리에서 [ "+str+" ] 화일을 찾을 수 없습니다.\n\n");

        dir = get_dir("/d/"+zone);
        if( sizeof(dir) )
                return notify_fail("\n * 이미 /d/"+zone+" 디렉토리가 존재 합니다.\n\n");

        lines = explode(rdfile,"\n");
        sz = sizeof(lines);
        if(!sz) return notify_fail("\n * 화일 내용 없음\n\n");
        mkdirs( "/d/"+zone+"/" );
        time = ctime(time());
        for( i = 0; i < sz ; i++) {
                col = lines[i];
                si = sizeof(col);
                while( si-- ) {
                        if( col[si] == 32 ) col = col[0..si-1];
                        else break;
                }
                si = sizeof(col);
                for( x = 0; x < si ; x++ ) {
                        text = "";
                        if( col[x] != 161 ) {
                                continue;
                        }
                        else if( col[x..x+1] == "○" ||
                                        col[x..x+1] == "■" ) {
                                if( (x/4+1)<10 ) xx = "0"+(x/4+1);
                                else xx = ""+(x/4+1);
                                if( (i/2+1)<10 ) yy = "0"+(i/2+1);
                                else yy = ""+(i/2+1);
                                file_name = xx+yy+".c";
                                file = xx+yy+"";
                                if( x+2 < si ) {
                                        if( col[x+2..x+3] == "─" ) {
                                                if( (x/4+2)<10 ) tx = "0"+(x/4+2);
                                                else tx = ""+(x/4+2);
                                                text += "\t\"동\" : \"/d/"+zone+"/"+tx+yy+"\",\n";
                                        }
                                        else if( col[x-2..x-1] == "↔" ) {
                                                if( (x/4+2)<10 ) tx = "0"+(x/4+2);
                                                else tx = ""+(x/4+2);
                                                text += "\t\"계단\" : \"/d/"+zone+"/"+tx+yy+"\",\n";
                                        }
                                }
                                if( (x/4+1) > 1 ) {
                                        if( col[x-2..x-1] == "─" ) {
                                                if( (x/4)<10 ) tx = "0"+(x/4);
                                                else tx = ""+(x/4);
                                                text += "\t\"서\" : \"/d/"+zone+"/"+tx+yy+"\",\n";
                                        }
                                        else if( col[x-2..x-1] == "↔" ) {
                                                if( (x/4)<10 ) tx = "0"+(x/4);
                                                else tx = ""+(x/4);
                                                text += "\t\"계단\" : \"/d/"+zone+"/"+tx+yy+"\",\n";
                                        }
                                }
                                if( i+1 < sz ) {
                                        if( lines[i+1][x..x+1] == "│" ) {
                                                if( (i/2+2)<10 ) ty = "0"+(i/2+2);
                                                else ty = ""+(i/2+2);
                                                text += "\t\"남\" : \"/d/"+zone+"/"+xx+ty+"\",\n";
                                        }
                                        else if( lines[i+1][x..x+1] == "↕" ) {
                                                if( (i/2+2)<10 ) ty = "0"+(i/2+2);
                                                else ty = ""+(i/2+2);
                                                text += "\t\"계단\" : \"/d/"+zone+"/"+xx+ty+"\",\n";
                                        }
                                        if( lines[i+1][x-2..x-1] == "/" ) {
                                                if( (i/2+2)<10 ) ty = "0"+(i/2+2);
                                                else ty = ""+(i/2+2);
                                                if( (x/4+2)<10 ) tx = "0"+(x/4);
                                                else tx = ""+(x/4);
                                                text += "\t\"남서\" : \"/d/"+zone+"/"+tx+ty+"\",\n";
                                        }
                                        if( lines[i+1][x+2..x+3] == "\" ) {
                                                if( (i/2+2)<10 ) ty = "0"+(i/2+2);
                                                else ty = ""+(i/2+2);
                                                if( (x/4+2)<10 ) tx = "0"+(x/4+2);
                                                else tx = ""+(x/4+2);
                                                text += "\t\"남동\" : \"/d/"+zone+"/"+tx+ty+"\",\n";
                                        }
                                }
                                if( (i/2+1) > 1 ) {
                                        if( lines[i-1][x..x+1] == "│" ) {
                                                if( (i/2)<10 ) ty = "0"+(i/2);
                                                else ty = ""+(i/2);
                                                text += "\t\"북\" : \"/d/"+zone+"/"+xx+ty+"\",\n";
                                        }
                                        else if( lines[i-1][x..x+1] == "↕" ) {
                                                if( (i/2)<10 ) ty = "0"+(i/2);
                                                else ty = ""+(i/2);
                                                text += "\t\"계단\" : \"/d/"+zone+"/"+xx+ty+"\",\n";
                                        }
                                        if( x+2 < si ) {
                                                if( lines[i-1][x+2..x+3] == "/" ) {
                                                        if( (i/2)<10 ) ty = "0"+(i/2);
                                                        else ty = ""+(i/2);
                                                        if( (x/4+2)<10 ) tx = "0"+(x/4+2);
                                                        else tx = ""+(x/4+2);
                                                        text += "\t\"북동\" : \"/d/"+zone+"/"+tx+ty+"\",\n";
                                                }
                                        }
                                        if( lines[i-1][x-2..x-1] == "\" ) {
                                                if( (i/2)<10 ) ty = "0"+(i/2);
                                                else ty = ""+(i/2);
                                                if( (x/4)<10 ) tx = "0"+(x/4);
                                                else tx = ""+(x/4);
                                                text += "\t\"북서\" : \"/d/"+zone+"/"+tx+ty+"\",\n";
                                        }
                                }
                                y++;
                                if( col[x..x+1] == "■" )
                                        msg = HEAD+PLAG+TEXT+text+"\t])) ;\n"+LAST+"\n";
                                else
                                        msg = HEAD+TEXT+text+"\t])) ;\n"+LAST+"\n";
                                save_file("/d/"+zone+"/"+file_name,msg);
                                continue;
                        }
                }
                if( max_si < si ) max_si = si;
        }        
        write("\n * 존 크기 : "+(max_si/4+1)+" × "+(sz/2+1)+", 총 "+y+"개의 룸이 완성되었습니다.\n\n");
        return 1;
}


명령어 소스구요...(당연히 명령어 폴더 안에 있는;;)
에러나는 곳은
                        else if( col[x..x+1] == "○" ||
이 부분인데
제작기에서는 잘 되는데... 뽑아내서 명령어로 쓰려고 하면
에러가 나는군요!

아시는 분은 가르쳐주세요..;
0
3Comments
member photo
새천사 2004.02.18(수) 오후 01:14:01
죄송한데요. 에러가 나면 에러가 나는 메세지라도 같이 붙여넣어 주시지... --;
member photo
탈퇴 2004.02.18(수) 오후 01:20:04(221.164.xxx.xx)
아니, 제가 죄송합니다^^;; 기본적인걸 놓치다니 죄송!

//log파일
/cmds/wizard/지도변환.c line 37: parse error before the end of file

//runtime파일
*Error in loading object '/cmds/wizard/지도변환'
Object: <none> (/cmds/admin/갱신.c) at line 76

'cmd_hook' at <none> (/std/user.c) at line 55
'cmd' at <none> (/cmds/admin/갱신.c) at line 76
'CATCH' at <none> (/cmds/admin/갱신.c) at line 76
member photo
2004.02.18(수) 오후 04:57:30
머드에서 갱신 하였을때 에러나는 메세지 전체를 써주세요.. log 부분 말고..
코멘트를 삭제할 비밀번호를 입력하세요.
비밀번호:
정회원 이상만 코멘트 쓰기가 가능합니다.
총 게시물 956개 / 검색된 게시물: 956개
글번호   제목 작성자 조회수 싫어요 작성일
  [기타]질문 답변 외 글은 자유 게시판에 올려 주세요... 머드클럽 4412 0 0 2004-01-01
256 [기타] 질문입니다 너굴이 1607 0 0 2004-02-18
255 [circle] 저기요 .. 컴파일 할때 생기는 오류인데요 (신세계2.5) [3] 김상우 3251 0 0 2004-02-19
254 [hanlp] 쿼리는 어느 파일에 저장되나요? [2] 천무혼 1922 0 0 2004-02-19
253 [circle] 이건 또 뭘까요.. 박찬영 2139 0 0 2004-02-19
252 [circle] 으흠 난감하네요 패치가 안되요. [3] 박찬영 1762 0 0 2004-02-19
251 [hanlp] environment()함수는 어떤 형태의 값을 반환하나요. [1] 박대성 1721 0 0 2004-02-18
250 [hanlp] 쿼리 쓰는 방법좀 가르쳐 주세요. [8] 박대성 1932 0 0 2004-02-18
249 [hanlp] 아디 새로만들기 [1] 천무혼 1766 0 0 2004-02-18
248 [hanlp] 한엘피에서 동시접속을 하게되면 [2] 천무혼 2052 0 0 2004-02-18
247 [hanlp] 제작기에서 지도변환 빼냈을 때 에러.. [3] 탈퇴 1701 0 0 2004-02-18
246 [hanlp] 어디 부분이 틀렸는지, 수정해야할 부분은 어딘지좀.. [2] 천무혼 1787 0 0 2004-02-18
245 [hanlp] 한엘피에서 안시.. 배경안시는 [9] 천무혼 1909 0 0 2004-02-18
244 [hanlp] :: 에 대해서 [2] 탈퇴 1602 0 0 2004-02-17
243 [hanlp] 사용자끼리 전투하는 부분 [1] 초보 1807 0 0 2004-02-17
242 [hanlp] 리부팅 이라는 명령어를 만들고싶은데 [6] 천무혼 2114 0 0 2004-02-16
241 [circle] 3.1 기본소스.... [6] 박찬영 1975 0 0 2004-02-16
240 [hanlp] [요청] 십웅기 지도소스 2107 0 0 2004-02-16
239 [기타] 이런 머드게임을 만들려면 어떻게 해야 하나요? [9] Nekian 1960 0 0 2004-02-13
238 [hanlp] 제작기에 있는 기능을 분리하려면-_-a [3] 탈퇴 1923 0 0 2004-02-13
237 [hanlp] 종료장소 저장이 안되네요.. [4] 박대성 1776 0 0 2004-02-13
쪽지를 전송하고 있습니다. 잠시 기다려주세요.
쪽지보내기
받는이(ID/닉네임)
내용
쪽지가 도착하였습니다.
쪽지 내용을 읽어오고 있습니다. 잠시 기다려주세요.
--