[DRN_] [한글판] 버전에서 아이템 로그를 제대로 봅시다
분류
봇관련
조회 수
3,170
추천 수
4
스크립트(프로그램)로 밥먹고 삽니다. 인생고에 시달리다 보니 이 즐거운 디아도 자주 못하네요.
봉구님, 디아블러네님외 다른 고수님들때문에 요즘 봇 재미에 빠져 사네요.
전 코어 쪽만 필요한 것을 올려볼까 생각중입니다.
(개인적인 바램은 봉구님,디아블러네님 버전에 직접 반영되는 그날까지 ^^)
이제 본론으로 들어갑니다.
[한글판] 버전에서 아이템 로그를 제대로 봅시다.
./scripts/output/ 폴더에 보시면 각종 로그들, 특히 아이템 버리고 저장한 기록들이 남습니다.
한글판인 경우, 해당 로그 HTML파일의 인코딩문제로 한글이 제대로 보이지 않습니다.
물론 d2jsp에서 제공하는 공통 프로그램도 한글을 지원하지 않습니다.
하지만 브라우저에서 꽁수로 한글을 표현할수있습니다.
예를 들어 '한글'이란 문자를 브라우저에서 인식한는 영어표현으로 바꾸어 주면됩니다.
한글 --> 한글
- 방법입니다.
1. ./scripts/libs/common/ 폴더에서 d2jsp-common.d2l 파일을 메모장이나 기타 편집툴을 이용해 엽니다.
- 추가 : 메모장은 사용하지 마세요. 에러납니다.
댓글중에 링크걸린 에디터를 사용하시던지 editplus를 사용하세요.
2. 아래의 내용(함수)을 제일 아래(파일 제일 마지막 부분)에 붙여넣기 합니다.
// start copy -----------------------------------------------------------------------
/* *********************************************************************************
* Hangul html format encoding for hangul version
* d2jsp-common.d2l(1431 line) :: function DC_WriteLogEntry(filepath,message,timestamp)
* _file.writeLine(timestamp + " " + message + "<br>");
* --> _file.writeLine(timestamp + " " + DRN_HtmlEncode(message) + "<br>");
********************************************************************************* */
function DRN_HtmlEncode(str) {
if (str==null) {
return "";
}
var reStr="";
var cCode=0;
for(var i=0; i<str.length; i++) {
cCode = str.charCodeAt(i);
if(cCode < 256) {
reStr += str.charAt(i);
} else {
reStr += "&#"+cCode+";";
}
}
return reStr;
}
// end copy -----------------------------------------------------------------------
3. 'function DC_WriteLogEntry(' 의 함수를 찾아서
_file.writeLine 파일을 쓰는 부분에 함수를 추가합니다.
최신버전이면 대충 1431 줄 근처입니다.
(풀어서)
(3-1). 'function DC_WriteLogEntry(' 을 검색
몇줄내려오시다 보면.
_file.writeLine(timestamp + " " + message + "<br>"); 요부분을 아래처럼 변경.
_file.writeLine(timestamp + " " + DRN_HtmlEncode(message) + "<br>");
4. 저장합니다.
- 댓글 참고해서 수정했습니다.